-
Notifications
You must be signed in to change notification settings - Fork 472
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move CachePadded to separate sub-crate? #1066
Comments
Well, as for
Do you have any concrete requirements? I think we can consider relaxing MSRV if it is really needed. For example, #1056 has relaxed the MSRV a bit that #1037 bumped.
One of the reasons |
That's great news!
No. I just dislike bumping the MSRV of my crate without any real reason. Every bump is a potential obstacle for users of my crate and of dependent crates. I'm not against bumping the MSRV in general, I just would like to avoid doing it gratuitously.
With an additional sub-crate there would of course be an added maintenance cost when updating crate versions, but I would hope that it is small enough to still be feasible.
Yeah, I understand, but this would only be an "internal" dependency to a sub-crate. To make my suggestion a bit more concrete, I've crated a draft PR: #1069. There are a few details which would have to be ironed out, but it can hopefully serve as a basis for discussion. What do you think about it? |
Filed #1072 for this.
The MSRV was not bumped for no reason. It was just bumped for APIs you are not using (#1033).
I said "new dependencies", not "new public dependencies" or "new external dependencies". "new 'internal' dependency" is also a "new dependency". Your PR seems to be doing exactly what I thought I didn't want to do when I wrote that comment. (Also, your comments make me feel that you are saying, "I don't like the fact that my crate's dependency has a dependency, but I would like you to add a dependency to your crate".) |
This has been released in crossbeam-utils v0.8.19. |
Thanks for removing
Sure, you didn't just bump it for the fun of it. But when I bump the MSRV of my crate, there will be no real reason.
Yeah, I assumed that "internal" dependencies are fine, but I guess they also cause some overhead when downloading crates. I have created an alternative approach (based on your comment about symbolic links above): #1075.
Yeah, I didn't intend it to sound like this. I assumed (wrongly) that "internal" dependencies don't count. |
I have been using https://github.com/smol-rs/cache-padded/ as a dependency until it has been deprecated (smol-rs/cache-padded#11) and then, as suggested, I switched to
crossbeam_utils::CachePadded
.I didn't really like that this forced an unneeded dependency (
cfg-if
, mentioned at smol-rs/cache-padded#10 (comment)) onto my crate.I kinda accepted this, but recently, I found another inconvenience: it also forces me to bump the MSRV of my crate due to #1037, which is AFAICT unrelated to
CachePadded
.Would it be possible to move
CachePadded
to a separate sub-crate to avoid those problems?Alternatively, both problems might be avoidable by moving parts of
crossbeam_utils
to separate "features" (which I could deactivate for my crate), but I don't know if that's feasible?The text was updated successfully, but these errors were encountered: