]> zoso.dev Git - libnemo.git/log
libnemo.git
5 days agoCompare only real values with equals and notEqual. Use ok with strict equality compar...
Chris Duncan [Fri, 6 Dec 2024 20:48:02 +0000 (12:48 -0800)]
Compare only real values with equals and notEqual. Use ok with strict equality comparison instead.

5 days agoMove test runner into globals file so it is set up for every test.
Chris Duncan [Fri, 6 Dec 2024 20:26:48 +0000 (12:26 -0800)]
Move test runner into globals file so it is set up for every test.

5 days agoDraft a test of our test runner.
Chris Duncan [Fri, 6 Dec 2024 12:42:56 +0000 (04:42 -0800)]
Draft a test of our test runner.

5 days agoClarify failure message when testing existence.
Chris Duncan [Fri, 6 Dec 2024 12:42:39 +0000 (04:42 -0800)]
Clarify failure message when testing existence.

5 days agoInitialize wallet on each account derivation test to avoid race conditions from worke...
Chris Duncan [Fri, 6 Dec 2024 07:05:39 +0000 (23:05 -0800)]
Initialize wallet on each account derivation test to avoid race conditions from workers generating accounts and posting conflicting messages back to the main thread.

5 days agoRevert exists test value to allow zeros.
Chris Duncan [Fri, 6 Dec 2024 07:04:56 +0000 (23:04 -0800)]
Revert exists test value to allow zeros.

5 days agoDelete unused node polyfills.
Chris Duncan [Fri, 6 Dec 2024 07:04:37 +0000 (23:04 -0800)]
Delete unused node polyfills.

5 days agoSimplify equality tests.
Chris Duncan [Fri, 6 Dec 2024 06:14:34 +0000 (22:14 -0800)]
Simplify equality tests.

5 days agoGet message from failure errors.
Chris Duncan [Fri, 6 Dec 2024 06:09:44 +0000 (22:09 -0800)]
Get message from failure errors.

5 days agoExtraneous logging.
Chris Duncan [Fri, 6 Dec 2024 06:07:54 +0000 (22:07 -0800)]
Extraneous logging.

5 days agoDelete unused config since we are not using jest.
Chris Duncan [Fri, 6 Dec 2024 06:04:33 +0000 (22:04 -0800)]
Delete unused config since we are not using jest.

5 days agoLimit Pool to one worker until the class can be refactored to manage threads on a...
Chris Duncan [Fri, 6 Dec 2024 06:03:45 +0000 (22:03 -0800)]
Limit Pool to one worker until the class can be refactored to manage threads on a static basis so we don't overload the browser with hundreds of workers during testing.

5 days agoFix assertions which would never fail due to how tests are called.
Chris Duncan [Fri, 6 Dec 2024 06:01:53 +0000 (22:01 -0800)]
Fix assertions which would never fail due to how tests are called.

5 days agoFix wrong assertion usage.
Chris Duncan [Fri, 6 Dec 2024 05:50:21 +0000 (21:50 -0800)]
Fix wrong assertion usage.

5 days agoMove test files around. Fix test runners for async functions.
Chris Duncan [Fri, 6 Dec 2024 05:33:09 +0000 (21:33 -0800)]
Move test files around. Fix test runners for async functions.

6 days agoUninstall unused testing frameworks.
Chris Duncan [Fri, 6 Dec 2024 02:30:34 +0000 (18:30 -0800)]
Uninstall unused testing frameworks.

6 days agoFix async testing.
Chris Duncan [Fri, 6 Dec 2024 02:30:17 +0000 (18:30 -0800)]
Fix async testing.

6 days agoCreate our own testing framework. Needs some double-checking on accuracy.
Chris Duncan [Thu, 5 Dec 2024 23:51:10 +0000 (15:51 -0800)]
Create our own testing framework. Needs some double-checking on accuracy.

6 days agoConvert from node to jest test execution.
Chris Duncan [Thu, 5 Dec 2024 18:34:00 +0000 (10:34 -0800)]
Convert from node to jest test execution.

6 days agoJest does not seem to recognize modules without mjs extension.
Chris Duncan [Thu, 5 Dec 2024 18:22:07 +0000 (10:22 -0800)]
Jest does not seem to recognize modules without mjs extension.

6 days agoRename performance test files.
Chris Duncan [Thu, 5 Dec 2024 16:20:52 +0000 (08:20 -0800)]
Rename performance test files.

6 days agoMissed an import. Adjust its assertions while we are here.
Chris Duncan [Thu, 5 Dec 2024 16:17:42 +0000 (08:17 -0800)]
Missed an import. Adjust its assertions while we are here.

6 days agoReplace node test runner 'skip' options with jest 'skip' function.
Chris Duncan [Thu, 5 Dec 2024 16:16:14 +0000 (08:16 -0800)]
Replace node test runner 'skip' options with jest 'skip' function.

6 days agoSwitch to jest 'test' syntax from node 'it' alias.
Chris Duncan [Thu, 5 Dec 2024 16:14:43 +0000 (08:14 -0800)]
Switch to jest 'test' syntax from node 'it' alias.

6 days ago In test files, replace node test runner module imports with jest.
Chris Duncan [Thu, 5 Dec 2024 16:13:27 +0000 (08:13 -0800)]
 In test files, replace node test runner module imports with jest.

6 days agoRename test files since they are treated as modules anyway with their import statements.
Chris Duncan [Thu, 5 Dec 2024 16:11:26 +0000 (08:11 -0800)]
Rename test files since they are treated as modules anyway with their import statements.

6 days agoInstall jest for testing.
Chris Duncan [Thu, 5 Dec 2024 16:10:22 +0000 (08:10 -0800)]
Install jest for testing.

6 days agoScrap this node polyfill idea and move on to a different testing tool.
Chris Duncan [Thu, 5 Dec 2024 14:48:15 +0000 (06:48 -0800)]
Scrap this node polyfill idea and move on to a different testing tool.

6 days agoFix sweep signing and document that Ledger is unsupported.
Chris Duncan [Wed, 4 Dec 2024 20:28:07 +0000 (12:28 -0800)]
Fix sweep signing and document that Ledger is unsupported.

6 days agoFix public key aspect of signing function, specific to Nano.
Chris Duncan [Wed, 4 Dec 2024 20:24:01 +0000 (12:24 -0800)]
Fix public key aspect of signing function, specific to Nano.

6 days agoUse scoped declarations instead of var.
Chris Duncan [Wed, 4 Dec 2024 19:57:33 +0000 (11:57 -0800)]
Use scoped declarations instead of var.

6 days agoFix call to wrong function for getting a signature rather than the signed message...
Chris Duncan [Wed, 4 Dec 2024 14:30:04 +0000 (06:30 -0800)]
Fix call to wrong function for getting a signature rather than the signed message itself.

6 days agoReturn empty byte array instead of null if there are issues opening a signed message...
Chris Duncan [Wed, 4 Dec 2024 14:27:17 +0000 (06:27 -0800)]
Return empty byte array instead of null if there are issues opening a signed message. Return detached signature as uppercase hex so calling function can ingest it more easily.

6 days agoTesting fixes to worker polyfill.
Chris Duncan [Thu, 5 Dec 2024 13:24:11 +0000 (05:24 -0800)]
Testing fixes to worker polyfill.

7 days agoRemove test logging.
Chris Duncan [Wed, 4 Dec 2024 07:24:58 +0000 (23:24 -0800)]
Remove test logging.

7 days agoImprove environment detection.
Chris Duncan [Wed, 4 Dec 2024 07:23:25 +0000 (23:23 -0800)]
Improve environment detection.

7 days agoWorker imports using strings does not work with an async function, so revert that...
Chris Duncan [Wed, 4 Dec 2024 07:12:38 +0000 (23:12 -0800)]
Worker imports using strings does not work with an async function, so revert that addition and use thenable instead. Also improve environment checking to detect Node.js vs browser.

7 days agoBe greedy with system resources.
Chris Duncan [Wed, 4 Dec 2024 07:09:53 +0000 (23:09 -0800)]
Be greedy with system resources.

7 days agoFix dynamic import.
Chris Duncan [Wed, 4 Dec 2024 07:09:07 +0000 (23:09 -0800)]
Fix dynamic import.

7 days agoIf signature verification fails due to an error, log the error and return false to...
Chris Duncan [Wed, 4 Dec 2024 07:08:55 +0000 (23:08 -0800)]
If signature verification fails due to an error, log the error and return false to the calling function.

7 days agoUpdate JSDoc.
Chris Duncan [Wed, 4 Dec 2024 07:08:04 +0000 (23:08 -0800)]
Update JSDoc.

7 days agoFix typescript errors in test files.
Chris Duncan [Wed, 4 Dec 2024 05:09:17 +0000 (21:09 -0800)]
Fix typescript errors in test files.

7 days agoRestore Node.js polyfills for worker support.
Chris Duncan [Wed, 4 Dec 2024 05:02:08 +0000 (21:02 -0800)]
Restore Node.js polyfills for worker support.

8 days agoLog total accounts generated.
Chris Duncan [Wed, 4 Dec 2024 00:32:28 +0000 (16:32 -0800)]
Log total accounts generated.

8 days agoIncrease default GPU usage for pow.
Chris Duncan [Wed, 4 Dec 2024 00:27:20 +0000 (16:27 -0800)]
Increase default GPU usage for pow.

8 days agoAdd typings to resolve remaining typescript issues.
Chris Duncan [Wed, 4 Dec 2024 00:24:33 +0000 (16:24 -0800)]
Add typings to resolve remaining typescript issues.

8 days agoAdd block pow to test webpage.
Chris Duncan [Wed, 4 Dec 2024 00:06:59 +0000 (16:06 -0800)]
Add block pow to test webpage.

8 days agoRemove performance logging and test logging. Add typings to NanoNaCl.
Chris Duncan [Wed, 4 Dec 2024 00:06:09 +0000 (16:06 -0800)]
Remove performance logging and test logging. Add typings to NanoNaCl.

8 days agoLots more typings for NanoNaCl.
Chris Duncan [Tue, 3 Dec 2024 23:58:27 +0000 (15:58 -0800)]
Lots more typings for NanoNaCl.

8 days agoAdd and fix typings. Throw if any shader issues arise.
Chris Duncan [Tue, 3 Dec 2024 23:36:22 +0000 (15:36 -0800)]
Add and fix typings. Throw if any shader issues arise.

8 days agoPer typescript, navigator.hardwareConcurrency is never null, so lose the fallback...
Chris Duncan [Tue, 3 Dec 2024 23:23:36 +0000 (15:23 -0800)]
Per typescript, navigator.hardwareConcurrency is never null, so lose the fallback to 1. Also limit to 80% cpu instead of almost maxing out.

8 days agoRemove unused blake2b import. Remove typescript no-check flags and start adding typings.
Chris Duncan [Tue, 3 Dec 2024 23:00:30 +0000 (15:00 -0800)]
Remove unused blake2b import. Remove typescript no-check flags and start adding typings.

8 days agoFix hexification.
Chris Duncan [Tue, 3 Dec 2024 22:55:09 +0000 (14:55 -0800)]
Fix hexification.

8 days agoMore typings.
Chris Duncan [Tue, 3 Dec 2024 22:51:07 +0000 (14:51 -0800)]
More typings.

8 days agoUse faster for loop instead of reduce function. Add typings to NanoNaCl.
Chris Duncan [Tue, 3 Dec 2024 22:47:46 +0000 (14:47 -0800)]
Use faster for loop instead of reduce function. Add typings to NanoNaCl.

8 days agoReturn public key as hex string from NanoNaCl.
Chris Duncan [Tue, 3 Dec 2024 22:38:23 +0000 (14:38 -0800)]
Return public key as hex string from NanoNaCl.

8 days agoRename function since we are no longer returning a pair of keys.
Chris Duncan [Tue, 3 Dec 2024 22:36:53 +0000 (14:36 -0800)]
Rename function since we are no longer returning a pair of keys.

8 days agoRemove secret key derivation from NanoNaCl since it's not applicable to Nano.
Chris Duncan [Tue, 3 Dec 2024 22:34:26 +0000 (14:34 -0800)]
Remove secret key derivation from NanoNaCl since it's not applicable to Nano.

8 days agoFix public key derivation.
Chris Duncan [Tue, 3 Dec 2024 22:33:11 +0000 (14:33 -0800)]
Fix public key derivation.

8 days agoMove threshold constants into CONSTANTS and use them in block pow.
Chris Duncan [Tue, 3 Dec 2024 21:21:59 +0000 (13:21 -0800)]
Move threshold constants into CONSTANTS and use them in block pow.

8 days agoSince pow is already so expensive, the overhead of creating workers is negligible...
Chris Duncan [Tue, 3 Dec 2024 21:01:59 +0000 (13:01 -0800)]
Since pow is already so expensive, the overhead of creating workers is negligible, so spin up a new pool when calculating and dismiss it when finished.

8 days agoCreate pool method to clear workers from memory.
Chris Duncan [Tue, 3 Dec 2024 21:01:04 +0000 (13:01 -0800)]
Create pool method to clear workers from memory.

8 days agoSave pool object URL so it can be revoked later.
Chris Duncan [Tue, 3 Dec 2024 20:57:40 +0000 (12:57 -0800)]
Save pool object URL so it can be revoked later.

8 days agoExplicitly define pool cores.
Chris Duncan [Tue, 3 Dec 2024 20:51:24 +0000 (12:51 -0800)]
Explicitly define pool cores.

8 days agoRemove RPC references from pow now that it's done locally.
Chris Duncan [Tue, 3 Dec 2024 20:48:28 +0000 (12:48 -0800)]
Remove RPC references from pow now that it's done locally.

8 days agoRemove console logging. Remove deprecated CPU-based pow code.
Chris Duncan [Tue, 3 Dec 2024 20:47:58 +0000 (12:47 -0800)]
Remove console logging. Remove deprecated CPU-based pow code.

8 days agoConvert IIFE to regular set of functions called from worker implementation. Use worke...
Chris Duncan [Tue, 3 Dec 2024 20:25:23 +0000 (12:25 -0800)]
Convert IIFE to regular set of functions called from worker implementation. Use worker-usable OffscreenCanvas for WebGL. Reorganize order of functions. Add typings and tabs.

8 days agoEnsure worker results are stored only if they exist.
Chris Duncan [Tue, 3 Dec 2024 20:20:01 +0000 (12:20 -0800)]
Ensure worker results are stored only if they exist.

8 days agoDo not mark worker as available until it has reported from a stop command.
Chris Duncan [Tue, 3 Dec 2024 20:18:32 +0000 (12:18 -0800)]
Do not mark worker as available until it has reported from a stop command.

8 days agoFix pool parsing of worker response to account for no data.
Chris Duncan [Tue, 3 Dec 2024 20:17:49 +0000 (12:17 -0800)]
Fix pool parsing of worker response to account for no data.

8 days agoAdd function return typings and variable typings.
Chris Duncan [Tue, 3 Dec 2024 20:17:05 +0000 (12:17 -0800)]
Add function return typings and variable typings.

8 days agoFix pow response destructuring assignment.
Chris Duncan [Tue, 3 Dec 2024 20:16:14 +0000 (12:16 -0800)]
Fix pow response destructuring assignment.

8 days agoAdd function to convert base32 to hex.
Chris Duncan [Tue, 3 Dec 2024 13:10:43 +0000 (05:10 -0800)]
Add function to convert base32 to hex.

8 days agoTweak var names for clarity of intent.
Chris Duncan [Tue, 3 Dec 2024 13:09:47 +0000 (05:09 -0800)]
Tweak var names for clarity of intent.

8 days agoFix address to public key extraction.
Chris Duncan [Tue, 3 Dec 2024 13:02:54 +0000 (05:02 -0800)]
Fix address to public key extraction.

8 days agoTweak some var names for clarity of intent.
Chris Duncan [Tue, 3 Dec 2024 12:55:24 +0000 (04:55 -0800)]
Tweak some var names for clarity of intent.

8 days agoFix public key and checksum extraction from address.
Chris Duncan [Tue, 3 Dec 2024 05:31:55 +0000 (21:31 -0800)]
Fix public key and checksum extraction from address.

8 days agoFix promise thenable handling in pow.
Chris Duncan [Tue, 3 Dec 2024 05:18:03 +0000 (21:18 -0800)]
Fix promise thenable handling in pow.

9 days agoAdd nano-webgl-pow. Add testing logging.
Chris Duncan [Tue, 3 Dec 2024 01:09:17 +0000 (17:09 -0800)]
Add nano-webgl-pow. Add testing logging.

9 days agoImplement divide option on pool work.
Chris Duncan [Tue, 3 Dec 2024 01:08:57 +0000 (17:08 -0800)]
Implement divide option on pool work.

9 days agoAdd converge functionality to Pool so that work can be divided or collaborated.
Chris Duncan [Tue, 3 Dec 2024 01:08:40 +0000 (17:08 -0800)]
Add converge functionality to Pool so that work can be divided or collaborated.

9 days agoImplement nano-webgl-pow on block.
Chris Duncan [Tue, 3 Dec 2024 01:08:02 +0000 (17:08 -0800)]
Implement nano-webgl-pow on block.

9 days agoExport Blake2b directly for testing purposes.
Chris Duncan [Tue, 3 Dec 2024 01:07:42 +0000 (17:07 -0800)]
Export Blake2b directly for testing purposes.

9 days agoAdd block pow to test webpage.
Chris Duncan [Tue, 3 Dec 2024 01:07:31 +0000 (17:07 -0800)]
Add block pow to test webpage.

9 days agoEnsure a minimum of one Pool core, even if nav.hwConc doesn't play nice.
Chris Duncan [Mon, 2 Dec 2024 22:25:31 +0000 (14:25 -0800)]
Ensure a minimum of one Pool core, even if nav.hwConc doesn't play nice.

9 days agoTools hash function is only used within Tools itself, so don't bother exporting it...
Chris Duncan [Mon, 2 Dec 2024 19:59:01 +0000 (11:59 -0800)]
Tools hash function is only used within Tools itself, so don't bother exporting it. Arbitrary hashing falls outside our scope as a nano project.

9 days agoDirectly calculate blake2b hash as part of block verification so that Tools import...
Chris Duncan [Mon, 2 Dec 2024 19:51:00 +0000 (11:51 -0800)]
Directly calculate blake2b hash as part of block verification so that Tools import can be eliminated.

9 days agoCalculate block hash directly instead of calling Tools.
Chris Duncan [Mon, 2 Dec 2024 19:48:10 +0000 (11:48 -0800)]
Calculate block hash directly instead of calling Tools.

9 days agoRemove type assertions rendered unnecessary by improvements to blake2b typings.
Chris Duncan [Mon, 2 Dec 2024 19:47:36 +0000 (11:47 -0800)]
Remove type assertions rendered unnecessary by improvements to blake2b typings.

9 days agoAdd return typings to blake2b functions.
Chris Duncan [Mon, 2 Dec 2024 19:46:52 +0000 (11:46 -0800)]
Add return typings to blake2b functions.

9 days agoTarget esnext which is esbuild default.
Chris Duncan [Mon, 2 Dec 2024 19:31:15 +0000 (11:31 -0800)]
Target esnext which is esbuild default.

9 days agoFix JSDoc.
Chris Duncan [Mon, 2 Dec 2024 19:30:24 +0000 (11:30 -0800)]
Fix JSDoc.

9 days agoRevert typescript update due to issue with SharedArrayBuffer not existing on ArrayBuf...
Chris Duncan [Mon, 2 Dec 2024 18:46:57 +0000 (10:46 -0800)]
Revert typescript update due to issue with SharedArrayBuffer not existing on ArrayBufferLike.

9 days agoExplicitly specify return typings from entropy getters.
Chris Duncan [Mon, 2 Dec 2024 18:46:26 +0000 (10:46 -0800)]
Explicitly specify return typings from entropy getters.

9 days agoTabs.
Chris Duncan [Mon, 2 Dec 2024 16:43:15 +0000 (08:43 -0800)]
Tabs.

9 days agoRemove blake2b typings. Update node typings and typescript package.
Chris Duncan [Mon, 2 Dec 2024 16:26:26 +0000 (08:26 -0800)]
Remove blake2b typings. Update node typings and typescript package.

9 days agoRemove blake2b package.
Chris Duncan [Mon, 2 Dec 2024 16:03:47 +0000 (08:03 -0800)]
Remove blake2b package.

9 days agoInstantiate Pool as part of block for calculating pow.
Chris Duncan [Mon, 2 Dec 2024 16:02:56 +0000 (08:02 -0800)]
Instantiate Pool as part of block for calculating pow.

9 days agoRemove replaced X25519 files.
Chris Duncan [Mon, 2 Dec 2024 16:00:17 +0000 (08:00 -0800)]
Remove replaced X25519 files.

9 days agoRNG directly instead of from Entropy. Tweak blake hashing call. Clarify some var...
Chris Duncan [Mon, 2 Dec 2024 06:34:08 +0000 (22:34 -0800)]
RNG directly instead of from Entropy. Tweak blake hashing call. Clarify some var names. Set known Nano constants. Import to main.js for testing.