12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076 |
- 2003-05-01 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (stop.<service>): Ignore the result of the
- user-defined stop code. Set the `running' slot of the service to
- `#f' in any case.
- (<service>): Adopted semantics of `stop' slot.
- * support.scm (opt-lambda): New macro.
- * self.scm (persistency): Use it.
- * service.scm (make-kill-destructor): Likewise.
- 2003-04-27 Wolfgang Jährling <wolfgang@pro-linux.de>
- * self.scm (enable-persistency): Renamed to ...
- (persistency): ... this. New action.
- (disable-persistency): Renamed to ...
- (no-persistency): ... this. New action.
- 2003-04-25 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (label): New macro.
- * self.scm (enable-persistency): Use `label' and `case-lambda'
- instead of `lambda*'.
- * dmd.scm: Don't use module `(ice-9 optargs)'.
- * service.scm (doc.<service>): Don't break if given action is not
- provided by the service.
- (first-running): Simplify.
- 2003-04-24 Wolfgang Jährling <wolfgang@pro-linux.de>
- * self.scm (enable-persistency): New optional argument `file' for
- setting the persistency state file.
- * dmd.scm: Use module `(ice-9 optargs)'.
- 2003-04-21 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (process-command): Fix handling of `dmd-status'. Also
- cleaned up the code.
- * service.scm (handle-unknown): New procedure.
- (make-actions): Bugfix: Exchange position of procedure and
- docstring in the created pairs.
- * self.scm (detailed-status): Updated to change of Apr 10.
- * service.scm (<service>): Default init value of `start' slot is
- now a procedure that takes no arguments. Similar for `stop': It
- accepts only one argument now.
- * examples/_unknown.scm (compose): New procedure.
- (unknown-service): Use it in the `start' action.
- (look-for-service): Cleaned up.
- 2003-04-20 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (lookup-running): New procedure.
- (depends-resolved?.<service>): Use it.
- (launch-service): Likewise.
- (stop.<symbol>): Likewise.
- (action.<symbol>): Likewise.
- (status.<symbol>): Show status of running service, if any.
- Otherwise, show status of all who provide the symbol. Also
- display `dmd-status' only if service does not provide a `status'
- action.
- (lookup-running-or-providing): New procedure.
- (action.<symbol>): Use it.
- (status.<symbol>): Likewise.
- (<service>): Field `actions' is a list now instead of a hash.
- (action:name): New procedure.
- (action:proc): New procedure.
- (action:doc): New procedure.
- (lookup-action.<service>): New method.
- (defines-action?.<service>): Adopted to the new structure of the
- `actions' slot.
- (actions-list.<service>): Likewise.
- (action.<service>): Likewise.
- (doc.<service>): Likewise.
- (make-actions): Made the docstring optional. Also, adopted to new
- structure of `actions' slot of `<service>'.
- (action.<service>): Show `dmd-status' in the default
- implementation of `status'.
- (status.<symbol>): Removed.
- * dmd.scm (process-command): Don't handle `status' action here.
- 2003-04-18 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (caught-error): Handle `wrong-number-of-args'
- specially.
- * service.scm (action.<service>): Check whether the number of args
- is ok. Display a useful message if not.
- * support.scm (can-apply?): New procedure.
- 2003-04-17 Wolfgang Jährling <wolfgang@pro-linux.de>
- (stop.<service>): If the service is respawnable, still set its
- running slot to `#f' before calling the destructor, but do call
- the destructor with the original value of the slot.
- * examples/_unknown.scm (look-for-service): Additional (optional)
- argument: A predicate that a service must satisfy.
- (unknown-service): Look for running or non-running services first,
- whichever makes more sense in the particular case.
- 2003-04-16 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (<service>): Renamed slot `extra-actions' to
- `actions'.
- (defines-extra-action?.<service>): Renamed to ...
- (defines-action?.<service>): ... this. All callers changed.
- (extra-action.<service>): Renamed to ...
- (action.<service>): ... this. All callers changed.
- (extra-action.<symbol>): Renamed to ...
- (action.<symbol>): ... this. All callers changed.
- (make-extra-actions): Renamed to ...
- (make-actions): ... this. All callers changed.
- (make-forkexec-constructor): Use the arguments given to us, not
- those given to the created procedure.
- 2003-04-13 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (status.<symbol>): Implement.
- * Makefile.am (EXTRA_DIST): Add file `QUESTIONS'.
- 2003-04-12 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (extra-action.<service>): Handle `status' default
- action, but do nothing in its implementation.
- (status.<symbol>): New method.
- * dmd.scm (process-command): Handle `dmd-status' and `status'.
- 2003-04-10 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (default-display-status.<service>): Renamed to ...
- (dmd-status.<service>): ... this. New procedure.
- (extra-action.<service>): Don't provide a default implementation
- of `status' here.
- 2003-04-09 Wolfgang Jährling <wolfgang@pro-linux.de>
- * args.scm (process-args): Make `--file -' and `-f -' work like
- `--file=-' and `-f-', repectively.
- * dmd.scm (main): Use `-' instead of `none' as file name to
- specify for readings commands from stdin (`--socket').
- 2003-04-08 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS: Forked off version -0.6.
- 2003-04-08 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (extra-action.<symbol>): Prevent arguments from
- getting lost for the `doc' action.
- (doc.<service>): Make it work at all by using symbols instead of
- strings in the `case' structure.
- 2003-04-07 Wolfgang Jährling <wolfgang@pro-linux.de>
- * examples/_unknown.scm (differs-in-case?): Renamed to ...
- (differs-only-in-case?): ... this. New procedure. All callers
- changed.
- * service.scm (<service>): Every value in the `extra-actions' hash
- now consists of a pair with the procedure in the CAR and the
- docstring in the CDR.
- (extra-action.<service>): Adopted to new structure of the
- `extra-actions' slot.
- (make-extra-actions): Likewise.
- (doc.<service>): Display docstring on request.
- * support.scm (split-case): Removed.
- * service.scm (doc.<service>): Don't use `split-case' anymore.
- 2003-03-28 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (make-childexec-constructor): Renamed to ...
- (make-forkexec-constructor): ... this. New procedure.
- (make-kill-destructor): Default to SIGTERM.
- * dmd.scm: Use module `(srfi srfi-16)'.
- 2003-03-25 Wolfgang Jährling <wolfgang@pro-linux.de>
- * comm.scm (terminatimg-string): Moved out of dmd specific code,
- as it is also used by deco.
- 2003-03-23 Wolfgang Jährling <wolfgang@pro-linux.de>
- * examples/_unknown.scm (look-for-service): New procedure.
- (unknown-service): New extra-actions `stop' and `extra-action'.
- Let `start' use `look-for-service'.
- * service.scm (register-services): Verfify that canonical names
- are actually canonical.
- (make-childexec-constructor): Accept arguments, but ignore them.
- (make-kill-destructor): Likewise.
- (make-system-constructor): Likewise.
- (make-system-destructor): Likewise.
- (make-init.d-service): Updated to use the new names of the
- procedures. This should have been done *much* earlier.
- (extra-action.<symbol>): Actually make the ``unknown service''
- feature work.
- 2003-03-15 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm: Use module `(ice-9 readline)'.
- (main): Enable readline if we read commands from stdin
- and it is a non-dumb terminal. Exit on `C-d'.
- 2003-03-12 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (conflicts-with.<service>): Cleaned up.
- (find-running): Renamed to ...
- (first-running): ... this. New procedure. All callers changed.
- 2003-03-09 Wolfgang Jährling <wolfgang@pro-linux.de>
- * configure.in: Check for version of Guile being at least 1.5.x.
- 2003-03-08 Wolfgang Jährling <wolfgang@pro-linux.de>
- * examples/_unknown.scm: New file.
- (lacks-char-from?): New procedure.
- (differs-by-missing-char?): New procedure.
- (differs-by-switched-chars?): New procedure.
- (differs-by-one-char?): New procedure.
- (differs-in-case?): New procedure.
- (similar?): New procedure.
- (unknown): New service.
- * examples/Makefile.am (EXTRA_DIST): Add the new file.
- 2003-03-02 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (without-system-error): Renamed to ...
- (catch-system-error): ... this. New macro. All callers changed.
- (local-output): Don't send data to deco.
- (extra-output-sender-enabled): Removed.
- (without-extra-output): Removed (new implementation in comm.scm).
- * comm.scm (without-extra-output): New macro.
- (dmd-output-port): Send data to deco. Buffer the output for the
- logfile line-wise.
- * deco.scm (main): Don't display additional newlines.
- * support.scm (extra-output-sender): Moved to ...
- * comm.scm (extra-output-sender): ... here.
- * support.scm (open-extra-sender): Moved to ...
- * comm.scm (open-extra-sender): ... here.
- * support.scm (close-extra-sender): Moved to ...
- * comm.scm (close-extra-sender): ... here.
- * support.scm (terminating-string): Moved to ...
- * comm.scm (terminating-string): ... here.
- 2003-02-25 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (display-version): Display stuff directly.
- * config.scm.in (banner): Removed.
- * support.scm (local-output): Don't do logging here anymore.
- (real-output-port, void-output-port): Removed.
- (log-output-port): Moved to ...
- * comm.scm (log-output-port): ... here. Conditional for dmd.
- (dmd-output-port): Do logging here now.
- * support.scm (without-extra-output): When catching an error, set
- `extra-output-sender-enabled' to `#t', not to `#f'.
- 2003-02-23 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (begin-dmd): New macro.
- * comm.scm (dmd-output-port): Define only for dmd, not for deco.
- (original-output-port): Likewise.
- (silent): Likewise.
- (be-silent, be-verbose): Likewise.
- * support.scm (verify-dir): Code cleanup.
- * service.scm (start.<service>): Simplified. The different cond
- clauses don't need to give a return value anyway, so these got
- removed.
- * self.scm (cd): New extra-action for dmd.
- 2003-02-22 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (be-silent, be-verbose): Removed.
- * comm.scm (original-output-port): New variable.
- (dmd-output-port): New variable. Use it as current output port.
- (silent): New variable.
- (be-silent, be-verbose): New procedures.
- 2003-02-21 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (process-command): Don't handle `list-actions' here.
- * service.scm (extra-action.<service>): Don't handle `doc' here.
- (extra-action.<symbol>): Handle both of them here instead.
- (doc.<service>): New method.
- (display-extra-actions.<symbol>): Removed.
- * support.scm (split-case): New macro.
- 2003-02-20 Wolfgang Jährling <wolfgang@pro-linux.de>
- * self.scm (dmd-service): Added docstrings for the service and all
- its extra-actions.
- * service.scm (make-extra-actions): Accept docstring argument. It
- gets ignored for now. Also, made code more readable by using the
- extended `for-each' from SRFI-1.
- (<service>): New slot `docstring'.
- (extra-action.<service>): Default action takes arguments, new
- handled action `doc'.
- 2003-02-20 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS: Forked off version -0.7
- 2003-02-17 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (main): Read commands from stdin if `none' was specified
- as socket file name.
- 2003-01-25 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (extra-output-sender-enabled?): Renamed to ...
- (extra-output-sender-enabled): ... this. New variable. All users
- changed.
- 2003-01-01 Wolfgang Jährling <wolfgang@pro-linux.de>
- * config.scm.in (copyright): Updated year.
- * service.scm (defines-extra-action?.<service>): New method.
- (launch-service, stop.<symbol>, extra-action.<symbol>): Only use
- the unknown service as fallback if it provides the relevant
- extra-action.
- (<service>): Require slot `extra-actions' to never contain #f, but
- always contain a hash table.
- (extra-action.<service>): Simplify.
- (depends-resolved?.<service>): Don't apply `find-running' on the
- service symbol directly.
- (stop.<service>, extra-action.<service>): If dmd does quit, use
- the correct quit value.
- (extra-action-list.<service>): New method.
- (display-extra-actions.<symbol>): New method.
- * dmd.scm (process-command): Handle action `list-actions'.
- (main): Fail more gracefully if the persistency state file cannot
- be opened. Also cleaned up variable names.
- (persistency?): Renamed to ...
- (persistency): ... this. New variable. All users changed.
- * runlevel.scm (start-in-order): Implement.
- (register-runlevels): Take into account that `append!' is a
- linear-update procedure since the empty list cannot be modified.
- 2002-12-28 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (define-simple-syntax): Renamed to ...
- (define-syntax-rule): ... this. New macro. All callers changed.
- * service.scm (launch-service): Display a clear useful message if
- no service provides what was requested.
- (start.<service>): If the problem is a dependency, tell the user
- about this fact.
- 2002-12-27 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (main): Adopted options to recent changes in args.scm.
- * deco.scm (main): Likewise. Also fixed typo in option
- `--result-socket'.
- * support.scm (local-output): Don't pass `format' to `l10n', and
- don't try to pass the result of this to `apply'. This construct
- only ever worked because `l10n' is not yet implemented.
- * args.scm (arg-name.<option>): Removed. Now a getter for the
- slot `arg-name' of class `<option>'.
- 2002-12-26 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (launch-service): Fix handling of unknown services.
- (extra-action.<service>): Simplify.
- (procedure-with-n-args?): Removed.
- 2002-12-20 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (<service>): Fix what I messed up yesterday: Slot
- `start' must be callable without argument, `stop' must be callable
- with one argument.
- (list-of-symbols?): Fix typo.
- (launch-service): Fixed unknown service feature.
- (stop.<symbol>, extra-action.<symbol>): Likewise.
- * dmd.scm (process-args): Use `apply' instead of passing the
- argument list as single argument to `start', `enforce' and `stop'.
- * examples/wolfgangj.scm: Various minor fixes.
- 2002-12-19 Wolfgang Jährling <wolfgang@pro-linux.de>
- * comm.scm (receive-data.<receiver>): Fixed handling of invalid
- data. Should not happen, but better do it right anyway.
- * service.scm (<service>): The procedures stored in the start and
- stop slots must take an arbitrary amount of arguments now.
- (start.<service>, enforce.<service>, stop.<service>): Updated.
- (start.<symbol>, enforce.<symbol>, stop.<symbol>): Likewise.
- (launch-service): Updated, and fixed a bug that occured when the
- service is unknown and there is a `unknown' service that is
- supposed to handle this case.
- (procedure-with-n-args?): Don't yield a procedure anymore. There
- is no point in it since we use GOOPS now instead of our own
- system.
- (list-of-symbols?): Simplified.
- * dmd.scm: Don't use `(srfi srfi-8)' anymore.
- (process-command): Replaced `receive' with a `let',
- which is much simpler.
- * args.scm (<option>): Removed slot `takes-arg'. Added slots
- `takes-arg?', `optional-arg?' and `arg-name'. Removed unnecessary
- getter `description'.
- (takes-arg?.<option>): Removed (now a getter).
- (optional-arg?.<option>, long-option-string.<option>): Updated.
- (display-doc.<option>): Updated and fixed local procedure
- `fill-to' to not pass a string instead of a character to local
- procedure `output'.
- * self.scm (daemonize): Quit, not kill.
- * dmd.scm (extra-action.<service>): Allow all actions of `dmd' to
- quit. Now all actions need to take care that they don't invoke
- user-defined code without quit-protection.
- 2002-11-27 Wolfgang Jährling <wolfgang@pro-linux.de>
- * utils/dmd-gettext.scm (i18n-keywords): Renamed to ...
- (l10n-keywords): ... this. New variable.
- * utils/sysvconfig.scm: Clarified output header text.
- * args.scm (process-args): Minor cleanup of error output code.
- * comm.scm (receive-data.<receiver>): Likewise.
- 2002-11-26 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm: Use module `(srfi srfi-8)'.
- (process-command): Replace call-with-values with receive.
- 2002-11-08 Wolfgang Jährling <wolfgang@pro-linux.de>
- * args.scm (process-arg): Display long options for --usage.
- Fix display of short options.
- Display syntax of non-option arguments.
- Cleanup: Removed all usages of slot-ref.
- 2002-10-27 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (make-childexec-constructor): Simplify.
- (procedure-with-n-args?): Use `=' instead of `equal?'.
- 2002-10-21 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (extra-action.<symbol>): Invoke the service
- `unknown' if the service is not known.
- (stop.<symbol>): Likewise.
- (launch-service): Likewise.
- (make-init.d-service): Allow for passing arguments down to
- `make', so that e.g. dependencies can be specified.
- 2002-10-18 Wolfgang Jährling <wolfgang@pro-linux.de>
- * runlevel.scm (start-in-order): New procedure.
- * service.scm (depends-resolved?.<service>): New method.
- (running?.<service>): Beautify and optimize.
- 2002-10-17 Wolfgang Jährling <wolfgang@pro-linux.de>
- * self.scm (enable-persistency, disable-persistency): New
- extra-actions.
- * dmd.scm (main): Read list of services from file.
- * args.scm (long-option-string.<option>): Fix display. It is
- `opt-arg?' now, not `optional-arg?'.
- (process-args): Handle short options with optional argument
- correct if no argument was given.
- 2002-10-16 Wolfgang Jährling <wolfgang@pro-linux.de>
- * args.scm (process-args): Display short options for --usage.
- * dmd.scm (persistency?): New variable.
- (persistency-state-file): New variable.
- (main): New option: --persistency
- * self.scm (stop): Write state into the above when requested.
- * dmd.scm (main): New options: --silent and --quiet.
- 2002-10-14 Wolfgang Jährling <wolfgang@pro-linux.de>
- * args.scm (optional-arg?.<option>): New method.
- (long-option-string.<option>): Use it.
- (process-args): Handle `--usage'.
- * utils/sysvconfig.scm: New file.
- (services-dir): New variable.
- (make-config, init.d-services): New procedures.
- * utils/Makefile.am (EXTRA_DIST): Add sysvconfig.scm.
- 2002-10-13 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (procedure-with-n-args?): Don't assume that `arity'
- is always the first field.
- 2002-10-12 Wolfgang Jährling <wolfgang@pro-linux.de>
- * utils: New directory.
- * Makefile.sm (SUBDIRS): Add it.
- * configure.in (AC_OUTPUT): Likewise.
- * utils/Makefile.am: New file.
- * utils/dmd-gettext.scm: New file.
- (puts, found-string, extract-strings): New procedures.
- (i18n-keywords): New variable.
- * support.scm (l10n, local-output): Write it with lambda.
- 2002-10-10 Wolfgang Jährling <wolfgang@pro-linux.de>
- * examples/README: New file.
- * examples/Makefile.am (EXTRA_DIST): Add it.
- * service.scm (make-service-group): New macro. Suggested by
- Alfred M. Szmidt <ams@gnu.org>.
- * support.scm (define-simple-syntax): New macro. All callers of
- define-syntax changed to use this instead.
- 2002-10-09 Wolfgang Jährling <wolfgang@pro-linux.de>
- * runlevel.scm (enter.<runlevel>): Fixes, cleanups and
- extensions. Still far from being finished.
- 2002-10-08 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (main): New option: `--logfile' (`-l').
- * self.scm (daemonize): Undo last change.
- * config.scm.in (bug-address): New variable.
- * args.scm (process-args): Use it.
- * deco.scm (main): Use letrec instead of named let.
- * dmd.scm (main): Likewise.
- * service.scm (list-of-symbols?): Likewise.
- 2002-10-07 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (respawn-service): Ignore system errors.
- (<service>): New slots: `waiting-for-termination?' and
- `stop-delay?'.
- (stop.<service>): Mark service as waiting for termination if the
- corresponding option is set.
- (respawn-service): Do not respawn it if stop is supposed to
- prevent respawning and it has been stopped. Instead, mark it as
- stopped.
- * Makefile.am (%.in->%): Also depend on Makefile.
- * support.scm (log-output-port): New variables.
- (start-logging, stop-logging, l10n): New procedure.
- (local-output): Write to the logfile, including date.
- (user-homedir, default-logfile): New variables.
- * dmd.scm, deco.scm: Use module (ice-9 rdelim).
- * self.scm (daemonize): Activate the logging.
- 2002-10-06 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (respawn-service): If the service is disabled, don't
- try to restart it again, but enable it.
- 2002-10-05 Wolfgang Jährling <wolfgang@pro-linux.de>
- * deco.scm (main): Pass working directory to dmd.
- * dmd.scm (main): Take working directory from deco and cd to it.
- * support.scm (without-extra-output): New macro.
- (extra-output-sender-enabled?): New variable.
- (local-output): Send text to socket only when desired.
- * service.scm (respawn-service): Use `without-extra-output'.
- 2002-10-04 Wolfgang Jährling <wolfgang@pro-linux.de>
- * self.scm (daemonize): New extra-action.
- 2002-10-04 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS: Forked off version -0.8
- 2002-10-02 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (make-childexec-constructor): New procedure.
- (make-kill-destructor): New procedure.
- (stop.<service>): Set the `running' slot to #f before executing
- the destructor for respawnable services.
- 2002-09-30 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dirs.scm.in: Renamed to ...
- * config.scm.in: ... this. New file.
- * Makefile.am (templates): Updated.
- (dmd_DATA): Updated.
- * deco.scm: Updated.
- (program-name): New variable.
- * dmd.scm: Updated.
- (program-name): New variable.
- (banner, copyright): Moved to ...
- * config.scm.in (banner, copyright): ... here. New variables.
- * args.scm (display-doc.<option>): New method.
- (long-option-string.<option>): New method.
- (process-args): Display options on `--help'.
- Take argument syntax, description and default handler as
- arguments.
- * dmd.scm (main): Updated.
- * deco.scm (main): Updated.
- 2002-09-29 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (service-destructor-system): Renamed to ...
- (make-system-destructor): ... this. New procedure.
- (service-constructor-system): Renamed to ...
- (make-system-constructor): ... this. New procedure.
- (make-system-destructor): Return `#f' on success, as is expected
- from a destructor.
- (conflicts-with-running.<service>): New method. Code taken from
- start.<service>.
- (start.<service>): Updated.
- (enforce.<service>): New method.
- (launch-service): New procedure. Code taken from start.<symbol>.
- (start.<symbol>): Use the above.
- (enforce.<symbol>): New method.
- * dmd.scm (process-command): Added `enforce' action.
- 2002-09-27 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (extra-action.<service>): Don't handle `enable' and
- `disable' here at all.
- (extra-action.<symbol>): Handle them here instead.
- (find-running): Return service instead of canonical name. All
- callers changed.
- * dmd.scm (main): Catch errors in the configuration file, but
- abort when they occur.
- 2002-09-26 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (respawn-limit): New variable.
- (<service>): Use the above to initialize `last-respawns'.
- (respawn-service): Use `respawn-limit'.
- * support.scm (local-output): Protect against system error when
- using extra-output-sender.
- (open-extra-sender, close-extra-sender): Protect entire procedure
- against system errors.
- * service.scm (extra-action.<service>): Make default actions
- callable even when the service is not running.
- (extra-action.<symbol>): Apply on all if none of the possibilities
- is running.
- 2002-09-25 Wolfgang Jährling <wolfgang@pro-linux.de>
- * comm.scm: New file.
- (<sender>): New class.
- (initialize.<sender>): New method.
- (send-data.<sender>): New method.
- (<receiver>): New class.
- (initialize.<receiver>): New method.
- (receive-data.<receiver>): New method.
- * support.scm (default-deco-socket-file): New variable.
- (select+recv!, get-message): Removed. The functionality is now in
- receive-data.<receiver>.
- (local-output): Also send output to deco.
- (extra-output-sender): New variable.
- (terminating-string): New variable.
- (open-extra-sender, close-extra-sender): New procedures.
- (verify-dir): New procedure.
- * dmd.scm: Load comm.scm.
- (main): Use <sender> and <receiver> to exchange command and
- resulting output.
- (process-args): Take additional file name argument into account.
- * deco.scm: Load comm.scm.
- (main): Like in dmd.scm.
- * Makefile.am (dmd_data): Added comm.scm.
- * service.scm (<service>): New slots: `enabled?' and
- `last-respawns'.
- (start.<service>): Don't start if not enabled.
- (respawn-service): Disable if respawning too fast.
- (extra-action.<service>): New default actions `enable' and
- `disable'.
- (default-display-status.<service>): Display whether the service is
- enabled or not.
- 2002-09-22 Wolfgang Jährling <wolfgang@pro-linux.de>
- * args.scm (<option>): Renamed `takes-arg?' slot to `takes-arg'
- and changed the semantics. Deleted getter. All users changed.
- (process-args): Updated. Also abort in some error cases.
- (takes-arg?.<option>): New method.
- * dmd.scm (select+recv!): Moved to ...
- * support.scm (select+recv!): ... here. New macro.
- (get-message): New procedure. Code taken from procedure `main' in
- dmd.scm.
- 2002-09-21 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS: Forked off version -0.9
- 2002-09-21 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (process-command): Don't crash when called with too few
- args.
- * deco.in, dmd.in: Don't use a `--' argument, as Guile stopps
- processing args after the script name was given anyway.
- * Makefile.am (install-hook): Renamed to ...
- (install-data-local): ... this. New target.
- * deco.scm, dmd.scm: Load dirs.scm.
- * support.scm (default-config-file, default-socket-dir): Use
- Prefix-dir as file/directory name prefix.
- * examples: New directory.
- * Makefile.am (SUBDIRS): New variable.
- * configure.in (AC_OUTPUT): Add new directory.
- * examples/Makefile.am: New file.
- * examples/wolfgangj.scm: New file.
- 2002-09-20 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (main): Fail if no argument given to options --config
- and --socket.
- * COPYING.DOC: New file. The GNU Free Documentation License,
- version 1.1.
- * configure.in: New file.
- * Makefile.am (dmd, deco, dirs.scm): Unite into one target.
- (%.in->%): Use `,' as seperator for directory name replacing.
- (dmd_data): New variable.
- (dmd_DATA): Use the above.
- (templates): New variable.
- (EXTRA_DIST): New variable.
- * testcase.scm: Removed.
- * INSTALL, install-sh, missing, mkinstalldirs, texinfo.tex: New
- files. Ok, I didn't add those, automake did it for me.
- * aclocal.m4: New file, created with aclocal.
- 2002-09-19 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (main): Kill socket on startup if it exists, so that we
- can use it. It seems strange that we have to do this, though.
- * support.scm (without-system-error): New macro.
- * deco.scm: Actually call main.
- (main): Send correct number of messages as handshake again.
- 2002-09-18 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (main): New command line option: `--insecure' (`-I').
- Ensure that the socket directory setup is secure if this option
- was not given.
- * Makefile.am: Generate dirs.scm.
- * dirs.scm.in: New file.
- * support.scm (default-socket-dir): New variable.
- * dmd.scm (main): Create default socket directory on startup, if
- we need it.
- * deco.scm: Load the same modules as dmd does. Also load
- support.scm and args.scm.
- (main): New procedure. New option `--socket' (`-s').
- * dmd.scm (display-version): Moved to ...
- * support.scm (display-version): ... here. New procedure.
- * THANKS: New file.
- 2002-09-17 Wolfgang Jährling <wolfgang@pro-linux.de>
- * Makefile.am, deco.in, dmd.in: New files. Suggested by Jeff
- Bailey <jbailey@nisa.net>.
- 2002-09-17 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS: Released version -0.9.6
- 2002-09-17 Wolfgang Jährling <wolfgang@pro-linux.de>
- * args.scm (process-args): Handle short options.
- * service.scm (respawn-service): New procedure. Active it as
- handler for SIGCHLD.
- * dmd.scm (main): Protect `recv!' calls with `select'.
- Suggested by Rob Browning <rlb@defaultvalue.org>.
- (select+recv!): New macro.
- * testcase: Make a service respawnable.
- 2002-09-16 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (process-command): Actually interpret the command.
- * self.scm (stop): Don't try to stop yourself recursively. Eeek.
- * service.scm (stop.<service>): Allow user-defined code to call
- `quit' if it is from the dmd-service.
- * dmd.scm (process-command): Removed rescue-exit, because stopping
- dmd now works correct.
- * service.scm (stop.<symbol>): Don't display superfluous
- information.
- (extra-action.<symbol>): Cleaned up a bit.
- (conflicts-with): Turned `let*' into normal let.
- * service.scm (<service>): Initialize extra-actions to `#f'.
- (extra-action.<service>): Take into account that if we have no
- extra-actions, the slot may not contain a hash-table.
- * default.scm (default-config-file): New variable.
- (default-socket-file): New variable.
- * dmd.scm (main): Use those.
- * args.scm (process-args): Recognize unambigous abbreviations for
- long options. Also make it possible to stop further
- interpretation of arguments (`--').
- 2002-09-16 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS: Released version -0.9.7
- 2002-09-16 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm (main): Read commands from the socket. Use default
- socket "/var/run/dmd/$USER/default".
- (process-command): New procedure.
- * deco.scm: New file.
- * testcase.scm: Disable testing code for now.
- 2002-09-15 Wolfgang Jährling <wolfgang@pro-linux.de>
- * args.scm (process-args): Recognize long options.
- * dmd.scm: Load args.scm again.
- New options: -c (--config) and -s (--socket).
- * service.scm (start.<symbol>): Simplified using find-running.
- (stop.<symbol>): Likewise. Also use local-output.
- (default-display-status.<service>): Display `respawn?' value.
- (display.<service>): Removed. Obsoleted by the above.
- * support.scm (puts): Removed. All previous callers now use
- local-output instead (hopefully).
- 2002-09-14 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (start.<service>): Catch possible errors in
- user-defined action.
- (stop.<service>): Likewise.
- (extra-action.<service>): Likewise.
- * support.scm (caught-error): New procedure.
- * self.scm (load): Do not catch anymore yourself.
- * support.scm (call/ec): Implement efficiently.
- (assert): Throw an exception.
- * dmd.scm: Load module (srfi srfi-13).
- * args.scm (process-args): Started reimplementation for GOOPS.
- (<option>): Removed slot `occured?', added slot `takes-arg?' and
- removed init-value for slot `action'.
- (<option-with-arg>): Removed. Its functionality is covered by the
- now generalized <option> class.
- * service.scm (conflicts-with.<service>): New method.
- (default-display-status.<service>): Use the above instead of doing
- the same thing yourself.
- 2002-09-14 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS: Released version -0.9.8
- 2002-09-14 Wolfgang Jährling <wolfgang@pro-linux.de>
- * self.scm: New file.
- (dmd-service): New variable.
- (start, stop, status, load, restart): New extra-actions.
- * dmd.scm: Load self.scm.
- * testcase.scm: Display dmd status.
- * args.scm (<option>): New slot: action.
- Added getter for `occured?'.
- (<option-with-arg>): New slot: action.
- * support.scm (silent): Removed. It was never used.
- (real-output-port, void-output-port): New variables.
- (be-silent, be-verbose): New procedures.
- * self.scm (silent, verbose): New extra-actions.
- * service.scm (extra-action.<service>): Make passing an arbitrary
- number of arguments to the extra-action possible.
- (extra-action.<symbol>): Likewise.
- * testcase.scm: Pass an additional argument to an extra-action.
- * support.scm (local-output): New procedure. Most callers of
- `puts' changed to use this instead.
- * self.scm (detailed-status): New extra-action.
- * dmd.scm: Load module (srfi srfi-1).
- * service.scm (default-display-status.<service>): New method.
- (extra-action.<service>): Use the above.
- 2002-09-13 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (start.<symbol>, stop.<symbol>): Try all
- possibilities.
- (start.<service>): Start dependencies via symbol.
- (make-init.d-service): Updated to GOOPS.
- (init.d-add): Removed.
- * support.scm (call/ec): New procedure. Updated all to use it
- instead of call/cc.
- * service.scm (extra-action.<service>): New method.
- (extra-action.<symbol>): New method.
- (find-running): New procedure.
- * testcase.scm: Use extra-actions.
- 2002-09-12 Wolfgang Jährling <wolfgang@pro-linux.de>
- * support.scm (ewal, define-struct): Removed. Obsoleted by
- GOOPS.
- * service.scm (copy-hashq-table): Moved to ...
- * support.scm (copy-hashq-table): ... here.
- * args.scm (<option>, <option-with-arg>): New classes.
- 2002-09-12 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS: Released version -0.9.9
- 2002-09-12 Wolfgang Jährling <wolfgang@pro-linux.de>
- * runlevel.scm (define-runlevel): Removed. Obsoleted due to
- GOOPS.
- (services-to-start, dequeue-service, enqueue-service): Likewise.
- (depending-running-services): Likewise.
- * service.scm (do-restart-service, call-method): Likewise.
- * dmd.scm: Don't load args.scm for now.
- (main): New procedure.
- * service.scm (start.<symbol>, stop.<symbol>): New methods.
- (display.<service>): New method.
- * testcase.scm: New file. Contains testing code.
- (c, d): New procedures.
- * dmd.scm (main): Process configuration file.
- 2002-09-11 Wolfgang Jährling <wolfgang@pro-linux.de>
- * runlevel.scm (enter.<service>): Restructured to prepare for a
- working implementation.
- 2002-09-10 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (for-each-service): New procedure.
- (start.<service>): Updated to use `for-each-service'.
- (stop.<service>): Implement stopping of other services.
- (<service>): Added getter for slot `requires'.
- * runlevel.scm (enter.<runlevel>): Renamed to ...
- (enter-selector.<runlevel>): ... this. New method.
- (leave.<runlevel>): Renamed to ...
- (leave-selector.<runlevel>): ... this. New method
- (enter.<runlevel>): New method with different semantics.
- (current-runlevel): New variable.
- * support.scm (silent): New procedure.
- 2002-09-09 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (start.<service>): Avoid that two conflicting
- services can get started.
- (stop.<service>): New method.
- (<service>): Added getter for slot `provides'.
- (do-start-service, do-stop-service): Removed. They are obsolete
- due to conversion to GOOPS.
- * warning.scm: Removed file. Also obsolete now.
- 2002-09-08 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (make-extra-actions): New macro.
- (register-service): Renamed to ...
- (register-services): ... this. New procedure.
- (services-max-cnt, services-cnt): New variables.
- (register-services): Dynamically resize the hash table on demand.
- (copy-hashq-table): New procedure.
- 2002-09-07 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (running?.<service>): New method.
- (start.<service>): Resolve dependencies.
- (lookup-service): Renamed to ...
- (lookup-services): ... this. New procedure.
- (<service>): New slot: extra-actions.
- 2002-09-06 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (canonical-name.<service>, start.<service>): New
- methods.
- 2002-08-31 Wolfgang Jährling <wolfgang@pro-linux.de>
- * service.scm (services): Now a hash-table instead of a list.
- (find-service): Renamed to ...
- (lookup-service): ... this. New procedure. All callers changed.
- Also adopted to use the hash table.
- (find-service-from): Removed.
- (register-service): Adopted to use the hash table.
- 2002-08-30 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.texi, configure, Makefile: New files.
- 2002-08-29 Wolfgang Jährling <wolfgang@pro-linux.de>
- * dmd.scm: Load the GOOPS module.
- * service.scm (<service>): New class.
- * runlevel.scm (<runlevel>, <runlevel-exact>, <runlevel-changes>):
- New classes.
- (enter.<runlevel>, leave.<runlevel>): New methods for <runlevel>
- and all subclasses.
- 2002-08-28 Wolfgang Jährling <wolfgang@pro-linux.de>
- * NEWS, README: New files.
- 2002-08-28 Wolfgang Jährling <wolfgang@pro-linux.de>
- * args.scm, runlevel.scm, service.scm, support.scm, warning.scm:
- New files.
- 2002-08-28 Wolfgang Jährling <wolfgang@pro-linux.de>
- * AUTHORS, ChangeLog, COPYING, dmd.scm: New files.
|