Conversation
👷 Deploy Preview for chef-habitat processing.
|
|
Hello dependabot[bot]! Thanks for the pull request! Here is what will happen next:
Thank you for contributing! |
95d64f1 to
c8ceea0
Compare
d0c4847 to
f76a470
Compare
|
Fair point.
I’ve been delivered not one but two thanksgiving turkeys this afternoon.
This likely explains a mystery bug I’ve been hitting in my testing today and finally had to dig into.
https://github.com/Stebalien/tempfile/blob/1a40687e06eb656044e3d2dffa1379f04b3ef3fd/src/lib.rs#L30
This is something I’ll need to account for as I work through responding to the different events.
notify-rs/notify#166
I don’t think either is terrible, especially given that they’re known now.
Will incorporate the feed back below and push a point in time check in of my changes. Need to start heading towards my mom’s place.
From: Matt Wrock ***@***.***>
Date: Tuesday, November 22, 2022 at 4:19 PM
To: habitat-sh/habitat ***@***.***>
Cc: Jason Heath ***@***.***>, Assign ***@***.***>
Subject: Re: [habitat-sh/habitat] Bump notify from 4.0.17 to 5.0.0 (PR #8615)
@mwrock commented on this pull request.
________________________________
In components/sup/src/manager/file_watcher.rs<#8615 (comment)>:
- #[derive(Clone, Debug, PartialEq)]
- struct NotifyEvent {
- path: PathBuf,
- kind: NotifyEventKind,
+ // Logging the fact that a particular path was ignored. Ignoring a given
+ // path may be the correct thing to do so the purpose of logging that a
+ // particular path was ignored is to highlight that the path was ignored in
+ // case the decision made today to ignore the event needs to be changed
+ // due to design changes, lessons learned (bugs) or notify crate updates.
+ fn log_ignored_path(&mut self, notify_event: &Event, path_buf: &PathBuf) {
+ info!("IGNORING {:?} of {:?}", path_buf, notify_event)
this is probably something you want to log at TRACE level. INFO would be way too noisy.
—
Reply to this email directly, view it on GitHub<#8615 (review)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AAAHD6CKX7STWJQVPYWLUNTWJU2EFANCNFSM6AAAAAAQA73KFE>.
You are receiving this because you were assigned.Message ID: ***@***.***>
|
cbdcb31 to
8573c22
Compare
mwrock
left a comment
There was a problem hiding this comment.
I'm not done but I'm going to send these along for now.
mwrock
left a comment
There was a problem hiding this comment.
In addition to these comment there are a few general comments:
- The code comments seem somewhat excessive. I definitely appreciate assistance in understanding what is happening, but these seem super verbose.
- The debug logging also seems a bit excessive. It may just be that you need this for the nitial development but you may want to reevaluate if you need all of this.
mwrock
left a comment
There was a problem hiding this comment.
I have not looked over the tests yet but thought I would get this review batch out now so you could start looking sooner than later if you wanted.
|
A newer version of notify exists, but since this PR has been edited by someone other than Dependabot I haven't updated it. You'll get a PR for the updated version as normal once this PR is merged. |
|
Here's the changelog for 5.1.0.
How would you like to handle? For us, its really all about that change on the windows crate as since we don't use kqueue. I can argue for and against both finishing the upgrade work and bumping later vs bumping to 5.1.0 now. Given the nature of the change I think I would break towards upgrading now but you have a much better perspective on what that change will mean for windows. |
I would go ahead and bump and if there is no refactoring needed and the tests pass then we can just take it. Otherwise we will probably want to do separately unless it is something obvious and trivial. |
Bumped and pushed. Made sure that only the notify dependency changed. Verified that |
|
Still making my way through the tests but wanted to drop this one comment now. There are a lot of tests and parts of tests that are relying on knowledge of the private API and implementation of the file watcher. For instance a lot of checking on the watched file state and other tests calling methods like preclude_directories and the ends_with functions. I think we really just want to have tests that call the public API: new, run, single_iteration and validate that certain events were called or not called. I think you are already testing that the events are being called and I see pretty thorough testing on the error conditions of |
|
It looks like |
The latest version of the code does this. (Just updating to keep track where we are) |
Most recent version of the code should address all of this. (Just updating to keep track where we are) |
mwrock
left a comment
There was a problem hiding this comment.
still going through this but here is what I have now. Also there are a lot of comments referencing v5.0.0 specifically. Eventually we will be on a higher version and these references may become confusing.
mwrock
left a comment
There was a problem hiding this comment.
In addition to these comments, I noticed that the test methods return a result. Typically, a test function returns nothing which eliminates the need for the empty Ok(()) at the end. It's not a big deal and you can leave it but thought you should know.
mwrock
left a comment
There was a problem hiding this comment.
Looks good! Just one super minor comment. And also looks like you need to address some clippy/linting stuff.
mwrock
left a comment
There was a problem hiding this comment.
Looks good pending rebase and merge. So much cleaner without the notify crate!
Complete rewrite of FileWatcher which eliminated the use of the notify crate. Removed **/sup/**/manager/debug.rs which was only used in old FileWatcher impl. Updated usage of notify crate in the places it is still used. Signed-off-by: Jason Heath <jason.heath@progress.com>
ffcf4d0 to
1502382
Compare
Bumps notify from 4.0.17 to 5.0.0.
Release notes
Sourced from notify's releases.
Changelog
Sourced from notify's changelog.
... (truncated)
Commits
d985ae1prepare 5.0.0a83279fimprove upgrade docs and fix Config link65da37bfile back v4 history into changelog1fbf8faadd accessor for whether rescan is required on Event17580f6fixup rebase gunk54465e9fixup optional crossbeam feature selection in debouncer-mini94f1680update minimum walkdir version to 2.2.2 (#432)4d16a54fixup doc links post initial debouncer-mini released698f90fixup moved readme due to reorg2f91e15fix typo in readmeDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)