denoland / denoland/import_map

Can't use this within a project with `wasm-bindgen` due to cyclic dependency

Open
#29 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
34
Forks
14
PR merge metrics
No merged PRs in 30d

Description

- `import_map` enables `serde_json/preserve_order`
- `serde_json/preserve_order` depends on `indexmap` (https://docs.rs/crate/serde_json/latest/features)
- `indexmap` depends on `hashbrown`
- `hashbrown` depends on `ahash` by default.
- `ahash` depends on `const-random`

and the result is

```
❯ cargo check
Updating crates.io index
error: cyclic package dependency: package `ahash v0.7.6` depends on itself. Cycle:
package `ahash v0.7.6`
... which satisfies dependency `ahash = "^0.7.0"` of package `hashbrown v0.11.2`
... which satisfies dependency `hashbrown = "^0.11"` of package `indexmap v1.8.0`
... which satisfies dependency `indexmap = "^1.5"` of package `serde_json v1.0.79`
... which satisfies dependency `serde_json = "^1.0"` of package `wasm-bindgen v0.2.79`
... which satisfies dependency `wasm-bindgen = "^0.2.79"` of package `js-sys v0.3.56`
... which satisfies dependency `js-sys = "^0.3"` of package `getrandom v0.2.3`
... which satisfies dependency `getrandom = "^0.2.0"` of package `const-random-macro v0.1.13`
... which satisfies dependency `const-random-macro = "^0.1.13"` of package `const-random v0.1.13`
... which satisfies dependency `const-random = "^0.1.12"` of package `ahash v0.7.6`

```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reproducing the dependency graph with `cargo check` in a project using `wasm-bindgen` and `import_map`, then inspect the listed `serde_json`, `indexmap`, `hashbrown`, `ahash`, and `const-random` dependencies. Done means the cyclic package dependency is resolved and the affected project checks successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.