Copyright © 2000-2004 Thibault Godouet | Fcron 2.9.4 (dev release) | Web page : http://fcron.free.fr |
Fcron documentation | ||
---|---|---|
Prev | Chapter 1. Fcron : how and why ? | Next |
Here are some things that should be done ... Note that some of these entries are just some ideas, which may be done in the long run.
If you plan to help me, please send a mail at <fcron@free.fr>
to prevent two
people from doing the same thing. You can send me some propositions as
well, or ask me to move something to the top of the heap ;) .
mails from B. Wohler : improve the doc + change (?) the name of fcrondyn -> fcronc ??
problem with daylight savings ? ("already running" ...) (cf. Nick's mails -- Warning : he has a new address))
add a new FAQ entry : what should be done to completely replace vixie cron by fcron ? Are there some incompatibilities ?
add an option to prevent fcron from running a job if the system is running on battery (anacron does it ?)
create a mailing list for help/user support : send a mail on fcronannounce + news on web site to advertise it.
code cleaning : create a .c/.h file for data structures (file/line lists, serial queue, lavg list, exe list), and work with them only through functions/macros.
Note : thoroughly check for bugs which can be introduced during the code cleaning (make sure that after the modification, the code executed is still the same as before !).
Mem footprint reduction : for fcron processes which are aimed at running sendmail, free() some memory (file/line lists, queues, ...) (but does it worth it ? takes too much exe time for few memory ?)
Also use an/some union(s) in CL struct.
implement more commands for fcrondyn, and make it more secure and reliable
add a timezone option instead of the tzdiff (so it would look like !timezone(europe/paris)) (?)
For environment settings, make a var substitution.
add a return code for jobs which would mean that they should not be run again (in case of an error, etc...).
Use directory notifications (?) (portable ?) (cf. dnotify)
PAM support (included in fcron, but needs more tests by people using PAM - not implemented in fcrondyn : is it needed in fcrondyn anyway ?)
add a system of modules : at startup, fcron loads some modules (.so files). Then, when fcron should run the job, it calls a function of the module, and let it manage the job (threads ?). (do linux dlopen(), etc exist on other systems ? - yes : thanks Harring ;) dlopen exists on all POSIX system - even windoze - abait it does not use the same insterface of function calls. But it can be easily implemented to port to another system.).
(related to the system of modules ? create a kind of dependencies ?) Add a way to run a job only if a command returns true. It would permit, for instance, to run some jobs on a laptop only if it is on AC power.
add a system of data flow
Add a way to stop a job (SIGSTOP) if the lavg gets to high, and restart it (SIGCONT) when the lavg has decreased.
Add a timeout for task completion : if a task takes more than a specified timeout, then start another script with the initial task PID as argument. That would allow a kill with different signals (-HUP, -TERM -STOP, .... or any other action like sending a mail to sysadmin to alert him/her that a task is taking too much time and that he has to have a look at it.)
Add a directory similar to xinet.d or logrotate.d to add job entries (?).