]> granicus.if.org Git - fcron/blob - doc/fr/todo.sgml
33075c93ee38807ac04ea456477e2fe7ee9edf30
[fcron] / doc / fr / todo.sgml
1 <!-- 
2 Fcron documentation
3 Copyright 2000-2012 Thibault Godouet <fcron@free.fr>
4 Permission is granted to copy, distribute and/or modify this
5 document under the terms of the GNU Free Documentation License,
6 Version 1.1 or any later version published by the Free Software
7 Foundation.
8 A copy of the license is included in gfdl.sgml.
9 -->
10
11
12    <sect1 id="todo">
13       <title>Todo</title>
14       <para>Here are some things that should be done ... Note that some of these
15          entries are just some ideas, which <emphasis>may</emphasis> be done in
16          the long run.</para> 
17       <para>If you see something you'd really like to see implemented here, feel
18          free to send me a mail: it may make me move it to the top of my to-do list ;) .
19       </para>
20       <para>If you plan to help me, please send a mail at &email; to prevent two
21          people from doing the same thing. You can send me some propositions as
22          well, or ask me to move something to the top of the heap ;) .</para>
23       <sect2>
24          <title>High priority</title>
25          <itemizedlist>
26             <listitem>
27                <para>test the fix for empty mails on non linux systems (solaris seems ok, feedback on BSD?) (starting from fcron 2.9.7 -- no complain so far, so fixed?)</para>
28             </listitem>
29             <listitem>
30                <para>bug fix: what happens if the grand-child cannot be forked or cannot run the job in job.c? + better loop to read/write the pid of grand-child from/by the child (fcron freezes if the filesystem on which it operates has no space left? (cannot reproduce it on my linux system)</para>
31             </listitem>
32             <listitem>
33                <para>set TZ env. var. for jobs for which option tz is used.</para>
34             </listitem>
35          </itemizedlist>
36       </sect2>
37       <sect2>
38          <title>Low priority</title>
39          <itemizedlist>
40             <listitem>
41                <para>code cleaning: create a .c/.h file for data structures
42                   (file/line lists, serial queue, lavg list, exe list),
43                   and work with them only through functions/macros.
44                + secure equivalent to str[n]{cat|copy|...}</para>
45                <para>Note: may introduce bugs, so it will be done in fcron 3.1.x, and needs to be tested thoroughly..</para>
46             </listitem>
47             <listitem>
48                <para>Mem footprint reduction: use an/some union(s) in CL struct.</para>
49             </listitem>
50             <listitem>
51                <para>For environment settings, make a var substitution.</para>
52             </listitem>
53             <listitem>
54                <para>add a return code for jobs which would mean that they
55                   should not be run again (in case of an error, etc...).</para>
56             </listitem>
57             <listitem>
58                <para>Use directory notifications (FAM), and support a fcrontab 
59                and a cron.d as Vixie cron does (directly included in fcron itself, not thanks to a script as now).</para>
60             </listitem>
61             <listitem>
62                <para>PAM support (included in fcron, but needs more tests by
63                   people using PAM - not implemented in fcrondyn: is it needed
64                   in fcrondyn anyway?)</para>
65             </listitem>
66             <listitem>
67                <para>support for per user serial queue (especially for root)</para>
68             </listitem>
69             <listitem>
70                <para>use readline (if available) for fcrondyn.</para>
71             </listitem>
72             <listitem>
73                <para>add a mailsubject option, for custom mail subjects (for instance, in case of a job containing something secret -- password, etc -- in the command line).</para>
74             </listitem>
75          </itemizedlist>
76       </sect2>
77       <sect2>
78          <title>Ideas</title>
79          <itemizedlist>
80             <listitem>
81                <para>add a system of modules: at startup, fcron loads some
82                   modules (.so files). Then, when fcron should run the job, it
83                   calls a function of the module, and let it manage the job
84                   (threads?). (do linux dlopen(), etc exist on other systems?
85                   - yes: thanks Harring ;) dlopen exists on all POSIX system -
86                   even windoze - abait it does not use the same insterface of
87                   function calls. But it can be easily implemented to port to
88                   another system.).</para>
89             </listitem>
90             <listitem>
91                <para>(related to the system of modules? create a kind of
92                   dependencies?)  Add a way to run a job only if a command
93                   returns true. It would permit, for instance, to run some jobs
94                   on a laptop only if it is on AC power.</para>
95                <para>and depending on the return value of the command, cancel
96                   the execution, or wait x seconds before trying again, etc. 
97                In this case, needs change the way the jobs are queued?</para>
98             </listitem>
99             <listitem>
100                <para>add an option/module to prevent fcron from running a job if the
101                   system is running on battery (anacron does it?)</para>
102             </listitem>
103             <listitem>
104                <para>Add a way to stop a job (SIGSTOP) if the lavg gets to high,
105                   and restart it (SIGCONT) when the lavg has decreased.</para>
106             </listitem>
107             <listitem>
108                <para>Add a timeout for task completion: if a task takes more
109                   than a specified timeout, then start another script with the
110                   initial task PID as argument.  That would allow a kill with
111                   different signals (-HUP, -TERM -STOP, .... or any other action
112                   like sending a mail to sysadmin to alert him/her that a task
113                   is taking too much time and that he has to have a look at it.)
114                   (add an option to specify the cmd, and combine w/ option until)
115                </para>
116             </listitem>
117          </itemizedlist>
118       </sect2>
119    </sect1>
120
121
122 <!-- Keep this comment at the end of the file
123 Local variables:
124 mode: sgml
125 sgml-parent-document:("fcron-doc.sgml" "book" "chapter" "sect1" "")
126 End:
127 -->