<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gpgme/lang/js/src/Errors.js, branch gpgme-2.1.2</title>
<subtitle>GnuPG Made Easy.</subtitle>
<id>http://git.bktus.com/gpgfrontend/gpgme/atom?h=gpgme-2.1.2</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/gpgme/atom?h=gpgme-2.1.2'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/'/>
<updated>2019-06-19T10:58:44Z</updated>
<entry>
<title>js: Error handling for browser errors</title>
<updated>2019-06-19T10:58:44Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2019-06-19T10:57:20Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=f5e27a12d3fd22b95e83c03a5650659bfa2299b9'/>
<id>urn:sha1:f5e27a12d3fd22b95e83c03a5650659bfa2299b9</id>
<content type='text'>
--

* Connection.js
  - Add some meaningful nativeMessaging feedback for failing
    communication due to misconfiguration or other browser-originated
    fails
  - add an "isDisconnected" property
  - "isNativeHostUnknown" tries to match browser's feedback string if
    the browser does not find gpgme-json
* init.js
  - initialization will now reject with a more meaningful error if the
    configuration is not set up or other browser-based errors
    (chrome.runtime.lastError) are present. This should speed up
    the normal initialization (not having to waiting for a timeout
    any more in case of improper setup)
* errors.js
  - CONN_NATIVEMESSAGE: New error that passes the browser's
    nativeMessaging error
  - CONN_NO_CONFIG: native messaging error indicating that the
    nativeMessaging host was not set up properly
* unittests.js:
  - added the "isDisconnected" property to the startup tests
  - added tests for proper behavior of connection checks
</content>
</entry>
<entry>
<title>doc: use https:// for www.gnu.org</title>
<updated>2018-10-18T04:28:51Z</updated>
<author>
<name>Daniel Kahn Gillmor</name>
<email>dkg@fifthhorseman.net</email>
</author>
<published>2018-10-18T03:56:27Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=2f12427e416a0a40bf680a421f9ed20340d5bb96'/>
<id>urn:sha1:2f12427e416a0a40bf680a421f9ed20340d5bb96</id>
<content type='text'>
--

Signed-off-by: Daniel Kahn Gillmor &lt;dkg@fifthhorseman.net&gt;
</content>
</entry>
<entry>
<title>js: documentation cleanup</title>
<updated>2018-09-05T16:46:28Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2018-09-05T16:46:28Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=1c618166fcd296b4e95f3a6ea9c415d3dca5ce0a'/>
<id>urn:sha1:1c618166fcd296b4e95f3a6ea9c415d3dca5ce0a</id>
<content type='text'>
--
</content>
</entry>
<entry>
<title>js: improve decryption performance</title>
<updated>2018-08-22T14:32:31Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2018-08-22T14:32:31Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=129fa919b935d97d995bc6b457c7f6984c06e825'/>
<id>urn:sha1:129fa919b935d97d995bc6b457c7f6984c06e825</id>
<content type='text'>
--
* src/Connection.js, src/Helpers.js: performance of decoding incoming
  base64 data was improved to about 4 times the speed by introducing
  two more efficient functions (thanks to rrenkert@intevation.de for
  finding and testing them)

* src/gpgmejs.js: Decrypted data will now return as Uint8Array, if the
  caller does not wish for a decoding. Decoding binary data will return
  invalid data, and a Uint8Array may be desired. This can be indicated
  by using the (new) 'binary' option in decrypt.

* src/Errors.js A new error in case this decoding fails

* src/Message.js, src/Connection.js: expected is change from base64
  to binary, to avoid confusion later on.
</content>
</entry>
<entry>
<title>js: throw errors in sync functions</title>
<updated>2018-08-22T10:18:55Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2018-08-22T10:18:55Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=93f674d33d4dacb115398196a7218c28323fd708'/>
<id>urn:sha1:93f674d33d4dacb115398196a7218c28323fd708</id>
<content type='text'>
--

* synchronous functions should throw errors if something goes wrong,
  Promises should reject. This commit changes some error cases that
  returned Error objects instead of throwing them

  - src/Key.js: createKey() and sync Key.get() throw errors
  - src/Error.js: Exporting the list of errors to be able to test and
    compare against these strings
  - src/Keyring.js: Setting a null value in pattern is not useful, and
    now caused an error with the new changes.
  - src/Message.js: createMessage and Message.setParameter now throw
    errors
</content>
</entry>
<entry>
<title>js: add and apply eslint rules</title>
<updated>2018-08-20T13:12:01Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2018-08-20T13:12:01Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=dd32daad0bb21e3d5567326d0b2e548ff8510431'/>
<id>urn:sha1:dd32daad0bb21e3d5567326d0b2e548ff8510431</id>
<content type='text'>
--

* mainly spacing, see .eslintrc.json for details
</content>
</entry>
<entry>
<title>js: revert changes to class read/write restriction</title>
<updated>2018-08-20T10:12:43Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2018-08-20T10:12:43Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=1954d27be86b8e4eb801ca6ddcb670f8cfb149f5'/>
<id>urn:sha1:1954d27be86b8e4eb801ca6ddcb670f8cfb149f5</id>
<content type='text'>
--

* undoes 94ee0988d4eaac27785de6efb7c19ca9976e1e9c and
  e16a87e83910ebb6bfdc4148369165f121f0997e.
  I do not fully understand why my approach was bad, but I am not in
  a position to argue. This revert was requested to me after a review,
  and I'm doing it in the assumption that more experienced people know
  better than me.
* unittests: Also changed some outdated tests that stopped working
  since 754e799d35fd62d7a979452f44342934659908c7 (as GPGME_Key is not
  exported, one cannot check for instanceof in the tests anymore)
</content>
</entry>
<entry>
<title>js: removed Key.armor property in synchronous use</title>
<updated>2018-08-17T14:57:41Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2018-08-17T14:57:41Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=ad39d54d192864b54a155bf5f94d5b6bb3e8612a'/>
<id>urn:sha1:ad39d54d192864b54a155bf5f94d5b6bb3e8612a</id>
<content type='text'>
--

* src/Key.js The synchronous mode for a Key does not offer an armor/
  armored property anymore. This frees up a lot of performance issues,
  also the armored expoort is expected to change quite often, so a
  cached version is not advisable.

* hasSecret/getHasSecret is now refactored, to reflect their uses.
  With get('hasSecret') there is a method that fetches the result.

* src/Key.js also some refactoring
</content>
</entry>
<entry>
<title>js: Making objects inmutable</title>
<updated>2018-07-30T10:31:27Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2018-07-30T10:31:27Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=e16a87e83910ebb6bfdc4148369165f121f0997e'/>
<id>urn:sha1:e16a87e83910ebb6bfdc4148369165f121f0997e</id>
<content type='text'>
--

* An Object.freeze should stop any malicious third party from changing
  objects' methods once the objects are instantiated (see unittest for
  an approach that would have worked before)
  - An initialized gpgmejs- object doesn't have a '_Keyring' property
    anymore (it still has its 'Keyring')
  - The internal expect='base64' needed to be turned into a method.
</content>
</entry>
<entry>
<title>js: change the write access for js class methods</title>
<updated>2018-07-27T18:36:21Z</updated>
<author>
<name>Maximilian Krambach</name>
<email>maximilian.krambach@intevation.de</email>
</author>
<published>2018-07-27T18:36:21Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/gpgme/commit/?id=94ee0988d4eaac27785de6efb7c19ca9976e1e9c'/>
<id>urn:sha1:94ee0988d4eaac27785de6efb7c19ca9976e1e9c</id>
<content type='text'>
--
* src/ [Connection, Error, Key, Keyring, MEssage, Signature, gpgmejs]:
    Functions and values that are not meant to be overwritten are now
    moved into their constructors, thus eliminating the possibility of
    overwrites after initialization.

* Key: The mode of use (synchronous cached, or async promises) ivs now
  determined at initialization of that Key. The property Key.isAsync
  reflects this state.

* unittests: fixed old Key syntax for testing.

* Message.js isComplete is now a method and not a getter anymore.

* Added some startup tests.
</content>
</entry>
</feed>
