Skip to content

Commit 78d82c4

Browse files
authored
chore: switch to independent versioning (#298)
1 parent 609903f commit 78d82c4

5 files changed

Lines changed: 13 additions & 19 deletions

File tree

.changeset/config.json

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,7 @@
77
}
88
],
99
"commit": false,
10-
"fixed": [
11-
[
12-
"@transloadit/node",
13-
"transloadit",
14-
"@transloadit/types",
15-
"@transloadit/utils",
16-
"@transloadit/zod"
17-
]
18-
],
10+
"fixed": [],
1911
"linked": [],
2012
"access": "public",
2113
"baseBranch": "main",

.github/workflows/ci.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,12 @@ jobs:
5353
.split('\n')
5454
.filter(Boolean)
5555
56-
const packageFiles = diffNames.filter((file) => file.endsWith('package.json'))
56+
const packageFiles = diffNames.filter((file) => {
57+
if (!file.endsWith('package.json')) {
58+
return false
59+
}
60+
return !file.startsWith('docs/fingerprint/')
61+
})
5762
const lockfileChanged = diffNames.includes('yarn.lock')
5863
5964
if (packageFiles.length === 0) {

CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,8 +121,8 @@ Notes:
121121

122122
### Release FAQ
123123

124-
- **Lockstep versions:** Changesets use a fixed group, so version bumps and releases are always in lock‑step across `transloadit`, `@transloadit/node`, `@transloadit/types`, and `@transloadit/zod`.
124+
- **Independent versions:** Changesets are not fixed to a single version. Only packages listed in a changeset bump; internal dependency changes auto-bump dependents (patch) via `updateInternalDependencies`.
125125
- **Legacy parity:** `transloadit` is generated from `@transloadit/node` artifacts via `scripts/prepare-transloadit.ts`, then verified with `yarn parity:transloadit`. Only `package.json` metadata drift is allowed; any other drift fails.
126126
- **Accepting intentional drift:** run `node scripts/prepare-transloadit.ts` before updating the parity baseline, then follow the parity tool instructions to regenerate `docs/fingerprint/*` so the baseline reflects the latest build.
127127
- **Experimental packages:** Scoped packages (`@transloadit/node`, `@transloadit/types`, `@transloadit/zod`) publish with the `experimental` dist-tag. The unscoped `transloadit` package remains stable.
128-
- **Changelog visibility:** Because versions are locked, a changeset that only lists scoped packages will still bump `transloadit` but may leave its changelog empty. If a change affects `transloadit` users (which happens because it is just a generated clone of `@transloadit/node`, so if it is affected, `transloadit` is too automatically), include `transloadit` in the changeset so the changelog entry is visible.
128+
- **Changelog visibility:** `transloadit` is generated from `@transloadit/node` artifacts. If a change affects `@transloadit/node`, include `transloadit` in the same changeset so its changelog stays in sync.

docs/fingerprint/transloadit-baseline.json

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,7 @@
1313
".": "./dist/Transloadit.js",
1414
"./package.json": "./package.json"
1515
},
16-
"files": [
17-
"dist",
18-
"src"
19-
]
16+
"files": ["dist", "src"]
2017
},
2118
"files": [
2219
{

docs/monorepo-architecture.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,8 @@ All internal scripts are TypeScript and rely on Node’s built-in type stripping
9999

100100
- `@transloadit/node` is canonical.
101101
- `transloadit` is generated from the same artifacts and fingerprinted.
102-
- `@transloadit/types` and `@transloadit/zod` are versioned in lock‑step (changesets).
102+
- When `@transloadit/node` changes, include `transloadit` in the same Changeset to keep parity.
103+
- Packages are versioned independently via Changesets (no fixed version group).
103104

104105
### Parity verification
105106

@@ -140,8 +141,7 @@ Only `package.json` metadata drift is currently allowed; any other file differen
140141
- [x] Use `yarn changeset` for changes
141142
- [x] Use `yarn changeset version` to bump versions
142143
- [ ] Use `yarn changeset publish` to publish packages
143-
- [x] Keep `transloadit` and `@transloadit/node` versions synchronized
144-
- [x] Decide whether `@transloadit/types` tracks same version or diverges
144+
- [x] Use independent versioning across packages
145145

146146
### Implementation phases
147147

0 commit comments

Comments
 (0)