intershell 0.6.1 → 0.6.3
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/README.md +2 -0
- package/dist/compose/compose.d.ts.map +1 -1
- package/dist/compose/compose.js +2 -2
- package/dist/compose/compose.js.map +1 -1
- package/dist/compose/compose.test.js +33 -32
- package/dist/compose/compose.test.js.map +1 -1
- package/dist/intershell-config/intershell-config.d.ts.map +1 -1
- package/dist/intershell-config/intershell-config.default.js +1 -1
- package/dist/intershell-config/intershell-config.default.js.map +1 -1
- package/dist/intershell-config/intershell-config.js +5 -21
- package/dist/intershell-config/intershell-config.js.map +1 -1
- package/dist/package/index.d.ts +1 -0
- package/dist/package/index.d.ts.map +1 -1
- package/dist/package/index.js +1 -0
- package/dist/package/index.js.map +1 -1
- package/dist/package/package-test-mock.d.ts +2 -0
- package/dist/package/package-test-mock.d.ts.map +1 -0
- package/dist/package/package-test-mock.js +28 -0
- package/dist/package/package-test-mock.js.map +1 -0
- package/dist/package/package.d.ts +1 -1
- package/dist/package/package.d.ts.map +1 -1
- package/dist/package/package.js +14 -49
- package/dist/package/package.js.map +1 -1
- package/dist/package/package.test.js +93 -56
- package/dist/package/package.test.js.map +1 -1
- package/dist/package/package.types.d.ts +3 -1
- package/dist/package/package.types.d.ts.map +1 -1
- package/dist/package/workspace-discovery.d.ts +18 -0
- package/dist/package/workspace-discovery.d.ts.map +1 -0
- package/dist/package/workspace-discovery.js +166 -0
- package/dist/package/workspace-discovery.js.map +1 -0
- package/dist/package/workspace-discovery.test.d.ts +2 -0
- package/dist/package/workspace-discovery.test.d.ts.map +1 -0
- package/dist/package/workspace-discovery.test.js +27 -0
- package/dist/package/workspace-discovery.test.js.map +1 -0
- package/dist/package-commits/dependency-analyzer.d.ts +1 -3
- package/dist/package-commits/dependency-analyzer.d.ts.map +1 -1
- package/dist/package-commits/dependency-analyzer.js +21 -35
- package/dist/package-commits/dependency-analyzer.js.map +1 -1
- package/dist/package-commits/package-commits.test.js +12 -7
- package/dist/package-commits/package-commits.test.js.map +1 -1
- package/dist/package-tags/package-tags.js +1 -1
- package/dist/package-tags/package-tags.js.map +1 -1
- package/dist/package-tags/package-tags.test.js +24 -20
- package/dist/package-tags/package-tags.test.js.map +1 -1
- package/dist/package-version/package-version.test.js +43 -34
- package/dist/package-version/package-version.test.js.map +1 -1
- package/package.json +2 -2
- package/src/compose/compose.test.ts +36 -35
- package/src/compose/compose.ts +2 -4
- package/src/intershell-config/intershell-config.default.ts +1 -1
- package/src/intershell-config/intershell-config.ts +8 -23
- package/src/package/index.ts +1 -0
- package/src/package/package-test-mock.ts +33 -0
- package/src/package/package.test.ts +93 -56
- package/src/package/package.ts +27 -55
- package/src/package/package.types.ts +1 -1
- package/src/package/workspace-discovery.test.ts +51 -0
- package/src/package/workspace-discovery.ts +219 -0
- package/src/package-commits/dependency-analyzer.ts +61 -40
- package/src/package-commits/package-commits.test.ts +15 -7
- package/src/package-tags/package-tags.test.ts +27 -20
- package/src/package-tags/package-tags.ts +1 -1
- package/src/package-version/package-version.test.ts +48 -35
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { describe, expect, test } from "bun:test";
|
|
2
|
+
import { packageNameFromAbsolutePath, parseWorkspacePatterns, } from "./workspace-discovery";
|
|
3
|
+
describe("workspace-discovery", () => {
|
|
4
|
+
test("parseWorkspacePatterns handles array format", () => {
|
|
5
|
+
expect(parseWorkspacePatterns(["apps/*", "packages/*"])).toEqual(["apps/*", "packages/*"]);
|
|
6
|
+
});
|
|
7
|
+
test("parseWorkspacePatterns handles object format", () => {
|
|
8
|
+
expect(parseWorkspacePatterns({ packages: ["tools/*"] })).toEqual(["tools/*"]);
|
|
9
|
+
});
|
|
10
|
+
test("parseWorkspacePatterns returns empty for missing workspaces", () => {
|
|
11
|
+
expect(parseWorkspacePatterns(undefined)).toEqual([]);
|
|
12
|
+
});
|
|
13
|
+
test("packageNameFromAbsolutePath resolves workspace package from path", () => {
|
|
14
|
+
const workspacePackages = [
|
|
15
|
+
{ relativePath: "packages/ui", name: "@packages/ui" },
|
|
16
|
+
{ relativePath: "apps/api", name: "@apps/api" },
|
|
17
|
+
];
|
|
18
|
+
expect(packageNameFromAbsolutePath("/workspace/packages/ui/src/index.ts", "/workspace", workspacePackages)).toBe("@packages/ui");
|
|
19
|
+
expect(packageNameFromAbsolutePath("/workspace/apps/api/Dockerfile", "/workspace", workspacePackages)).toBe("@apps/api");
|
|
20
|
+
});
|
|
21
|
+
test("packageNameFromAbsolutePath returns null for paths outside workspace", () => {
|
|
22
|
+
expect(packageNameFromAbsolutePath("/other/path", "/workspace", [
|
|
23
|
+
{ relativePath: "packages/ui", name: "@packages/ui" },
|
|
24
|
+
])).toBeNull();
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
//# sourceMappingURL=workspace-discovery.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-discovery.test.js","sourceRoot":"","sources":["../../src/package/workspace-discovery.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EACN,2BAA2B,EAC3B,sBAAsB,GAEtB,MAAM,uBAAuB,CAAC;AAE/B,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACpC,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACxD,MAAM,CAAC,sBAAsB,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACzD,MAAM,CAAC,sBAAsB,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACxE,MAAM,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,kEAAkE,EAAE,GAAG,EAAE;QAC7E,MAAM,iBAAiB,GAA4B;YAClD,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE;YACrD,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE;SAC/C,CAAC;QAEF,MAAM,CACL,2BAA2B,CAC1B,qCAAqC,EACrC,YAAY,EACZ,iBAAiB,CACjB,CACD,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEvB,MAAM,CACL,2BAA2B,CAC1B,gCAAgC,EAChC,YAAY,EACZ,iBAAiB,CACjB,CACD,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,sEAAsE,EAAE,GAAG,EAAE;QACjF,MAAM,CACL,2BAA2B,CAAC,aAAa,EAAE,YAAY,EAAE;YACxD,EAAE,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE;SACrD,CAAC,CACF,CAAC,QAAQ,EAAE,CAAC;IACd,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -7,6 +7,7 @@ export declare class EntityDependencyAnalyzer {
|
|
|
7
7
|
* Returns only dependencies within this monorepo
|
|
8
8
|
*/
|
|
9
9
|
getPackageDependenciesAtRef(reference: string): Promise<string[]>;
|
|
10
|
+
private getWorkspaceContext;
|
|
10
11
|
/**
|
|
11
12
|
* Get package.json dependencies for a package at a specific reference
|
|
12
13
|
*/
|
|
@@ -15,9 +16,6 @@ export declare class EntityDependencyAnalyzer {
|
|
|
15
16
|
* Get tsconfig dependencies by resolving paths to actual internal packages
|
|
16
17
|
*/
|
|
17
18
|
private getTsConfigDependencies;
|
|
18
|
-
/**
|
|
19
|
-
* Find internal package name from absolute path
|
|
20
|
-
*/
|
|
21
19
|
private findInternalPackageFromPath;
|
|
22
20
|
/**
|
|
23
21
|
* Get TypeScript configuration paths for a package at a specific git reference
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-analyzer.d.ts","sourceRoot":"","sources":["../../src/package-commits/dependency-analyzer.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"dependency-analyzer.d.ts","sourceRoot":"","sources":["../../src/package-commits/dependency-analyzer.ts"],"names":[],"mappings":"AAGA,OAAO,EAEN,aAAa,EAKb,MAAM,YAAY,CAAC;AAGpB,qBAAa,wBAAwB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;gBAE5B,eAAe,EAAE,aAAa;IAI1C;;;OAGG;IACG,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAoBzD,mBAAmB;IAiBjC;;OAEG;YACW,0BAA0B;IAiCxC;;OAEG;YACW,uBAAuB;IAwCrC,OAAO,CAAC,2BAA2B;IAQnC;;OAEG;YACW,gBAAgB;IAW9B;;OAEG;YACW,iBAAiB;IAc/B;;OAEG;YACW,uBAAuB;CAgCrC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { existsSync, readFileSync } from "node:fs";
|
|
2
2
|
import { resolve } from "node:path";
|
|
3
3
|
import { entitiesShell } from "../entities.shell";
|
|
4
|
-
import { EntityPackage } from "../package";
|
|
4
|
+
import { discoverWorkspacePackagesAsync, EntityPackage, packageNameFromAbsolutePath, } from "../package";
|
|
5
|
+
import { packagesShell } from "../package/package.shell";
|
|
5
6
|
export class EntityDependencyAnalyzer {
|
|
6
7
|
package;
|
|
7
8
|
constructor(packageInstance) {
|
|
@@ -13,24 +14,28 @@ export class EntityDependencyAnalyzer {
|
|
|
13
14
|
*/
|
|
14
15
|
async getPackageDependenciesAtRef(reference) {
|
|
15
16
|
try {
|
|
16
|
-
// Get all internal packages in the monorepo
|
|
17
17
|
const allPackages = await EntityPackage.getAllPackages();
|
|
18
|
-
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
const tsconfigDeps = await this.getTsConfigDependencies(reference);
|
|
22
|
-
// Combine and filter for internal dependencies only
|
|
18
|
+
const internalPackages = new Set(allPackages);
|
|
19
|
+
const workspaceContext = await this.getWorkspaceContext();
|
|
20
|
+
const packageJsonDeps = await this.getPackageJsonDependencies(reference, internalPackages);
|
|
21
|
+
const tsconfigDeps = await this.getTsConfigDependencies(reference, internalPackages, workspaceContext);
|
|
23
22
|
const allDeps = [...new Set([...packageJsonDeps, ...tsconfigDeps])];
|
|
24
|
-
return allDeps.filter((dep) =>
|
|
23
|
+
return allDeps.filter((dep) => internalPackages.has(dep));
|
|
25
24
|
}
|
|
26
25
|
catch {
|
|
27
26
|
return [];
|
|
28
27
|
}
|
|
29
28
|
}
|
|
29
|
+
async getWorkspaceContext() {
|
|
30
|
+
const workspaceRoot = await packagesShell.getWorkspaceRoot();
|
|
31
|
+
const rootPackageJson = packagesShell.readJsonFile(`${workspaceRoot}/package.json`);
|
|
32
|
+
const workspacePackages = await discoverWorkspacePackagesAsync(workspaceRoot, packagesShell.readDirectory, packagesShell.canAccessFile, packagesShell.readFileAsText, rootPackageJson);
|
|
33
|
+
return { workspaceRoot, workspacePackages };
|
|
34
|
+
}
|
|
30
35
|
/**
|
|
31
36
|
* Get package.json dependencies for a package at a specific reference
|
|
32
37
|
*/
|
|
33
|
-
async getPackageJsonDependencies(reference) {
|
|
38
|
+
async getPackageJsonDependencies(reference, internalPackages) {
|
|
34
39
|
try {
|
|
35
40
|
const result = await entitiesShell.gitShowPackageJsonAtTag(reference, this.package.getJsonPath());
|
|
36
41
|
if (result.exitCode !== 0) {
|
|
@@ -48,8 +53,7 @@ export class EntityDependencyAnalyzer {
|
|
|
48
53
|
? Object.keys(packageJson.peerDependencies)
|
|
49
54
|
: []),
|
|
50
55
|
];
|
|
51
|
-
|
|
52
|
-
return deps.filter((dep) => dep.startsWith("@repo/")).map((dep) => dep.replace("@repo/", ""));
|
|
56
|
+
return deps.filter((dep) => internalPackages.has(dep));
|
|
53
57
|
}
|
|
54
58
|
catch {
|
|
55
59
|
return [];
|
|
@@ -58,21 +62,19 @@ export class EntityDependencyAnalyzer {
|
|
|
58
62
|
/**
|
|
59
63
|
* Get tsconfig dependencies by resolving paths to actual internal packages
|
|
60
64
|
*/
|
|
61
|
-
async getTsConfigDependencies(reference) {
|
|
65
|
+
async getTsConfigDependencies(reference, internalPackages, workspaceContext) {
|
|
62
66
|
try {
|
|
63
67
|
const packagePath = this.package.getPath();
|
|
64
68
|
const tsconfigPaths = await this.getTsConfigPaths(reference);
|
|
65
69
|
const deps = [];
|
|
66
70
|
for (const [alias, paths] of Object.entries(tsconfigPaths)) {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
deps.push(alias.replace("@repo/", ""));
|
|
71
|
+
if (internalPackages.has(alias)) {
|
|
72
|
+
deps.push(alias);
|
|
70
73
|
}
|
|
71
|
-
// Check if paths point to internal packages
|
|
72
74
|
if (Array.isArray(paths)) {
|
|
73
75
|
for (const path of paths) {
|
|
74
76
|
const resolvedPath = resolve(packagePath, path);
|
|
75
|
-
const internalPackage = this.findInternalPackageFromPath(resolvedPath);
|
|
77
|
+
const internalPackage = this.findInternalPackageFromPath(resolvedPath, workspaceContext.workspaceRoot, workspaceContext.workspacePackages);
|
|
76
78
|
if (internalPackage) {
|
|
77
79
|
deps.push(internalPackage);
|
|
78
80
|
}
|
|
@@ -85,20 +87,8 @@ export class EntityDependencyAnalyzer {
|
|
|
85
87
|
return [];
|
|
86
88
|
}
|
|
87
89
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
*/
|
|
91
|
-
findInternalPackageFromPath(absolutePath) {
|
|
92
|
-
// Check if path points to packages/ or apps/ directory
|
|
93
|
-
const packagesMatch = absolutePath.match(/\/packages\/([^/]+)/);
|
|
94
|
-
const appsMatch = absolutePath.match(/\/apps\/([^/]+)/);
|
|
95
|
-
if (packagesMatch) {
|
|
96
|
-
return `@repo/${packagesMatch[1]}`;
|
|
97
|
-
}
|
|
98
|
-
if (appsMatch) {
|
|
99
|
-
return appsMatch[1];
|
|
100
|
-
}
|
|
101
|
-
return null;
|
|
90
|
+
findInternalPackageFromPath(absolutePath, workspaceRoot, workspacePackages) {
|
|
91
|
+
return packageNameFromAbsolutePath(absolutePath, workspaceRoot, workspacePackages);
|
|
102
92
|
}
|
|
103
93
|
/**
|
|
104
94
|
* Get TypeScript configuration paths for a package at a specific git reference
|
|
@@ -120,14 +110,12 @@ export class EntityDependencyAnalyzer {
|
|
|
120
110
|
try {
|
|
121
111
|
const result = await entitiesShell.gitShow(`${reference}:${this.package.getTsconfigPath()}`);
|
|
122
112
|
if (result.exitCode !== 0) {
|
|
123
|
-
// If tsconfig.json doesn't exist at this reference, return empty config
|
|
124
113
|
return {};
|
|
125
114
|
}
|
|
126
115
|
const content = result.text();
|
|
127
116
|
return JSON.parse(content);
|
|
128
117
|
}
|
|
129
118
|
catch {
|
|
130
|
-
// If parsing fails, return empty config
|
|
131
119
|
return {};
|
|
132
120
|
}
|
|
133
121
|
}
|
|
@@ -145,9 +133,7 @@ export class EntityDependencyAnalyzer {
|
|
|
145
133
|
try {
|
|
146
134
|
const extendedContent = readFileSync(extendedPath, "utf-8");
|
|
147
135
|
const extendedConfig = JSON.parse(extendedContent);
|
|
148
|
-
// Recursively resolve extended configs
|
|
149
136
|
const resolvedExtended = await this.resolveExtendedTsConfig(extendedConfig, packagePath);
|
|
150
|
-
// Merge configurations
|
|
151
137
|
return {
|
|
152
138
|
...resolvedExtended,
|
|
153
139
|
...config,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependency-analyzer.js","sourceRoot":"","sources":["../../src/package-commits/dependency-analyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,
|
|
1
|
+
{"version":3,"file":"dependency-analyzer.js","sourceRoot":"","sources":["../../src/package-commits/dependency-analyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,17 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
1
|
+
import { afterEach, beforeEach, describe, expect, test } from "bun:test";
|
|
2
2
|
import { EntityPackage } from "../package";
|
|
3
|
+
import { installPackagesShellTestMock } from "../package/package-test-mock";
|
|
3
4
|
import { EntityPackageCommits } from "./package-commits";
|
|
4
5
|
describe("EntityPackageCommits", () => {
|
|
6
|
+
let restorePackagesShellMock;
|
|
7
|
+
beforeEach(() => {
|
|
8
|
+
restorePackagesShellMock = installPackagesShellTestMock();
|
|
9
|
+
});
|
|
10
|
+
afterEach(() => {
|
|
11
|
+
restorePackagesShellMock();
|
|
12
|
+
});
|
|
5
13
|
test("should create instance", () => {
|
|
6
|
-
const packageInstance = new EntityPackage("api");
|
|
14
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
7
15
|
const commitPackage = new EntityPackageCommits(packageInstance);
|
|
8
16
|
expect(commitPackage).toBeDefined();
|
|
9
17
|
});
|
|
@@ -13,24 +21,21 @@ describe("EntityPackageCommits", () => {
|
|
|
13
21
|
expect(rootCommitPackage).toBeDefined();
|
|
14
22
|
});
|
|
15
23
|
test("should have main method", () => {
|
|
16
|
-
const packageInstance = new EntityPackage("api");
|
|
24
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
17
25
|
const commitPackage = new EntityPackageCommits(packageInstance);
|
|
18
|
-
// Check that the main method exists
|
|
19
26
|
expect(typeof commitPackage.getCommitsInRange).toBe("function");
|
|
20
27
|
});
|
|
21
28
|
describe("getCommitsInRange", () => {
|
|
22
29
|
test("should return empty array when git operations fail", async () => {
|
|
23
30
|
const packageInstance = new EntityPackage("root");
|
|
24
31
|
const commitPackage = new EntityPackageCommits(packageInstance);
|
|
25
|
-
// Test with invalid range to trigger error handling
|
|
26
32
|
const result = await commitPackage.getCommitsInRange("invalid", "invalid");
|
|
27
33
|
expect(Array.isArray(result)).toBe(true);
|
|
28
34
|
expect(result.length).toBe(0);
|
|
29
35
|
});
|
|
30
36
|
test("should handle package-specific commits", async () => {
|
|
31
|
-
const packageInstance = new EntityPackage("api");
|
|
37
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
32
38
|
const commitPackage = new EntityPackageCommits(packageInstance);
|
|
33
|
-
// Test with invalid range to trigger error handling
|
|
34
39
|
const result = await commitPackage.getCommitsInRange("invalid", "invalid");
|
|
35
40
|
expect(Array.isArray(result)).toBe(true);
|
|
36
41
|
expect(result.length).toBe(0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-commits.test.js","sourceRoot":"","sources":["../../src/package-commits/package-commits.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"package-commits.test.js","sourceRoot":"","sources":["../../src/package-commits/package-commits.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACrC,IAAI,wBAAoC,CAAC;IAEzC,UAAU,CAAC,GAAG,EAAE;QACf,wBAAwB,GAAG,4BAA4B,EAAE,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACd,wBAAwB,EAAE,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACnC,MAAM,eAAe,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,aAAa,GAAG,IAAI,oBAAoB,CAAC,eAAe,CAAC,CAAC;QAChE,MAAM,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;QACxC,MAAM,eAAe,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,iBAAiB,GAAG,IAAI,oBAAoB,CAAC,eAAe,CAAC,CAAC;QACpE,MAAM,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACpC,MAAM,eAAe,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,aAAa,GAAG,IAAI,oBAAoB,CAAC,eAAe,CAAC,CAAC;QAChE,MAAM,CAAC,OAAO,aAAa,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAClC,IAAI,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,eAAe,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;YAClD,MAAM,aAAa,GAAG,IAAI,oBAAoB,CAAC,eAAe,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC3E,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,eAAe,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;YACvD,MAAM,aAAa,GAAG,IAAI,oBAAoB,CAAC,eAAe,CAAC,CAAC;YAChE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,iBAAiB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC3E,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -157,7 +157,7 @@ export class EntityPackageTags {
|
|
|
157
157
|
packageName = matchingPackage;
|
|
158
158
|
}
|
|
159
159
|
else {
|
|
160
|
-
throw new Error(`Invalid tag prefix format: "${prefix}". Expected format: v (root) or
|
|
160
|
+
throw new Error(`Invalid tag prefix format: "${prefix}". Expected format: v (root) or <scope>/<name>-v (e.g., apps/api-v, packages/intershell-v)`);
|
|
161
161
|
}
|
|
162
162
|
// Check if this package should be versioned
|
|
163
163
|
const packageInstance = new EntityPackage(packageName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-tags.js","sourceRoot":"","sources":["../../src/package-tags/package-tags.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"package-tags.js","sourceRoot":"","sources":["../../src/package-tags/package-tags.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,17 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
1
|
+
import { afterEach, beforeEach, describe, expect, test } from "bun:test";
|
|
2
2
|
import { EntityPackage } from "../package";
|
|
3
|
+
import { installPackagesShellTestMock } from "../package/package-test-mock";
|
|
3
4
|
import { EntityPackageTags } from "./package-tags";
|
|
4
5
|
describe("EntityPackageTags", () => {
|
|
6
|
+
let restorePackagesShellMock;
|
|
7
|
+
beforeEach(() => {
|
|
8
|
+
restorePackagesShellMock = installPackagesShellTestMock();
|
|
9
|
+
});
|
|
10
|
+
afterEach(() => {
|
|
11
|
+
restorePackagesShellMock();
|
|
12
|
+
});
|
|
5
13
|
test("should create instance", () => {
|
|
6
|
-
const packageInstance = new EntityPackage("api");
|
|
14
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
7
15
|
const tagPackage = new EntityPackageTags(packageInstance);
|
|
8
16
|
expect(tagPackage).toBeDefined();
|
|
9
17
|
});
|
|
@@ -20,41 +28,37 @@ describe("EntityPackageTags", () => {
|
|
|
20
28
|
expect(tagPackage.detectTagPrefix("v0.0.1")).toBe("v");
|
|
21
29
|
});
|
|
22
30
|
test("should detect tag prefix for package-specific tags", () => {
|
|
23
|
-
const packageInstance = new EntityPackage("api");
|
|
31
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
24
32
|
const tagPackage = new EntityPackageTags(packageInstance);
|
|
25
|
-
expect(tagPackage.detectTagPrefix("api-v1.0.0")).toBe("api-v");
|
|
26
|
-
expect(tagPackage.detectTagPrefix("intershell-v2.1.3")).toBe("intershell-v");
|
|
27
|
-
expect(tagPackage.detectTagPrefix("ui-v0.0.1")).toBe("ui-v");
|
|
33
|
+
expect(tagPackage.detectTagPrefix("apps/api-v1.0.0")).toBe("apps/api-v");
|
|
34
|
+
expect(tagPackage.detectTagPrefix("packages/intershell-v2.1.3")).toBe("packages/intershell-v");
|
|
35
|
+
expect(tagPackage.detectTagPrefix("packages/ui-v0.0.1")).toBe("packages/ui-v");
|
|
28
36
|
});
|
|
29
37
|
test("should return undefined for invalid tag formats", () => {
|
|
30
|
-
const packageInstance = new EntityPackage("api");
|
|
38
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
31
39
|
const tagPackage = new EntityPackageTags(packageInstance);
|
|
32
40
|
expect(tagPackage.detectTagPrefix("1.0.0")).toBeUndefined();
|
|
33
|
-
expect(tagPackage.detectTagPrefix("invalid")).toBeUndefined();
|
|
41
|
+
expect(tagPackage.detectTagPrefix("invalid-tag")).toBeUndefined();
|
|
34
42
|
expect(tagPackage.detectTagPrefix("")).toBeUndefined();
|
|
35
43
|
});
|
|
36
44
|
test("should compare versions correctly", () => {
|
|
37
|
-
const packageInstance = new EntityPackage("api");
|
|
45
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
38
46
|
const tagPackage = new EntityPackageTags(packageInstance);
|
|
39
|
-
expect(tagPackage.compareVersions("1.0.0", "1.0.1")).toBe(-1);
|
|
40
|
-
expect(tagPackage.compareVersions("1.0.1", "1.0.0")).toBe(1);
|
|
41
47
|
expect(tagPackage.compareVersions("1.0.0", "1.0.0")).toBe(0);
|
|
42
|
-
expect(tagPackage.compareVersions("
|
|
43
|
-
expect(tagPackage.compareVersions("1.0.0", "
|
|
48
|
+
expect(tagPackage.compareVersions("1.1.0", "1.0.0")).toBe(1);
|
|
49
|
+
expect(tagPackage.compareVersions("1.0.0", "1.1.0")).toBe(-1);
|
|
44
50
|
});
|
|
45
51
|
test("should handle version comparison with different lengths", () => {
|
|
46
|
-
const packageInstance = new EntityPackage("api");
|
|
52
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
47
53
|
const tagPackage = new EntityPackageTags(packageInstance);
|
|
54
|
+
expect(tagPackage.compareVersions("1.0.0.1", "1.0.0")).toBe(1);
|
|
48
55
|
expect(tagPackage.compareVersions("1.0", "1.0.0")).toBe(0);
|
|
49
|
-
expect(tagPackage.compareVersions("1.0.0", "1.0")).toBe(0);
|
|
50
|
-
expect(tagPackage.compareVersions("1", "1.0.0")).toBe(0);
|
|
51
56
|
});
|
|
52
57
|
test("should handle version comparison edge cases", () => {
|
|
53
|
-
const packageInstance = new EntityPackage("api");
|
|
58
|
+
const packageInstance = new EntityPackage("@apps/api");
|
|
54
59
|
const tagPackage = new EntityPackageTags(packageInstance);
|
|
55
|
-
expect(tagPackage.compareVersions("0.0.
|
|
56
|
-
expect(tagPackage.compareVersions("0.
|
|
57
|
-
expect(tagPackage.compareVersions("1.0.0", "0.9.9")).toBe(1);
|
|
60
|
+
expect(tagPackage.compareVersions("0.0.1", "0.0.0")).toBe(1);
|
|
61
|
+
expect(tagPackage.compareVersions("10.0.0", "9.0.0")).toBe(1);
|
|
58
62
|
});
|
|
59
63
|
});
|
|
60
64
|
//# sourceMappingURL=package-tags.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-tags.test.js","sourceRoot":"","sources":["../../src/package-tags/package-tags.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"package-tags.test.js","sourceRoot":"","sources":["../../src/package-tags/package-tags.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { describe, expect, test } from "bun:test";
|
|
1
|
+
import { afterEach, beforeEach, describe, expect, mock, test } from "bun:test";
|
|
2
2
|
import { EntityPackage } from "../package";
|
|
3
|
+
import { installPackagesShellTestMock } from "../package/package-test-mock";
|
|
3
4
|
import { EntityPackageCommits } from "../package-commits";
|
|
4
5
|
import { EntityPackageTags } from "../package-tags";
|
|
5
6
|
import { EntityPackageVersion } from "./package-version";
|
|
6
|
-
|
|
7
|
+
let restorePackagesShellMock;
|
|
8
|
+
let originalGetLatestPackageVersionInHistory;
|
|
7
9
|
function createEntityPackageVersion(packageName) {
|
|
8
10
|
const packageInstance = new EntityPackage(packageName);
|
|
9
11
|
const commitPackage = new EntityPackageCommits(packageInstance);
|
|
@@ -11,101 +13,108 @@ function createEntityPackageVersion(packageName) {
|
|
|
11
13
|
return new EntityPackageVersion(packageInstance, commitPackage, tagPackage);
|
|
12
14
|
}
|
|
13
15
|
describe("EntityPackageVersion", () => {
|
|
16
|
+
beforeEach(() => {
|
|
17
|
+
restorePackagesShellMock = installPackagesShellTestMock();
|
|
18
|
+
originalGetLatestPackageVersionInHistory =
|
|
19
|
+
EntityPackageTags.prototype.getLatestPackageVersionInHistory;
|
|
20
|
+
EntityPackageTags.prototype.getLatestPackageVersionInHistory = mock(function () {
|
|
21
|
+
const packageName = this.package.getName();
|
|
22
|
+
if (packageName === "root")
|
|
23
|
+
return Promise.resolve("1.0.0");
|
|
24
|
+
return Promise.resolve("0.1.0");
|
|
25
|
+
});
|
|
26
|
+
});
|
|
27
|
+
afterEach(() => {
|
|
28
|
+
restorePackagesShellMock();
|
|
29
|
+
EntityPackageTags.prototype.getLatestPackageVersionInHistory =
|
|
30
|
+
originalGetLatestPackageVersionInHistory;
|
|
31
|
+
});
|
|
14
32
|
test("should create instance", () => {
|
|
15
|
-
const
|
|
16
|
-
expect(
|
|
33
|
+
const entityPackageVersion = createEntityPackageVersion("@apps/api");
|
|
34
|
+
expect(entityPackageVersion).toBeDefined();
|
|
17
35
|
});
|
|
18
36
|
test("should create root instance", () => {
|
|
19
|
-
const
|
|
20
|
-
expect(
|
|
37
|
+
const entityPackageVersion = createEntityPackageVersion("root");
|
|
38
|
+
expect(entityPackageVersion).toBeDefined();
|
|
21
39
|
});
|
|
22
40
|
test("should calculate bump type for regular package", async () => {
|
|
23
|
-
const
|
|
41
|
+
const entityPackageVersion = createEntityPackageVersion("@apps/api");
|
|
24
42
|
const commits = [
|
|
25
43
|
{
|
|
26
44
|
message: { type: "feat", description: "add new feature", isBreaking: false },
|
|
27
45
|
files: ["src/feature.ts"],
|
|
28
46
|
},
|
|
29
47
|
];
|
|
30
|
-
const versionData = await
|
|
48
|
+
const versionData = await entityPackageVersion.calculateVersionData(commits);
|
|
31
49
|
expect(versionData.bumpType).toBe("minor");
|
|
32
50
|
});
|
|
33
51
|
test("should calculate bump type for breaking changes", async () => {
|
|
34
|
-
const
|
|
52
|
+
const entityPackageVersion = createEntityPackageVersion("@apps/api");
|
|
35
53
|
const commits = [
|
|
36
54
|
{
|
|
37
55
|
message: { type: "feat", description: "add new feature", isBreaking: true },
|
|
38
56
|
files: ["src/feature.ts"],
|
|
39
57
|
},
|
|
40
58
|
];
|
|
41
|
-
const versionData = await
|
|
59
|
+
const versionData = await entityPackageVersion.calculateVersionData(commits);
|
|
42
60
|
expect(versionData.bumpType).toBe("major");
|
|
43
61
|
});
|
|
44
62
|
test("should calculate bump type for patch changes", async () => {
|
|
45
|
-
const
|
|
63
|
+
const entityPackageVersion = createEntityPackageVersion("@apps/api");
|
|
46
64
|
const commits = [
|
|
47
65
|
{
|
|
48
66
|
message: { type: "fix", description: "fix bug", isBreaking: false },
|
|
49
67
|
files: ["src/bug.ts"],
|
|
50
68
|
},
|
|
51
69
|
];
|
|
52
|
-
const versionData = await
|
|
70
|
+
const versionData = await entityPackageVersion.calculateVersionData(commits);
|
|
53
71
|
expect(versionData.bumpType).toBe("patch");
|
|
54
72
|
});
|
|
55
73
|
test("should return none for empty commits", async () => {
|
|
56
|
-
const
|
|
57
|
-
const versionData = await
|
|
74
|
+
const entityPackageVersion = createEntityPackageVersion("@apps/api");
|
|
75
|
+
const versionData = await entityPackageVersion.calculateVersionData([]);
|
|
58
76
|
expect(versionData.bumpType).toBe("none");
|
|
59
77
|
});
|
|
60
78
|
test("should calculate version data for first version", async () => {
|
|
61
|
-
const
|
|
62
|
-
const versionData = await
|
|
63
|
-
// The api package already has version 0.1.0, so no bump needed
|
|
79
|
+
const entityPackageVersion = createEntityPackageVersion("@apps/api");
|
|
80
|
+
const versionData = await entityPackageVersion.calculateVersionData([]);
|
|
64
81
|
expect(versionData.shouldBump).toBe(false);
|
|
65
82
|
expect(versionData.targetVersion).toBe("0.1.0");
|
|
66
83
|
expect(versionData.bumpType).toBe("none");
|
|
67
84
|
expect(versionData.reason).toBe("No commits in range");
|
|
68
85
|
});
|
|
69
86
|
test("should not bump when no commits", async () => {
|
|
70
|
-
const
|
|
71
|
-
const versionData = await
|
|
87
|
+
const entityPackageVersion = createEntityPackageVersion("@apps/api");
|
|
88
|
+
const versionData = await entityPackageVersion.calculateVersionData([]);
|
|
72
89
|
expect(versionData.shouldBump).toBe(false);
|
|
73
|
-
expect(versionData.targetVersion).toBe("0.1.0");
|
|
90
|
+
expect(versionData.targetVersion).toBe("0.1.0");
|
|
74
91
|
expect(versionData.bumpType).toBe("none");
|
|
75
92
|
expect(versionData.reason).toBe("No commits in range");
|
|
76
93
|
});
|
|
77
|
-
test("should throw error when version on disk is higher", async () => {
|
|
78
|
-
// This test needs to be updated since the method now gets version from package.json internally
|
|
79
|
-
// We'll need to mock the package version or create a different test
|
|
80
|
-
expect(true).toBe(true); // Placeholder - this test needs to be redesigned
|
|
81
|
-
});
|
|
82
94
|
test("should calculate bump type for root package", async () => {
|
|
83
|
-
const
|
|
95
|
+
const entityPackageVersion = createEntityPackageVersion("root");
|
|
84
96
|
const commits = [
|
|
85
97
|
{
|
|
86
98
|
message: { type: "feat", description: "add feature", isBreaking: false, scopes: ["root"] },
|
|
87
99
|
files: ["package.json"],
|
|
88
100
|
},
|
|
89
101
|
];
|
|
90
|
-
const versionData = await
|
|
102
|
+
const versionData = await entityPackageVersion.calculateVersionData(commits);
|
|
91
103
|
expect(versionData.bumpType).toBe("minor");
|
|
92
104
|
});
|
|
93
105
|
test("should use override bump type when provided", async () => {
|
|
94
|
-
const
|
|
106
|
+
const entityPackageVersion = createEntityPackageVersion("@apps/api");
|
|
95
107
|
const commits = [
|
|
96
108
|
{
|
|
97
109
|
message: { type: "feat", description: "add new feature", isBreaking: false },
|
|
98
110
|
files: ["src/feature.ts"],
|
|
99
111
|
},
|
|
100
112
|
];
|
|
101
|
-
|
|
102
|
-
const versionDataMajor = await EntityPackageVersion.calculateVersionData(commits, "major");
|
|
113
|
+
const versionDataMajor = await entityPackageVersion.calculateVersionData(commits, "major");
|
|
103
114
|
expect(versionDataMajor.bumpType).toBe("major");
|
|
104
|
-
|
|
105
|
-
const versionDataPatch = await EntityPackageVersion.calculateVersionData(commits, "patch");
|
|
115
|
+
const versionDataPatch = await entityPackageVersion.calculateVersionData(commits, "patch");
|
|
106
116
|
expect(versionDataPatch.bumpType).toBe("patch");
|
|
107
|
-
|
|
108
|
-
const versionDataNone = await EntityPackageVersion.calculateVersionData(commits, "none");
|
|
117
|
+
const versionDataNone = await entityPackageVersion.calculateVersionData(commits, "none");
|
|
109
118
|
expect(versionDataNone.bumpType).toBe("none");
|
|
110
119
|
expect(versionDataNone.shouldBump).toBe(false);
|
|
111
120
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-version.test.js","sourceRoot":"","sources":["../../src/package-version/package-version.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"package-version.test.js","sourceRoot":"","sources":["../../src/package-version/package-version.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"private": false,
|
|
3
3
|
"name": "intershell",
|
|
4
|
-
"version": "0.6.
|
|
4
|
+
"version": "0.6.3",
|
|
5
5
|
"description": "Bun-first TypeScript library of monorepo entities (commits, packages, versioning, tags, affected, compose, config).",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"author": "Soheil Movahedan <soheil.movahedan@gmail.com>",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"typecheck": "tsc --noEmit",
|
|
36
36
|
"build": "rm -rf dist && tsc -p tsconfig.build.json",
|
|
37
37
|
"lint": "biome check .",
|
|
38
|
-
"test": "bun test",
|
|
38
|
+
"test": "bun test --max-concurrency=1",
|
|
39
39
|
"check": "bun run lint --fix && bun run typecheck && bun run test && bun run build",
|
|
40
40
|
"commit:check": "bun run ./src/commit-check.ts",
|
|
41
41
|
"version:prepare": "bun run ./scripts/version/prepare.ts",
|