Comments (7)
It will likely be trivial to do, but updating quickcheck has previously been considered a breaking change, in which case you would also need the reverse dependencies to update their ascii dependency.
quickcheck is only an optional dependency though; does any of the reverse dependencies packaged by debian actually need it? (I couldn't find a way to get the reverse dependencies of a package on packages.debian.org)
from rust-ascii.
Yes, there is currently no direct way to detect the reverse dependencies due to crate packages only being build dependencies in Debian. A method to find these dependencies is described in the TODO.rst
file in the debcargo-conf repository.
The packaged reverse dependencies currently are combine
and encode-unicode
, which in turn are not yet depended on, and as far as I can say, none of these uses the quickcheck feature.
This means ascii
is not used in any binary package yet, but it is present in a dependency tree of a binary crate we intend to package on the long term.
It would be easy for us to patch out the quickcheck feature, but we usually try to stay close to upstream and avoid patching if not necessary. Instead we try to get crate maintainers to update their dependencies, because we might package a crate one day which requires the quickcheck feature, and then it would cause more troubles than if we had tried to get the fixes into upstream early.
For Debian 10 (buster) no binary crate will use ascii
, because we are in freeze already and it will be released soon(ish). So we have some time left to work towards Debian 11 (bullseye) to get the depending crates packaged and updated.
from rust-ascii.
Any updates on this? Now that buster is released, I would like to continue packaging. If you consider releasing a new (semver incompatible) ascii
version, I would wait for it to be released, otherwise I would rather patch our package to not contain the quickcheck
feature.
from rust-ascii.
from rust-ascii.
Hi silwol, @tormol,
I also tried updating it and came to the same conclusion. The problem is, that the features quickcheck
is named like the optional dependency, so we can't make the compilation of rand
dependent on the feature quickcheck
.
A possible solution would be renaming the feature so we can properly include the rand
dependency, but thats my least favourite option.
I also thought about removing the quickcheck feature, instead users should use a newtype-wrapper that implements the required traits. Maybe @sunshowers can provide feedback on that, as original requester of this feature. Another advantage would be, that fewer major releases have to be cut for ascii
.
While the quickcheck
feature is mostly used in tests of other crates disabling the feature in the official Debian package could be a problem. Building the deb package could include running these tests, that require the feature. Therefore I think the Debian package indeed should enable all features.
from rust-ascii.
@tormol With my debian maintainer hat on, I would really appreciate your suggested solution of removing the quickcheck dependency. Would facilitate maintenance significantly.
@tomprogrammer We are indeed right now starting to use autopkgtests which run tests for all features during build :-)
from rust-ascii.
quickcheck feature has been removed with version 1.0.0.
Sorry it took me so long to finish up #63.
from rust-ascii.
Related Issues (20)
- Feature request: public iterator types
- Unsound usages of unsafe implementation from `AsciiStr` to `wider: ty` HOT 2
- Add support for extended ascii HOT 2
- What is the intended behaviour of AsciiStr.lines()? HOT 2
- Implement `std::str::pattern::Pattern`
- Most functions could be const HOT 4
- Publish next version to crate.io? HOT 1
- Implementing `From<&mut AsciiStr>` for `&mut str` and `&mut [u8]` is unsound HOT 8
- Mark AsciiStr `#[repr(transparent)]` ? HOT 2
- Versions 0.7.0-0.9.2 are yanked? HOT 1
- All files in crate are executables HOT 1
- AsciiChar::Caret documentation shows '_' HOT 1
- Easy way to get a &str or even just &AsciiStr out of [AsciiChar; _], &[AsciiChar; _] or &[AsciiChar] HOT 2
- AsciiChar::SOX should be AsciiChar::STX HOT 2
- Publish new version with the alloc feature? HOT 6
- Create `AsciiStr` from `str` using `const fn`
- Convert to and from AsciiString and Box<AsciiStr> HOT 1
- Benchmark HOT 2
- `serde_test` should be dev-dependency HOT 3
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 rust-ascii.