Skip to content

Commit 22e49e1

Browse files
chore(core): convert build to tsup
1 parent b77eefb commit 22e49e1

File tree

6 files changed

+98
-21
lines changed

6 files changed

+98
-21
lines changed

langchain-core/package.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@
2828
"test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch --testPathIgnorePatterns=\\.int\\.test.ts",
2929
"test:single": "NODE_OPTIONS=--experimental-vm-modules yarn run jest --config jest.config.cjs --testTimeout 100000",
3030
"format": "prettier --config .prettierrc --write \"src\"",
31-
"format:check": "prettier --config .prettierrc --check \"src\""
31+
"format:check": "prettier --config .prettierrc --check \"src\"",
32+
"type-check": "tsc --noEmit"
3233
},
3334
"author": "LangChain",
3435
"license": "MIT",
@@ -68,7 +69,8 @@
6869
"release-it": "^18.1.2",
6970
"rimraf": "^5.0.1",
7071
"ts-jest": "^29.1.0",
71-
"typescript": "~5.1.6",
72+
"tsup": "^8.4.0",
73+
"typescript": "^5.4.5",
7274
"web-streams-polyfill": "^4.0.0"
7375
},
7476
"publishConfig": {

langchain-core/src/messages/content_blocks.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,7 @@ export function parseBase64DataUrl({
228228
*/
229229
export function parseBase64DataUrl({
230230
dataUrl,
231-
asTypedArray = false,
231+
asTypedArray,
232232
}: {
233233
dataUrl: string;
234234
asTypedArray?: false;
@@ -243,7 +243,7 @@ export function parseBase64DataUrl({
243243
*/
244244
export function parseBase64DataUrl({
245245
dataUrl: data_url,
246-
asTypedArray = false,
246+
asTypedArray,
247247
}: {
248248
dataUrl: string;
249249
asTypedArray?: boolean;

langchain-core/tsconfig.cjs.json

Lines changed: 0 additions & 13 deletions
This file was deleted.

langchain-core/tsconfig.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"extends": "@tsconfig/recommended",
2+
"extends": "@tsconfig/recommended/tsconfig.json",
33
"compilerOptions": {
44
"outDir": "../dist",
55
"rootDir": "./src",
@@ -9,7 +9,7 @@
99
"ES2022.Object",
1010
"DOM"
1111
],
12-
"module": "ES2020",
12+
"module": "NodeNext",
1313
"moduleResolution": "nodenext",
1414
"esModuleInterop": true,
1515
"declaration": true,
@@ -30,4 +30,4 @@
3030
"dist",
3131
"docs"
3232
]
33-
}
33+
}

langchain-core/tsup.config.ts

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
import { defineConfig } from "tsup";
2+
export default defineConfig({
3+
// Entry points - adjust for your package structure
4+
entry: [
5+
"src/agents.ts",
6+
"src/caches/base.ts",
7+
"src/callbacks/base.ts",
8+
"src/callbacks/dispatch/index.ts",
9+
"src/callbacks/dispatch/web.ts",
10+
"src/callbacks/manager.ts",
11+
"src/callbacks/promises.ts",
12+
"src/chat_history.ts",
13+
"src/context.ts",
14+
"src/documents/index.ts",
15+
"src/document_loaders/base.ts",
16+
"src/document_loaders/langsmith.ts",
17+
"src/embeddings.ts",
18+
"src/example_selectors/index.ts",
19+
"src/indexing/index.ts",
20+
"src/language_models/base.ts",
21+
"src/language_models/chat_models.ts",
22+
"src/language_models/llms.ts",
23+
"src/load/index.ts",
24+
"src/load/serializable.ts",
25+
"src/memory.ts",
26+
"src/messages/index.ts",
27+
"src/messages/tool.ts",
28+
"src/output_parsers/index.ts",
29+
"src/output_parsers/openai_tools/index.ts",
30+
"src/output_parsers/openai_functions/index.ts",
31+
"src/outputs.ts",
32+
"src/prompts/index.ts",
33+
"src/prompt_values.ts",
34+
"src/runnables/index.ts",
35+
"src/runnables/graph.ts",
36+
"src/runnables/remote.ts",
37+
"src/retrievers/index.ts",
38+
"src/retrievers/document_compressors/base.ts",
39+
"src/singletons/index.ts",
40+
"src/stores.ts",
41+
"src/structured_query/index.ts",
42+
"src/tools/index.ts",
43+
"src/tracers/base.ts",
44+
"src/tracers/console.ts",
45+
"src/tracers/initialize.ts",
46+
"src/tracers/log_stream.ts",
47+
"src/tracers/run_collector.ts",
48+
"src/tracers/tracer_langchain.ts",
49+
"src/tracers/tracer_langchain_v1.ts",
50+
"src/types/stream.ts",
51+
"src/utils/async_caller.ts",
52+
"src/utils/chunk_array.ts",
53+
"src/utils/env.ts",
54+
"src/utils/event_source_parse.ts",
55+
"src/utils/function_calling.ts",
56+
"src/utils/hash.ts",
57+
"src/utils/json_patch.ts",
58+
"src/utils/json_schema.ts",
59+
"src/utils/math.ts",
60+
"src/utils/stream.ts",
61+
"src/utils/testing/index.ts",
62+
"src/utils/tiktoken.ts",
63+
"src/utils/types/index.ts",
64+
"src/vectorstores.ts",
65+
],
66+
// Output both ESM and CJS formats
67+
format: ["esm", "cjs"],
68+
// Generate declaration files
69+
dts: true,
70+
// enable treeshaking
71+
treeshake: "safest",
72+
// Generate sourcemaps
73+
sourcemap: true,
74+
// Clean output directory before build
75+
clean: true,
76+
// Specify output directory
77+
outDir: "dist",
78+
// Set output extension based on format
79+
outExtension({ format }) {
80+
return {
81+
js: format === "esm" ? ".js" : ".cjs",
82+
};
83+
},
84+
// Ensure all external dependencies are properly excluded from the bundle
85+
// These will be taken from package.json dependencies/peerDependencies
86+
external: [],
87+
});

yarn.lock

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7812,7 +7812,8 @@ __metadata:
78127812
release-it: ^18.1.2
78137813
rimraf: ^5.0.1
78147814
ts-jest: ^29.1.0
7815-
typescript: ~5.1.6
7815+
tsup: ^8.4.0
7816+
typescript: ^5.4.5
78167817
uuid: ^10.0.0
78177818
web-streams-polyfill: ^4.0.0
78187819
zod: ^3.22.4

0 commit comments

Comments
 (0)