fsmonitor implementations (old python version being dropped, external ones?)

Greg Troxel <[email protected]> Sun, 22 Dec 2024 07:08:01 -0500
Newsgroups gmane.network.unison.general
Message-ID <[email protected]>
Unison has had a very old fsmonitoring implementation "fsmonitor.py".
It is self-labeled as "a small program to test the possibilities to
monitor the file system and log changes on Windowsm Linux, and OSX", and
that goal has been met.

fsmonitor.py has not been maintained in a very long time, and I don't
think anybody knows if it works now.  It immediately fails when starting
with python3.12.  In addition, it uses an old interface to unison.  The
build system had logic to install it if one of the maintained
implementations is not built, and such conditional installation is
awkward for packaging.

Therefore, src/fsmonitor.py is no longer installed by the build.  If you
are using it, please switch to a maintained implementation.  If that's
trouble, please explain.

Unison sources can build unison-fsmonitor for 3 cases:
  inotify (Linux native, and BSDs via libinotify)
  Solaris ("File Event Notification")
  Windows ("ReadDirectoryChanges*")

It's clear people are using the inotify and Windows variants, and there
are no even semi-recent reports of success or failure on Solaris.

For macOS (and also for Linux and Windows), there is

  https://urldefense.com/v3/__https://github.com/autozimu/unison-fsmonitor/__;!!IBzWLUs!XRU8xCUErPq9anLy4nyepJgdKY6_w8w3XovT8KbmfUVFRZMhp1rVSNCRP0u8ZHgbjdg2G4B_5j-9Lz1yuA$ 

(which I have not run and have not looked at the code). My understanding
is that people using unison on macOS, who want fsmonitor functionality,
are using this implementation.

There are also some unmaintained fsmonitor implemenations out there.
I'm checking on them as I find them, but I'm not going to point to
unmaintained software.

Longer term, it is likely that the old interface used by fsmonitor.py
will be removed, and fsmonitor.py itself will be deleted from the
sources.  My guess is nobody will notice and nobody cares, but this plan
is hereby disclosed for comments explaining why it's not a good plan.

To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].