@bensandee/tooling 0.51.0 → 0.51.1

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 (2) hide show
  1. package/dist/bin.mjs +32 -20
  2. package/package.json +2 -2
package/dist/bin.mjs CHANGED
@@ -1369,7 +1369,7 @@ const PER_PACKAGE_DEV_DEPS = {
1369
1369
  "@types/node": {
1370
1370
  "@changesets/cli": "2.30.0",
1371
1371
  "@release-it/bumper": "7.0.5",
1372
- "@types/node": "24.12.0",
1372
+ "@types/node": "24.12.2",
1373
1373
  "commit-and-tag-version": "12.7.1",
1374
1374
  "knip": "6.3.1",
1375
1375
  "lefthook": "2.1.5",
@@ -1385,7 +1385,7 @@ const PER_PACKAGE_DEV_DEPS = {
1385
1385
  tsdown: {
1386
1386
  "@changesets/cli": "2.30.0",
1387
1387
  "@release-it/bumper": "7.0.5",
1388
- "@types/node": "24.12.0",
1388
+ "@types/node": "24.12.2",
1389
1389
  "commit-and-tag-version": "12.7.1",
1390
1390
  "knip": "6.3.1",
1391
1391
  "lefthook": "2.1.5",
@@ -1401,7 +1401,7 @@ const PER_PACKAGE_DEV_DEPS = {
1401
1401
  typescript: {
1402
1402
  "@changesets/cli": "2.30.0",
1403
1403
  "@release-it/bumper": "7.0.5",
1404
- "@types/node": "24.12.0",
1404
+ "@types/node": "24.12.2",
1405
1405
  "commit-and-tag-version": "12.7.1",
1406
1406
  "knip": "6.3.1",
1407
1407
  "lefthook": "2.1.5",
@@ -1417,7 +1417,7 @@ const PER_PACKAGE_DEV_DEPS = {
1417
1417
  vitest: {
1418
1418
  "@changesets/cli": "2.30.0",
1419
1419
  "@release-it/bumper": "7.0.5",
1420
- "@types/node": "24.12.0",
1420
+ "@types/node": "24.12.2",
1421
1421
  "commit-and-tag-version": "12.7.1",
1422
1422
  "knip": "6.3.1",
1423
1423
  "lefthook": "2.1.5",
@@ -1436,7 +1436,7 @@ const ROOT_DEV_DEPS = {
1436
1436
  knip: {
1437
1437
  "@changesets/cli": "2.30.0",
1438
1438
  "@release-it/bumper": "7.0.5",
1439
- "@types/node": "24.12.0",
1439
+ "@types/node": "24.12.2",
1440
1440
  "commit-and-tag-version": "12.7.1",
1441
1441
  "knip": "6.3.1",
1442
1442
  "lefthook": "2.1.5",
@@ -1452,7 +1452,7 @@ const ROOT_DEV_DEPS = {
1452
1452
  lefthook: {
1453
1453
  "@changesets/cli": "2.30.0",
1454
1454
  "@release-it/bumper": "7.0.5",
1455
- "@types/node": "24.12.0",
1455
+ "@types/node": "24.12.2",
1456
1456
  "commit-and-tag-version": "12.7.1",
1457
1457
  "knip": "6.3.1",
1458
1458
  "lefthook": "2.1.5",
@@ -1468,7 +1468,7 @@ const ROOT_DEV_DEPS = {
1468
1468
  oxlint: {
1469
1469
  "@changesets/cli": "2.30.0",
1470
1470
  "@release-it/bumper": "7.0.5",
1471
- "@types/node": "24.12.0",
1471
+ "@types/node": "24.12.2",
1472
1472
  "commit-and-tag-version": "12.7.1",
1473
1473
  "knip": "6.3.1",
1474
1474
  "lefthook": "2.1.5",
@@ -1509,7 +1509,7 @@ function addReleaseDeps(deps, config) {
1509
1509
  deps["release-it"] = {
1510
1510
  "@changesets/cli": "2.30.0",
1511
1511
  "@release-it/bumper": "7.0.5",
1512
- "@types/node": "24.12.0",
1512
+ "@types/node": "24.12.2",
1513
1513
  "commit-and-tag-version": "12.7.1",
1514
1514
  "knip": "6.3.1",
1515
1515
  "lefthook": "2.1.5",
@@ -1525,7 +1525,7 @@ function addReleaseDeps(deps, config) {
1525
1525
  if (config.structure === "monorepo") deps["@release-it/bumper"] = {
1526
1526
  "@changesets/cli": "2.30.0",
1527
1527
  "@release-it/bumper": "7.0.5",
1528
- "@types/node": "24.12.0",
1528
+ "@types/node": "24.12.2",
1529
1529
  "commit-and-tag-version": "12.7.1",
1530
1530
  "knip": "6.3.1",
1531
1531
  "lefthook": "2.1.5",
@@ -1543,7 +1543,7 @@ function addReleaseDeps(deps, config) {
1543
1543
  deps["commit-and-tag-version"] = {
1544
1544
  "@changesets/cli": "2.30.0",
1545
1545
  "@release-it/bumper": "7.0.5",
1546
- "@types/node": "24.12.0",
1546
+ "@types/node": "24.12.2",
1547
1547
  "commit-and-tag-version": "12.7.1",
1548
1548
  "knip": "6.3.1",
1549
1549
  "lefthook": "2.1.5",
@@ -1561,7 +1561,7 @@ function addReleaseDeps(deps, config) {
1561
1561
  deps["@changesets/cli"] = {
1562
1562
  "@changesets/cli": "2.30.0",
1563
1563
  "@release-it/bumper": "7.0.5",
1564
- "@types/node": "24.12.0",
1564
+ "@types/node": "24.12.2",
1565
1565
  "commit-and-tag-version": "12.7.1",
1566
1566
  "knip": "6.3.1",
1567
1567
  "lefthook": "2.1.5",
@@ -1596,12 +1596,12 @@ async function generatePackageJson(ctx) {
1596
1596
  const devDeps = { ...ROOT_DEV_DEPS };
1597
1597
  if (!isMonorepo) Object.assign(devDeps, PER_PACKAGE_DEV_DEPS);
1598
1598
  devDeps["@bensandee/config"] = isWorkspacePackage(ctx, "@bensandee/config") ? "workspace:*" : "0.10.2";
1599
- devDeps["@bensandee/tooling"] = isWorkspacePackage(ctx, "@bensandee/tooling") ? "workspace:*" : "0.51.0";
1599
+ devDeps["@bensandee/tooling"] = isWorkspacePackage(ctx, "@bensandee/tooling") ? "workspace:*" : "0.51.1";
1600
1600
  if (ctx.config.useEslintPlugin) devDeps["@bensandee/eslint-plugin"] = isWorkspacePackage(ctx, "@bensandee/eslint-plugin") ? "workspace:*" : "0.12.0";
1601
1601
  if (ctx.config.formatter === "oxfmt") devDeps["oxfmt"] = {
1602
1602
  "@changesets/cli": "2.30.0",
1603
1603
  "@release-it/bumper": "7.0.5",
1604
- "@types/node": "24.12.0",
1604
+ "@types/node": "24.12.2",
1605
1605
  "commit-and-tag-version": "12.7.1",
1606
1606
  "knip": "6.3.1",
1607
1607
  "lefthook": "2.1.5",
@@ -1617,7 +1617,7 @@ async function generatePackageJson(ctx) {
1617
1617
  if (ctx.config.formatter === "prettier") devDeps["prettier"] = {
1618
1618
  "@changesets/cli": "2.30.0",
1619
1619
  "@release-it/bumper": "7.0.5",
1620
- "@types/node": "24.12.0",
1620
+ "@types/node": "24.12.2",
1621
1621
  "commit-and-tag-version": "12.7.1",
1622
1622
  "knip": "6.3.1",
1623
1623
  "lefthook": "2.1.5",
@@ -1711,7 +1711,7 @@ async function generatePackageJson(ctx) {
1711
1711
  packageManager: `pnpm@${{
1712
1712
  "@changesets/cli": "2.30.0",
1713
1713
  "@release-it/bumper": "7.0.5",
1714
- "@types/node": "24.12.0",
1714
+ "@types/node": "24.12.2",
1715
1715
  "commit-and-tag-version": "12.7.1",
1716
1716
  "knip": "6.3.1",
1717
1717
  "lefthook": "2.1.5",
@@ -3370,7 +3370,7 @@ async function runGenerators(ctx) {
3370
3370
  function generateMigratePrompt(results, config, detected) {
3371
3371
  const sections = [];
3372
3372
  const timestamp = (/* @__PURE__ */ new Date()).toISOString();
3373
- sections.push(`# Migration Prompt\n\n_Generated by \`@bensandee/tooling@0.51.0 repo:sync\` on ${timestamp}_\n`);
3373
+ sections.push(`# Migration Prompt\n\n_Generated by \`@bensandee/tooling@0.51.1 repo:sync\` on ${timestamp}_\n`);
3374
3374
  const changed = results.filter((r) => r.action === "created" || r.action === "updated" || r.action === "archived");
3375
3375
  if (changed.length > 0) {
3376
3376
  const items = changed.map((r) => {
@@ -5518,15 +5518,27 @@ const CHECK_HEALTHCHECK = {
5518
5518
  start_interval: "5s"
5519
5519
  };
5520
5520
  /**
5521
+ * Whether a service image references a compose variable substitution (e.g. `${REGISTRY:-}…`).
5522
+ * Consumers use this pattern to parametrize the build-vs-registry split, so such services
5523
+ * are locally built rather than pulled from a registry — forcing `pull_policy: never` for
5524
+ * the check avoids failures when the base compose sets `pull_policy: always` for prod deploys.
5525
+ */
5526
+ function isLocallyBuiltImage(image) {
5527
+ return image !== void 0 && /\$\{[^}]*\}/.test(image);
5528
+ }
5529
+ /**
5521
5530
  * Generate a check overlay YAML string from parsed services.
5522
- * Sets `restart: "no"` on all services, and overrides healthcheck intervals
5523
- * for services that define a healthcheck in the base compose file.
5531
+ * Sets `restart: "no"` on all services, overrides healthcheck intervals
5532
+ * for services that define a healthcheck in the base compose file, and
5533
+ * forces `pull_policy: never` on services whose image uses a variable
5534
+ * substitution (locally-built images that aren't pushed to a registry).
5524
5535
  */
5525
5536
  function generateCheckOverlay(services) {
5526
5537
  const serviceOverrides = {};
5527
5538
  for (const service of services) {
5528
5539
  const override = { restart: "no" };
5529
5540
  if (service.hasHealthcheck) override["healthcheck"] = { ...CHECK_HEALTHCHECK };
5541
+ if (isLocallyBuiltImage(service.image)) override["pull_policy"] = "never";
5530
5542
  serviceOverrides[service.name] = override;
5531
5543
  }
5532
5544
  return stringify({ services: serviceOverrides });
@@ -6475,7 +6487,7 @@ const webhookSendCommand = defineCommand({
6475
6487
  const main = defineCommand({
6476
6488
  meta: {
6477
6489
  name: "bst",
6478
- version: "0.51.0",
6490
+ version: "0.51.1",
6479
6491
  description: "Bootstrap and maintain standardized TypeScript project tooling"
6480
6492
  },
6481
6493
  subCommands: {
@@ -6496,7 +6508,7 @@ const main = defineCommand({
6496
6508
  "webhook:send": webhookSendCommand
6497
6509
  }
6498
6510
  });
6499
- console.log(`@bensandee/tooling v0.51.0`);
6511
+ console.log(`@bensandee/tooling v0.51.1`);
6500
6512
  async function run() {
6501
6513
  await runMain(main);
6502
6514
  process.exit(process.exitCode ?? 0);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bensandee/tooling",
3
- "version": "0.51.0",
3
+ "version": "0.51.1",
4
4
  "description": "CLI tool to bootstrap and maintain standardized TypeScript project tooling",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -48,7 +48,7 @@
48
48
  "devDependencies": {
49
49
  "@changesets/cli": "2.30.0",
50
50
  "@release-it/bumper": "7.0.5",
51
- "@types/node": "24.12.0",
51
+ "@types/node": "24.12.2",
52
52
  "@types/picomatch": "4.0.3",
53
53
  "commit-and-tag-version": "12.7.1",
54
54
  "prettier": "3.8.2",