-
Notifications
You must be signed in to change notification settings - Fork 118
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
Implementation of a split crate scheme. #257
Conversation
Thanks for starting work on this! For stuff like Github helpfully gives me access to your |
I just meant that if you wanted to keep them somewhat private, they could be namespaced under e.g. a "mod procfs-internal". But if you don't mind expanding the API by making them public, that makes it easier. I think most might actually be able to be kept private if the relevant things are moved over into |
Ah, I see. For now, let's just make them public in |
@eminence Take a look at what I've got so far. More stuff could be moved to This includes allowing the (new) Types which need Methods which need |
(Just dropping a quick note to say that I haven't forgotten about this PR) |
No problem, I know it's a lot to take in (and still isn't complete in moving stuff to |
Also for such a large changeset I recommend simply looking at the files. The diff view is way more distracting than helpful (I wish they at least supported side-by-side diffs). |
I just pushed 2 new commits to your branch: one updates github CI, and the other removes some problematic doc comments (which were trying to link to |
Yes, I should have mentioned that I wasn't particularly thorough with updating doc comments (especially because I think there should probably be some more involved rewriting for a few things like module documentation to make the organization clear). |
It looks like the nightly failure is from the |
Yeah, see rust-lang/rust#109614 should be fixed soon |
Yes, it looks like the nightly failure is due to rust-lang/rust#109424, which happens to hit rustix. |
Aside from CI blinking lights, how does the crate organization look? Is this a direction you want to take the project? I only have this as a draft at this point because it would feel more complete to move the few missing things over correctly. |
Yes, it definitely is. Since this is a big PR that's hard to review, my strategy/next steps for reviewing is this:
Hopefully you've already been able to validate that the new |
Yeah, the |
some traits. The `procfs` crate and tests now build (and pass).
I migrated my procdump project to using this PR, and it went pretty smoothly. I had to make only a few changes:
I also see that some functions like Since this PR is really quite large, my current inclination is to merge this, and then do additional iterations in additional merge requests. |
It sounds like you hit most/all of the purposeful breaking changes! Those changes were mainly to improve consistency in the API and naming (e.g. I think it's fine to keep some of those standalone functions. I actually thought I had left a TODO somewhere mentioning that, but I don't see it. I considered making individual extension traits in |
I ran a tool ( |
I just finished moving everything else except the |
Ok, let's get this merged, so other PRs can be rebased. Many thanks @afranchuk for working on this |
This splits the crates as a demonstration of what that might look like.
cc #255