Releases: Unitech/pm2
1.1.3
1.1.2
Galactica
This release is about PM2's internals refactoring, homogenization in action commands (in terms of behavior and outputs). Some interesting features has been added, as YAML file support (for application declaration) and better support for other languages (Python,Perl...). The Keymetrics agent has been enhanced, dividing by two the memory usage and avoiding any possible leak in any potential scenarios. Reconnection system has been refactored too.
Keymetrics users: a lot of benefits brought to you to do this upgrade
This version has been heavily tested in testing, production environments and deeply monitored in terms of CPU and Memory usage. Tests have been hardened.
- [#133 #1568] Allow to rename a process via pm2 restart app --name "new-name"
- [#2002 #1921 #1366] Fix CLI/JSON arguments update on restart (args, node_args, name, max-memory)
- [#578] Add YAML support for application configuration file (in extent to JSON and JSON5 support)
- [Keymetrics agent refactoring] TCP wait, memory consumption divided by two, reconnection refactoring, keep alive ping system
- [Keymetrics agent refactoring] Fix random no response from pm2 link and pm2 unlink
- [#2061] Kill ESRCH of processes in cluster mode with SIGINT catcher fixed
- [#2012 #1650 #1743] CLI/JSON arguments update on reload
- [#1613] Reload all reload ALL applications (stopped, errored...)
- [#1961] Fix kill timeout info log
- [#1987] Fix FreeBSD startup script
- [#2011] Respect process.stdout/.stderr signature
- [#1602] Fix zombie process when using babel-node as interpreter
- [#1283] --skip-env option to not merge update with system env
- Homogeneize actions commands outputs
- Option --interpreter-args added (alias of node-args)
- Allow to use exactly the same option in JSON declaration and CLI (e.g. interpreter) to avoid confusion
- pm2 show, now shows more commands to manage processes
- Refactor programmatic system
Update procedure
PM2 CLI and internals have been frozen since the 0.14 version, so updating PM2 is totally seamless:
$ npm install pm2 -g
$ pm2 update
Documentation
YAML doc: http://pm2.keymetrics.io/docs/usage/application-declaration/
Redemption
[#1035 #1055] Deactivate automatic dump on startup scripts
[#1980] Add Javascript source map resolution when exceptions occurs Documentation
[#1937] Allow to act on application having numerics as app name
[#1945] Fix post_update commands section when file contains Javascript
[#624] --only to act only on specified app name in json app declaration
0.6.1 PMX upgrade
G minor
1.0.0 - Akira
Here we are PM2 1.0 with embedded module system
RT: https://twitter.com/keymetrics_io/status/683999496745922560
- [#1844][#1845][#1850] Load configuration in /etc/default/pm2 + add ulimit -n override
- [#1810] Add --kill-timeout option (delay before process receive a final SIGKILL)
- [#1830] Add tests for PM2_KILL_TIMEOUT (SIGKILL delay) + default SIGINT to any kind of procs
- [#1825] Process management commands (start/restart/stop/delete) can take multiple arguments
- [#1822] Add new method pm2.sendDataToProcessId(type|data|id) to send data to processes
- [#1819] Send SIGINT signal to process instead of SIGTERM
- [#1819][#1794][#1765] Avoid writing on std err/out when process is disconnected
- Add default attribute in schema.json to allow to configure default value when passing a JSON
- JSON and CLI starts are now consistent in terms of option size, attribute number
- pm2.restart(json_data, function(err, data) now returns an array of process instead of simple object (success:true))
- Now pm2 restart process.json --env , refresh environment variable on each restart depending of the X environment
- prepareJSON method in PM2 code (God.js) removed
- partition Common.prepareAppConf (duplicate with verifyConfs)
- Change signature of Common.prepareAppConf
- Centralize Interpreter resolution via Common.sink.resolveInterpreter(app) in Common.js
- Better meta information when process restart/reload/stop (signal + exit code)
- Upgrade pm2-axon, cron, should, mocha, coffee-script, chokidar, semver NPM packages
- Show process configuration option when describing process
- Add --no-automation flag
- Fix when starting application with illegal names (#1764)
- Fix management of app starting with numerics in the filename (#1769)
- Fix versiong system (reset to default on resurrect/prepare)
- Increase buffer size for versioning meta parsing
v0.15.9 - Back to the Future
- Deep JSON declaration args fixed (watch related)
- Upgrade chokidar / async
- Windows: Fix process not recycled properly on Windows #1727
v0.15.8 - Nightly Stack
- New module system backward compatible and compatible with NPM 3.x
- Possibility to install module from tgz (#1713)
- ecosystem generated file via pm2 generate uptaded (not json5 prefix anymore, and updated comments)
- always prefix logs #1695
- blessed dependency removed
- drop locking system
- add callback to deploy (#1673)
- typo fixes
v0.15.x
Enhancement: Better Windows support
Enhancement: PM2 module commands (pm2 module:[update|generate|publish])
Enhancement: Watch feature has been refactored + test, Chokidar has been upgraded to be compatible with Node 4.x
Enhancement: Deep integration of alert system
Feature: Raw Node.js applications are configurable via PMX (pm2 set app-name:variable )
Feature: JSON declaration files can now access to process.env object and now errors are more explicit
Bug fix: Last process.kill is now wrapped into try/catch
Workflow: Appveyor has been added to test suit
v0.14.7
- Fix #1524 : PM2 doesn't fail silently if no permission to write log files
- New flag
--no-pmx
: starts an app without injecting pmx - New feature : cron restart now works in fork mode as well
- Disabled auto-gc on interactor
- Allow PM2 to execute binaries in $PATH
- pm2 link priv pub --recyle for elastic infrastructure
- pm2 deploy now check default file ecosystem.js[on|on5], package.json