solid-objects 1.0.2 → 1.0.4
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.
- package/CHANGELOG.md +17 -0
- package/README.md +5 -7
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/docs/compare/dbos.md +1 -1
- package/docs/compare/graphile-worker.md +1 -1
- package/docs/compare/restate.md +1 -1
- package/docs/compare/rivetkit.md +1 -1
- package/docs/maintenance.md +70 -0
- package/docs/versioning.md +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.0.4 - 2026-10-18
|
|
4
|
+
|
|
5
|
+
- The README no longer states the first public release date, that no
|
|
6
|
+
production use by other people is known, that longer soak tests are open
|
|
7
|
+
work, or that version 1.0 makes no claim of measured scale.
|
|
8
|
+
`docs/versioning.md` keeps the other three limits, and the README links it.
|
|
9
|
+
The comparison pages keep the first public release date.
|
|
10
|
+
|
|
11
|
+
## 1.0.3 - 2026-10-18
|
|
12
|
+
|
|
13
|
+
- Add `docs/maintenance.md`. It tells you who maintains the package, how CI
|
|
14
|
+
checks each change, how a release is published, what you keep if
|
|
15
|
+
maintenance stops, and how to become a maintainer. The README and the
|
|
16
|
+
comparison pages now link to this page. They and `docs/versioning.md` no
|
|
17
|
+
longer state a count of maintainers. A new test fails when a page states
|
|
18
|
+
one.
|
|
19
|
+
|
|
3
20
|
## 1.0.2 - 2026-10-15
|
|
4
21
|
|
|
5
22
|
- Add four comparison pages in `docs/compare/`: Restate virtual objects, DBOS
|
package/README.md
CHANGED
|
@@ -13,12 +13,11 @@ explains the model and when to use it.
|
|
|
13
13
|
|
|
14
14
|
**Status.** Version 1.0: the public API follows semantic versioning and does
|
|
15
15
|
not break before 2.0. [Versioning](docs/versioning.md) gives the limits of the
|
|
16
|
-
promise.
|
|
16
|
+
promise.
|
|
17
17
|
|
|
18
18
|
**Production use.** One first-party application with more than 100,000 users
|
|
19
|
-
runs it in production. That is a count of users, not a measure of load.
|
|
20
|
-
|
|
21
|
-
are development measurements, and longer soak tests are open work.
|
|
19
|
+
runs it in production. That is a count of users, not a measure of load. The
|
|
20
|
+
[benchmarks](docs/benchmarks.md) are development measurements.
|
|
22
21
|
|
|
23
22
|
**It is not** Solid Queue, SolidJS, or the `service_actor` gem, and it is not
|
|
24
23
|
affiliated with Rails or Cloudflare.
|
|
@@ -294,6 +293,7 @@ then shows a tested Solid Objects version with its limits:
|
|
|
294
293
|
- [Operations and recovery](docs/operations.md)
|
|
295
294
|
- [Observability and diagnostics](docs/observability.md)
|
|
296
295
|
- [Detailed architecture](docs/architecture.md)
|
|
296
|
+
- [Maintenance and continuity](docs/maintenance.md)
|
|
297
297
|
- [Detailed documentation](docs/)
|
|
298
298
|
|
|
299
299
|
The benchmarks, parity ledger, dashboard, browser setup, and exhaustive API
|
|
@@ -303,9 +303,7 @@ notes remain in `docs/`, where long documentation can be long on purpose.
|
|
|
303
303
|
|
|
304
304
|
Version 1.0 promises a stable public API. The correctness core has automated
|
|
305
305
|
coverage across the supported databases, browser runtime, recovery paths, and
|
|
306
|
-
packaged artifact.
|
|
307
|
-
[benchmarks](docs/benchmarks.md) are development measurements, and longer soak
|
|
308
|
-
tests are open work. [Versioning](docs/versioning.md) says what a release can
|
|
306
|
+
packaged artifact. [Versioning](docs/versioning.md) says what a release can
|
|
309
307
|
change. The Cloudflare backend is experimental and is outside that promise.
|
|
310
308
|
|
|
311
309
|
Solid Objects is released under the [MIT License](MIT-LICENSE). It is an
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "1.0.
|
|
1
|
+
export declare const VERSION = "1.0.4";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = "1.0.
|
|
1
|
+
export const VERSION = "1.0.4";
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/docs/compare/dbos.md
CHANGED
|
@@ -353,7 +353,7 @@ How it works:
|
|
|
353
353
|
|
|
354
354
|
- First public release of the npm package: August 13, 2026.
|
|
355
355
|
- Version 1.0.0: October 13, 2026. The public API follows [semantic versioning](../versioning.md).
|
|
356
|
-
-
|
|
356
|
+
- [Maintenance and continuity](../maintenance.md) tells you who maintains the project and how a release is made.
|
|
357
357
|
- One first-party application with more than 100,000 users runs it in production. That is a count of users, not a measure of load. No production use by other people is known.
|
|
358
358
|
- The [benchmarks](../benchmarks.md) are development measurements. Longer soak tests are open work.
|
|
359
359
|
|
|
@@ -258,7 +258,7 @@ How it works:
|
|
|
258
258
|
|
|
259
259
|
- First public release of the npm package: August 13, 2026.
|
|
260
260
|
- Version 1.0.0: October 13, 2026. The public API follows [semantic versioning](../versioning.md).
|
|
261
|
-
-
|
|
261
|
+
- [Maintenance and continuity](../maintenance.md) tells you who maintains the project and how a release is made.
|
|
262
262
|
- One first-party application with more than 100,000 users runs it in production. That is a count of users, not a measure of load. No production use by other people is known.
|
|
263
263
|
- The [benchmarks](../benchmarks.md) are development measurements. Longer soak tests are open work.
|
|
264
264
|
|
package/docs/compare/restate.md
CHANGED
|
@@ -254,7 +254,7 @@ A model call can run again after a crash, because effects run at least once. If
|
|
|
254
254
|
|
|
255
255
|
- First public release of the npm package: August 13, 2026.
|
|
256
256
|
- Version 1.0.0: October 13, 2026. The public API follows [semantic versioning](../versioning.md).
|
|
257
|
-
-
|
|
257
|
+
- [Maintenance and continuity](../maintenance.md) tells you who maintains the project and how a release is made.
|
|
258
258
|
- One first-party application with more than 100,000 users runs it in production. That is a count of users, not a measure of load. No production use by other people is known.
|
|
259
259
|
- The [benchmarks](../benchmarks.md) are development measurements. Longer soak tests are open work.
|
|
260
260
|
|
package/docs/compare/rivetkit.md
CHANGED
|
@@ -246,7 +246,7 @@ How it works:
|
|
|
246
246
|
|
|
247
247
|
- First public release of the npm package: August 13, 2026.
|
|
248
248
|
- Version 1.0.0: October 13, 2026. The public API follows [semantic versioning](../versioning.md).
|
|
249
|
-
-
|
|
249
|
+
- [Maintenance and continuity](../maintenance.md) tells you who maintains the project and how a release is made.
|
|
250
250
|
- One first-party application with more than 100,000 users runs it in production. That is a count of users, not a measure of load. No production use by other people is known.
|
|
251
251
|
- The [benchmarks](../benchmarks.md) are development measurements. Longer soak tests are open work.
|
|
252
252
|
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Maintenance and continuity
|
|
2
|
+
|
|
3
|
+
This page tells you who maintains Solid Objects, how a release is made, and
|
|
4
|
+
what you keep if maintenance stops. It also tells you how to help maintain the
|
|
5
|
+
project.
|
|
6
|
+
|
|
7
|
+
## Who maintains it
|
|
8
|
+
|
|
9
|
+
Lucas Carlson ([@cardmagic](https://github.com/cardmagic)) is the lead
|
|
10
|
+
maintainer of the npm package `solid-objects` and of the Ruby gem
|
|
11
|
+
[`solid_objects`](https://github.com/cardmagic/solid-objects-ruby). The two
|
|
12
|
+
packages use the same model and the same correctness contract. A change to the
|
|
13
|
+
model goes into both packages, and the [parity ledger](parity.md) records each
|
|
14
|
+
difference between them.
|
|
15
|
+
|
|
16
|
+
The same maintainer sells [Solid Objects Pro](https://solidobjects.pro), a
|
|
17
|
+
commercial package that batches operations at scale. Pro depends on this
|
|
18
|
+
package. This package does not depend on Pro, and it needs no account, license
|
|
19
|
+
key, or service from the maintainer.
|
|
20
|
+
|
|
21
|
+
## How a change is checked
|
|
22
|
+
|
|
23
|
+
CI runs on each push and each pull request:
|
|
24
|
+
|
|
25
|
+
- Types, formatting, documentation links, the unit tests with coverage, and
|
|
26
|
+
the packaged artifact.
|
|
27
|
+
- The suite on the oldest supported Node.js version.
|
|
28
|
+
- The database suites on PostgreSQL and MySQL, and the Redis wake-up suite.
|
|
29
|
+
- The browser runtime in Chromium.
|
|
30
|
+
|
|
31
|
+
[Supported versions](support.md) lists the CI matrix. The
|
|
32
|
+
[correctness contract](correctness.md) lists the guarantees that the tests
|
|
33
|
+
check.
|
|
34
|
+
|
|
35
|
+
## How a release is made
|
|
36
|
+
|
|
37
|
+
1. The maintainer pushes a version tag, for example `v1.0.3`.
|
|
38
|
+
2. GitHub Actions runs all test jobs again on that tag.
|
|
39
|
+
3. If all test jobs pass, GitHub Actions publishes the package to npm with
|
|
40
|
+
trusted publishing. The repository keeps no npm token, and npm shows a
|
|
41
|
+
provenance attestation for each version.
|
|
42
|
+
4. The same job makes a GitHub release from the changelog.
|
|
43
|
+
|
|
44
|
+
[Releasing](releasing.md) gives the full procedure. [Versioning](versioning.md)
|
|
45
|
+
tells you what a release can change. [CHANGELOG.md](../CHANGELOG.md) lists each
|
|
46
|
+
release.
|
|
47
|
+
|
|
48
|
+
## What you keep if maintenance stops
|
|
49
|
+
|
|
50
|
+
- **Your data.** With the SQL runtime, actor state, mailboxes, reminders, and
|
|
51
|
+
effects are rows in your application's database. No service of the
|
|
52
|
+
maintainer holds your data.
|
|
53
|
+
- **The code.** The [MIT License](../MIT-LICENSE) lets anyone use, change,
|
|
54
|
+
fork, and publish the code.
|
|
55
|
+
- **The checks.** The tests and the CI configuration are in this repository. A
|
|
56
|
+
fork can check its changes with the same suite.
|
|
57
|
+
|
|
58
|
+
## Help maintain Solid Objects
|
|
59
|
+
|
|
60
|
+
The project wants more maintainers. Experience with TypeScript and Node.js,
|
|
61
|
+
with locks and transactions in PostgreSQL or MySQL, or with Rails helps.
|
|
62
|
+
|
|
63
|
+
1. Read [CONTRIBUTING.md](../CONTRIBUTING.md).
|
|
64
|
+
2. Send a small pull request: a fix, a test, or a correction to a guide.
|
|
65
|
+
3. After some of your pull requests are merged, open an
|
|
66
|
+
[issue](https://github.com/cardmagic/solid-objects-js/issues) to ask to
|
|
67
|
+
become a maintainer.
|
|
68
|
+
|
|
69
|
+
To report a vulnerability, use the private process in
|
|
70
|
+
[SECURITY.md](../SECURITY.md).
|
package/docs/versioning.md
CHANGED
|
@@ -41,8 +41,8 @@ change. A patch release does not raise a minimum version.
|
|
|
41
41
|
|
|
42
42
|
Version 1.0 is a promise about the API. It is not a claim of measured scale.
|
|
43
43
|
The [benchmarks](benchmarks.md) are development measurements and do not
|
|
44
|
-
guarantee capacity. Longer soak tests are open work.
|
|
45
|
-
|
|
44
|
+
guarantee capacity. Longer soak tests are open work. No production use by
|
|
45
|
+
other people is known.
|
|
46
46
|
|
|
47
47
|
## Releases before 1.0
|
|
48
48
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "solid-objects",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "Fix race conditions across Node.js processes: ordered operations, expiring holds, and state that survives a restart, in your SQL database. A SQL-backed virtual actor library for TypeScript and Node.js.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|