]> git.codecow.com Git - libnemo.git/commitdiff
v0.4.0
authorChris Duncan <chris@zoso.dev>
Sat, 30 Aug 2025 09:18:34 +0000 (02:18 -0700)
committerChris Duncan <chris@zoso.dev>
Sat, 30 Aug 2025 09:18:34 +0000 (02:18 -0700)
CHANGELOG.md
package-lock.json
package.json

index 7339cff31392811a364ad9f1bf36e76bb8db291a..775ae96f8e28b75e68f881cb296a3167cbded49b 100644 (file)
@@ -3,6 +3,36 @@ SPDX-FileCopyrightText: 2025 Chris Duncan <chris@zoso.dev>
 SPDX-License-Identifier: GPL-3.0-or-later
 -->
 
+## v0.4.0
+
+### Notable Changes
+
+#### Vault abandons async-await
+
+Bundlers try to optimize code based on features supported by the target browser
+environment as well as work around shortcomings or bugs. Sometimes this results
+in mangling code that would otherwise be acceptable. Private class fields and
+async-await are two such features that bundlers are eager to refactor. This is
+particularly problematic for the Vault worker in `libnemo` due to how it loads
+as a stringified data blog. To avoid this situation, async-await statements have
+been replaced by traditional promise chaining in Vault-related classes, and
+private members that were being hoisted outside the class scope (and thus being
+lost when loading the worker) are now initialized in a static method so that
+they keep their place in the class as designed.
+
+#### BLAKE2b outputs bytes only
+
+This change is intended purely to simplify the structure of the BLAKE2b hashing
+implementation. The `digest()` method no longer accepts any parameters and will
+always output bytes; hex string is no longer an output option, and the bytes
+should be converted if necessary.
+
+### Other Changes
+
+Fixed some erroneous JSdoc comment documentation.
+
+
+
 ## v0.3.1
 
 ### Notable Changes
index c9d84ebb85010b6e1aed8a8e1cdd267d4fb3439f..f4b6a870c9404cf4a00d774eed6d25f17afaeb30 100644 (file)
@@ -1,12 +1,12 @@
 {
        "name": "libnemo",
-       "version": "0.3.1",
+       "version": "0.4.0",
        "lockfileVersion": 3,
        "requires": true,
        "packages": {
                "": {
                        "name": "libnemo",
-                       "version": "0.3.1",
+                       "version": "0.4.0",
                        "license": "(GPL-3.0-or-later AND MIT AND ISC)",
                        "dependencies": {
                                "nano-pow": "^5.1.4"
index 60e593f6d8c9f5477cc505f4d9f2ebc8d0c69e0a..bd541955ad9e180681e3b3203e4f9e94a31310fd 100644 (file)
@@ -1,6 +1,6 @@
 {
        "name": "libnemo",
-       "version": "0.3.1",
+       "version": "0.4.0",
        "description": "Asynchronous, non-blocking Nano cryptocurrency integration toolkit.",
        "keywords": [
                "nemo",