Skip to content
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

Add Solaris FEN using EventPorts from x/sys/unix #371

Merged
merged 61 commits into from Oct 13, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
e374e19
Add Solaris FEN using EventPorts from x/sys/unix
nshalman May 28, 2021
96066fd
GitHub Action to run illumos tests in a VM
nshalman Aug 2, 2021
2226f96
XXX squashme: fixups
nshalman Jan 17, 2022
1fbfcc9
XXX squashme: remove doneResp channel - doesn't break tests...
nshalman Jan 17, 2022
cf84108
XXX squashme: send all fsnotify events found in the event ports event
nshalman Jan 18, 2022
546c36c
XXX squashme: select -> if
nshalman Jan 18, 2022
d3c741d
XXX squashme: handle merged MODIFIED and ATTRIB events
nshalman Jan 19, 2022
acb22e2
fix changelog
nshalman Jan 19, 2022
f10ecda
Merge remote-tracking branch 'origin/main' into fen-v2
nshalman Jan 19, 2022
e19ca77
ugprade golang.org/x/sys to latest
nshalman Jan 19, 2022
5454809
add solaris and illumos cross-compilation builds
nshalman Jan 19, 2022
7b89a96
illumos tests: run 10 times
nshalman Jan 19, 2022
04e3205
Fix FEN
nshalman Jan 20, 2022
8b33f88
Integration Tests: change 1ms sleeps to 50ms
nshalman Jan 20, 2022
03df8a8
Merge branch 'main' into fen-v2
nshalman Jan 20, 2022
bb0549e
make it a const
nshalman Jan 20, 2022
deef205
run slow tests automatically on pushes to main as a backstop of last …
nshalman Jan 20, 2022
c375f66
Revert "Integration Tests: change 1ms sleeps to 50ms"
nshalman Jan 20, 2022
e541566
Merge remote-tracking branch 'origin/main' into fen-v2
nshalman Jan 20, 2022
12c8a00
More fixups
nshalman Jan 30, 2022
2d884f3
integration tests: slight consistency improvement
nshalman Jan 30, 2022
3db872f
Merge remote-tracking branch 'origin/main' into fen-v2
nshalman Jan 30, 2022
5f7091a
bump illumos-vm action
nshalman Feb 1, 2022
6021573
Update x/sys/unix
nshalman Mar 28, 2022
62fed86
Merge branch 'main' into fen-v2
arp242 Aug 1, 2022
0da5b8d
add more t.Helper() to get to the right general area in the test files.
nshalman Aug 2, 2022
4d18cec
solaris sometimes acts like windows
nshalman Aug 2, 2022
401f603
solaris sometimes acts like linux
nshalman Aug 2, 2022
f329a9a
bug in fen? I don't know why this is happening
nshalman Aug 2, 2022
9ac8346
bug in fen? I don't know why this is happening
nshalman Aug 2, 2022
532460e
fix typo
nshalman Aug 2, 2022
f8f708c
test helper: make solaris and illumos synonyms
arp242 Aug 2, 2022
e6d3c16
Fix testcase
arp242 Aug 2, 2022
58d1748
small cleanup of eventBits and call to AssociatePath
nshalman Aug 4, 2022
bb59fed
solaris: only watch the contents of directories explicitly added
nshalman Aug 4, 2022
6f5aebd
solaris: remove races on Close
nshalman Aug 4, 2022
5350981
Merge remote-tracking branch 'origin/main' into fen-v2
nshalman Aug 4, 2022
d1b9589
Merge branch 'main' into fen-v2
arp242 Aug 6, 2022
91a0d03
Clarify that Oracle™® Solaris™® is currently untested
arp242 Aug 6, 2022
6c4e73f
Merge branch 'main' into fen-v2
arp242 Aug 6, 2022
c8f45c7
Merge remote-tracking branch 'origin/main' into fen-v2
nshalman Aug 9, 2022
2811cad
solaris test tweaks
nshalman Aug 10, 2022
da1e80a
Merge branch 'main' into fen-v2
arp242 Aug 10, 2022
6ad9eba
Fix indent (gofmt)
arp242 Aug 10, 2022
73ce130
Try to kick off the CI
arp242 Aug 10, 2022
6f261e6
"Fix" (new) testcase
arp242 Aug 10, 2022
79d9424
Add internal.Debug() for illumos too
arp242 Aug 10, 2022
33df526
Few small changes for clarity
arp242 Aug 10, 2022
96d8c26
Add TestRemoveState() for FEN too
arp242 Aug 10, 2022
b9e7edc
Merge branch 'main' into fen-v2
arp242 Aug 10, 2022
0f85e13
Run ./mkdoc.zsh
arp242 Aug 10, 2022
fbe9413
Merge remote-tracking branch 'nshalman/fen-v2' into fen-v2
nshalman Aug 11, 2022
0b29427
solaris: fixes and thoughts
nshalman Aug 11, 2022
68dc7e7
Merge remote-tracking branch 'origin/main' into fen-v2
nshalman Sep 8, 2022
a49818b
fen cleanups: ioutil, LStat vs Stat
nshalman Sep 11, 2022
bdcc473
fen: address some TODOs
nshalman Sep 11, 2022
60b7185
fen: fix handling of explicitly watched symlinks
nshalman Sep 11, 2022
cad1bd8
illumos: test on go 1.19
nshalman Sep 14, 2022
2daef9a
Merge remote-tracking branch 'origin/main' into fen-v2
nshalman Sep 16, 2022
996e478
TestWatchRename/re-add_renamed_file: fen behaves like kqueue
nshalman Sep 16, 2022
9dcb6e2
explicit alias of 'fen' for solaris and illumos similar to kqueue
nshalman Sep 16, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
8 changes: 4 additions & 4 deletions .github/workflows/test.yml
Expand Up @@ -113,17 +113,17 @@ jobs:
# illumos
testillumos:
runs-on: macos-12
name: test (illumos, 1.17)
name: test (illumos, 1.19)
steps:
- uses: actions/checkout@v2
- name: test (illumos, 1.17)
- name: test (illumos, 1.19)
id: test
uses: papertigers/illumos-vm@r38
with:
prepare: |
pkg install go-117
pkg install go-119
run: |
/opt/ooce/go-1.17/bin/go test ./...
/opt/ooce/go-1.19/bin/go test ./...

# Older Debian 6, for old Linux kernels.
testDebian6:
Expand Down
9 changes: 5 additions & 4 deletions README.md
@@ -1,5 +1,5 @@
fsnotify is a Go library to provide cross-platform filesystem notifications on
Windows, Linux, macOS, and BSD systems.
Windows, Linux, macOS, BSD, and illumos.

fsnotify requires Go 1.16 or newer.

Expand All @@ -14,17 +14,18 @@ may include additions/changes.
Platform support:

| Adapter | OS | Status |
| --------------------- | ---------------| -------------------------------------------------------------|
| --------------------- | -------------- | ------------------------------------------------------------ |
| inotify | Linux 2.6.32+ | Supported |
| kqueue | BSD, macOS | Supported |
| ReadDirectoryChangesW | Windows | Supported |
| FEN | illumos | Supported |
| FSEvents | macOS | [Planned](https://github.com/fsnotify/fsnotify/issues/11) |
| FEN | Solaris 11 | [In Progress](https://github.com/fsnotify/fsnotify/pull/371) |
| fanotify | Linux 5.9+ | [Maybe](https://github.com/fsnotify/fsnotify/issues/114) |
| USN Journals | Windows | [Maybe](https://github.com/fsnotify/fsnotify/issues/53) |
| Polling | *All* | [Maybe](https://github.com/fsnotify/fsnotify/issues/9) |

Linux and macOS should include Android and iOS, but these are currently untested.
Linux, macOS, and illumos should include Android, iOS, and Solaris, but these
are currently untested.

Usage
-----
Expand Down