2015-01-29 :: Development continues!

2014-11-02 :: Project abandoned

This project was abandoned due to lack of time for further development and maintenance. Additionally, the funding campaign had no effect - zero cents was raised. If you would like to continue with this project please write to devel@aiken.cz. Source codes are free as free speech and will remain available in the SVN repository.

2013-07-28 :: Recursive monitoring soon? Please contribute.

A funding campaign for recursive monitoring implementation has been created on Indiegogo. Please consider contribution. If it succeeds the recursive monitoring will be implemented soon.

2012-04-07 :: incron 0.5.10 re-released

Due to wrong version numbers in some files, incron 0.5.10 had to be re-released.

2012-04-05 :: inotify-cxx 0.7.4 and incron 0.5.10 released

New versions of inotify-cxx (0.7.4) and incron (0.5.10) have been released. Some issues (such as crashing on EAGAIN in poll()) were fixed now and some of them will be solved in the future version.

2009-12-09 :: inotify-cxx 0.7.3 released

A bugfix version of inotify-cxx has been released. It "cleans up" some includes.

2009-06-21 :: incron 0.5.9 released

A new bugfix version of incron has been released. It fixes two persistent bugs and adds two small improvements. Thanks to the people who reported bugs and sent me patches.

2008-12-29 :: incron 0.5.8 released

A new bugfix version of incron has been released. This version contains three fixes related to the bugs which was reported.

2008-07-27 :: SVN repository for incron

The source code of all incron versions is now available in the public SVN (Subversion) repository at svn://svn.aiken.cz/public/ (only SVN protocol; HTTP is not yet available). This repository contains also inotify-cxx and some other programs.

2008-07-09 :: incron is not dead

Although it does not appear that way incron is not dead (and the same applies for inotify-cxx as well). Development process of recursive monitoring is unfortunalely delayed. But accepting of bug reports is going on. Because there are many reported bugs a new bugfix release (0.5.8) will be prepared as soon as possible instead of waiting for the next major release.

2008-02-17 :: Concepts of recursive monitoring

A brand new inotify-cxx version will be released in a few days. This version
will support recursive monitoring (file events on whole subtrees). It is
a good point now for explaining the design of the new inotify-cxx.

Important terms:

physical path - a file path watched at the kernel level
(inotify technology). It has its own watch descriptor. The same path cannot
occur multiple times at the same file descriptor. For recursive watching,
only directory physical paths are created.

logical path - a file path watched at the user level.
It can be related to one file or a directory subtree.

It works the way that an user registers various logical paths for watching.
The mechanism creates all necessary physical paths. But if some physical
paths exists (is contained in the physical path list) only its event mask
is updated instead of creating the path.

If an event occurs it is passed for processing to all logical path which
have registered the appropriate physical path. Then the event is processed
internally which includes creating and/or removing a physical path. At the
external view it means the all event objects are enqueued first and then
the internal processing is done.

The user receives the event in the form of the standard
InotifyEvent object. This object contains the path to the file
where the event was occurred. It means it is the same behavior as before
(but monitoring whole subtrees is possible).

2007-09-04 :: incron 0.5.7 released

A new version of incron has been released. It contains only small fixes. Bigger changes will be incorporated into 0.6.0.

2007-05-16 :: incron mailing list

incron has its own mailing list now. You can use it for discussions about incron, inotify-cxx and inotify, requesting new features, solving problems etc. Instructions for use are located on the appropriate page.

2007-04-18 :: incron 0.5.6 released

Due to compilation problems of existing versions on Debian Sarge, a new version of incron (based on inotify-cxx 0.7.2) has been released.

2007-04-18 :: inotify-cxx 0.7.2 released

inotify-cxx 0.7.2 has been released. This version adds #include <stdint.h>. It should eliminate compilation problems on Debian Sarge.

2007-04-07 :: News via RSS

If you want to be notified on changes of this site you can use RSS 2.0 now. See the link at the top-right corner or use the appropriate feature of you browser (for handling alternative content).

2007-03-21 :: inotify-cxx and incron at SourceForge.net

SourceForge.net is a well-known site providing a large set of services for
free software development and distribution. Many users search for software
just there. Due to this fact you can find both inotify-cxx and incron also at
this site.

2007-03-17 :: Website also in Czech

Regarding to the Czech origination of inotify-cxx and incron it was
slightly dishonourable that Czech users couldn't see information about
these programs in their mother tongue. It's over now. Starting today,
the whole site is currently (in addition to English) available also
in Czech. The server should choose the right language automatically
according to the browser setting. If it fails you can set the appropriate
language by links at the top-right corner of the page.

2007-02-17 :: Proposed incrontab format

In addition to other changes, incron 0.6.0 will use an improved format for
incron tables. The main goal is to allow comments, add possibility to override
environment variables and define precisely what is valid and what is not.

This format assumes the tables may use any legal line-feeding scheme (CR, LF,
CRLF). inotify symbols must not be defined here because they may vary between inotify
header versions. Mask specification (if given as a number) is limited to 32-bit
unsigned integer. Environment variables defined inside incrontab affect all
lines below unless redefined later.

If you have found a bug in this specification or have got a suggestion please
use the bug tracking system. Thanks.

2007-02-14 :: incron 0.5.5 released

One bug related to environment variables is not enough.
Although incrontab -e -u <user> isn't an often used
way of incrontab use it can be useful in some cases. But there
was a bug which caused that things went wrong. The environment
variables were set incorrectly (e.g. HOME=/root instead of
something different) and thus some editors tried to access root's
files etc. This version also fixes another bug - malfunction
of -V (--version) for both incrond and incrontab.

2007-02-11 :: incron 0.5.4 released

Due to two bugs a new bugfix version has been released.
This version fixes persisting of environment variables (the same
as for incrond itself) and a small mistake inside the configuration
example file. For more information about the current environment
variable behavior, please read the
FAQ
or the man page (incrond(8)).

2007-02-09 :: incron 0.5.3 re-released

If you downloaded incron 0.5.3 before 2007-02-09 14:00 UTC
you could encounter a problem with missing incron.conf.5
(the man page for incron.conf). The problem was reported
(thanks to curx) and fixed. Please download the source
package again.

2007-02-08 :: incron 0.5.3 released

A new bugfix version is here. It fixes one very ugly bug which caused
that newly created tables were not loaded in some cases. A few more
bugs (e.g. documentation and a very benign memory leak) have also been
fixed.

2007-02-04 :: incron in Fedora Extras

incron is now available as RPM packages for Fedora 5 and 6. You can download
it from the
main server
and its mirrors
(and also using yum etc.)
Thanks to Ruben Kerkhof.

2007-02-04 :: incron 0.5.2 released

This version contains only two small fixes. It only changes lockfile
permissions to 0644 (to allow checking incrond's PID by other users)
and fixes incorrect reporting on the case if an user attempts to remove
a non-existing table.

2007-01-28 :: incron 0.5.1 released

Hot-headed work isn't good. This style caused two stupid bugs infiltrated
into the code. The bugs didn't affect normal use of the program but
were able to complicate overall system management.

2007-01-27 :: incron 0.5.0 released

Due to time reason no bugfix versions was released. It's currently better to
incorporate all bugfixes into the next feature release. The time is coming now.
0.5.0 introduces configuration at all (including custom configuration files),
improves child process clean-up mechanism (to avoid race conditions), contains
application locking (only one daemon instance may run) and both incrond and
incrontab have a brand new command line argument processing. This version should
be the last release before implementing recursive monitoring.

2007-01-20 :: inotify-cxx 0.7.1 released

There was a bug inside InotifyEvent which caused strange garbage
occurred in event names. This version fixes those problems.

2007-01-14 :: New website launched

inotify technologies now have a brand new website. It provides information
about the inotify technology itself and hosts two related projects, inotify-cxx
and incron. Now you can find all important things at one place.

2007-01-13 :: incron 0.4.0 released

A nice day, isn't it? There are many new features in incron. System tables,
command line arguments for incrond (running on foreground, terminating),
reporting supported events and much more. Please enjoy!

2007-01-13 :: inotify-cxx 0.7.0 released

One more feature for lazy people: Inotify::SetCloseOnExec().

2007-01-09 :: incron 0.3.5 released

Security bugfixes again. Please download now!

2007-01-06 :: inotify-cxx 0.6.3 released

IN_IGNORED had the same problems as IN_ONESHOT. Fixed definitely.

2007-01-03 :: incron 0.3.4 released

Don't touch the permissions if you don't understand them. It's a very good hint!

2007-01-03 :: inotify-cxx 0.6.2 released

Another bugfix version. A small bug was on text conversion but generated many
problems.

2006-12-30 :: inotify-cxx 0.6.1 released

Problems with IN_ONESHOT? Let's download this one.

2006-12-15 :: incron 0.3.3 released

Many bugs fixed. Like usually.

2006-12-06 :: inotify-cxx 0.5.3 released

Please download it today. There was an ugly bug in WaitForEvents().

2006-12-02 :: incron 0.3.2 released

The life is difficult. And reiserfs works funny.

2006-11-24 :: incron 0.3.1 released

It's time. Time for user manual pages.

2006-11-12 :: incron 0.3.0 released

Did you requested spaces in paths? And event names in commands? Let it be!

2006-11-12 :: inotify-cxx 0.5.2 released

Another bugfix version. IN_OPEN failed to work.

2006-11-10 :: inotify-cxx 0.5.1 released

A never-ending story? Maybe... The terrible includes strike back and force me
to add more ifdefs.

2006-10-30 :: incron 0.2.3 released

This version fixes a bug with unwanted IN_NO_LOOP.

2006-10-29 :: incron 0.2.2 released

A memory leak persisted in incrond! But it's over now. No more zombies too!

2006-10-29 :: inotify-cxx 0.5.0 released

Who waited for a thread-safe inotify-cxx now can be satified. It's here.
Simply define INOTIFY_THREAD_SAFE when compiling.

2006-10-14 :: incron 0.2.1 released

Another version of incron has been released. This is a bug-fixing release
and should solve all reported bugs.

2006-10-13 :: inotify-cxx 0.4.1 released

2006-10-13 :: inotify-cxx 0.4.0 released

Major changes again. People have reported problems on some distributions thus
the inotify-cxx header has been modified to eliminate this malfunction.
Additionaly, better enabling/disabling has been implemented and other small
changes done.

2006-10-04 :: incron 0.2.0 released

Get cleaner! This version is designed to be more stable than the previous one.
Dirty signal handling has been removed and the code has been cleaned.
Last but not least, this version can be configured for avoiding
event cycles. See Changelog for more details.

2006-10-03 :: inotify-cxx 0.3.1 released

If you have downloaded the 0.3.0 version of inotify-cxx, please slow down.
This version contains a bug which causes throwing an exception in non-blocking
mode whenever EWOULDBLOCK occurs. The current 0.3.1 has fixed this bug.

2006-10-03 :: inotify-cxx 0.3.0 released

The third version of inotify-cxx, 0.3.0, has been released. This version contains
three essential changes: funcionality for enabling/disabling watches,
a brand new internal structure and ability for use in non-blocking mode.
See Changelog for details.

2006-09-15 :: incron 0.1.0 released

The first version of incron, 0.1.0, has been released. incron
is an "inotify cron" system. It consist of a daemon and a table manipulator.
You can use it a similar way as the regular cron. The difference is that
the inotify cron handles filesystem events rather than time periods.

2006-09-15 :: inotify-cxx 0.2.0 released

Another version of inotify-cxx, 0.2.0, has been released.
Due to various reasons this version contains many changes compared to 0.1.0
(see Changelog for details).

2006-09-04 :: inotify-cxx 0.1.0 released

The first version of inotify-cxx, 0.1.0, has been released. It brings
new chances to inotify-based applications. Use a few simple objects instead
of low-level data and speed up your development.