@baseplate-dev/project-builder-cli 0.5.1 → 0.5.2
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 +455 -0
- package/dist/commands/config.js +1 -1
- package/dist/utils/project-resolver.js +2 -2
- package/package.json +12 -12
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,455 @@
|
|
|
1
|
+
# @baseplate-dev/project-builder-cli
|
|
2
|
+
|
|
3
|
+
## 0.5.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#756](https://github.com/halfdomelabs/baseplate/pull/756) [`dd40bcd`](https://github.com/halfdomelabs/baseplate/commit/dd40bcd219c79f0cd7b66c0427c77deda0664072) Thanks [@kingston](https://github.com/kingston)! - Upgrade packages to fix security vulnerabilities and update to latest versions
|
|
8
|
+
|
|
9
|
+
**Security fixes:**
|
|
10
|
+
- @modelcontextprotocol/sdk: 1.25.1 → 1.26.0 (fixes CVE-2026-25536 - cross-client data leak)
|
|
11
|
+
- fastify: 5.6.2 → 5.7.4 (security patches)
|
|
12
|
+
- diff: 8.0.2 → 8.0.3 (fixes CVE-2026-24001 - DoS vulnerability)
|
|
13
|
+
- testcontainers: 11.10.0 → 11.11.0 (fixes undici vulnerability)
|
|
14
|
+
|
|
15
|
+
**Package updates (monorepo):**
|
|
16
|
+
- @tailwindcss/vite: 4.1.13 → 4.1.18
|
|
17
|
+
- tailwindcss: 4.1.13 → 4.1.18
|
|
18
|
+
- @tanstack/react-router: 1.139.7 → 1.159.5
|
|
19
|
+
- @tanstack/router-plugin: 1.139.7 → 1.159.5
|
|
20
|
+
- @testing-library/jest-dom: 6.6.3 → 6.9.1
|
|
21
|
+
- concurrently: 9.0.1 → 9.2.1
|
|
22
|
+
- ts-morph: 26.0.0 → 27.0.2
|
|
23
|
+
|
|
24
|
+
**Package updates (generated projects):**
|
|
25
|
+
- prisma/@prisma/client/@prisma/adapter-pg: 7.2.0 → 7.4.0
|
|
26
|
+
- postmark: 4.0.2 → 4.0.5
|
|
27
|
+
- axios: 1.12.0 → 1.13.5
|
|
28
|
+
|
|
29
|
+
- Updated dependencies [[`ef1354d`](https://github.com/halfdomelabs/baseplate/commit/ef1354da11e2c48a80af03f44834555ce63a2948), [`b4db947`](https://github.com/halfdomelabs/baseplate/commit/b4db947f256c4b8639d7f18ffb58bb2b1646c497), [`683eb15`](https://github.com/halfdomelabs/baseplate/commit/683eb15c2c37259266959e0760b419e07f70a27e), [`dd40bcd`](https://github.com/halfdomelabs/baseplate/commit/dd40bcd219c79f0cd7b66c0427c77deda0664072)]:
|
|
30
|
+
- @baseplate-dev/project-builder-server@0.5.2
|
|
31
|
+
- @baseplate-dev/project-builder-lib@0.5.2
|
|
32
|
+
- @baseplate-dev/project-builder-web@0.5.2
|
|
33
|
+
- @baseplate-dev/project-builder-common@0.5.2
|
|
34
|
+
- @baseplate-dev/utils@0.5.2
|
|
35
|
+
|
|
36
|
+
## 0.5.1
|
|
37
|
+
|
|
38
|
+
### Patch Changes
|
|
39
|
+
|
|
40
|
+
- [#737](https://github.com/halfdomelabs/baseplate/pull/737) [`55aa484`](https://github.com/halfdomelabs/baseplate/commit/55aa484621f2dc5b1195b6b537e7d6ad215bc499) Thanks [@kingston](https://github.com/kingston)! - Refactor plugin spec system with lazy initialization and clear setup/use phases
|
|
41
|
+
|
|
42
|
+
This refactoring overhauls the plugin spec system to introduce a two-phase architecture with lazy initialization:
|
|
43
|
+
|
|
44
|
+
**New Architecture:**
|
|
45
|
+
- **Setup phase (init)**: Plugins register their implementations during module initialization using mutable field containers
|
|
46
|
+
- **Use phase**: Consumers access registered items through a read-only interface, with lazy initialization on first access
|
|
47
|
+
- **FieldMap-based specs**: New `createFieldMapSpec` helper provides type-safe containers (maps, arrays, named arrays, scalars) with automatic source tracking
|
|
48
|
+
|
|
49
|
+
**Key changes:**
|
|
50
|
+
- Rename `PluginImplementationStore` to `PluginSpecStore` with cached `use()` instances
|
|
51
|
+
- Rename `createPlatformPluginExport` to `createPluginModule`
|
|
52
|
+
- Add required `name` field to all plugin modules for unique identification
|
|
53
|
+
- Convert all specs to use `createFieldMapSpec` with typed containers
|
|
54
|
+
- Update all plugin modules to use new registration methods (`.add()`, `.set()`, `.push()`)
|
|
55
|
+
- Introduce `ModuleContext` with `moduleKey` and `pluginKey` for better source tracking
|
|
56
|
+
- Specs now define both `init` (mutable setup interface) and `use` (read-only consumption interface)
|
|
57
|
+
|
|
58
|
+
- Updated dependencies [[`1debcb8`](https://github.com/halfdomelabs/baseplate/commit/1debcb89807fafdd7415a659f4bebbad0d69f072), [`55aa484`](https://github.com/halfdomelabs/baseplate/commit/55aa484621f2dc5b1195b6b537e7d6ad215bc499), [`2de5d5c`](https://github.com/halfdomelabs/baseplate/commit/2de5d5c43c5354571d50707a99b4028ff8792534)]:
|
|
59
|
+
- @baseplate-dev/project-builder-server@0.5.1
|
|
60
|
+
- @baseplate-dev/project-builder-lib@0.5.1
|
|
61
|
+
- @baseplate-dev/project-builder-web@0.5.1
|
|
62
|
+
- @baseplate-dev/project-builder-common@0.5.1
|
|
63
|
+
- @baseplate-dev/utils@0.5.1
|
|
64
|
+
|
|
65
|
+
## 0.5.0
|
|
66
|
+
|
|
67
|
+
### Patch Changes
|
|
68
|
+
|
|
69
|
+
- [#730](https://github.com/halfdomelabs/baseplate/pull/730) [`397018b`](https://github.com/halfdomelabs/baseplate/commit/397018b8c30949f75734369b58c67d7afcc424a9) Thanks [@kingston](https://github.com/kingston)! - Add `sync-file` command for incrementally applying generated files
|
|
70
|
+
- New CLI command: `pnpm baseplate sync-file <project> <app> <files...>`
|
|
71
|
+
- New MCP action: `sync-file` for programmatic access
|
|
72
|
+
- Allows applying specific generated files without performing a full sync
|
|
73
|
+
- Writes matching files to both working directory and generated folder
|
|
74
|
+
- Useful for incrementally fixing generators one file at a time
|
|
75
|
+
|
|
76
|
+
- Updated dependencies [[`97bd14e`](https://github.com/halfdomelabs/baseplate/commit/97bd14e381206b54e55c22264d1d406e83146146), [`397018b`](https://github.com/halfdomelabs/baseplate/commit/397018b8c30949f75734369b58c67d7afcc424a9)]:
|
|
77
|
+
- @baseplate-dev/project-builder-lib@0.5.0
|
|
78
|
+
- @baseplate-dev/project-builder-server@0.5.0
|
|
79
|
+
- @baseplate-dev/project-builder-web@0.5.0
|
|
80
|
+
- @baseplate-dev/project-builder-common@0.5.0
|
|
81
|
+
- @baseplate-dev/utils@0.5.0
|
|
82
|
+
|
|
83
|
+
## 0.4.4
|
|
84
|
+
|
|
85
|
+
### Patch Changes
|
|
86
|
+
|
|
87
|
+
- Updated dependencies []:
|
|
88
|
+
- @baseplate-dev/project-builder-server@0.4.4
|
|
89
|
+
- @baseplate-dev/project-builder-common@0.4.4
|
|
90
|
+
- @baseplate-dev/project-builder-web@0.4.4
|
|
91
|
+
- @baseplate-dev/project-builder-lib@0.4.4
|
|
92
|
+
- @baseplate-dev/utils@0.4.4
|
|
93
|
+
|
|
94
|
+
## 0.4.3
|
|
95
|
+
|
|
96
|
+
### Patch Changes
|
|
97
|
+
|
|
98
|
+
- [#724](https://github.com/halfdomelabs/baseplate/pull/724) [`9638baf`](https://github.com/halfdomelabs/baseplate/commit/9638baf19fa0f68bed961daa0fe889822246c11a) Thanks [@kingston](https://github.com/kingston)! - Add create-generator action and CLI command to scaffold new generators with boilerplate code
|
|
99
|
+
|
|
100
|
+
- Updated dependencies [[`9638baf`](https://github.com/halfdomelabs/baseplate/commit/9638baf19fa0f68bed961daa0fe889822246c11a), [`68ab5bd`](https://github.com/halfdomelabs/baseplate/commit/68ab5bdbc98a0b4bbc46059bfabd84666a2ab18b), [`83e4e7f`](https://github.com/halfdomelabs/baseplate/commit/83e4e7f60adf67480cebb4ff419c015ff282010d)]:
|
|
101
|
+
- @baseplate-dev/project-builder-server@0.4.3
|
|
102
|
+
- @baseplate-dev/project-builder-common@0.4.3
|
|
103
|
+
- @baseplate-dev/project-builder-web@0.4.3
|
|
104
|
+
- @baseplate-dev/project-builder-lib@0.4.3
|
|
105
|
+
- @baseplate-dev/utils@0.4.3
|
|
106
|
+
|
|
107
|
+
## 0.4.2
|
|
108
|
+
|
|
109
|
+
### Patch Changes
|
|
110
|
+
|
|
111
|
+
- [#697](https://github.com/halfdomelabs/baseplate/pull/697) [`11fa86f`](https://github.com/halfdomelabs/baseplate/commit/11fa86fb8e7a209175f132b1b3d59cd24cf13d54) Thanks [@kingston](https://github.com/kingston)! - Ignore \*.map files from built output in package.json
|
|
112
|
+
|
|
113
|
+
- Updated dependencies [[`bde61e3`](https://github.com/halfdomelabs/baseplate/commit/bde61e3e5dfc4d6d19c0d2a71491de4605cd2c20), [`e8576b9`](https://github.com/halfdomelabs/baseplate/commit/e8576b9ba5912acf9d81bcc1b18a0fbc8df91220), [`6828918`](https://github.com/halfdomelabs/baseplate/commit/6828918121bb244fdc84758d28a87370cbc70992), [`11fa86f`](https://github.com/halfdomelabs/baseplate/commit/11fa86fb8e7a209175f132b1b3d59cd24cf13d54), [`795ee4c`](https://github.com/halfdomelabs/baseplate/commit/795ee4c18e7b393fb9247ced23a12de5e219ab15), [`4be6c7d`](https://github.com/halfdomelabs/baseplate/commit/4be6c7dc7d900c37585b93cf5bb7198de6a41f1f), [`18c7cf1`](https://github.com/halfdomelabs/baseplate/commit/18c7cf19c0d171b734eb9bcc53320ccf02baa08a), [`a173074`](https://github.com/halfdomelabs/baseplate/commit/a1730748bbbc21ea22d9d91bf28e34d2c351425b)]:
|
|
114
|
+
- @baseplate-dev/project-builder-lib@0.4.2
|
|
115
|
+
- @baseplate-dev/project-builder-server@0.4.2
|
|
116
|
+
- @baseplate-dev/project-builder-web@0.4.2
|
|
117
|
+
- @baseplate-dev/utils@0.4.2
|
|
118
|
+
- @baseplate-dev/project-builder-common@0.4.2
|
|
119
|
+
|
|
120
|
+
## 0.4.1
|
|
121
|
+
|
|
122
|
+
### Patch Changes
|
|
123
|
+
|
|
124
|
+
- Updated dependencies [[`b0152d1`](https://github.com/halfdomelabs/baseplate/commit/b0152d16a8ab34b3cc52a10284c350172a39a1ee)]:
|
|
125
|
+
- @baseplate-dev/project-builder-server@0.4.1
|
|
126
|
+
- @baseplate-dev/project-builder-common@0.4.1
|
|
127
|
+
- @baseplate-dev/project-builder-web@0.4.1
|
|
128
|
+
- @baseplate-dev/project-builder-lib@0.4.1
|
|
129
|
+
- @baseplate-dev/utils@0.4.1
|
|
130
|
+
|
|
131
|
+
## 0.4.0
|
|
132
|
+
|
|
133
|
+
### Minor Changes
|
|
134
|
+
|
|
135
|
+
- [#687](https://github.com/halfdomelabs/baseplate/pull/687) [`57e15c0`](https://github.com/halfdomelabs/baseplate/commit/57e15c085099508898756385661df9cf54108466) Thanks [@kingston](https://github.com/kingston)! - Add support for generating the root of a monorepo
|
|
136
|
+
|
|
137
|
+
### Patch Changes
|
|
138
|
+
|
|
139
|
+
- [#681](https://github.com/halfdomelabs/baseplate/pull/681) [`d324059`](https://github.com/halfdomelabs/baseplate/commit/d3240594e1c2bc2348eb1a7e8938f97ea5f55d22) Thanks [@kingston](https://github.com/kingston)! - Add option to diff to fail when diff shows any differences
|
|
140
|
+
|
|
141
|
+
- Updated dependencies [[`9f22eef`](https://github.com/halfdomelabs/baseplate/commit/9f22eef139c8db2dde679f6424eb23e024e37d19), [`839cbdf`](https://github.com/halfdomelabs/baseplate/commit/839cbdfc6ddc059aa86d24bf6ec5d8e95cce9042), [`839cbdf`](https://github.com/halfdomelabs/baseplate/commit/839cbdfc6ddc059aa86d24bf6ec5d8e95cce9042), [`c3c2a00`](https://github.com/halfdomelabs/baseplate/commit/c3c2a001d57a21f76e064af55941a43bedf26f18), [`c3c2a00`](https://github.com/halfdomelabs/baseplate/commit/c3c2a001d57a21f76e064af55941a43bedf26f18), [`57e15c0`](https://github.com/halfdomelabs/baseplate/commit/57e15c085099508898756385661df9cf54108466)]:
|
|
142
|
+
- @baseplate-dev/project-builder-lib@0.4.0
|
|
143
|
+
- @baseplate-dev/project-builder-server@0.4.0
|
|
144
|
+
- @baseplate-dev/project-builder-web@0.4.0
|
|
145
|
+
- @baseplate-dev/utils@0.4.0
|
|
146
|
+
- @baseplate-dev/project-builder-common@0.4.0
|
|
147
|
+
|
|
148
|
+
## 0.3.8
|
|
149
|
+
|
|
150
|
+
### Patch Changes
|
|
151
|
+
|
|
152
|
+
- Updated dependencies []:
|
|
153
|
+
- @baseplate-dev/project-builder-server@0.3.8
|
|
154
|
+
- @baseplate-dev/project-builder-common@0.3.8
|
|
155
|
+
- @baseplate-dev/project-builder-web@0.3.8
|
|
156
|
+
- @baseplate-dev/project-builder-lib@0.3.8
|
|
157
|
+
- @baseplate-dev/utils@0.3.8
|
|
158
|
+
|
|
159
|
+
## 0.3.7
|
|
160
|
+
|
|
161
|
+
### Patch Changes
|
|
162
|
+
|
|
163
|
+
- Updated dependencies [[`e4ed458`](https://github.com/halfdomelabs/baseplate/commit/e4ed458682ae533cdd98e290049027f79519a8b9)]:
|
|
164
|
+
- @baseplate-dev/project-builder-server@0.3.7
|
|
165
|
+
- @baseplate-dev/project-builder-common@0.3.7
|
|
166
|
+
- @baseplate-dev/project-builder-web@0.3.7
|
|
167
|
+
- @baseplate-dev/project-builder-lib@0.3.7
|
|
168
|
+
- @baseplate-dev/utils@0.3.7
|
|
169
|
+
|
|
170
|
+
## 0.3.6
|
|
171
|
+
|
|
172
|
+
### Patch Changes
|
|
173
|
+
|
|
174
|
+
- Updated dependencies [[`2bb3f43`](https://github.com/halfdomelabs/baseplate/commit/2bb3f43051a96ded9ff4918e16e48eb434f48d75)]:
|
|
175
|
+
- @baseplate-dev/project-builder-web@0.3.6
|
|
176
|
+
- @baseplate-dev/project-builder-common@0.3.6
|
|
177
|
+
- @baseplate-dev/project-builder-server@0.3.6
|
|
178
|
+
- @baseplate-dev/project-builder-lib@0.3.6
|
|
179
|
+
- @baseplate-dev/utils@0.3.6
|
|
180
|
+
|
|
181
|
+
## 0.3.5
|
|
182
|
+
|
|
183
|
+
### Patch Changes
|
|
184
|
+
|
|
185
|
+
- Updated dependencies [[`fe86213`](https://github.com/halfdomelabs/baseplate/commit/fe86213911e935f2f34ffd9b2b3a39b1b3194aad), [`fe86213`](https://github.com/halfdomelabs/baseplate/commit/fe86213911e935f2f34ffd9b2b3a39b1b3194aad)]:
|
|
186
|
+
- @baseplate-dev/project-builder-web@0.3.5
|
|
187
|
+
- @baseplate-dev/project-builder-server@0.3.5
|
|
188
|
+
- @baseplate-dev/project-builder-common@0.3.5
|
|
189
|
+
- @baseplate-dev/project-builder-lib@0.3.5
|
|
190
|
+
- @baseplate-dev/utils@0.3.5
|
|
191
|
+
|
|
192
|
+
## 0.3.4
|
|
193
|
+
|
|
194
|
+
### Patch Changes
|
|
195
|
+
|
|
196
|
+
- [#650](https://github.com/halfdomelabs/baseplate/pull/650) [`783a495`](https://github.com/halfdomelabs/baseplate/commit/783a495411e76d28b781bbe0af5f57300a282353) Thanks [@kingston](https://github.com/kingston)! - Add PORT_OFFSET support for parallel development environments
|
|
197
|
+
- Added PORT_OFFSET environment variable to run multiple dev container instances
|
|
198
|
+
- Changed default ports to safer, more memorable ranges (4300, 4400, 4500)
|
|
199
|
+
- Server, web, and dev server ports now respect PORT_OFFSET from root .env file
|
|
200
|
+
- Each instance can run on predictable, non-conflicting ports
|
|
201
|
+
- Created helper script for setting up parallel environments with different offsets
|
|
202
|
+
|
|
203
|
+
- [#645](https://github.com/halfdomelabs/baseplate/pull/645) [`f39ce15`](https://github.com/halfdomelabs/baseplate/commit/f39ce158c37d23472db96a42daccdc80f6d48f54) Thanks [@kingston](https://github.com/kingston)! - Add unified project resolver system with project name support across all CLI commands. Users can now reference projects by their package.json name instead of full directory paths. Includes new `projects list` command and automatic discovery of example projects via INCLUDE_EXAMPLES environment variable. All commands (serve, diff, templates extract, snapshot) now support both project names and directory paths.
|
|
204
|
+
|
|
205
|
+
- [#643](https://github.com/halfdomelabs/baseplate/pull/643) [`7d9e6d0`](https://github.com/halfdomelabs/baseplate/commit/7d9e6d01e0a9920cee4c4d499beeffc1c663494a) Thanks [@kingston](https://github.com/kingston)! - Upgrade to TypeScript 5.8 with erasable syntax only mode
|
|
206
|
+
|
|
207
|
+
This upgrade modernizes the codebase with TypeScript 5.8, enables erasable syntax only mode for better performance, and updates runtime dependencies.
|
|
208
|
+
|
|
209
|
+
**Key Changes:**
|
|
210
|
+
- Upgraded TypeScript to version 5.8
|
|
211
|
+
- Enabled `erasableSyntaxOnly` compiler option for improved build performance
|
|
212
|
+
- Updated Node.js requirement to 22.18
|
|
213
|
+
- Updated PNPM requirement to 10.15
|
|
214
|
+
- Fixed parameter property syntax to be compatible with erasable syntax only mode
|
|
215
|
+
|
|
216
|
+
- Updated dependencies [[`783a495`](https://github.com/halfdomelabs/baseplate/commit/783a495411e76d28b781bbe0af5f57300a282353), [`f450b7f`](https://github.com/halfdomelabs/baseplate/commit/f450b7f75cf5ad71c2bdb1c077526251aa240dd0), [`7d9e6d0`](https://github.com/halfdomelabs/baseplate/commit/7d9e6d01e0a9920cee4c4d499beeffc1c663494a)]:
|
|
217
|
+
- @baseplate-dev/project-builder-server@0.3.4
|
|
218
|
+
- @baseplate-dev/project-builder-web@0.3.4
|
|
219
|
+
- @baseplate-dev/project-builder-lib@0.3.4
|
|
220
|
+
- @baseplate-dev/utils@0.3.4
|
|
221
|
+
- @baseplate-dev/project-builder-common@0.3.4
|
|
222
|
+
|
|
223
|
+
## 0.3.3
|
|
224
|
+
|
|
225
|
+
### Patch Changes
|
|
226
|
+
|
|
227
|
+
- Updated dependencies [[`1815ac5`](https://github.com/halfdomelabs/baseplate/commit/1815ac50cb2d9cc69c8c82187b3d597467b9f367)]:
|
|
228
|
+
- @baseplate-dev/project-builder-web@0.3.3
|
|
229
|
+
- @baseplate-dev/project-builder-common@0.3.3
|
|
230
|
+
- @baseplate-dev/project-builder-lib@0.3.3
|
|
231
|
+
- @baseplate-dev/project-builder-server@0.3.3
|
|
232
|
+
- @baseplate-dev/utils@0.3.3
|
|
233
|
+
|
|
234
|
+
## 0.3.2
|
|
235
|
+
|
|
236
|
+
### Patch Changes
|
|
237
|
+
|
|
238
|
+
- Updated dependencies [[`cca138a`](https://github.com/halfdomelabs/baseplate/commit/cca138a84abbb901ab628bf571ae29211a180dbb)]:
|
|
239
|
+
- @baseplate-dev/project-builder-lib@0.3.2
|
|
240
|
+
- @baseplate-dev/project-builder-common@0.3.2
|
|
241
|
+
- @baseplate-dev/project-builder-server@0.3.2
|
|
242
|
+
- @baseplate-dev/project-builder-web@0.3.2
|
|
243
|
+
- @baseplate-dev/utils@0.3.2
|
|
244
|
+
|
|
245
|
+
## 0.3.1
|
|
246
|
+
|
|
247
|
+
### Patch Changes
|
|
248
|
+
|
|
249
|
+
- Updated dependencies []:
|
|
250
|
+
- @baseplate-dev/project-builder-common@0.3.1
|
|
251
|
+
- @baseplate-dev/project-builder-server@0.3.1
|
|
252
|
+
- @baseplate-dev/project-builder-web@0.3.1
|
|
253
|
+
- @baseplate-dev/project-builder-lib@0.3.1
|
|
254
|
+
- @baseplate-dev/utils@0.3.1
|
|
255
|
+
|
|
256
|
+
## 0.3.0
|
|
257
|
+
|
|
258
|
+
### Patch Changes
|
|
259
|
+
|
|
260
|
+
- [#626](https://github.com/halfdomelabs/baseplate/pull/626) [`8ec33fc`](https://github.com/halfdomelabs/baseplate/commit/8ec33fcdc8fea9cb20e79586b854bf075270ab53) Thanks [@kingston](https://github.com/kingston)! - Remove dotenv references and replace with native node --env-file option
|
|
261
|
+
|
|
262
|
+
- [#619](https://github.com/halfdomelabs/baseplate/pull/619) [`687a47e`](https://github.com/halfdomelabs/baseplate/commit/687a47e5e39abc5138ba3fc2d0db9cfee6e4dbfe) Thanks [@kingston](https://github.com/kingston)! - Add comprehensive snapshot management CLI commands for granular control of project differences
|
|
263
|
+
|
|
264
|
+
This adds a complete suite of snapshot commands to manage persistent differences between generated and working codebases:
|
|
265
|
+
|
|
266
|
+
**New Commands:**
|
|
267
|
+
- `baseplate snapshot save <project-directory> <app>` - Save snapshot of current differences (with confirmation prompt)
|
|
268
|
+
- `baseplate snapshot add <project-directory> <app> <files...>` - Add specific files to snapshot tracking
|
|
269
|
+
- `baseplate snapshot add --deleted <project-directory> <app> <files...>` - Mark files as intentionally deleted
|
|
270
|
+
- `baseplate snapshot remove <project-directory> <app> <files...>` - Remove files from snapshot tracking
|
|
271
|
+
- `baseplate snapshot show <project-directory> <app>` - Display current snapshot contents
|
|
272
|
+
|
|
273
|
+
**Features:**
|
|
274
|
+
- Granular file-level snapshot management following established CLI patterns
|
|
275
|
+
- Integration with existing snapshot storage system (`.baseplate-snapshot/` directory)
|
|
276
|
+
- Automatic snapshot directory resolution with `--snapshot-dir` option
|
|
277
|
+
- Comprehensive error handling and user confirmation for destructive operations
|
|
278
|
+
- Support for tracking both modified and intentionally deleted files
|
|
279
|
+
|
|
280
|
+
These commands enable the generator development workflow described in the design doc, allowing developers to maintain persistent baselines of expected differences while iterating on generator templates.
|
|
281
|
+
|
|
282
|
+
- Updated dependencies [[`687a47e`](https://github.com/halfdomelabs/baseplate/commit/687a47e5e39abc5138ba3fc2d0db9cfee6e4dbfe), [`85e6413`](https://github.com/halfdomelabs/baseplate/commit/85e6413f8e3ad0043daca3bb9fa3ca5a27843a65), [`aaf8634`](https://github.com/halfdomelabs/baseplate/commit/aaf8634abcf76d938072c7afc43e6e99a2519b13), [`687a47e`](https://github.com/halfdomelabs/baseplate/commit/687a47e5e39abc5138ba3fc2d0db9cfee6e4dbfe), [`d0b08b8`](https://github.com/halfdomelabs/baseplate/commit/d0b08b89a07b9aa845212ec90e2a6123fbecbbe5), [`687a47e`](https://github.com/halfdomelabs/baseplate/commit/687a47e5e39abc5138ba3fc2d0db9cfee6e4dbfe)]:
|
|
283
|
+
- @baseplate-dev/project-builder-server@0.3.0
|
|
284
|
+
- @baseplate-dev/project-builder-lib@0.3.0
|
|
285
|
+
- @baseplate-dev/project-builder-web@0.3.0
|
|
286
|
+
- @baseplate-dev/project-builder-common@0.3.0
|
|
287
|
+
- @baseplate-dev/utils@0.3.0
|
|
288
|
+
|
|
289
|
+
## 0.2.6
|
|
290
|
+
|
|
291
|
+
### Patch Changes
|
|
292
|
+
|
|
293
|
+
- Updated dependencies [[`e639251`](https://github.com/halfdomelabs/baseplate/commit/e639251f25094bb17f126e8604e505b1037b5640), [`cc6cd6c`](https://github.com/halfdomelabs/baseplate/commit/cc6cd6cce6bd0d97a68d7bd5b46408e0877d990b)]:
|
|
294
|
+
- @baseplate-dev/project-builder-lib@0.2.6
|
|
295
|
+
- @baseplate-dev/project-builder-web@0.2.6
|
|
296
|
+
- @baseplate-dev/project-builder-server@0.2.6
|
|
297
|
+
- @baseplate-dev/project-builder-common@0.2.6
|
|
298
|
+
- @baseplate-dev/utils@0.2.6
|
|
299
|
+
|
|
300
|
+
## 0.2.5
|
|
301
|
+
|
|
302
|
+
### Patch Changes
|
|
303
|
+
|
|
304
|
+
- [#614](https://github.com/halfdomelabs/baseplate/pull/614) [`e0d690c`](https://github.com/halfdomelabs/baseplate/commit/e0d690c1e139f93a8ff60c9e0c90bc72cdf705a4) Thanks [@kingston](https://github.com/kingston)! - Add .baseplateignore support and sync command with force-overwrite
|
|
305
|
+
|
|
306
|
+
Enhance the `baseplate diff` command to support ignore patterns via a `.baseplateignore` file, similar to `.gitignore`. This reduces noise in diff output by filtering out expected differences like environment files, logs, and build artifacts.
|
|
307
|
+
|
|
308
|
+
Additionally, introduces a new `baseplate sync` command (replacing `build`) with a `--force-overwrite` flag that respects ignore patterns when overwriting files.
|
|
309
|
+
|
|
310
|
+
Features:
|
|
311
|
+
- Uses `.baseplateignore` file in project root with gitignore-style syntax
|
|
312
|
+
- Includes sensible default patterns (.env, \*.log, node_modules/, dist/, build/, .DS_Store, Thumbs.db)
|
|
313
|
+
- Can be disabled with `--no-ignore-file` flag
|
|
314
|
+
- Backward compatible (enabled by default)
|
|
315
|
+
- Graceful fallback when `.baseplateignore` doesn't exist
|
|
316
|
+
|
|
317
|
+
- [#614](https://github.com/halfdomelabs/baseplate/pull/614) [`e0d690c`](https://github.com/halfdomelabs/baseplate/commit/e0d690c1e139f93a8ff60c9e0c90bc72cdf705a4) Thanks [@kingston](https://github.com/kingston)! - Add force overwrite mode for sync command
|
|
318
|
+
|
|
319
|
+
Adds a `--force-overwrite` flag to the `baseplate sync` command that bypasses merge conflict detection and overwrites existing files with generated content without attempting to merge changes. When force overwrite is enabled, files matching patterns in `.baseplateignore` are automatically excluded from being overwritten to preserve user customizations.
|
|
320
|
+
|
|
321
|
+
Also updates the diff command to load `.baseplateignore` patterns from each app directory instead of the base directory, providing more granular control over which files are ignored during diff operations.
|
|
322
|
+
|
|
323
|
+
- Updated dependencies [[`e0d690c`](https://github.com/halfdomelabs/baseplate/commit/e0d690c1e139f93a8ff60c9e0c90bc72cdf705a4), [`e0d690c`](https://github.com/halfdomelabs/baseplate/commit/e0d690c1e139f93a8ff60c9e0c90bc72cdf705a4), [`01c47c7`](https://github.com/halfdomelabs/baseplate/commit/01c47c77f039a463de03271de6461cd969d5a8e8)]:
|
|
324
|
+
- @baseplate-dev/project-builder-server@0.2.5
|
|
325
|
+
- @baseplate-dev/project-builder-lib@0.2.5
|
|
326
|
+
- @baseplate-dev/project-builder-web@0.2.5
|
|
327
|
+
- @baseplate-dev/project-builder-common@0.2.5
|
|
328
|
+
- @baseplate-dev/utils@0.2.5
|
|
329
|
+
|
|
330
|
+
## 0.2.4
|
|
331
|
+
|
|
332
|
+
### Patch Changes
|
|
333
|
+
|
|
334
|
+
- Updated dependencies [[`ffe791f`](https://github.com/halfdomelabs/baseplate/commit/ffe791f6ab44e82c8481f3a18df9262dec71cff6)]:
|
|
335
|
+
- @baseplate-dev/utils@0.2.4
|
|
336
|
+
- @baseplate-dev/project-builder-common@0.2.4
|
|
337
|
+
- @baseplate-dev/project-builder-lib@0.2.4
|
|
338
|
+
- @baseplate-dev/project-builder-server@0.2.4
|
|
339
|
+
- @baseplate-dev/project-builder-web@0.2.4
|
|
340
|
+
|
|
341
|
+
## 0.2.3
|
|
342
|
+
|
|
343
|
+
### Patch Changes
|
|
344
|
+
|
|
345
|
+
- [#600](https://github.com/halfdomelabs/baseplate/pull/600) [`09f804e`](https://github.com/halfdomelabs/baseplate/commit/09f804e430180f42177d1fe34a2891618a04df16) Thanks [@kingston](https://github.com/kingston)! - Add command to diff generated output from actual output
|
|
346
|
+
|
|
347
|
+
Adds a new `baseplate diff` command that shows the difference between what would be generated and what currently exists in the working directory. This helps developers avoid losing code when they write in generated files and then revert to test generation.
|
|
348
|
+
|
|
349
|
+
Features:
|
|
350
|
+
- Shows unified diff format by default
|
|
351
|
+
- Supports `--compact` flag for summary format with change counts
|
|
352
|
+
- Supports `--app` flag to filter by specific applications
|
|
353
|
+
- Supports `--glob` flag to filter files by glob patterns
|
|
354
|
+
- Handles binary files using isbinaryfile package
|
|
355
|
+
- Modular design with separate utilities for diffing, formatting, and comparison
|
|
356
|
+
|
|
357
|
+
- [#596](https://github.com/halfdomelabs/baseplate/pull/596) [`059edf7`](https://github.com/halfdomelabs/baseplate/commit/059edf771755f1ff846494f238d777a9d1f7f5d7) Thanks [@kingston](https://github.com/kingston)! - Add templates generate CLI command for regenerating template files without extraction
|
|
358
|
+
- Add `templates generate <directory> <app>` CLI command to regenerate template files from existing extractor.json configurations
|
|
359
|
+
- Add `--skip-clean` option to skip cleaning output directories
|
|
360
|
+
- Add `generateTemplateFiles` function in sync package that initializes plugins and writes generated files without running extraction
|
|
361
|
+
- Add `generateTemplateFilesForProject` wrapper function in project-builder-server
|
|
362
|
+
- Command allows manual modification of extractor.json followed by regeneration without full extraction process
|
|
363
|
+
|
|
364
|
+
- Updated dependencies [[`09f804e`](https://github.com/halfdomelabs/baseplate/commit/09f804e430180f42177d1fe34a2891618a04df16), [`228a3be`](https://github.com/halfdomelabs/baseplate/commit/228a3be02e514188da1c0a03ea9f1ba8d5383668), [`a506e88`](https://github.com/halfdomelabs/baseplate/commit/a506e88893bf395916ef3fbf6dd9dd7c0ff17acb), [`a506e88`](https://github.com/halfdomelabs/baseplate/commit/a506e88893bf395916ef3fbf6dd9dd7c0ff17acb), [`059edf7`](https://github.com/halfdomelabs/baseplate/commit/059edf771755f1ff846494f238d777a9d1f7f5d7), [`059edf7`](https://github.com/halfdomelabs/baseplate/commit/059edf771755f1ff846494f238d777a9d1f7f5d7)]:
|
|
365
|
+
- @baseplate-dev/project-builder-server@0.2.3
|
|
366
|
+
- @baseplate-dev/project-builder-web@0.2.3
|
|
367
|
+
- @baseplate-dev/project-builder-common@0.2.3
|
|
368
|
+
- @baseplate-dev/project-builder-lib@0.2.3
|
|
369
|
+
- @baseplate-dev/utils@0.2.3
|
|
370
|
+
|
|
371
|
+
## 0.2.2
|
|
372
|
+
|
|
373
|
+
### Patch Changes
|
|
374
|
+
|
|
375
|
+
- [#585](https://github.com/halfdomelabs/baseplate/pull/585) [`def0b7a`](https://github.com/halfdomelabs/baseplate/commit/def0b7a202ce49a93714a8acf876ff845c2e8e24) Thanks [@kingston](https://github.com/kingston)! - Show project directory not found error for plugin discovery
|
|
376
|
+
|
|
377
|
+
- Updated dependencies [[`def0b7a`](https://github.com/halfdomelabs/baseplate/commit/def0b7a202ce49a93714a8acf876ff845c2e8e24), [`f8c9284`](https://github.com/halfdomelabs/baseplate/commit/f8c9284752c12c6aab70481bf98e6fa402e61075), [`def0b7a`](https://github.com/halfdomelabs/baseplate/commit/def0b7a202ce49a93714a8acf876ff845c2e8e24), [`b6bc11f`](https://github.com/halfdomelabs/baseplate/commit/b6bc11fdf199c8de40832eb88ea6f6cfc83aa5d7)]:
|
|
378
|
+
- @baseplate-dev/project-builder-web@0.2.2
|
|
379
|
+
- @baseplate-dev/utils@0.2.2
|
|
380
|
+
- @baseplate-dev/project-builder-common@0.2.2
|
|
381
|
+
- @baseplate-dev/project-builder-server@0.2.2
|
|
382
|
+
- @baseplate-dev/project-builder-lib@0.2.2
|
|
383
|
+
|
|
384
|
+
## 0.2.1
|
|
385
|
+
|
|
386
|
+
### Patch Changes
|
|
387
|
+
|
|
388
|
+
- Updated dependencies [[`4d7677e`](https://github.com/halfdomelabs/baseplate/commit/4d7677e8ef2da8ed045ee7fe409519f0f124b34c), [`df2c7d5`](https://github.com/halfdomelabs/baseplate/commit/df2c7d59895944991a1c569862187eb787db2d4c)]:
|
|
389
|
+
- @baseplate-dev/project-builder-web@0.2.1
|
|
390
|
+
- @baseplate-dev/project-builder-lib@0.2.1
|
|
391
|
+
- @baseplate-dev/project-builder-server@0.2.1
|
|
392
|
+
- @baseplate-dev/project-builder-common@0.2.1
|
|
393
|
+
- @baseplate-dev/utils@0.2.1
|
|
394
|
+
|
|
395
|
+
## 0.2.0
|
|
396
|
+
|
|
397
|
+
### Patch Changes
|
|
398
|
+
|
|
399
|
+
- [#568](https://github.com/halfdomelabs/baseplate/pull/568) [`06b4faf`](https://github.com/halfdomelabs/baseplate/commit/06b4fafaf3d2ed848d959a9911b9bfa26702d4a3) Thanks [@kingston](https://github.com/kingston)! - Enable the import-x/consistent-type-specifier-style rule to clean up type imports
|
|
400
|
+
|
|
401
|
+
- [#576](https://github.com/halfdomelabs/baseplate/pull/576) [`fd63554`](https://github.com/halfdomelabs/baseplate/commit/fd635544eb6df0385501f61f3e51bce554633458) Thanks [@kingston](https://github.com/kingston)! - Rename entity UID to Key to make it clearer what is happening
|
|
402
|
+
|
|
403
|
+
- [#580](https://github.com/halfdomelabs/baseplate/pull/580) [`a94eed9`](https://github.com/halfdomelabs/baseplate/commit/a94eed9c12236c5fb772d998b9c34ca876c10c13) Thanks [@kingston](https://github.com/kingston)! - Refactor template commands to allow listing/deleting of templates from CLI
|
|
404
|
+
|
|
405
|
+
- [#580](https://github.com/halfdomelabs/baseplate/pull/580) [`a94eed9`](https://github.com/halfdomelabs/baseplate/commit/a94eed9c12236c5fb772d998b9c34ca876c10c13) Thanks [@kingston](https://github.com/kingston)! - Add command to list available generators with templates
|
|
406
|
+
|
|
407
|
+
- [#570](https://github.com/halfdomelabs/baseplate/pull/570) [`56a3a89`](https://github.com/halfdomelabs/baseplate/commit/56a3a8944b9a557cca0484d78851fca10122e5f9) Thanks [@kingston](https://github.com/kingston)! - Implement phase 1 of reverse template generator v2
|
|
408
|
+
|
|
409
|
+
- Updated dependencies [[`06b4faf`](https://github.com/halfdomelabs/baseplate/commit/06b4fafaf3d2ed848d959a9911b9bfa26702d4a3), [`fd63554`](https://github.com/halfdomelabs/baseplate/commit/fd635544eb6df0385501f61f3e51bce554633458), [`a94eed9`](https://github.com/halfdomelabs/baseplate/commit/a94eed9c12236c5fb772d998b9c34ca876c10c13), [`56a3a89`](https://github.com/halfdomelabs/baseplate/commit/56a3a8944b9a557cca0484d78851fca10122e5f9)]:
|
|
410
|
+
- @baseplate-dev/project-builder-server@0.2.0
|
|
411
|
+
- @baseplate-dev/project-builder-lib@0.2.0
|
|
412
|
+
- @baseplate-dev/project-builder-web@0.2.0
|
|
413
|
+
- @baseplate-dev/utils@0.2.0
|
|
414
|
+
- @baseplate-dev/project-builder-common@0.2.0
|
|
415
|
+
|
|
416
|
+
## 0.1.3
|
|
417
|
+
|
|
418
|
+
### Patch Changes
|
|
419
|
+
|
|
420
|
+
- [#562](https://github.com/halfdomelabs/baseplate/pull/562) [`30fdf49`](https://github.com/halfdomelabs/baseplate/commit/30fdf4988de244c30d13c93b7761587d4c1413ad) Thanks [@kingston](https://github.com/kingston)! - Switch to Typescript project references for building/watching project
|
|
421
|
+
|
|
422
|
+
- Updated dependencies [[`8631cfe`](https://github.com/halfdomelabs/baseplate/commit/8631cfec32f1e5286d6d1ab0eb0e858461672545), [`30fdf49`](https://github.com/halfdomelabs/baseplate/commit/30fdf4988de244c30d13c93b7761587d4c1413ad)]:
|
|
423
|
+
- @baseplate-dev/project-builder-lib@0.1.3
|
|
424
|
+
- @baseplate-dev/project-builder-web@0.1.3
|
|
425
|
+
- @baseplate-dev/project-builder-server@0.1.3
|
|
426
|
+
- @baseplate-dev/utils@0.1.3
|
|
427
|
+
- @baseplate-dev/project-builder-common@0.1.3
|
|
428
|
+
|
|
429
|
+
## 0.1.2
|
|
430
|
+
|
|
431
|
+
### Patch Changes
|
|
432
|
+
|
|
433
|
+
- [#560](https://github.com/halfdomelabs/baseplate/pull/560) [`7e38ae9`](https://github.com/halfdomelabs/baseplate/commit/7e38ae9102c7c8ea958d2dab94e76be848d1c1a8) Thanks [@kingston](https://github.com/kingston)! - Add README files to all packages and plugins explaining their purpose within the Baseplate monorepo.
|
|
434
|
+
|
|
435
|
+
- Updated dependencies [[`7e38ae9`](https://github.com/halfdomelabs/baseplate/commit/7e38ae9102c7c8ea958d2dab94e76be848d1c1a8)]:
|
|
436
|
+
- @baseplate-dev/project-builder-web@0.1.2
|
|
437
|
+
- @baseplate-dev/project-builder-server@0.1.2
|
|
438
|
+
- @baseplate-dev/project-builder-lib@0.1.2
|
|
439
|
+
- @baseplate-dev/project-builder-common@0.1.2
|
|
440
|
+
- @baseplate-dev/utils@0.1.2
|
|
441
|
+
|
|
442
|
+
## 0.1.1
|
|
443
|
+
|
|
444
|
+
### Patch Changes
|
|
445
|
+
|
|
446
|
+
- [#559](https://github.com/halfdomelabs/baseplate/pull/559) [`17dd71e`](https://github.com/halfdomelabs/baseplate/commit/17dd71e3b9f83e3359eb007f8eab1c4792bdbb8b) Thanks [@kingston](https://github.com/kingston)! - Rename workspace to @baseplate-dev/\* and reset versions to 0.1.0
|
|
447
|
+
|
|
448
|
+
- [#557](https://github.com/halfdomelabs/baseplate/pull/557) [`9caaa0a`](https://github.com/halfdomelabs/baseplate/commit/9caaa0aed05677a75fed79601dcfd24ec85ab5ad) Thanks [@kingston](https://github.com/kingston)! - Update LICENSE to modified MPL-2.0 license
|
|
449
|
+
|
|
450
|
+
- Updated dependencies [[`17dd71e`](https://github.com/halfdomelabs/baseplate/commit/17dd71e3b9f83e3359eb007f8eab1c4792bdbb8b), [`9caaa0a`](https://github.com/halfdomelabs/baseplate/commit/9caaa0aed05677a75fed79601dcfd24ec85ab5ad)]:
|
|
451
|
+
- @baseplate-dev/project-builder-common@0.1.1
|
|
452
|
+
- @baseplate-dev/project-builder-server@0.1.1
|
|
453
|
+
- @baseplate-dev/project-builder-lib@0.1.1
|
|
454
|
+
- @baseplate-dev/project-builder-web@0.1.1
|
|
455
|
+
- @baseplate-dev/utils@0.1.1
|
package/dist/commands/config.js
CHANGED
|
@@ -38,7 +38,7 @@ export function addConfigCommand(program) {
|
|
|
38
38
|
if (err instanceof ZodError) {
|
|
39
39
|
const error = err.message.includes('Unrecognized key')
|
|
40
40
|
? new Error(`Unknown configuration key: ${path}`)
|
|
41
|
-
: new Error(`Unable to set configuration key: ${
|
|
41
|
+
: new Error(`Unable to set configuration key: ${err.message}`);
|
|
42
42
|
throw error;
|
|
43
43
|
}
|
|
44
44
|
throw err;
|
|
@@ -81,7 +81,7 @@ export async function resolveProject(nameOrPath) {
|
|
|
81
81
|
});
|
|
82
82
|
const projectInfo = projectMap.get(nameOrPath);
|
|
83
83
|
if (!projectInfo) {
|
|
84
|
-
const availableProjects = [...projectMap.keys()].
|
|
84
|
+
const availableProjects = [...projectMap.keys()].toSorted();
|
|
85
85
|
throw new Error(`Project '${nameOrPath}' not found. Available projects: ${availableProjects.join(', ')}\n` +
|
|
86
86
|
'You can also specify a directory path directly.');
|
|
87
87
|
}
|
|
@@ -138,5 +138,5 @@ export function getProjectDirectories(projectMap) {
|
|
|
138
138
|
* @returns Array of project names
|
|
139
139
|
*/
|
|
140
140
|
export function getProjectNames(projectMap) {
|
|
141
|
-
return [...projectMap.keys()].
|
|
141
|
+
return [...projectMap.keys()].toSorted();
|
|
142
142
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@baseplate-dev/project-builder-cli",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.2",
|
|
4
4
|
"description": "Full-stack CLI builder using Baseplate generators",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cli",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"files": [
|
|
34
34
|
"README.md",
|
|
35
35
|
"LICENSE",
|
|
36
|
-
"CHANGELOG",
|
|
36
|
+
"CHANGELOG.md",
|
|
37
37
|
"dist/**/*",
|
|
38
38
|
"!dist/**/*.map",
|
|
39
39
|
"!dist/**/*.tsbuildinfo",
|
|
@@ -46,23 +46,23 @@
|
|
|
46
46
|
"pino-pretty": "13.0.0",
|
|
47
47
|
"pkg-dir": "^8.0.0",
|
|
48
48
|
"zod": "^4.1.13",
|
|
49
|
-
"@baseplate-dev/project-builder-common": "0.5.
|
|
50
|
-
"@baseplate-dev/project-builder-lib": "0.5.
|
|
51
|
-
"@baseplate-dev/project-builder-server": "0.5.
|
|
52
|
-
"@baseplate-dev/project-builder-web": "0.5.
|
|
53
|
-
"@baseplate-dev/utils": "0.5.
|
|
49
|
+
"@baseplate-dev/project-builder-common": "0.5.2",
|
|
50
|
+
"@baseplate-dev/project-builder-lib": "0.5.2",
|
|
51
|
+
"@baseplate-dev/project-builder-server": "0.5.2",
|
|
52
|
+
"@baseplate-dev/project-builder-web": "0.5.2",
|
|
53
|
+
"@baseplate-dev/utils": "0.5.2"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"@playwright/test": "1.56.1",
|
|
57
57
|
"@types/node": "^22.17.2",
|
|
58
|
-
"eslint": "9.
|
|
59
|
-
"fastify": "5.
|
|
58
|
+
"eslint": "9.39.2",
|
|
59
|
+
"fastify": "5.7.4",
|
|
60
60
|
"memfs": "4.15.1",
|
|
61
|
-
"prettier": "3.
|
|
61
|
+
"prettier": "3.8.1",
|
|
62
62
|
"tsx": "4.20.6",
|
|
63
|
-
"typescript": "5.
|
|
63
|
+
"typescript": "5.9.3",
|
|
64
64
|
"vitest": "4.0.16",
|
|
65
|
-
"@baseplate-dev/tools": "0.5.
|
|
65
|
+
"@baseplate-dev/tools": "0.5.2"
|
|
66
66
|
},
|
|
67
67
|
"engines": {
|
|
68
68
|
"node": "^22.0.0"
|