netdata / agent-service-discovery

MIT License
14 stars 9 forks source link

Bump github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0 #166

Closed dependabot[bot] closed 1 year ago

dependabot[bot] commented 1 year ago

Bumps github.com/fsnotify/fsnotify from 1.6.0 to 1.7.0.

Release notes

Sourced from github.com/fsnotify/fsnotify's releases.

v1.7.0

This version of fsnotify needs Go 1.17.

Additions

  • illumos: add FEN backend to support illumos and Solaris. (#371)

  • all: add NewBufferedWatcher() to use a buffered channel, which can be useful in cases where you can't control the kernel buffer and receive a large number of events in bursts. (#550, #572)

  • all: add AddWith(), which is identical to Add() but allows passing options. (#521)

  • windows: allow setting the ReadDirectoryChangesW() buffer size with fsnotify.WithBufferSize(); the default of 64K is the highest value that works on all platforms and is enough for most purposes, but in some cases a highest buffer is needed. (#521)

Changes and fixes

  • inotify: remove watcher if a watched path is renamed (#518)

    After a rename the reported name wasn't updated, or even an empty string. Inotify doesn't provide any good facilities to update it, so just remove the watcher. This is already how it worked on kqueue and FEN.

    On Windows this does work, and remains working.

  • windows: don't listen for file attribute changes (#520)

    File attribute changes are sent as FILE_ACTION_MODIFIED by the Windows API, with no way to see if they're a file write or attribute change, so would show up as a fsnotify.Write event. This is never useful, and could result in many spurious Write events.

  • windows: return ErrEventOverflow if the buffer is full (#525)

    Before it would merely return "short read", making it hard to detect this error.

  • kqueue: make sure events for all files are delivered properly when removing a watched directory (#526)

    Previously they would get sent with "" (empty string) or "." as the path name.

  • kqueue: don't emit spurious Create events for symbolic links (#524)

    The link would get resolved but kqueue would "forget" it already saw the link itself, resulting on a Create for every Write event for the directory.

  • all: return ErrClosed on Add() when the watcher is closed (#516)

  • other: add Watcher.Errors and Watcher.Events to the no-op Watcher in backend_other.go, making it easier to use on unsupported platforms such as WASM, AIX, etc. (#528)

  • other: use the backend_other.go no-op if the appengine build tag is set; Google AppEngine forbids usage of the unsafe package so the inotify backend won't compile there.

#371: fsnotify/fsnotify#371 #516: fsnotify/fsnotify#516 #518: fsnotify/fsnotify#518 #520: fsnotify/fsnotify#520 #521: fsnotify/fsnotify#521 #524: fsnotify/fsnotify#524 #525: fsnotify/fsnotify#525

... (truncated)

Changelog

Sourced from github.com/fsnotify/fsnotify's changelog.

1.7.0 - 2023-10-22

This version of fsnotify needs Go 1.17.

Additions

  • illumos: add FEN backend to support illumos and Solaris. (#371)

  • all: add NewBufferedWatcher() to use a buffered channel, which can be useful in cases where you can't control the kernel buffer and receive a large number of events in bursts. (#550, #572)

  • all: add AddWith(), which is identical to Add() but allows passing options. (#521)

  • windows: allow setting the ReadDirectoryChangesW() buffer size with fsnotify.WithBufferSize(); the default of 64K is the highest value that works on all platforms and is enough for most purposes, but in some cases a highest buffer is needed. (#521)

Changes and fixes

  • inotify: remove watcher if a watched path is renamed (#518)

    After a rename the reported name wasn't updated, or even an empty string. Inotify doesn't provide any good facilities to update it, so just remove the watcher. This is already how it worked on kqueue and FEN.

    On Windows this does work, and remains working.

  • windows: don't listen for file attribute changes (#520)

    File attribute changes are sent as FILE_ACTION_MODIFIED by the Windows API, with no way to see if they're a file write or attribute change, so would show up as a fsnotify.Write event. This is never useful, and could result in many spurious Write events.

  • windows: return ErrEventOverflow if the buffer is full (#525)

    Before it would merely return "short read", making it hard to detect this error.

  • kqueue: make sure events for all files are delivered properly when removing a watched directory (#526)

    Previously they would get sent with "" (empty string) or "." as the path name.

  • kqueue: don't emit spurious Create events for symbolic links (#524)

... (truncated)

Commits
  • cfc9c4f Few more tiny doc fixes >_<
  • c3fa8e6 Proof-read some docs and prepare 1.7.0 release
  • 5310461 Remove stray trailing space in doc comment
  • f01d91e Add NewBufferedWatcher() (#572)
  • e545940 Merge pull request #589 from fsnotify/win-rm
  • c86f21c Document and test removing watched directory on Windows
  • 68111f2 Merge pull request #588 from fsnotify/illumos
  • 0614185 Add back illumos
  • 2f2332a Idiomatic bitwise operations
  • 769aaa7 Tweak docs
  • Additional commits viewable in compare view


Dependabot compatibility score

Dependabot 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 rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will 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 version` will 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 dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)