-
Notifications
You must be signed in to change notification settings - Fork 229
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
Looking for maintainers #209
Comments
If you want to help contributing to this crate, please leave a comment below |
I can also hand over the repo and crate to @rust-unofficial if that's a better venue, especially for a crate which may have community importance (as it's used in many projects). /cc @badboy |
I'm interested in getting 5.0 over the edge. I can try to help if pointed towards issues. |
There's no nearby edge for 5.0. OK. So, for people, here's a quick view of what was in my head for 5.0 and further. Obvi no need to adhere to all or part of it.
That's it! Enjoy Edit: ok that's not quite it Here's unsorted thoughts on versions 6 and more:
Edit 2: almost forgot: at some point one might also want to add some tests back because they're kinda all gone oops |
There's a bugfix fork by @ashleygwilliams https://github.com/ashleygwilliams/notify released as |
Thanks for all your work @passcod! It's a real shame to see you stop work on this but I totally understand - I feel you! Many of the listed issues for reaching 5.0 seem to be related to the higher-level That said, I wonder if it might be worth stripping down Apologies if there's already an open issue for this that I have missed! Best wishes for your @Dylan-DPC I like the idea of creating a dedicated organisation along the lines of |
The point of the new Event type is to be the low level, the high level, the
only level, as the old RawEvent were, as stated, a limited derivation of
the inotify bit field, without regard for the rest of the backends, because
that's how notify started. There is no interpreting RawEvents into
anything, the current state of 5.0 already emits the new event type
directly from translation off the relevant kernel interface and I'm pretty
sure I eradicated the RawEvent type from the code.
At the high level, as you can see from your own uses, it was the plan to
make PreciseEvents opt-in... That is, that the only output would be an
event per file changed, without reporting *what* that change is, which is
what most care about: "hi, this file changed, do what you will".
Furthermore, while v4 had two event types, as you say, a low level RawEvent
and a higher level debounced Event, the other point behind a much more
generic new event type was to get rid of this difference altogether. One
event type instead of two.
Two nice bonuses come of that:
- it becomes trivial to switch from raw/immediate to debounced or vice
versa, which would be great not only for debugging and bug hunting (how
many times have i said "please try with raw mode"...) but also possibly for
downstream applications who want to optionally turn off deboucing.
- you can hook up a debounced notify and a raw/immediate notify to the same
channel at the same time. Like say you're watching a project with a
debounce but after an action you want to get a notification *right when a
particular file is changed*, well, instead of separate machinery you could
start an immediate watcher on the same channel and then tell it to watch
that one file only when you need. NoticeEvents were one solution, this
perhaps a simpler one that can only work if the event types are the same,
but also can be much better targetted.
For debugging this is also great, as you can just see what's happening
under both debounced and immediate modes simultaneously, with no changes to
your code which may obscure the real bug.
The current release of 5.0 is pretty much exactly what you're suggesting.
It has no debouncing code, and only exposes the raw events. Debouncing as a
layer on top is probably best, but not my call anymore ;)
These are, after all, the perks of abandonment: I can tell y'all what was
in my head (or try, at least), but just like I'm not going to do anything
about it, y'all can ignore any or all of it and go about your own way.
…On Fri, 13 Sep 2019, 17:24 mitchmindtree, ***@***.***> wrote:
Thanks for all your work @passcod <https://github.com/passcod>! It's a
real shame to see you stop work on this but I totally understand - I feel
you!
Many of the listed issues for reaching 5.0 seem to be related to the
higher-level Event type and the state machine involved in interpreting
RawEvents into these higher-level events. I personally have never used
the higher-level Event type in downstream projects and tend to use the
RawEvents directly, though my projects using notify are normally pretty
small and typically involve hotloading a small crate or some GLSL on any
kind of file change.
That said, I wonder if it might be worth stripping down notify to its
lower-level, cross-platform RawEvent handling and then create another
crate which provides an API for feeding notify::RawEvents into a state
machine to interpret them and produce higher-level, "debounced" Events?
Perhaps this could potentially ease the burden slightly for folks
considering contributing or taking on maintainership? It might also make it
a little easier to stabilize the cross-platform, lower-level parts of
notify while deliberation continues on how to present a nice higher-level
event API?
Apologies if there's already an open issue for this that I have missed!
Best wishes for your notify break :)
@Dylan-DPC <https://github.com/Dylan-DPC> I like the idea of creating a
dedicated organisation along the lines of notify-devs for managing notify.
Perhaps this way it might make it easier for multiple folks to share the
maintenance burden?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#209>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AABGBC4HWOSE65PJESZUV6TQJMPXXANCNFSM4ISXMK7A>
.
|
yes that's the exact reason behind it |
hey folks! just to clarify- my package "notify forked" really only exists because we ran into a semver issue yesterday and are preparing a release of a project that uses notify. i dont really intend to do any feature work- just bug fixes so the project i do for work can continue to use notify for the time being. that being said, i am able to help with some things, triage, etc, so do let me know if i can help! |
@passcod thanks for the detailed explanation! @Dylan-DPC sounds great to me! Would you like to start the organisation? Then perhaps the initial maintainers could include yourself, @passcod (at least while they assist with the transfer), @ashleygwilliams, @0xpr03? I'd also be welling to help every now and then. Perhaps between all of us we can keep notify above water until someone more dedicated comes along and we can add them to the org as well? |
@mitchmindtree yes will do when I get time later this week |
I am willing to help also.. |
@passcod @Dylan-DPC Hi, I'm interested in maintaining this crate. |
As @Dylan-DPC said elsewhere, looks like this is resolved :) |
Can it be closed? |
If it resolved then can closed it.. |
Okay, I'm going to close this, but feel free to re-open if this is still needed. |
Yes it's resolved but it's not the end - in case anyone reading this in future would like to maintain this crate in future, just leave a comment here :) |
As per the abandonment announce, copied here for convenience:
* As an addendum, though, I'm happy doing some light admin and light mentoring / answering questions about current and future design and code, during the transition period, as long as that takes.
There's also some comments on Twitter:
@Dylan-DPC has expressed some interest in helping to create an organisation and taking this forward.
This is a call for anyone else who would be interested in maintainership!
The text was updated successfully, but these errors were encountered: