]>
zoso.dev Git - nano-pow.git/log
Chris Duncan [Sun, 8 Jun 2025 00:55:15 +0000 (17:55 -0700)]
Fix issues with BigIntExtended implementations.
Chris Duncan [Sat, 7 Jun 2025 08:19:44 +0000 (01:19 -0700)]
Initial bigint extension changes.
Chris Duncan [Thu, 5 Jun 2025 22:11:29 +0000 (15:11 -0700)]
Extend bigint with random function.
Chris Duncan [Thu, 5 Jun 2025 18:42:57 +0000 (11:42 -0700)]
Fix missing debug flag assignment. Delay config file log until after logger is enabled.
Chris Duncan [Thu, 5 Jun 2025 18:31:00 +0000 (11:31 -0700)]
Indicate in output when logs are from browser instance.
Chris Duncan [Wed, 4 Jun 2025 21:56:32 +0000 (14:56 -0700)]
Extend GPU timeout periods.
Chris Duncan [Wed, 4 Jun 2025 21:53:58 +0000 (14:53 -0700)]
Use logger for debugging. Always reload device when restoring, it's cheap. Do not add dispatch loop to queue, just await as usual.
Chris Duncan [Wed, 4 Jun 2025 21:38:22 +0000 (14:38 -0700)]
Split initial steps and compute steps for separate recovery attempts.
Chris Duncan [Wed, 4 Jun 2025 21:36:34 +0000 (14:36 -0700)]
Type guard queue tasks.
Chris Duncan [Wed, 4 Jun 2025 19:28:09 +0000 (12:28 -0700)]
Allow queue calls to cut to the front of the line. Simplify lots of GPU logging. Eliminate redundant reset function.
Chris Duncan [Wed, 4 Jun 2025 18:50:47 +0000 (11:50 -0700)]
Extract queuing feature to utility class.
Chris Duncan [Wed, 4 Jun 2025 18:50:28 +0000 (11:50 -0700)]
Fix bigint extension when prefix included.
Chris Duncan [Wed, 4 Jun 2025 18:50:10 +0000 (11:50 -0700)]
Add self-check of generate results to test page.
Chris Duncan [Wed, 4 Jun 2025 17:53:35 +0000 (10:53 -0700)]
Disable "Go" button on test page during test.
Chris Duncan [Wed, 4 Jun 2025 15:03:15 +0000 (08:03 -0700)]
Refactor log utility function into class to allow separation of debug flags between implementations.
Chris Duncan [Wed, 4 Jun 2025 13:06:02 +0000 (06:06 -0700)]
Do not start when restoring, it has its own process. Remove deprecated function calls. Do not redestroy device already destroyed by browser.
Chris Duncan [Wed, 4 Jun 2025 13:05:22 +0000 (06:05 -0700)]
Combine GPU resource creation since they will always be initialized together and extra functions are redundant.
Chris Duncan [Tue, 3 Jun 2025 21:39:04 +0000 (14:39 -0700)]
Simplify error handling again.
Chris Duncan [Tue, 3 Jun 2025 21:16:44 +0000 (14:16 -0700)]
Improve error handling throughout GPU.
Chris Duncan [Tue, 3 Jun 2025 18:31:14 +0000 (11:31 -0700)]
Short processing queue idle check.
Chris Duncan [Tue, 3 Jun 2025 18:21:15 +0000 (11:21 -0700)]
Fix processing queue executing multiple tasks.
Chris Duncan [Tue, 3 Jun 2025 04:25:16 +0000 (21:25 -0700)]
Catch reset errors.
Chris Duncan [Tue, 3 Jun 2025 04:22:04 +0000 (21:22 -0700)]
Use isContextLost as a timeout for recovery. Throw if device cannot be recovered or setup fails.
Chris Duncan [Tue, 3 Jun 2025 04:21:03 +0000 (21:21 -0700)]
Context recovery should take way less than 30s.
Chris Duncan [Tue, 3 Jun 2025 03:56:43 +0000 (20:56 -0700)]
Convert context loss flag to timeout tracker to allow eventual exception if context restored event is never fired.
Chris Duncan [Tue, 3 Jun 2025 03:46:56 +0000 (20:46 -0700)]
Fail entire GL generate call if context cannot be restored after loss.
Chris Duncan [Mon, 2 Jun 2025 21:52:05 +0000 (14:52 -0700)]
Lazy load GL canvas and context.
Chris Duncan [Mon, 2 Jun 2025 21:51:40 +0000 (14:51 -0700)]
Remove unused WASM variable.
Chris Duncan [Mon, 2 Jun 2025 21:51:27 +0000 (14:51 -0700)]
Remove unused import and add logging to server.
Chris Duncan [Mon, 2 Jun 2025 19:57:13 +0000 (12:57 -0700)]
Delete redundant buffer binding.
Chris Duncan [Mon, 2 Jun 2025 19:23:19 +0000 (12:23 -0700)]
Pass input UBO components by separate views and offsets.
Chris Duncan [Mon, 2 Jun 2025 16:54:44 +0000 (09:54 -0700)]
Simplify GL uniform nomenclature.
Chris Duncan [Mon, 2 Jun 2025 16:54:17 +0000 (09:54 -0700)]
Copy GPU and GL tsconfig files into build/ for IDE validation.
Chris Duncan [Mon, 2 Jun 2025 12:50:04 +0000 (05:50 -0700)]
Include SPDX headers in generated compute shader.
Chris Duncan [Mon, 2 Jun 2025 12:42:07 +0000 (05:42 -0700)]
Merge branch 'test/refactor' into next/cpu
Chris Duncan [Sun, 1 Jun 2025 23:16:04 +0000 (16:16 -0700)]
Refactor recovery process for GPU.
Chris Duncan [Sun, 1 Jun 2025 20:07:23 +0000 (13:07 -0700)]
Import extensions at entry point only so it doesn't need to be imported to each module individually after bundling.
Chris Duncan [Sun, 1 Jun 2025 19:58:56 +0000 (12:58 -0700)]
Fix GPU debug logging.
Chris Duncan [Sun, 1 Jun 2025 19:58:36 +0000 (12:58 -0700)]
Fix 64-bit CPRNG.
Chris Duncan [Sun, 1 Jun 2025 19:47:41 +0000 (12:47 -0700)]
Extract generate queue to outer class that calls API-specific method.
Chris Duncan [Sun, 1 Jun 2025 08:07:34 +0000 (01:07 -0700)]
Use crypto random values for better quality randomness.
Chris Duncan [Sat, 31 May 2025 07:34:15 +0000 (00:34 -0700)]
Fix license for REUSE compliance.
Chris Duncan [Sat, 31 May 2025 07:25:36 +0000 (00:25 -0700)]
Rename files.
Chris Duncan [Sat, 31 May 2025 07:19:48 +0000 (00:19 -0700)]
Generate GL primary draw shader instead of writing it explicitly. Fix ambient shader type definitions to apply to their respective APIs. Fix exports and tsconfig for generate files.
Chris Duncan [Sat, 31 May 2025 05:26:44 +0000 (22:26 -0700)]
Move GL shaders into their own directory.
Chris Duncan [Fri, 30 May 2025 20:54:36 +0000 (13:54 -0700)]
Fix duplicate null assignment. Separate context condition from query parameter availability in check function. Fix context restoration not recompiling.
Chris Duncan [Fri, 30 May 2025 20:12:15 +0000 (13:12 -0700)]
Reuse GL canvas and context and improve context loss handling.
Chris Duncan [Fri, 30 May 2025 03:45:32 +0000 (20:45 -0700)]
Refactor GPU into plain module. Simplify task queueing.
Chris Duncan [Fri, 30 May 2025 03:34:00 +0000 (20:34 -0700)]
Refactor worker to remove event listener prior to shutting down to avoid possible memory leaks.
Chris Duncan [Fri, 30 May 2025 03:29:59 +0000 (20:29 -0700)]
Refactor WASM reset process and remove redundant busy flag.
Chris Duncan [Thu, 29 May 2025 21:40:21 +0000 (14:40 -0700)]
Refactor GL as plain ES module. Fix incorrect event listeners for context loss and restoration, and remove them when resetting. Adjust context restoration to attempt to resume processing by queueing a no-op function.
Chris Duncan [Thu, 29 May 2025 15:41:42 +0000 (08:41 -0700)]
Refactor WASM class as plain ES module.
Chris Duncan [Thu, 29 May 2025 15:07:53 +0000 (08:07 -0700)]
Add missing license info reach REUSE compliance.
Chris Duncan [Thu, 29 May 2025 15:07:24 +0000 (08:07 -0700)]
Remove inaccurate comment.
Chris Duncan [Thu, 29 May 2025 00:10:44 +0000 (17:10 -0700)]
Generate work once prior to performance timing during CLI benchmark.
Chris Duncan [Wed, 28 May 2025 21:41:08 +0000 (14:41 -0700)]
Minor type fixes.
Chris Duncan [Wed, 28 May 2025 21:12:54 +0000 (14:12 -0700)]
Remove incorrect JSDoc and fix class comment.
Chris Duncan [Wed, 28 May 2025 20:26:48 +0000 (13:26 -0700)]
Rename API support type definitions.
Chris Duncan [Wed, 28 May 2025 20:17:02 +0000 (13:17 -0700)]
Shorten long literal type union for APIs with type alias. Refactor config class to use async factory method instead of sync constructor to allow dynamic API support querying. Always return `valid` from validate because why not?
Chris Duncan [Wed, 28 May 2025 18:20:49 +0000 (11:20 -0700)]
Fix infinite loop in CLI hash collection.
Chris Duncan [Wed, 28 May 2025 18:20:23 +0000 (11:20 -0700)]
Handle server listening event more explicitly.
Chris Duncan [Wed, 28 May 2025 17:40:32 +0000 (10:40 -0700)]
Delay API support check until NanoPow is ready. Whitespace.
Chris Duncan [Wed, 28 May 2025 17:19:40 +0000 (10:19 -0700)]
Fix license headers.
Chris Duncan [Wed, 28 May 2025 16:27:56 +0000 (09:27 -0700)]
Use CPU as an API that is always supported, and throw if user-specified API is unsupported on the platform.
Chris Duncan [Wed, 28 May 2025 16:24:27 +0000 (09:24 -0700)]
Set default API to best available if not specified by user.
Chris Duncan [Wed, 28 May 2025 16:20:00 +0000 (09:20 -0700)]
Refactor API support checks into utility classes.
Chris Duncan [Wed, 28 May 2025 15:50:34 +0000 (08:50 -0700)]
Move API support check into its own module for import to config class.
Chris Duncan [Wed, 28 May 2025 15:26:13 +0000 (08:26 -0700)]
Rename config class file.
Chris Duncan [Wed, 28 May 2025 15:16:26 +0000 (08:16 -0700)]
Refactor options to provide unvalidated and validated interfaces.
Chris Duncan [Tue, 27 May 2025 23:04:54 +0000 (16:04 -0700)]
Implement JSON serialization for options object.
Chris Duncan [Tue, 27 May 2025 21:46:27 +0000 (14:46 -0700)]
Server and CLI fixes.
Chris Duncan [Tue, 27 May 2025 21:23:25 +0000 (14:23 -0700)]
Remove unnecessary logging.
Chris Duncan [Tue, 27 May 2025 21:22:45 +0000 (14:22 -0700)]
Eliminate barely-used result type. Fix work_generate parameter type. Update type definition file for new project structure.
Chris Duncan [Tue, 27 May 2025 18:08:08 +0000 (11:08 -0700)]
Extract NanoPowOptions type into its own class. Scrap string extension in favor of extending BigInt constructor and make it more careful when overriding global. Eliminate unused request types. Return error JSON in response instead of throwing to consumer.
Chris Duncan [Tue, 27 May 2025 14:17:31 +0000 (07:17 -0700)]
Export lib as class. Add error type and handling at top level.
Chris Duncan [Tue, 27 May 2025 12:54:33 +0000 (05:54 -0700)]
Rename classes for consistency.
Chris Duncan [Tue, 27 May 2025 12:52:56 +0000 (05:52 -0700)]
Use main entry point as interface so that types can be revealed to the user while treating actual input as `unknown` in implementation.
Chris Duncan [Mon, 26 May 2025 07:05:11 +0000 (00:05 -0700)]
Compute WASM loop mask with smaller numbers. Remove unused import.
Chris Duncan [Mon, 26 May 2025 06:45:04 +0000 (23:45 -0700)]
Refactor main export as a plain ES module instead of a class.
Chris Duncan [Mon, 26 May 2025 06:44:24 +0000 (23:44 -0700)]
Fix log message.
Chris Duncan [Mon, 26 May 2025 06:44:13 +0000 (23:44 -0700)]
Export primary class only now that api is part of options object.
Chris Duncan [Mon, 26 May 2025 06:43:35 +0000 (23:43 -0700)]
Fix default random hex length on test page.
Chris Duncan [Mon, 26 May 2025 06:11:11 +0000 (23:11 -0700)]
Update test page to pass api in options object.
Chris Duncan [Mon, 26 May 2025 06:10:36 +0000 (23:10 -0700)]
Scrap worker idea for CPU work_generate and refactor it into a plainer ES module. Set default API in exposed class.
Chris Duncan [Mon, 26 May 2025 06:03:51 +0000 (23:03 -0700)]
Reorder JSdoc.
Chris Duncan [Sun, 25 May 2025 06:48:19 +0000 (23:48 -0700)]
Simplify WASM SIMD support check.
Chris Duncan [Sat, 24 May 2025 19:58:37 +0000 (12:58 -0700)]
Start prepping types and CPU for pure Javascript worker implementation.
Chris Duncan [Sat, 24 May 2025 19:48:43 +0000 (12:48 -0700)]
Improve type checking in server. Implement work_generate in CPU.
Chris Duncan [Sat, 24 May 2025 18:55:32 +0000 (11:55 -0700)]
Rename CPU implementation.
Chris Duncan [Sat, 24 May 2025 18:52:11 +0000 (11:52 -0700)]
Split options type to differentiate validated values.
Chris Duncan [Sat, 24 May 2025 18:02:05 +0000 (11:02 -0700)]
Fix paths.
Chris Duncan [Sat, 24 May 2025 17:58:30 +0000 (10:58 -0700)]
Move validate into cpu folder to start refactoring of CPU implementation.
Chris Duncan [Sat, 24 May 2025 17:56:59 +0000 (10:56 -0700)]
Rename directories to indicate actual API names.
Chris Duncan [Sat, 24 May 2025 17:50:29 +0000 (10:50 -0700)]
Add path specifiers for each API. Update types and documentation.
Chris Duncan [Sat, 24 May 2025 17:03:24 +0000 (10:03 -0700)]
Remove unused utility functions and imports.
Chris Duncan [Sat, 24 May 2025 07:08:25 +0000 (00:08 -0700)]
Fix issue with first nonce due to leftover results in buffer when changing effort.
Chris Duncan [Sat, 24 May 2025 07:02:52 +0000 (00:02 -0700)]
Remove debug logging.
Chris Duncan [Sat, 24 May 2025 07:00:19 +0000 (00:00 -0700)]
Fix endianness of GL results.
Chris Duncan [Sat, 24 May 2025 06:45:57 +0000 (23:45 -0700)]
Fix awaiting async GL setup.
Chris Duncan [Fri, 23 May 2025 23:44:03 +0000 (16:44 -0700)]
Fix bigint to typedarray extension.