@tscircuit/cli 0.1.370 → 0.1.371

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/main.js +43 -25
  2. package/package.json +1 -1
package/dist/main.js CHANGED
@@ -72198,7 +72198,7 @@ var getGlobalDepsInstallCommand = (packageManager, deps) => {
72198
72198
  import { execSync as execSync2 } from "node:child_process";
72199
72199
  var import_semver2 = __toESM2(require_semver2(), 1);
72200
72200
  // package.json
72201
- var version = "0.1.369";
72201
+ var version = "0.1.370";
72202
72202
  var package_default = {
72203
72203
  name: "@tscircuit/cli",
72204
72204
  version,
@@ -76591,6 +76591,7 @@ var debug = Debug("tsci:push-snippet");
76591
76591
  var pushSnippet = async ({
76592
76592
  filePath,
76593
76593
  isPrivate,
76594
+ versionTag,
76594
76595
  onExit = (code) => process.exit(code),
76595
76596
  onError = (message) => console.error(message),
76596
76597
  onSuccess = (message) => console.log(message)
@@ -76672,10 +76673,13 @@ var pushSnippet = async ({
76672
76673
  const previousPackageReleases = await ky2.post("package_releases/list", {
76673
76674
  json: { package_name: scopedPackageName }
76674
76675
  }).json().then((response) => response.package_releases);
76675
- let packageVersion = packageJson.version ?? previousPackageReleases?.[previousPackageReleases.length - 1]?.version;
76676
- if (!packageVersion) {
76676
+ const lastKnownVersion = packageJson.version ?? previousPackageReleases?.[previousPackageReleases.length - 1]?.version;
76677
+ let packageVersion;
76678
+ if (!lastKnownVersion) {
76677
76679
  console.log("No package version found in package.json or previous releases, setting to 0.0.1");
76678
76680
  packageVersion = "0.0.1";
76681
+ } else {
76682
+ packageVersion = lastKnownVersion;
76679
76683
  }
76680
76684
  const updatePackageJsonVersion = (newVersion) => {
76681
76685
  if (packageJson.version) {
@@ -76733,33 +76737,46 @@ var pushSnippet = async ({
76733
76737
  return onExit(1);
76734
76738
  });
76735
76739
  }
76736
- const doesReleaseExist = await ky2.post("package_releases/get", {
76737
- json: {
76738
- package_name_with_version: `${scopedPackageName}@${packageVersion}`
76739
- }
76740
- }).json().then((response) => {
76741
- debug("doesReleaseExist", response);
76742
- if (response.package_release?.version) {
76743
- packageVersion = response.package_release.version;
76744
- updatePackageJsonVersion(response.package_release.version);
76745
- return true;
76740
+ const buildReleaseVersion = (baseVersion) => versionTag ? `${baseVersion}-${versionTag}` : baseVersion;
76741
+ let releaseVersion = buildReleaseVersion(packageVersion);
76742
+ while (true) {
76743
+ const releaseExists = await ky2.post("package_releases/get", {
76744
+ json: {
76745
+ package_name_with_version: `${scopedPackageName}@${releaseVersion}`
76746
+ }
76747
+ }).json().then((response) => {
76748
+ debug("doesReleaseExist", response);
76749
+ if (response.package_release?.version) {
76750
+ return true;
76751
+ }
76752
+ return !(response.error?.error_code === "package_release_not_found");
76753
+ }).catch((error) => {
76754
+ const httpError = error;
76755
+ if (httpError?.response?.status === 404) {
76756
+ return false;
76757
+ }
76758
+ onError(`Error checking if release exists: ${error}`);
76759
+ return;
76760
+ });
76761
+ if (releaseExists === undefined) {
76762
+ return onExit(1);
76746
76763
  }
76747
- return !(response.error?.error_code === "package_release_not_found");
76748
- }).catch((error) => {
76749
- if (error.response.status === 404) {
76750
- return false;
76764
+ if (!releaseExists) {
76765
+ break;
76751
76766
  }
76752
- onError(`Error checking if release exists: ${error}`);
76753
- });
76754
- if (doesReleaseExist) {
76755
76767
  const bumpedVersion = import_semver3.default.inc(packageVersion, "patch");
76768
+ if (!bumpedVersion) {
76769
+ onError(`Failed to increment version from ${packageVersion}`);
76770
+ return onExit(1);
76771
+ }
76756
76772
  onSuccess(`Incrementing Package Version ${packageVersion} -> ${bumpedVersion}`);
76757
76773
  packageVersion = bumpedVersion;
76758
76774
  updatePackageJsonVersion(packageVersion);
76775
+ releaseVersion = buildReleaseVersion(packageVersion);
76759
76776
  }
76760
76777
  await ky2.post("package_releases/create", {
76761
76778
  json: {
76762
- package_name_with_version: `${scopedPackageName}@${packageVersion}`
76779
+ package_name_with_version: `${scopedPackageName}@${releaseVersion}`
76763
76780
  }
76764
76781
  }).catch((error) => {
76765
76782
  onError(`Error creating release: ${error}`);
@@ -76775,7 +76792,7 @@ var pushSnippet = async ({
76775
76792
  json: {
76776
76793
  file_path: relativeFilePath,
76777
76794
  content_text: fileContent,
76778
- package_name_with_version: `${scopedPackageName}@${packageVersion}`
76795
+ package_name_with_version: `${scopedPackageName}@${releaseVersion}`
76779
76796
  }
76780
76797
  }).json().then((response) => {
76781
76798
  console.log(kleur_default.gray(`⬆︎ ${relativeFilePath}`));
@@ -76786,12 +76803,12 @@ var pushSnippet = async ({
76786
76803
  }
76787
76804
  await ky2.post("package_releases/update", {
76788
76805
  json: {
76789
- package_name_with_version: `${scopedPackageName}@${packageVersion}`,
76806
+ package_name_with_version: `${scopedPackageName}@${releaseVersion}`,
76790
76807
  ready_to_build: true
76791
76808
  }
76792
76809
  });
76793
76810
  onSuccess([
76794
- kleur_default.green(`"${tsciPackageName}@${packageVersion}" published!`),
76811
+ kleur_default.green(`"${tsciPackageName}@${releaseVersion}" published!`),
76795
76812
  `https://tscircuit.com/${scopedPackageName}`
76796
76813
  ].join(`
76797
76814
  `));
@@ -94300,10 +94317,11 @@ var registerAuthWhoami = (program3) => {
94300
94317
 
94301
94318
  // cli/push/register.ts
94302
94319
  var registerPush = (program3) => {
94303
- program3.command("push").description("Save snippet code to Registry API").argument("[file]", "Path to the snippet file").option("--private", "Make the snippet private").action(async (filePath, options = {}) => {
94320
+ program3.command("push").description("Save snippet code to Registry API").argument("[file]", "Path to the snippet file").option("--private", "Make the snippet private").option("--version-tag <tag>", "Publish as a non-latest version using the provided tag").action(async (filePath, options = {}) => {
94304
94321
  await pushSnippet({
94305
94322
  filePath,
94306
94323
  isPrivate: options.private ?? false,
94324
+ versionTag: options.versionTag,
94307
94325
  onExit: (code) => process.exit(code),
94308
94326
  onError: (message) => console.error(message),
94309
94327
  onSuccess: (message) => console.log(message)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tscircuit/cli",
3
- "version": "0.1.370",
3
+ "version": "0.1.371",
4
4
  "main": "dist/main.js",
5
5
  "devDependencies": {
6
6
  "@babel/standalone": "^7.26.9",