Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
node-version: '24'

- name: Install dependencies
run: bun install
run: bun install --frozen-lockfile

- name: Check formatting
run: bun run format:check
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
node-version: '24'

- name: Install dependencies
run: bun install
run: bun install --frozen-lockfile

- name: Generate API docs
run: bun run docs
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
registry-url: 'https://registry.npmjs.org'

- name: Install dependencies
run: bun install
run: bun install --frozen-lockfile

- name: Build
run: bun run build
Expand Down
8 changes: 0 additions & 8 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,3 @@ coverage

# Rust cross-validation harness build artifacts
tests/rust-validation/target

# Lockfile: intentionally absent until @blockchaincommons/dcbor-parse
# 1.0.0-beta.2 is on npm (the registry has beta.1, and this package needs the
# newer one). Until then no lockfile can be resolved from the registry, and a
# local install resolves that dependency through the workspace link, which
# would bake an unpublishable path into bun.lock. Commit a real lockfile, and
# switch the workflows to `bun install --frozen-lockfile`, once it publishes.
bun.lock
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ We love your input! We want to make contributing to this project as easy and tra
## We Develop with Github
We use GitHub to host code, to track issues and feature requests, and to accept Pull Requests.

## Report Bugs using Github's [issues](https://github.com/briandk/transcriptase-atom/issues)
## Report Bugs using Github's [issues](https://github.com/BlockchainCommons/bc-dcbor-pattern-ts/issues)

If you find bugs, mistakes, or inconsistencies in this project's code or documents, please let us know by [opening a new issue](./issues), but consider searching through existing issues first to check and see if the problem has already been reported. If it has, it never hurts to add a quick "+1" or "I have this problem too". This helps prioritize the most common problems and requests.

Expand Down
39 changes: 0 additions & 39 deletions MIGRATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,42 +172,3 @@ thin re-export of this package, so nothing breaks the moment you update.
+ "@blockchaincommons/dcbor-pattern": "^1.0.0-beta.1"
}
```

### 2. Version numbering restarts

`@bcts/dcbor-pattern` versions moved in lockstep with every other package in the
monorepo, which is why it reached `1.0.0-beta.6`. Each extracted package now
versions independently and starts again at `1.0.0-beta.1`. A lower version
number here does **not** mean older code.

### 3. Node and TypeScript floors moved up

| | `@bcts/dcbor-pattern` | `@blockchaincommons/dcbor-pattern` |
|---|---|---|
| Node | `>= 18` | `>= 22.12` |
| TypeScript (consumers) | 6.x | `>= 5.7` |

### 4. The IIFE / global-script build is gone

`@bcts/dcbor-pattern` shipped an additional IIFE bundle exposed through the `browser`
field. That build is dropped: IIFE entry points cannot share chunks, which forks
module-level singletons across entry points. Use the ESM entry (`import`) or the
CJS entry (`require`); both are declared in `exports` and validated in CI by
`publint` and `@arethetypeswrong/cli`.

### 5. Peer packages renamed too

Every sibling library moved from the `@bcts` scope to `@blockchaincommons`. If
you depend on more than one, rename them together so a single copy of each
shared type is resolved:

| Old | New |
|---|---|
| `@bcts/dcbor` | `@blockchaincommons/dcbor` |
| `@bcts/<name>` | `@blockchaincommons/<name>` |

### 6. What did not change

- The public API: every exported name, signature and type is identical.
- The wire format. Encodings produced by `@bcts/dcbor-pattern` decode here, and the reverse.
- Parity with the Rust reference implementation. See [`RUST_DIVERGENCES.md`](./RUST_DIVERGENCES.md).
4 changes: 0 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -208,10 +208,6 @@ matches the same strings when the pattern is parsed:
pathological regex can take exponential time where the reference's
engine is linear.

The translation is proven against the reference's engine by a differential
corpus of regex sources over text and byte subjects, replayed by
`tests/rust-validation`.

## Status - Beta

`bc-dcbor-pattern-ts` is currently under active development and in beta testing. It should not be used for production tasks until it has had further testing and auditing. See [Blockchain Commons' Development Phases](https://github.com/BlockchainCommons/Community/blob/master/release-path.md).
Expand Down
792 changes: 792 additions & 0 deletions bun.lock

Large diffs are not rendered by default.

18 changes: 9 additions & 9 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@blockchaincommons/dcbor-pattern",
"version": "1.0.0-beta.1",
"version": "1.0.0-beta.2",
"type": "module",
"sideEffects": false,
"description": "Pattern matching for dCBOR (Deterministic CBOR) for TypeScript",
Expand Down Expand Up @@ -102,6 +102,14 @@
"engines": {
"node": ">=22.12"
},
"dependencies": {
"@blockchaincommons/components": "^1.0.0-beta.4",
"@blockchaincommons/dcbor": "^1.0.0-beta.3",
"@blockchaincommons/dcbor-parse": "^1.0.0-beta.2",
"@blockchaincommons/known-values": "^1.0.0-beta.4",
"@blockchaincommons/tags": "^1.0.0-beta.3",
"@blockchaincommons/uniform-resources": "^1.0.0-beta.3"
},
"devDependencies": {
"@arethetypeswrong/cli": "^0.18.5",
"@eslint/js": "^10.0.1",
Expand All @@ -121,13 +129,5 @@
"typescript": "^7.0.2",
"typescript6": "npm:typescript@^6.0.3",
"vitest": "^5.0.1"
},
"dependencies": {
"@blockchaincommons/components": "^1.0.0-beta.3",
"@blockchaincommons/dcbor": "^1.0.0-beta.3",
"@blockchaincommons/dcbor-parse": "^1.0.0-beta.2",
"@blockchaincommons/known-values": "^1.0.0-beta.3",
"@blockchaincommons/tags": "^1.0.0-beta.3",
"@blockchaincommons/uniform-resources": "^1.0.0-beta.3"
}
}