Added experimental foreverd implementation for working with init.d, systemv, etc
Expose Monitor.killTree for killing process trees for processes spawned by forever (default: true)
Added commands for working with forever log files
Update daemon to 0.3.2
Expose Monitor.spawnWith in Monitor.data
Add --plain option disabling CLI colors
Add --watch/-w command line option
Add implementation to restart processes when a file changes
Replace sys module usages with util
Update winston dependency to 0.4.x
Add options.hideEnv to hide default env values
Update forever.Monitor.prototype.restart() to allow force restarting of processes in less than .minUptime
Update forever.startServer() to support more liberal arguments.
Create sockPath if it does not exist already.
When stopping only respond with those processes which have been stopped.
Display warning / error messages to the user when contacting UNIX sockets.
Fixed a bug where numbers in the file path caused forever to think
Process variables are not always available, for example if you execute
Dont allow - in uuids generated by forever.
When executing stopall, dont kill the current process.
Added forever.debug for debugging purposes
Keep processes silent on forever restart if requested. A couple of minor log formatting updates
Update forever list to use cliff
Added generic hooks for forever.Monitor
Use default values for log file and pid file (prevents a process from being nuked by being daemonized)
Default minUptime to 0
Create options.uid by default in .startDaemon() if it is already not provided
Include uids in forever list
Catch uncaughtException slightly more intelligently
Forever no longer uses *.fvr files in-favor of a TCP server in each forever process started by the CLI. Programmatic usage will require an additional call to forever.createServer() explicitally in order for your application to be available in forever list or forever.list()
Add portfinder dependency to package.json
Expose forever.columns and update forever.format to generate results dynamically
Update winston dependency to 0.3.x
Remove .fvr file when a forever.Monitor child exits
Add --spinSleepTime to throttle instead of killing spinning scripts
Added preferGlobal option to package.json
Improve forever when working with -c or --command
Print help when a valid action isn't given
Batch the cleaning of *.fvr and *.pid files to avoid file descriptor overload
Check if processes exist before returning in .findByScript().
Readd eyes dependency
Added forever.logFilePath utility.
Added forever.pidFilePath implementation
Added append log implementation to CLI
Fix for spawning multiple processes from a single forever process
Added forever.config using nconf
Better bookkeeping of *.fvr and *.pid files
Remove unnecessary eyes dependency
Update sourceDir option to check for file paths relative to root
Enable forever to track uptime
Add restart command to forever.Monitor and CLI
Ensure forever.load() is called on require()
Better handling for for -p CLI option
Enable options to be passed to child_process.spawn
Allow forever to start any script (not just node) from nodejs code
Array shortcut to set command and options
Check for scripts with fs.stat before running them
Improved how *.fvr and *.pid files are managed by Forever CLI
Ability to delete all historical logs from CLI via 'cleanlogs'
Ability to stop script by name -- stops ALL scripts with that name.
Display logfile in 'forever list'.
Use process.kill() instead of exec('kill').
Emit 'save' event when persisting to disk.
Emit 'start' event when starting a forever child
Remove 'auto-save' feature from Forever.start()
Push options hierarchy up one level. e.g. Forever.options.silent is now Forever.silent
Only 'error' event now emits with an error. All other events simply emit data