@plasius/gpu-lock-free-queue 0.1.1-beta.1 → 0.1.2-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +11 -0
  3. package/package.json +10 -2
package/CHANGELOG.md CHANGED
@@ -8,6 +8,20 @@ The format is based on **[Keep a Changelog](https://keepachangelog.com/en/1.1.0/
8
8
 
9
9
  ## [Unreleased]
10
10
 
11
+ - **Added**
12
+ - (placeholder)
13
+
14
+ - **Changed**
15
+ - (placeholder)
16
+
17
+ - **Fixed**
18
+ - (placeholder)
19
+
20
+ - **Security**
21
+ - (placeholder)
22
+
23
+ ## [0.1.2-beta.0] - 2026-01-08
24
+
11
25
  - **Added**
12
26
  - (placeholder)
13
27
 
@@ -55,3 +69,4 @@ The format is based on **[Keep a Changelog](https://keepachangelog.com/en/1.1.0/
55
69
  - Demo for enqueue/dequeue, FFT spectrogram, and randomness heuristics.
56
70
  [0.1.1-beta.0]: https://github.com/Plasius-LTD/gpu-lock-free-queue/releases/tag/v0.1.1-beta.0
57
71
  [0.1.1-beta.1]: https://github.com/Plasius-LTD/gpu-lock-free-queue/releases/tag/v0.1.1-beta.1
72
+ [0.1.2-beta.0]: https://github.com/Plasius-LTD/gpu-lock-free-queue/releases/tag/v0.1.2-beta.0
package/README.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # @plasius/gpu-lock-free-queue
2
2
 
3
+ [![npm version](https://img.shields.io/npm/v/@plasius/gpu-lock-free-queue)](https://www.npmjs.com/package/@plasius/gpu-lock-free-queue)
4
+ [![CI](https://github.com/Plasius-LTD/gpu-lock-free-queue/actions/workflows/ci.yml/badge.svg)](https://github.com/Plasius-LTD/gpu-lock-free-queue/actions/workflows/ci.yml)
5
+ [![license](https://img.shields.io/npm/l/@plasius/gpu-lock-free-queue)](./LICENSE)
6
+
3
7
  A minimal WebGPU lock-free MPMC ring queue using a per-slot sequence counter (Vyukov-style). This is a starter implementation focused on correctness, robustness, and low overhead.
4
8
 
5
9
  ## Install
@@ -35,6 +39,13 @@ python3 -m http.server
35
39
 
36
40
  Then open `http://localhost:8000` and check the console/output.
37
41
 
42
+ ## Tests
43
+ ```
44
+ npm run test:unit
45
+ npm run test:coverage
46
+ npm run test:e2e
47
+ ```
48
+
38
49
  ## Files
39
50
  - `demo/index.html`: Loads the demo.
40
51
  - `demo/main.js`: WebGPU setup, enqueue/dequeue test, FFT spectrogram, and randomness heuristics.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plasius/gpu-lock-free-queue",
3
- "version": "0.1.1-beta.1",
3
+ "version": "0.1.2-beta.0",
4
4
  "description": "WebGPU lock-free MPMC ring queue with sequence counters.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -18,7 +18,11 @@
18
18
  "./package.json": "./package.json"
19
19
  },
20
20
  "scripts": {
21
- "demo": "python3 -m http.server"
21
+ "demo": "python3 -m http.server",
22
+ "test": "npm run test:unit",
23
+ "test:unit": "node --test",
24
+ "test:e2e": "npx playwright install chromium && playwright test",
25
+ "test:coverage": "c8 --reporter=lcov --reporter=text node --test"
22
26
  },
23
27
  "keywords": [
24
28
  "webgpu",
@@ -34,6 +38,10 @@
34
38
  ],
35
39
  "author": "Plasius LTD <development@plasius.co.uk>",
36
40
  "license": "Apache-2.0",
41
+ "devDependencies": {
42
+ "@playwright/test": "^1.57.0",
43
+ "c8": "^10.1.3"
44
+ },
37
45
  "repository": {
38
46
  "type": "git",
39
47
  "url": "git+https://github.com/Plasius-LTD/gpu-lock-free-queue.git"