c7a502e2e1
This change introduces a standalone module for our protocol buffers as CommonJS
module incl. TypeScript type definitions.
**Rationale:** In order to exclude voice messages from the media gallery,
I needed to get a reference of `AttachmentPointer.Flags.VOICE_MESSAGE`.
Currently, the only way is to use `textsecure.protobuf` which is only accessible
as a global.
* [x] Add `Attachment.isVoiceMessage` as a way to test standalone
Protocol Buffers.
* [x] Add latest version of `protobufjs`. Leave existing version in place to
keep this change less disruptive and since it’s been stable. Hopefully we
can move over to standalone protobufs over time to improve modularity and
maybe even startup performance.
* [x] Add `yarn build-protobuf` command to compile `SignalService.proto` into
standalone CommonJS module and accompanying TypeScript definitions.
~~Included compiled output for ease of use for other developers.
Can revisit if changes become more frequent.~~
Now built as part of `yarn grunt`.
* [x] Update style guide references and make sure they work!
* [x] ⚠️ Change type definition for `Attachment::file` to include `null` as
that’s apparently a valid value for legacy Android voice messages.
|
||
---|---|---|
.github | ||
.tx | ||
_locales | ||
app | ||
build | ||
components | ||
config | ||
fixtures | ||
fonts | ||
images | ||
js | ||
libtextsecure | ||
protos | ||
scripts | ||
stylesheets | ||
test | ||
ts | ||
.aptly.conf | ||
.bowerrc | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.js | ||
.gitignore | ||
.jscsrc | ||
.jshintrc | ||
.nvmrc | ||
.prettierignore | ||
.prettierrc.js | ||
.travis.yml | ||
.yarnclean | ||
about.html | ||
appveyor.yml | ||
aptly.sh | ||
background.html | ||
bower.json | ||
CONTRIBUTING.md | ||
dev-app-update.yml.sample | ||
find_broken_perms.sh | ||
fix_broken_perms.sh | ||
Gruntfile.js | ||
index.html | ||
LICENSE | ||
main.js | ||
package.json | ||
preload.js | ||
prepare_beta_build.js | ||
prepare_import_build.js | ||
README.md | ||
styleguide.config.js | ||
travis.sh | ||
tsconfig.json | ||
tslint.json | ||
yarn.lock |
Signal Desktop
Signal Desktop is an Electron application that links with your Signal Android or Signal iOS app.
Install production version: https://signal.org/download/
Install the beta
You can install it on a computer which already has the production version installed. It uses different data and install locations.
- Windows: You can find the most recent build here: https://updates.signal.org/desktop/beta.yml
- Mac: You can find the most recent build here: https://updates.signal.org/desktop/beta-mac.yml
- Linux: same instructions as the production install steps linked above, but run
apt-get install signal-desktop-beta
instead
Got a question?
You can find answers to a number of frequently asked questions on our support site: https://support.signal.org/. The community forum is another good place for questions: https://community.signalusers.org/.
Found a Bug? Have a feature request?
Please search the existing issues for your bug and create a new one if the issue is not yet tracked!
https://github.com/signalapp/Signal-Desktop/issues
Contributing Translations
Interested in helping to translate Signal? Contribute here:
https://www.transifex.com/projects/p/signal-desktop
Contributing Code
Please see CONTRIBUTING.md for setup instructions and contributor guidelines. And don't forget to sign the CLA.
Contributing Funds
You can donate to Signal development through the Freedom of the Press Foundation.
Cryptography Notice
This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.
The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.
License
Copyright 2014-2018 Open Whisper Systems
Licensed under the GPLv3: http://www.gnu.org/licenses/gpl-3.0.html