@liquidmetal-ai/drizzle 0.4.7 → 0.4.9
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/.turbo/turbo-build.log +9 -9
- package/.turbo/turbo-test.log +277 -83
- package/CHANGELOG.md +12 -0
- package/dist/liquidmetal/v1alpha1/catalog_pb.d.ts +1 -1
- package/dist/liquidmetal/v1alpha1/catalog_pb.d.ts.map +1 -1
- package/dist/liquidmetal/v1alpha1/catalog_pb.js +2 -2
- package/dist/liquidmetal/v1alpha1/events_connect.d.ts +39 -0
- package/dist/liquidmetal/v1alpha1/events_connect.d.ts.map +1 -0
- package/dist/liquidmetal/v1alpha1/events_connect.js +43 -0
- package/dist/liquidmetal/v1alpha1/events_pb.d.ts +175 -0
- package/dist/liquidmetal/v1alpha1/events_pb.d.ts.map +1 -0
- package/dist/liquidmetal/v1alpha1/events_pb.js +51 -0
- package/dist/liquidmetal/v1alpha1/logging_pb.d.ts +87 -0
- package/dist/liquidmetal/v1alpha1/logging_pb.d.ts.map +1 -0
- package/dist/liquidmetal/v1alpha1/logging_pb.js +25 -0
- package/dist/liquidmetal/v1alpha1/riverjack_pb.d.ts +74 -0
- package/dist/liquidmetal/v1alpha1/riverjack_pb.d.ts.map +1 -0
- package/dist/liquidmetal/v1alpha1/riverjack_pb.js +24 -0
- package/dist/unsafe/framework.d.ts.map +1 -1
- package/dist/unsafe/framework.js +48 -12
- package/dist/unsafe/framework.test.js +97 -62
- package/eslint.config.mjs +7 -4
- package/package.json +14 -15
- package/src/liquidmetal/v1alpha1/catalog_pb.ts +3 -3
- package/src/liquidmetal/v1alpha1/events_connect.ts +48 -0
- package/src/liquidmetal/v1alpha1/events_pb.ts +210 -0
- package/src/liquidmetal/v1alpha1/logging_pb.ts +108 -0
- package/src/liquidmetal/v1alpha1/riverjack_pb.ts +92 -0
- package/src/unsafe/framework.test.ts +96 -64
- package/src/unsafe/framework.ts +50 -10
- package/tsconfig.tsbuildinfo +1 -1
package/src/unsafe/framework.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { exec } from 'node:child_process';
|
|
|
2
2
|
import { lstat } from 'node:fs/promises';
|
|
3
3
|
import { dirname, join, parse } from 'node:path';
|
|
4
4
|
import { promisify } from 'node:util';
|
|
5
|
+
import { readFile } from 'node:fs/promises';
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* The name of the framework package
|
|
@@ -15,8 +16,23 @@ interface NpmListDependency {
|
|
|
15
16
|
dependencies?: Record<string, NpmListDependency>;
|
|
16
17
|
}
|
|
17
18
|
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
async function resolveWorkspaceLink(version: string, currentDir: string): Promise<string | null> {
|
|
20
|
+
if (!version.startsWith('link:')) {
|
|
21
|
+
return version;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const linkPath = version.substring(5); // Remove 'link:' prefix
|
|
25
|
+
const absolutePath = join(currentDir, linkPath);
|
|
26
|
+
|
|
27
|
+
try {
|
|
28
|
+
const packageJsonPath = join(absolutePath, 'package.json');
|
|
29
|
+
const packageJsonContent = await readFile(packageJsonPath, 'utf8');
|
|
30
|
+
const packageJson = JSON.parse(packageJsonContent);
|
|
31
|
+
return packageJson.version || null;
|
|
32
|
+
} catch (error) {
|
|
33
|
+
console.error(`Error reading version from linked package at ${absolutePath}:`, error);
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
20
36
|
}
|
|
21
37
|
|
|
22
38
|
function findDependencyVersion(
|
|
@@ -48,9 +64,15 @@ async function fileExists(path: string): Promise<boolean> {
|
|
|
48
64
|
}
|
|
49
65
|
|
|
50
66
|
async function detectPackageManager(dir: string): Promise<'npm' | 'yarn' | 'pnpm' | null> {
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
67
|
+
let currentDir = dir;
|
|
68
|
+
|
|
69
|
+
while (currentDir !== parse(currentDir).root) {
|
|
70
|
+
if (await fileExists(join(currentDir, 'package-lock.json'))) return 'npm';
|
|
71
|
+
if (await fileExists(join(currentDir, 'yarn.lock'))) return 'yarn';
|
|
72
|
+
if (await fileExists(join(currentDir, 'pnpm-lock.yaml'))) return 'pnpm';
|
|
73
|
+
|
|
74
|
+
currentDir = dirname(currentDir);
|
|
75
|
+
}
|
|
54
76
|
|
|
55
77
|
return null;
|
|
56
78
|
}
|
|
@@ -58,6 +80,7 @@ async function detectPackageManager(dir: string): Promise<'npm' | 'yarn' | 'pnpm
|
|
|
58
80
|
const getVersionFromCommand = async (
|
|
59
81
|
packageName: string,
|
|
60
82
|
packageManager: 'npm' | 'yarn' | 'pnpm',
|
|
83
|
+
currentDir: string,
|
|
61
84
|
): Promise<string | null> => {
|
|
62
85
|
try {
|
|
63
86
|
const command = {
|
|
@@ -66,19 +89,36 @@ const getVersionFromCommand = async (
|
|
|
66
89
|
pnpm: `pnpm list ${packageName} --json`,
|
|
67
90
|
}[packageManager];
|
|
68
91
|
|
|
69
|
-
const { stdout } = await execAsync(command);
|
|
92
|
+
const { stdout } = await execAsync(command, { cwd: currentDir });
|
|
93
|
+
|
|
70
94
|
if (packageManager === 'yarn') {
|
|
71
95
|
const lines = stdout.split('\n').filter((line) => line.trim());
|
|
72
96
|
for (const line of lines) {
|
|
73
97
|
const parsed = JSON.parse(line);
|
|
74
98
|
if (parsed.data?.trees) {
|
|
75
99
|
const match = parsed.data.trees.find((t: { name: string }) => t.name === packageName);
|
|
76
|
-
if (match)
|
|
100
|
+
if (match) {
|
|
101
|
+
return await resolveWorkspaceLink(match.version, currentDir);
|
|
102
|
+
}
|
|
77
103
|
}
|
|
78
104
|
}
|
|
79
105
|
} else {
|
|
80
|
-
const data = JSON.parse(stdout)
|
|
81
|
-
|
|
106
|
+
const data = JSON.parse(stdout);
|
|
107
|
+
|
|
108
|
+
// Handle pnpm array format vs npm object format
|
|
109
|
+
let dependencies;
|
|
110
|
+
if (Array.isArray(data)) {
|
|
111
|
+
// pnpm format: array of objects
|
|
112
|
+
dependencies = data[0]?.dependencies;
|
|
113
|
+
} else {
|
|
114
|
+
// npm format: single object with dependencies
|
|
115
|
+
dependencies = data.dependencies;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
const version = findDependencyVersion(dependencies, packageName);
|
|
119
|
+
if (version) {
|
|
120
|
+
return await resolveWorkspaceLink(version, currentDir);
|
|
121
|
+
}
|
|
82
122
|
}
|
|
83
123
|
} catch (error) {
|
|
84
124
|
console.error(`Error executing ${packageManager} list command:`, error);
|
|
@@ -99,7 +139,7 @@ export async function getPackageVersion(packageName: string): Promise<string | n
|
|
|
99
139
|
while (currentDir !== parse(currentDir).root) {
|
|
100
140
|
const packageManager = await detectPackageManager(currentDir);
|
|
101
141
|
if (packageManager) {
|
|
102
|
-
const version = await getVersionFromCommand(packageName, packageManager);
|
|
142
|
+
const version = await getVersionFromCommand(packageName, packageManager, currentDir);
|
|
103
143
|
if (version) return version;
|
|
104
144
|
}
|
|
105
145
|
currentDir = dirname(currentDir);
|
package/tsconfig.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["./src/codestore.test.ts","./src/codestore.ts","./src/logging.test.ts","./src/logging.ts","./src/mrn.test.ts","./src/mrn.ts","./src/ulid.test.ts","./src/ulid.ts","./src/appify/build.test.ts","./src/appify/build.ts","./src/appify/index.test.ts","./src/appify/index.ts","./src/appify/parse.test.ts","./src/appify/parse.ts","./src/appify/validate.test.ts","./src/appify/validate.ts","./src/liquidmetal/v1alpha1/agent_memory_name_pb.ts","./src/liquidmetal/v1alpha1/annotation_pb.ts","./src/liquidmetal/v1alpha1/bucket_name_pb.ts","./src/liquidmetal/v1alpha1/catalog_pb.ts","./src/liquidmetal/v1alpha1/object_pb.ts","./src/liquidmetal/v1alpha1/rainbow_auth_pb.ts","./src/liquidmetal/v1alpha1/raindrop_pb.ts","./src/liquidmetal/v1alpha1/search_agent_pb.ts","./src/raindrop/index.test.ts","./src/raindrop/index.ts","./src/unsafe/codestore.test.ts","./src/unsafe/codestore.ts","./src/unsafe/framework.test.ts","./src/unsafe/framework.ts"],"version":"5.8.
|
|
1
|
+
{"root":["./src/codestore.test.ts","./src/codestore.ts","./src/logging.test.ts","./src/logging.ts","./src/mrn.test.ts","./src/mrn.ts","./src/ulid.test.ts","./src/ulid.ts","./src/appify/build.test.ts","./src/appify/build.ts","./src/appify/index.test.ts","./src/appify/index.ts","./src/appify/parse.test.ts","./src/appify/parse.ts","./src/appify/validate.test.ts","./src/appify/validate.ts","./src/liquidmetal/v1alpha1/agent_memory_name_pb.ts","./src/liquidmetal/v1alpha1/annotation_pb.ts","./src/liquidmetal/v1alpha1/bucket_name_pb.ts","./src/liquidmetal/v1alpha1/catalog_pb.ts","./src/liquidmetal/v1alpha1/events_connect.ts","./src/liquidmetal/v1alpha1/events_pb.ts","./src/liquidmetal/v1alpha1/logging_pb.ts","./src/liquidmetal/v1alpha1/object_pb.ts","./src/liquidmetal/v1alpha1/rainbow_auth_pb.ts","./src/liquidmetal/v1alpha1/raindrop_pb.ts","./src/liquidmetal/v1alpha1/riverjack_pb.ts","./src/liquidmetal/v1alpha1/search_agent_pb.ts","./src/raindrop/index.test.ts","./src/raindrop/index.ts","./src/unsafe/codestore.test.ts","./src/unsafe/codestore.ts","./src/unsafe/framework.test.ts","./src/unsafe/framework.ts"],"version":"5.8.3"}
|