@mannyc1/ts-release 0.0.0 → 0.0.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 (92) hide show
  1. package/README.md +70 -13
  2. package/dist/cli/command.d.ts.map +1 -1
  3. package/dist/cli/command.js +37 -2
  4. package/dist/cli/command.js.map +1 -1
  5. package/dist/cli/main.js +5 -2
  6. package/dist/cli/main.js.map +1 -1
  7. package/dist/cli/programmatic.d.ts +1 -1
  8. package/dist/cli/programmatic.d.ts.map +1 -1
  9. package/dist/cli/programmatic.js +7 -2
  10. package/dist/cli/programmatic.js.map +1 -1
  11. package/dist/domain/evidence.d.ts +49 -3
  12. package/dist/domain/evidence.d.ts.map +1 -1
  13. package/dist/domain/evidence.js +43 -2
  14. package/dist/domain/evidence.js.map +1 -1
  15. package/dist/domain/operation.d.ts +56 -2
  16. package/dist/domain/operation.d.ts.map +1 -1
  17. package/dist/domain/operation.js +47 -1
  18. package/dist/domain/operation.js.map +1 -1
  19. package/dist/domain/release.d.ts +4 -4
  20. package/dist/domain/target.d.ts +31 -1
  21. package/dist/domain/target.d.ts.map +1 -1
  22. package/dist/domain/target.js +40 -3
  23. package/dist/domain/target.js.map +1 -1
  24. package/dist/host/http-live.d.ts +7 -0
  25. package/dist/host/http-live.d.ts.map +1 -0
  26. package/dist/host/http-live.js +76 -0
  27. package/dist/host/http-live.js.map +1 -0
  28. package/dist/host/http.d.ts +40 -0
  29. package/dist/host/http.d.ts.map +1 -0
  30. package/dist/host/http.js +56 -0
  31. package/dist/host/http.js.map +1 -0
  32. package/dist/planner/errors.d.ts +4 -2
  33. package/dist/planner/errors.d.ts.map +1 -1
  34. package/dist/planner/errors.js +5 -3
  35. package/dist/planner/errors.js.map +1 -1
  36. package/dist/planner/evidence-recorder.d.ts +6 -3
  37. package/dist/planner/evidence-recorder.d.ts.map +1 -1
  38. package/dist/planner/evidence-recorder.js +149 -2
  39. package/dist/planner/evidence-recorder.js.map +1 -1
  40. package/dist/planner/executor.d.ts +41 -14
  41. package/dist/planner/executor.d.ts.map +1 -1
  42. package/dist/planner/executor.js +102 -36
  43. package/dist/planner/executor.js.map +1 -1
  44. package/dist/planner/normalize-release.d.ts.map +1 -1
  45. package/dist/planner/normalize-release.js +43 -2
  46. package/dist/planner/normalize-release.js.map +1 -1
  47. package/dist/planner/render-plan.d.ts.map +1 -1
  48. package/dist/planner/render-plan.js +9 -0
  49. package/dist/planner/render-plan.js.map +1 -1
  50. package/dist/targets/adapter-helpers.d.ts +31 -0
  51. package/dist/targets/adapter-helpers.d.ts.map +1 -0
  52. package/dist/targets/adapter-helpers.js +67 -0
  53. package/dist/targets/adapter-helpers.js.map +1 -0
  54. package/dist/targets/adapter.d.ts +3 -1
  55. package/dist/targets/adapter.d.ts.map +1 -1
  56. package/dist/targets/github.d.ts +2 -2
  57. package/dist/targets/github.d.ts.map +1 -1
  58. package/dist/targets/github.js +65 -78
  59. package/dist/targets/github.js.map +1 -1
  60. package/dist/targets/homebrew.d.ts +2 -2
  61. package/dist/targets/homebrew.d.ts.map +1 -1
  62. package/dist/targets/homebrew.js +45 -75
  63. package/dist/targets/homebrew.js.map +1 -1
  64. package/dist/targets/live.d.ts.map +1 -1
  65. package/dist/targets/live.js +10 -0
  66. package/dist/targets/live.js.map +1 -1
  67. package/dist/targets/npm.d.ts +2 -3
  68. package/dist/targets/npm.d.ts.map +1 -1
  69. package/dist/targets/npm.js +24 -49
  70. package/dist/targets/npm.js.map +1 -1
  71. package/dist/targets/pypi.d.ts +11 -0
  72. package/dist/targets/pypi.d.ts.map +1 -0
  73. package/dist/targets/pypi.js +115 -0
  74. package/dist/targets/pypi.js.map +1 -0
  75. package/dist/targets/registry.d.ts +3 -3
  76. package/dist/targets/registry.d.ts.map +1 -1
  77. package/dist/targets/scoop.d.ts +11 -0
  78. package/dist/targets/scoop.d.ts.map +1 -0
  79. package/dist/targets/scoop.js +93 -0
  80. package/dist/targets/scoop.js.map +1 -0
  81. package/examples/README.md +17 -3
  82. package/examples/github-release/release.config.json +2 -1
  83. package/examples/multi-target/artifacts/release-example-multi-target-0.1.0.tgz +1 -0
  84. package/examples/multi-target/index.js +1 -0
  85. package/examples/multi-target/package.json +7 -0
  86. package/examples/multi-target/release.config.json +62 -0
  87. package/examples/non-strict-skips/release.config.json +1 -0
  88. package/examples/pypi-registry/artifacts/release_example_pypi-0.1.0-py3-none-any.whl +1 -0
  89. package/examples/pypi-registry/release.config.json +30 -0
  90. package/examples/scoop-bucket/artifacts/release-example-scoop-0.1.0.zip +1 -0
  91. package/examples/scoop-bucket/release.config.json +36 -0
  92. package/package.json +19 -2
@@ -0,0 +1,62 @@
1
+ {
2
+ "identity": {
3
+ "name": "release-example-multi-target",
4
+ "version": "0.1.0",
5
+ "commit": "example",
6
+ "tag": "v0.1.0",
7
+ "notes": "Example coordinated release"
8
+ },
9
+ "artifacts": [
10
+ {
11
+ "id": "package",
12
+ "path": ".",
13
+ "format": "directory",
14
+ "consumers": ["npm"]
15
+ },
16
+ {
17
+ "id": "archive",
18
+ "path": "artifacts/release-example-multi-target-0.1.0.tgz",
19
+ "format": "tarball",
20
+ "consumers": ["github", "homebrew"]
21
+ }
22
+ ],
23
+ "targets": [
24
+ {
25
+ "_tag": "GitHubReleaseTarget",
26
+ "id": "github",
27
+ "repository": "owner/release-example-multi-target",
28
+ "tokenEnv": "GH_TOKEN",
29
+ "draft": true,
30
+ "prerelease": false,
31
+ "dryRunSupport": "simulated",
32
+ "mutability": "mutable-release",
33
+ "recovery": "delete-and-recreate"
34
+ },
35
+ {
36
+ "_tag": "NpmRegistryTarget",
37
+ "id": "npm",
38
+ "registry": "https://registry.npmjs.org",
39
+ "packagePath": ".",
40
+ "tokenEnv": "NPM_TOKEN",
41
+ "dryRunSupport": "native",
42
+ "mutability": "immutable",
43
+ "recovery": "publish-new-version"
44
+ },
45
+ {
46
+ "_tag": "HomebrewTapTarget",
47
+ "id": "homebrew",
48
+ "repository": "owner/homebrew-tap",
49
+ "formulaName": "release-example-multi-target",
50
+ "formulaPath": ".release/generated/release-example-multi-target.rb",
51
+ "artifactId": "archive",
52
+ "homepage": "https://github.com/owner/release-example-multi-target",
53
+ "url": "https://github.com/owner/release-example-multi-target/releases/download/v0.1.0/release-example-multi-target-0.1.0.tgz",
54
+ "installPath": "bin/release-example-multi-target",
55
+ "dryRunSupport": "simulated",
56
+ "mutability": "mutable-index",
57
+ "recovery": "manual"
58
+ }
59
+ ],
60
+ "strict": true,
61
+ "evidenceDirectory": ".release/evidence"
62
+ }
@@ -18,6 +18,7 @@
18
18
  "_tag": "GitHubReleaseTarget",
19
19
  "id": "github",
20
20
  "repository": "owner/repo",
21
+ "tokenEnv": "GH_TOKEN",
21
22
  "draft": true,
22
23
  "dryRunSupport": "none",
23
24
  "mutability": "mutable-release",
@@ -0,0 +1 @@
1
+ example pypi distribution artifact
@@ -0,0 +1,30 @@
1
+ {
2
+ "identity": {
3
+ "name": "release-example-pypi",
4
+ "version": "0.1.0",
5
+ "commit": "example",
6
+ "tag": "v0.1.0"
7
+ },
8
+ "artifacts": [
9
+ {
10
+ "id": "wheel",
11
+ "path": "artifacts/release_example_pypi-0.1.0-py3-none-any.whl",
12
+ "format": "file",
13
+ "consumers": ["pypi"]
14
+ }
15
+ ],
16
+ "targets": [
17
+ {
18
+ "_tag": "PyPiRegistryTarget",
19
+ "id": "pypi",
20
+ "repositoryUrl": "https://test.pypi.org/legacy/",
21
+ "usernameEnv": "TWINE_USERNAME",
22
+ "passwordEnv": "TWINE_PASSWORD",
23
+ "dryRunSupport": "native",
24
+ "mutability": "immutable",
25
+ "recovery": "publish-new-version"
26
+ }
27
+ ],
28
+ "strict": true,
29
+ "evidenceDirectory": ".release/evidence"
30
+ }
@@ -0,0 +1 @@
1
+ example scoop release artifact
@@ -0,0 +1,36 @@
1
+ {
2
+ "identity": {
3
+ "name": "release-example-scoop",
4
+ "version": "0.1.0",
5
+ "commit": "example",
6
+ "tag": "v0.1.0"
7
+ },
8
+ "artifacts": [
9
+ {
10
+ "id": "archive",
11
+ "path": "artifacts/release-example-scoop-0.1.0.zip",
12
+ "format": "zip",
13
+ "consumers": ["scoop"]
14
+ }
15
+ ],
16
+ "targets": [
17
+ {
18
+ "_tag": "ScoopBucketTarget",
19
+ "id": "scoop",
20
+ "repository": "owner/scoop-bucket",
21
+ "manifestName": "release-example-scoop",
22
+ "manifestPath": ".release/generated/release-example-scoop.json",
23
+ "artifactId": "archive",
24
+ "homepage": "https://github.com/owner/release-example-scoop",
25
+ "description": "Example Scoop manifest for a release artifact",
26
+ "license": "MIT",
27
+ "url": "https://github.com/owner/release-example-scoop/releases/download/v0.1.0/release-example-scoop-0.1.0.zip",
28
+ "bin": "release-example-scoop.exe",
29
+ "dryRunSupport": "simulated",
30
+ "mutability": "mutable-index",
31
+ "recovery": "manual"
32
+ }
33
+ ],
34
+ "strict": true,
35
+ "evidenceDirectory": ".release/evidence"
36
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mannyc1/ts-release",
3
- "version": "0.0.0",
3
+ "version": "0.0.1",
4
4
  "type": "module",
5
5
  "packageManager": "bun@1.3.14",
6
6
  "description": "Plan-first release orchestration with explicit validation, evidence, and execution gates.",
@@ -90,6 +90,14 @@
90
90
  "types": "./dist/host/bun.d.ts",
91
91
  "default": "./dist/host/bun.js"
92
92
  },
93
+ "./host/http": {
94
+ "types": "./dist/host/http.d.ts",
95
+ "default": "./dist/host/http.js"
96
+ },
97
+ "./host/http-live": {
98
+ "types": "./dist/host/http-live.d.ts",
99
+ "default": "./dist/host/http-live.js"
100
+ },
93
101
  "./host/test": {
94
102
  "types": "./dist/host/test.d.ts",
95
103
  "default": "./dist/host/test.js"
@@ -138,9 +146,17 @@
138
146
  "types": "./dist/targets/npm.d.ts",
139
147
  "default": "./dist/targets/npm.js"
140
148
  },
149
+ "./targets/pypi": {
150
+ "types": "./dist/targets/pypi.d.ts",
151
+ "default": "./dist/targets/pypi.js"
152
+ },
141
153
  "./targets/registry": {
142
154
  "types": "./dist/targets/registry.d.ts",
143
155
  "default": "./dist/targets/registry.js"
156
+ },
157
+ "./targets/scoop": {
158
+ "types": "./dist/targets/scoop.d.ts",
159
+ "default": "./dist/targets/scoop.js"
144
160
  }
145
161
  },
146
162
  "files": [
@@ -160,8 +176,9 @@
160
176
  "check:effect-imports": "bun run scripts/check-effect-imports.ts",
161
177
  "check:tree-shaking": "bun run scripts/check-tree-shaking.ts",
162
178
  "check:examples": "bun run scripts/check-examples.ts",
179
+ "check:readme": "bun run scripts/check-readme.ts",
163
180
  "check:self-release-config": "bun run scripts/check-self-release-config.ts",
164
- "check:portable": "bun run check && bun test && bun audit && bun run check:effect-imports && bun run check:tree-shaking && bun run build && bun run check:examples && bun run check:package-exports && bun dist/cli/main.js --help",
181
+ "check:portable": "bun run check && bun test && bun audit && bun run check:effect-imports && bun run check:tree-shaking && bun run build && bun run check:examples && bun run check:readme && bun run check:package-exports && bun dist/cli/main.js --help",
165
182
  "check:release": "bun run check:self-release-config && bun run check:portable",
166
183
  "cli": "bun run src/cli/main.ts"
167
184
  },