Comments (7)
Thanks. What's your opinion on the feature detect approach to no-std that indexmap uses?
from indexmap.
I think that's mostly fine. Although I'm not sure how you could pass that on to serde.
from indexmap.
I think in general this is not possible given cargo
s rudimentary implementation of crate features. Even if there was a std
feature, it would not be possible to enable serde/std
only if this crates std
and serde
features are enabled. Doing std = ["serde/std"]
under [features]
would "activate" the serde
dependency when the std
feature is enabled, even without the serde-1
feature being enabled. Unfortunately I can't find a bug report about this in cargo's issues.
I'm also pretty sure that interacting with dependency resolution from within a build script is not possible (and doesn't seem very viable to me in general).
from indexmap.
Doing std = ["serde/std"] under [features] would "activate" the serde dependency when the std feature is enabled, even without the serde-1 feature being enabled.
Don't tell me this is real????? I haven't fully tested the no_std support for my crate yet (or rather how std behaves then), but that would be horrible.
from indexmap.
I believe the main cargo bug on mixed features is rust-lang/cargo#2589.
The detected std
ability actually sidesteps this problem since cargo is not involved, which is interesting, but serde would need to do this too.
from indexmap.
Don't tell me this is real?????
Found it afterall: rust-lang/cargo#3494
@cuviper You are right, that would be an interesting workaround. I'm sure there are some pitfalls though...
from indexmap.
I think we can solve this with a new feature like serde-no-std, subset of current serde feature
from indexmap.
Related Issues (20)
- Feature request: Add Index<usize> to Keys HOT 1
- Implement (behind a feature branch) the Merge Crate HOT 4
- IndexMap doesn't implement `Hash` HOT 1
- Compilation bug HOT 1
- Organization / repo home HOT 12
- Doc link on crates.io is dead. HOT 3
- Kaspersky detected the indexmap build-script exe as malware (false positive) HOT 1
- MutableKeys for IndexSet HOT 2
- implement get_many_mut HOT 1
- serde_json::to_string serializes (key, value) HOT 3
- Request: add example to README
- Thanks :)
- Insert into Indexmap randomly fails HOT 9
- Expanding mut key API HOT 2
- Feature request: join two or more IndexMap HOT 2
- Request: Random access of key/value pairs HOT 2
- range end index 2 out of range for slice of length 1 HOT 20
- Feature request: `Into<std::collections::HashMap>` HOT 1
- `Clone` for into-iterators HOT 4
- Question: Double-Ended IndexMap HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from indexmap.