Skip to content

Commit 9ce9e7f

Browse files
authored
refactor: extract deps-zed to separate repository as submodule (#8)
* refactor: extract deps-zed to separate repository as submodule - Created separate repository: https://github.com/bug-ops/deps-zed - Extracted deps-zed with full git history using git subtree split - Added deps-zed as git submodule in crates/deps-zed - Excluded deps-zed from workspace in Cargo.toml This enables deps-zed to be submitted as a submodule to zed/extensions. * ci: update workflows for deps-zed submodule - Add submodules: true to WASM build checkout - Update working directory for deps-zed build - Update publish-crates to publish all workspace crates in correct order - Remove deps-zed from crates.io publish (now separate repo) * chore: update deps-zed submodule with workspace-independent Cargo.toml
1 parent 7d5ce4b commit 9ce9e7f

File tree

12 files changed

+42
-510
lines changed

12 files changed

+42
-510
lines changed

.github/workflows/ci.yml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -259,6 +259,9 @@ jobs:
259259
run: cargo check --workspace --all-features
260260

261261
# WASM build check for Zed extension
262+
# Note: deps-zed is now a separate repository (submodule).
263+
# WASM build is handled in the deps-zed repo CI.
264+
# This job now validates that submodule is properly configured.
262265
wasm:
263266
name: WASM Build (Zed Extension)
264267
needs: [changes, fmt, check]
@@ -267,6 +270,8 @@ jobs:
267270
timeout-minutes: 15
268271
steps:
269272
- uses: actions/checkout@v6
273+
with:
274+
submodules: true
270275

271276
- name: Install Rust
272277
uses: dtolnay/rust-toolchain@stable
@@ -279,12 +284,13 @@ jobs:
279284
shared-key: "wasm"
280285

281286
- name: Build Zed extension
282-
run: cargo build --package deps-zed --target wasm32-wasip1 --release
287+
working-directory: crates/deps-zed
288+
run: cargo build --target wasm32-wasip1 --release
283289

284290
- name: Check WASM size
285291
run: |
286-
ls -lh target/wasm32-wasip1/release/*.wasm
287-
du -sh target/wasm32-wasip1/release/*.wasm
292+
ls -lh crates/deps-zed/target/wasm32-wasip1/release/*.wasm
293+
du -sh crates/deps-zed/target/wasm32-wasip1/release/*.wasm
288294
289295
# Verify benchmarks compile (without running)
290296
benchmark:

.github/workflows/release.yml

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,8 @@ jobs:
163163
timeout-minutes: 20
164164
steps:
165165
- uses: actions/checkout@v6
166+
with:
167+
submodules: true
166168

167169
- name: Install Rust
168170
uses: dtolnay/rust-toolchain@stable
@@ -175,13 +177,14 @@ jobs:
175177
shared-key: "wasm-release"
176178

177179
- name: Build Zed extension
178-
run: cargo build --package deps-zed --target wasm32-wasip1 --release
180+
working-directory: crates/deps-zed
181+
run: cargo build --target wasm32-wasip1 --release
179182

180183
- name: Create WASM archive
181184
run: |
182-
cd target/wasm32-wasip1/release
183-
tar czf ../../../deps-zed.wasm.tar.gz deps_zed.wasm
184-
cd ../../..
185+
cd crates/deps-zed/target/wasm32-wasip1/release
186+
tar czf ../../../../../deps-zed.wasm.tar.gz deps_zed.wasm
187+
cd ../../../../..
185188
shasum -a 256 deps-zed.wasm.tar.gz > deps-zed.wasm.tar.gz.sha256
186189
187190
- name: Upload WASM archive
@@ -214,17 +217,33 @@ jobs:
214217
exit 1
215218
fi
216219
217-
- name: Publish deps-lsp to crates.io
218-
run: cargo publish --package deps-lsp --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
220+
- name: Publish deps-core to crates.io
221+
run: cargo publish --package deps-core --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
222+
continue-on-error: true
223+
224+
- name: Wait for crates.io propagation
225+
run: sleep 30
226+
227+
- name: Publish deps-cargo to crates.io
228+
run: cargo publish --package deps-cargo --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
219229
continue-on-error: true
220230

221231
- name: Wait for crates.io propagation
222232
run: sleep 30
223233

224-
- name: Publish deps-zed to crates.io
225-
run: cargo publish --package deps-zed --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
234+
- name: Publish deps-npm to crates.io
235+
run: cargo publish --package deps-npm --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
226236
continue-on-error: true
227237

238+
- name: Wait for crates.io propagation
239+
run: sleep 30
240+
241+
- name: Publish deps-lsp to crates.io
242+
run: cargo publish --package deps-lsp --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
243+
continue-on-error: true
244+
245+
# Note: deps-zed is now in a separate repository and published from there
246+
228247
# Update release notes with installation instructions
229248
update-release-notes:
230249
name: Update Release Notes

.gitmodules

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[submodule "crates/deps-zed"]
2+
path = crates/deps-zed
3+
url = [email protected]:bug-ops/deps-zed.git

0 commit comments

Comments
 (0)