UNPKG

100 kBMarkdownView Raw
1
2## 5.1.0
3
4- add back Node 10.x support
5- make pm2-sysmonit module optional
6
7## 5.0.3
8
9- skip system monitoring on Windows
10
11## 5.0.1/5.0.2
12
13- fix npm install --no-optional pm2
14
15## 5.0.0
16
17### System Monitoring
18
19A new local system monitoring feature has been added, allowing to monitor numerous vital server metrics.
20
21Most important metrics will be displayed when doing a pm2 ls:
22
23```bash
24┌─────┬─────────────────┬─────────────┬─────────┬─────────┬──────────┬────────┬──────┬───────────┬──────────┬──────────┬──────────┬──────────┐
25│ id │ name │ namespace │ version │ mode │ pid │ uptime │ ↺ │ status │ cpu │ mem │ user │ watching │
26├─────┼─────────────────┼─────────────┼─────────┼─────────┼──────────┼────────┼──────┼───────────┼──────────┼──────────┼──────────┼──────────┤
27│ 4 │ app │ default │ 1.0.0 │ fork │ 164618 │ 2s │ 1670 │ online │ 0% │ 41.8mb │ unitech │ disabled │
28└─────┴─────────────────┴─────────────┴─────────┴─────────┴──────────┴────────┴──────┴───────────┴──────────┴──────────┴──────────┴──────────┘
29host metrics | cpu: 1.6% 42.9º | mem free: 52.0% | wlp0s20f3: ⇓ 0mb/s ⇑ 0mb/s | disk: ⇓ 0.199mb/s ⇑ 0mb/s /dev/nvme0n1p3 88.25% |
30```
31
32All server metrics will be available to pm2.io:
33
34```
35┌─────────────────────────────┬──────────────────────────────────┐
36│ PM2 CPU Usage │ 0.0 % │
37│ PM2 Memory Usage │ 67.4 mb │
38│ PM2 Agent CPU Usage │ 0 % │
39│ PM2 Agent Memory Usage │ 0 mb │
40│ CPU Usage │ 1.5 % │
41│ CPUs Usage │ 0|0|0|0|2|0|0|1|0|0|0|1|0|1|2|8 │
42│ CPU Temperature │ 42.9 °C │
43│ RAM Total │ 15.34 gb │
44│ RAM Free │ 1.18 gb │
45│ RAM Active │ 7.35 gb │
46│ RAM Available │ 7.99 gb │
47│ RAM Usage │ 47.9 % │
48│ FD Opened │ 15072 │
49│ Disk Writes │ 0 mb/s │
50│ Disk Reads │ 0.24 mb/s │
51│ Disk Usage │ 88.25 % │
52│ Disk Size │ 465.60 gb │
53│ Total TX │ 0.005 mb/s │
54│ Total RX │ 0.004 mb/s │
55│ fs:use:/dev/nvme0n1p3 │ 88.25 % │
56│ fs:size:/dev/nvme0n1p3 │ 465.60 gb │
57│ net:tx_5:wlp0s20f3 │ 0.005 mb/s │
58│ net:rx_5:wlp0s20f3 │ 0.004 mb/s │
59│ net:rx_errors_60:wlp0s20f3 │ 0 /min │
60│ net:tx_errors_60:wlp0s20f3 │ 0 /min │
61│ net:rx_dropped_60:wlp0s20f3 │ 0 /min │
62│ net:tx_dropped_60:wlp0s20f3 │ 0 /min │
63│ graphics:mem:total │ 3878 mb │
64│ graphics:mem:used │ 1260 mb │
65│ graphics:temp │ 46 °C │
66└─────────────────────────────┴──────────────────────────────────┘
67```
68
69#### Disabling system monitoring
70
71```
72# Disable system monitoring
73pm2 set pm2:sysmonit false
74# Enable system monitoring
75pm2 set pm2:sysmonit true
76```
77
78### PM2.io bandwidth reduction
79
80Data quantity sent from PM2 to PM2.io has been reduced by 80%, thanks for a json patch differential system. Much more data can now be exposed (metrics, actions) to PM2.io
81
82### Other fixes
83
84- feat: added args and full script path to monitoring data
85- fix: regular local ip check
86- fix: pm2 agent watchdog has been consolidated and fixes freezing issues
87- fix: modules bumped
88
89## 4.5.6
90
91- all submodules version bumped
92- supress all "security" warnings
93
94## 4.5.5
95
96- bump debug
97- remove systeminformation
98
99## 4.5.4
100
101- drop non used package
102
103## 4.5.3
104
105- bump vizion from 0.2.13 to 2.2.1 (Snyk CVE)
106- bump chokidar to 3.5.1
107
108## 4.5.2
109
110- bump @pm2/js-api
111
112## 4.5.1
113
114- fix: cron in cluster mode was not restarting process after one pass - fixes #4834 #4733 #4307 #4834
115- fix: restore --sort <param> option on `pm2 ls` - fix #4536
116- fix: fix tests with npm7
117- fix: restore warning message about process list changed and not dumped
118- chore: alias `--cron` with `--cron-restart`
119- chore: test PM2 againt Node.js 15.x
120- chore: upgrade systeminformation and debug module to latest - PR #4892 by @AdamMajer
121- chore: drop Node 9.x from travis testing
122- chore: remove ps-list module
123
124## 4.5.0
125
126- fix: creating log folder in sync mode. #4846 - PR #4844 by @QS20199
127- fix: PM2 unable to run ESM packages: ERR_UNSUPPORTED_ESM_URL_SCHEME #4839 - PR #4841 by @ox-harris
128- fix: Use opts.namespace if it was passed in. Previously, it was ignored. #4778 - PR #4791 by @sbleon
129- fix: Prevent reloadLogs command from hanging. #4781 - PR #4782 by @mbrooks and Franck Danard
130- fix: backward compatibility fix for tarball modules - PR #4767 by @ykolbin
131- fix: Operation not permitted on call setgid #2957 - PR #4681 by @guard43ru
132- chore: upgrade dependencies
133
134## 4.4.1
135
136- feature drop: autodump fixes #4763
137- fix: fix starting pm2 script from inside an app #4761 (need use PM2_PROGRAMMATIC)
138
139## 4.4.0
140
141- feature: support Node v14.0
142
143## 4.3.1
144
145- fix: downgrade vizion
146
147## 4.3.0
148
149- feature: reduce by 1/3 pm2 package size (drop moment, lodash)
150- feature: pm2 start app.js --filter-env NODE_ENV #4596
151- feature: print logs of a particular namespace #4517 @bvsubhash
152- feature: trigger all the process using 'all' or trigger all processes in a particular namespace #4518 @bvsubhash
153- feature: support ecosystem.config.cjs #4662 @Timic3
154- fix: disable log (--error /dev/null --output /dev/null) on Windows #4560 @codpot
155- fix: pm2 install <tar_file> adaptation #4593 @adunkey
156- fix: add type for pm2.reload with optional options parameter #4615 @kevindoveton
157- fix: add `ignore_watch` to StartOptions types #4629 @jlvcm
158- fix: fix --cwd CLI option description #4639 @warpdesign
159- fix: do not require cron if not necessary in CLI
160- fix: upgrade mkdirp to 1.0.4 (sec vuln) #4638
161- chore: bump mocha to latest + drop mocha.opts + add .mocharc.yml
162- chore: pm2 init ecosyst file template changes
163- chore: pm2-deploy@1.0.2 (revert fix)
164- chore: pm2-io-apm@4.3.4 (instant trace + broadcast trace threshold + boolean metrics support)
165
166
167## 4.2.3
168
169- fix: Fix an import error on Node 9.x
170
171## 4.2.2
172
173- feat: Support ESM on Node 13 via .mjs file or `"type":"module"` in package.json #4540
174- fix: Fix an error for pm2 path on Windows. #4563
175
176## 4.2.1
177
178- fix: col size too small for certain app name with tracing enabled
179- chore: check for pm2 updates
180
181## 4.2.0
182
183- feature: `pm2 logs --highlight <str>` to highlight specified string when using `pm2 logs` #4013 by @bvsubhash
184- feature: `pm2 sysmonit` activate system wide monitoring && `pm2 sysinfos` display system informations
185- feature: new App Namespace feature via `namespace` attr or `pm2 start app.js --namespace <ns>` #3471 by @bvsubhash
186- feature: enforce message sending for Windows Graceful Shutdown via `pm2 start app.js --shutdown-with-message` to use message sending for specific process or via `PM2_KILL_USE_MESSAGE=true pm2 update` to default this behavior on PM2. #3561 #3691 #3555 #4469 #4470 #4474 by @aleksk and @8ai
187- feature: `pm2 ls` now display a hint when process list differ from dump file
188- fix: if id > 100 not shown in pm2 ls #4475
189- fix: stop and delete cron immediately on deletion of a process #4492 by @bvsubhash
190- fix: display correct username by @bvsubhash
191- chore: add test on node 13.x
192- chore: cleanup some unused files
193- chore: enforce node >= 8.10.0
194
195## 4.1.2
196
197- fix: temporarily disable system metrics retrieval
198
199## 4.1.1
200
201- fix: #4452 disable network collection metric
202
203## 4.1.0
204
205- fix: #4270 fix ANSI escape for `pm2 ls --watch`
206- fix: `pm2 start app.js -i 1` start app in cluster mode
207- fix: #4254 add HOST environment variable on pm2 serve
208- fix: #4267 Allow usernames in uid/gid/user again
209- fix: #4376 make process.send('ready') trigger sigint
210- fix: #4443 allow pm2-runtime to auto-exit even if modules are still running
211- fix: #4364 typos
212- fix: #4288 add 'max' type in typescript definition
213
214## 4.0.2
215
216- fix: #4450 do not open sysinfo window on Windows
217
218## 4.0.1
219
220- chore: switch Systeminfo logging to debug
221
222## 4.0.0
223
224- feat: make pm2 fully standalone with node embedded
225- feat: startup, npm, node system adaptation for standalone installs
226- feat: system information worker - retrieve:
227 - network I/O + latency
228 - disk I/O + space
229 - cpu usage + temperature
230 - memory usage
231 - intelligent display of information (e.g. display disks > 80% cpu usage)
232- feat: listing of docker container on host machine with independent pm2 list
233- feat: upgrade of Chokidar to 3.x - Massive CPU & RAM consumption improvements for watch feature
234- r&d: manage container like pm2 processes
235- feat: intelligent display of high loaded processes in an independent pm2 list
236- feat: #4224 --ignore-watch now accepts globs (@vaskevich)
237- feat: pm2 save --force allow to force save of empty process list
238- fix: pm2 monit dashboard without leaks
239- fix: pm2 register fixed
240- refactor/fix: pm2 listing systems refactoring
241- chore: remove old legacy code for < 8 Node.js versions
242- chore: make the repo lighter
243- chore: better display when pm2-runtime is linked to on-premise
244- chore: pm2 CLI refactoring #4391
245
246## 3.5.0
247
248- feat: #4220 #2941 #4196 improve pm2 serve for SPA - autoredirect requests to index.html if --spa
249- feat: on pm2 show <app>, display metric unit and divergent environment variables
250- feat: #4157 tweak systemd script to auto restart PM2 in case of crash failure
251- fix: #4212 on pm2 show, avoid crash when versioning comment is not present
252- fix: #4171 fix pm2 list when small screen
253- fix: #4197 fix pm2 unstartup for macOS
254- fix: #2764 in pm2 monit, only display log of selected application
255- fix: #2793 pm2 monit, rolling log buffer, avoid crash and performance issues
256- fix: #4060 do not emit online when application is errored
257- chore: remove nssocket in dependencies
258
259## 3.4.1
260
261- fix: allow pm2 register / pm2 monitor
262- fix: restore trace indicator
263
264## 3.4.0
265
266- use @pm2/io version 4
267- disable @pm2/io for node.js v4 and v5
268
269/!\ Warning, built-in custom metrics are not supported anymore on Node 4 and 5
270
271New builtin metrics when starting a Node.js application:
272- Heap Size
273- Heap Usage
274- Used Heap Size
275- Active Requests
276- Active handles
277- Event loop latency
278- Event loop latency p95
279- HTTP queries per minutes
280- HTTP Mean Latency
281- HTTP P95 Latency
282
283## 3.3.1 (18/02/19)
284
285- add pm2 profile:cpu [timeout]
286- add pm2 profile:mem [timeout]
287
288## 3.3.0 (14/02/19)
289
290- Upgrade pmx to ^3
291
292## 3.2.9 (17/01/19)
293
294- #4128 fix: force detached process
295
296## 3.2.6-8 (11/01/19)
297
298- rollback: node bin path handling adaptation
299
300## 3.2.5 (09/01/19)
301
302- feat: enhance pm2 report
303- feat: support snap Ubuntu system
304- fix: pm2 register/monitor command
305- fix: consolidate spawn function on unhealthy systems to avoid pm2 crash
306- fix: error message if extra lang interpreter are not installed when runing tests
307- fix: (pm2 deploy) command line bug when passing env variables to post-deploy hook
308- fix: (pm2 deploy) always deploy to default branch problem
309- fix: (pm2 deploy) pm2 deploy <env> exec now accept multiple commands
310- fix: print full env + skip extra internal fields when using programmatic pm2
311
312## 3.2.4 (19/12/18)
313
314### Feat
315
316- display cron configuration when doing `pm2 desc <id>`
317- refactor test suite (benchmark/simplification)
318
319### Fix
320
321- pm2 flush <app> flush only one app
322- resolve uid properly on pm2 ls / pm2 desc
323- keep wait_ready option on process reload
324- keep stringification of environment variable behavior
325- return an error when using pm2 api on starting json configuration if one app is errored
326
327## 3.2.3 (4/12/18)
328
329### Fix
330
331- medium rare bug: fix issue when acting on process file (#3987 + #3192)
332- concurrent action to 1 if acting on only 2 processes
333- fix cluster syntax
334- add more test on port release
335
336## 3.2.2 (5/10/18)
337
338### Fix
339
340- minor bug: fix bug when passing -i 'max' or -i 0
341
342## 3.2.1 (3/10/18)
343
344### Fix
345
346- minor bug: get internal pm2 config after creation on new pm2 boots
347
348## 3.2.0 (3/10/18)
349
350### Features
351
352- package.json version field retrieval and display in pm2 ls, pm2 show, pm2 monit
353- pm2 internal configuration system via `pm2 set pm2:key value`, attached to pm2.user_conf
354- add the .user field (CLI + Config) to set the user to start the application with
355- add the .time field (CLI + Config) to enable default logs date prefix
356- max_memory_restart now triggers a reload
357- pm2 env <pm_id> command to display the environment the application is running with
358- exponential backoff restart delay via `--exp-backoff-restart-delay <ms>` with reset mechanism
359- new timing library on PM2 daemon (increase log througput, reduce CPU usage and memory usage)
360- better user management system with username resolution to uid
361- websocket default switch for pm2 plus
362- new module management system (`pm2 package <folder>`, `pm2 publish <folder>`, `pm2 install <tarball>`)
363
364### Fix
365
366- @pm2/io 2.4 (restart > 10.0)
367- restart behavior tested
368- fix module version parsing
369- module system refactoring (TAR + NPM)
370- fix watch_delay in config file
371
372## 3.1.3 (20/09/18)
373
374### Features
375- allow non-node application to run multiple instances without auto switch to cluster mode
376- allow to call `pm2 logs` even without application (#3820)
377- switch `pm2 link` and `pm2 plus` protocol to websocket by default instead of axon
378- enhance the `pm2 init` template that generates ecosystem files by adding some extra fields
379
380### Fix
381- remove deprecation message for node 0.10
382- pm2 login/register/monitor now hit the new oauth pm2 plus system
383
384## 3.1.2 (10/09/18)
385
386- version bump on @pm2/io
387
388## 3.1.1 ( Mon Sep 10 2018 16:18:25 GMT+0200 (CEST) )
389
390
391## Hot Fixes
392 - #3901 fix error when installing module
393 ([7b43fea5](https://github.com/Unitech/pm2/commit/7b43fea55d7c2853a3032b3bddd12201cd6a29e9))
394
395
396## 3.1.0 ( Mon Sep 10 2018 10:25:13 GMT+0200 (CEST) )
397
398
399## Bug Fixes
400 - tmp fix io@beta + rename metric
401 ([04ab7ac4](https://github.com/Unitech/pm2/commit/04ab7ac4e1312c5a5332f37cbb81b0d98686936d))
402 - remove ending \n on git version comment
403 ([9a36bfeb](https://github.com/Unitech/pm2/commit/9a36bfeb7e9f5ab1719ca3858510da08bb0cad6b))
404 - #3883 fix typings for max_memory_restart and add wait_ready
405 ([b35ea237](https://github.com/Unitech/pm2/commit/b35ea237e3b448088112b2f3a771a9c5286417a7))
406 - restore monitored indicator
407 ([34966432](https://github.com/Unitech/pm2/commit/349664329eb56232321694be9e08f16a3cda6fbd))
408 - remove install of modules on pm2 plus command
409 ([6a8bb269](https://github.com/Unitech/pm2/commit/6a8bb26952a7dcf109d28af7224b89faf0977a71))
410 - invert kill/link
411 ([3c37b528](https://github.com/Unitech/pm2/commit/3c37b5283bf0dea130fd375a5563974bd84543a9))
412 - #3877 #3831
413 ([16f4f2bc](https://github.com/Unitech/pm2/commit/16f4f2bc6589e8f0666f46d37c3f7f7739de7261))
414 - #3865 ensure pm2 never run simultaneous gracefullExit, prevent dump file corruption
415 ([79679db1](https://github.com/Unitech/pm2/commit/79679db1b321bbcc7296dbc41d005500cf61d273))
416 - #3786 fix issue when triggering an action that does not exist
417 ([1ff7fd3d](https://github.com/Unitech/pm2/commit/1ff7fd3d49ccaf3f65540774426b62fdc811e4f1))
418 - fixed unstartup when launchd
419 ([3d0461c3](https://github.com/Unitech/pm2/commit/3d0461c3e0a2362aef009e6f158b6f16b3d6510c))
420 - access gl_retry as class property
421 ([bbcb2b6b](https://github.com/Unitech/pm2/commit/bbcb2b6b5c5fa0ef872b64a648461c266350423a))
422 - #3831 switch registerToKM() to register()
423 ([8df2451e](https://github.com/Unitech/pm2/commit/8df2451e05bf5494b11f0546965718efe1f351b9))
424
425
426
427
428## Features
429 - add id column in stacked mode (80 char mode)
430 ([83033d4c](https://github.com/Unitech/pm2/commit/83033d4cdeb899bc4c1d1fe7a8c6391e64e9d0d0))
431
432
433
434
435## Refactor
436 - only enable deep monitoring if explicitly stated
437 ([f67e14f0](https://github.com/Unitech/pm2/commit/f67e14f0bd6d65bff6ef8f7e27e3f0aa93c60e40))
438 - #3786 clean code
439 ([6cbca8bc](https://github.com/Unitech/pm2/commit/6cbca8bccc0126f1557bf8326c81facc62100704))
440 - removes unused imports.
441 ([b8b48e83](https://github.com/Unitech/pm2/commit/b8b48e83f7f041508e39815e22501509259d4f26))
442 - only import the necessary methods from async.
443 ([6466ee44](https://github.com/Unitech/pm2/commit/6466ee44c1b85858f9b7e56b01aa6f2a08bde508))
444 - removes unused async imports.
445 ([679b14ff](https://github.com/Unitech/pm2/commit/679b14ff4b24519b5479c9e5f4ce0d9c32e39e55))
446
447
448
449
450## Chore
451 - upgrade to 3.1.0
452 ([0285d12d](https://github.com/Unitech/pm2/commit/0285d12df335667e9e0311a7abe175796bb517f4))
453 - update apm version
454 ([cc27de4a](https://github.com/Unitech/pm2/commit/cc27de4a8b400f1c20ba2e4b12dadcef1dd34fae))
455 - README update
456 ([c505dcc1](https://github.com/Unitech/pm2/commit/c505dcc1685380728b23f8757aa80fa4387d7fd3))
457 - remove unused console.log
458 ([61e32a43](https://github.com/Unitech/pm2/commit/61e32a4305490cc64c0a40cd83e2ad48c133b272))
459 - upgrade vizion to 2.0.2
460 ([c231e286](https://github.com/Unitech/pm2/commit/c231e28604aa4628d8f8ba10ea1f9f82e73269e6))
461 - #3415 try to update vizion to 2.0.1
462 ([9b80d8c1](https://github.com/Unitech/pm2/commit/9b80d8c1b69c07d21e63441c266b7acafffe0673))
463 - #3415 try to update vizion to 2.0.0
464 ([2c3df093](https://github.com/Unitech/pm2/commit/2c3df09378a92bac9de2d3b3b83103e02bd1bb82))
465 - update readme with 3.0.3 commits
466 ([476542fb](https://github.com/Unitech/pm2/commit/476542fbad038b951b6cfe6d6903d7b6bc8540a5))
467
468
469
470
471## Branchs merged
472 - Merge branch 'master' into development
473 ([95321c6d](https://github.com/Unitech/pm2/commit/95321c6dd2602e9ef71028731fd7a2e7b40a0d3c))
474 - Merge branch 'master' into development
475 ([c3c0e423](https://github.com/Unitech/pm2/commit/c3c0e423f9beeab25f53c0267d5f8a9e79d5c2e3))
476 - Merge branch 'master' into development
477 ([8e6481bc](https://github.com/Unitech/pm2/commit/8e6481bc9a6d23283895bf9cd3c7831c49a811ae))
478 - Merge branch 'development' into development
479 ([83294afe](https://github.com/Unitech/pm2/commit/83294afee7cf0204208e9cc7f4cf687469556492))
480 - Merge branch 'development' into flag--ext
481 ([79ab9242](https://github.com/Unitech/pm2/commit/79ab92425fef22cdf679fa77840d86a6e7cfc755))
482 - Merge branch 'development' into post_install
483 ([d5604300](https://github.com/Unitech/pm2/commit/d5604300685ace1c7dbd18776fd3df79da96f638))
484
485
486
487
488## Pull requests merged
489 - Merge pull request #3885 from Unitech/typings
490 ([19a35e9b](https://github.com/Unitech/pm2/commit/19a35e9b23716df8f7d1301acf7b0f0b601f93dd))
491 - Merge pull request #3878 from cuspymd/fix-command-help
492 ([2d3d2044](https://github.com/Unitech/pm2/commit/2d3d204427ce02617aa134ca0831a844de1a697d))
493 - Merge pull request #3876 from Unitech/lost_apps_sigterm
494 ([4fa247a3](https://github.com/Unitech/pm2/commit/4fa247a3e370607cf4198743de41dfa0a94bfbb5))
495 - Merge pull request #3874 from Unitech/trigger_no_action
496 ([e868f003](https://github.com/Unitech/pm2/commit/e868f003e3063a57236cb8d0ead33af808e0df70))
497 - Merge pull request #3872 from Unitech/column_id_stacked
498 ([55b6ccc3](https://github.com/Unitech/pm2/commit/55b6ccc32ae02e574ec1f80a36b4531761b94777))
499 - Merge pull request #3723 from livankrekh/development
500 ([98f49dc3](https://github.com/Unitech/pm2/commit/98f49dc393efd1fed03a1ef8a5752c0e490dd4b8))
501 - Merge pull request #3821 from imarakho/post_install
502 ([4217b150](https://github.com/Unitech/pm2/commit/4217b1505419904252d0ae7640a51128a2459d98))
503 - Merge pull request #3823 from imarakho/flag--ext
504 ([cc68dc1f](https://github.com/Unitech/pm2/commit/cc68dc1f9faf010af0648992193230af609413c5))
505 - Merge pull request #3822 from imarakho/flush_parameter
506 ([bbcc85a4](https://github.com/Unitech/pm2/commit/bbcc85a41683f5fa573bf504894f8e817c89784a))
507 - Merge pull request #3807 from medanat/minimize-async-lib-footprint
508 ([7e92855f](https://github.com/Unitech/pm2/commit/7e92855ff5c394b5452db526d21262e343b89ef8))
509 - Merge pull request #3829 from soyuka/patch-pidusage
510 ([a668f576](https://github.com/Unitech/pm2/commit/a668f5762190061dd05de5c5d888b53f35fa386e))
511
512
513
514
515
516
517
518## 3.0.3 ( Tue Aug 07 2018 23:35:05 GMT+0200 (CEST) )
519
520
521## Bug Fixes
522 - pm2 plus + register
523 ([277ec6ba](https://github.com/Unitech/pm2/commit/277ec6ba8d1cdda7f8fdf11eb9d9d33c2c095d65))
524
525
526
527
528## 3.0.2 ( Tue Aug 07 2018 23:35:05 GMT+0200 (CEST) )
529
530
531## Bug Fixes
532 - allow tracing activation
533 ([f297ef1e](https://github.com/Unitech/pm2/commit/f297ef1ebbec292aedcfa48c27e3f31b8f206633))
534
535
536
537
538## Branchs merged
539 - Merge branch 'development'
540 ([80c94dd3](https://github.com/Unitech/pm2/commit/80c94dd3261544f627612ce4b541356e4adbc51f))
541
542
543
544
545## 3.0.1 ( Mon Jul 23 2018 14:13:35 GMT+0200 (CEST) )
546
547## Bug Fixes
548 - allow to set a name via pm2 link
549 ([ebffb609](https://github.com/Unitech/pm2/commit/ebffb609cf4da195c72ee67d8341c63b78f0654e))
550 - disable network monitoring as long as ampq not supported
551 ([ae1547bf](https://github.com/Unitech/pm2/commit/ae1547bfa9505b2d13e30df39ce614eee29463b0))
552 - display error message from pm2-deploy
553 ([9171b810](https://github.com/Unitech/pm2/commit/9171b81024641c3e104f3eeb2e2c6eb852dbe7f4))
554 - protect geteuid/getegid from being called on windows #3793
555 ([0495bd8e](https://github.com/Unitech/pm2/commit/0495bd8e4ffaeb1db729b35fa569696145d79c5f))
556 - put message module at the right level
557 ([56f5e047](https://github.com/Unitech/pm2/commit/56f5e04787da29e8b582bf4fa8325f72404a2fbe))
558 - do not ignore child pres folder
559 ([10ee9987](https://github.com/Unitech/pm2/commit/10ee99876d75679723e1e8522da07413a618e48c))
560 - let->var
561 ([89e2a125](https://github.com/Unitech/pm2/commit/89e2a125c22aee27014c279c86d1d9e0a0df0235))
562 - method renaming
563 ([f3faa3d8](https://github.com/Unitech/pm2/commit/f3faa3d846d1e895232743dd619f5ecb15fdf7ad))
564 - path
565 ([4f980550](https://github.com/Unitech/pm2/commit/4f9805508d2c1c575aabc4abbab25728f1c6a28a))
566 - #3791 mitigate pidusage errores
567 ([88551b8c](https://github.com/Unitech/pm2/commit/88551b8cfe8bf8dd330d582e71b808faadfaf161))
568 - pm2 plus
569 ([9bc34e56](https://github.com/Unitech/pm2/commit/9bc34e56b7ad66cbc6efbd26d4017f1e1813a720))
570 - #3764
571 ([3a582b42](https://github.com/Unitech/pm2/commit/3a582b42f9cca57779b99964c95a2cd0516efa11))
572 - drop coffee-script (installed via pm2 install coffeescript)
573 ([76ceb2fd](https://github.com/Unitech/pm2/commit/76ceb2fd52a2e5acbf03deacc3fa8a120a197023))
574 - restore no_interaction for pm2-dev
575 ([902e5a5a](https://github.com/Unitech/pm2/commit/902e5a5a1225d2072ab6337aa067caf9c6a7cca4))
576 - option -w doesn't work
577 ([165a05c8](https://github.com/Unitech/pm2/commit/165a05c854f9b3dd1418b988c954d333f81ba88f))
578 - retab shell script to use space for indent consistency
579 ([e3b4327d](https://github.com/Unitech/pm2/commit/e3b4327d9a6120c5ad589734ca926d3b49a8b706))
580 - set Makefile indent to tab instead of common space
581 ([4db0ae01](https://github.com/Unitech/pm2/commit/4db0ae011c161cbfca9e250da40deff9fdc36069))
582 - set yaml file indent to 2 spaces instead of 3
583 ([e4ecb0b2](https://github.com/Unitech/pm2/commit/e4ecb0b29dbcc4c6ca2d67b6bdc7da4c0a5d17a5))
584 - remove trailing spaces
585 ([5c115983](https://github.com/Unitech/pm2/commit/5c1159832680231bff5da79f1c91caf32ce3b5e0))
586 - fixes #3735
587 ([0548cb82](https://github.com/Unitech/pm2/commit/0548cb82aa1193a5725ca22e1babfc38db2e3b77))
588
589
590
591
592## Hot Fixes
593 - fix #3767, do not consider as a command if space and slash are found
594 ([d15a12ce](https://github.com/Unitech/pm2/commit/d15a12ceae8b0c9c27625180ae002178b0bfe5d0))
595 - fix #3767, do not consider as a command if space and slash are found
596 ([f8ec1503](https://github.com/Unitech/pm2/commit/f8ec1503c3e92bc0dec10d395ac682b116e2914e))
597
598
599
600
601## Features
602 - add inspector for node 10 and heap snapshot
603 ([dc61bca6](https://github.com/Unitech/pm2/commit/dc61bca66828c16cf6fd04a6f749f127da697cec))
604 - pm2 plus xx yy now generates a name with hostname-UID
605 ([fcf75e2c](https://github.com/Unitech/pm2/commit/fcf75e2cc321791273f6afe86c07fd147c6e8414))
606 - #3757 --only='app1,app2'
607 ([bea98330](https://github.com/Unitech/pm2/commit/bea983306c4736d3a2b1090f2708b7b29c44ed03))
608 - pm2 plus cli
609 ([1da6edde](https://github.com/Unitech/pm2/commit/1da6edde80e3029d99084992ec1a4ada7b2cc279))
610 - reload all apps after connection to pm2 plus
611 ([35a1ed2a](https://github.com/Unitech/pm2/commit/35a1ed2a1328a859a7797ec8e22024d171599d86))
612 - ask to install module after connection with KM
613 ([68e87b39](https://github.com/Unitech/pm2/commit/68e87b39ae2b57e9fbb0b0abde68112c839f05ee))
614 - with pm2 plus command ask to install modules
615 ([28c61716](https://github.com/Unitech/pm2/commit/28c61716ee5e8f2402205e4b06ed7ee0a942a3cc))
616
617
618
619
620## Test
621 - test with development packages
622 ([d361c840](https://github.com/Unitech/pm2/commit/d361c8405db47969bd68c7b1058a54f38e8e0e52))
623
624
625
626
627## Chore
628 - clean old snapshot method
629 ([d064750b](https://github.com/Unitech/pm2/commit/d064750be0d437945efdcd6a5ce4e56547b1bce6))
630 - update version to 3.0.1
631 ([efbcb021](https://github.com/Unitech/pm2/commit/efbcb02180ae38dd930e43282113dbcb24288eab))
632 - bump to 3.0.1
633 ([fb8357e3](https://github.com/Unitech/pm2/commit/fb8357e32f9f015e5b6e7ed8ef150f59de382c6d))
634 - new ascii logo + refactor pm2 plus command
635 ([8692a1da](https://github.com/Unitech/pm2/commit/8692a1daf7b4b7dfb8a4d6ec3363ac0cc62203a8))
636 - change motd.update + alias register to pm2 plus
637 ([cdc4a767](https://github.com/Unitech/pm2/commit/cdc4a767d5f1ff5873d0466b471daa3006608604))
638 - btn
639 ([319fa0dc](https://github.com/Unitech/pm2/commit/319fa0dcbea331a88a9888c207368e52665309ce))
640 - README button
641 ([1c6fb68c](https://github.com/Unitech/pm2/commit/1c6fb68c758d76cf81e53c43c2423ecd742265e5))
642 - remove duplicate configs in .editorconfig
643 ([86ad52b8](https://github.com/Unitech/pm2/commit/86ad52b837e23a7ec92705d21a152394c244571f))
644
645
646
647
648## Branchs merged
649 - Merge branch 'development' into uid-gen
650 ([5324c878](https://github.com/Unitech/pm2/commit/5324c878fd0d37e068bc25c8e37f19f73bfebf30))
651 - Merge branch 'master' into development
652 ([7d04f638](https://github.com/Unitech/pm2/commit/7d04f63835845e92d32d6ad7ffab166a2954302f))
653
654
655
656
657## Pull requests merged
658 - Merge pull request #3811 from Unitech/memory_inspector
659 ([62018044](https://github.com/Unitech/pm2/commit/62018044d7a1ef7fd0b37fe3082da4bf05989de0))
660 - Merge pull request #3801 from vkotovv/grammar-fixes
661 ([9bb37a66](https://github.com/Unitech/pm2/commit/9bb37a662a91369caaa5a1a43751541e41970a51))
662 - Merge pull request #3799 from Unitech/refactor-agent
663 ([bcc4fea8](https://github.com/Unitech/pm2/commit/bcc4fea80885ce941e11b17936aab6582660fc7f))
664 - Merge pull request #3787 from Unitech/multi-only
665 ([ea5d74a8](https://github.com/Unitech/pm2/commit/ea5d74a87f6911b238634419665c716bc877be10))
666 - Merge pull request #3788 from Unitech/uid-gen
667 ([f70444f3](https://github.com/Unitech/pm2/commit/f70444f39b7cc8fe05faf57dac1b46fc15a2053c))
668 - Merge pull request #3784 from Unitech/pm2-plus-cli
669 ([e8c13c37](https://github.com/Unitech/pm2/commit/e8c13c374dfeabf42f75af50b838adb7ac4a50aa))
670 - Merge pull request #3780 from Unitech/plus_modules
671 ([466d2701](https://github.com/Unitech/pm2/commit/466d2701ca48d0c4b8466d6867135e43b22deeb5))
672 - Merge pull request #3768 from Unitech/spaces
673 ([0477354b](https://github.com/Unitech/pm2/commit/0477354b502aef612012e833bd47ce1940da1a0b))
674 - Merge pull request #3771 from chinesedfan/patch-2
675 ([8de987a6](https://github.com/Unitech/pm2/commit/8de987a604679774ec39e7d5a1a905556524c53d))
676 - Merge pull request #3762 from shaharmor/issue-3441
677 ([429e455d](https://github.com/Unitech/pm2/commit/429e455db96d2a56448a11b7602333324c9bf433))
678 - Merge pull request #3761 from PeterDaveHello/fix-sh-indent-style
679 ([24cddc25](https://github.com/Unitech/pm2/commit/24cddc257734beebb33ee5abac5a4107a5d86093))
680 - Merge pull request #3737 from morugu/add-node-env-output
681 ([6628f163](https://github.com/Unitech/pm2/commit/6628f1637497771bbc5c4f0ba0e9423c63660e0e))
682 - Merge pull request #3743 from vivex/master
683 ([06872c25](https://github.com/Unitech/pm2/commit/06872c2520f73bcabb6198a96c4dafb46706c9e9))
684 - Merge pull request #3748 from JimiC/support_nvm4win
685 ([2dac235b](https://github.com/Unitech/pm2/commit/2dac235bc8956d170fee2341517739d3781048d7))
686 - Merge pull request #3752 from PeterDaveHello/upstart.tpl
687 ([d4e66e3a](https://github.com/Unitech/pm2/commit/d4e66e3a9d954ab5c15d5bc35910cdfb71ba8321))
688 - Merge pull request #3753 from PeterDaveHello/fix-editorconfig
689 ([d1478680](https://github.com/Unitech/pm2/commit/d1478680325822c206afbcb197a9a732318f6d64))
690 - Merge pull request #3754 from PeterDaveHello/remove-trailing-space
691 ([b660f03e](https://github.com/Unitech/pm2/commit/b660f03eba71bb80a1a3d313be4525160727921f))
692
693
694
695
696
697
698## 3.0.0 ( Wed Jun 20 2018 11:06:21 GMT+0200 (CEST) )
699
700
701## Breaking changes
702 - merge_logs is now activated by default if not in cluster mode. Logs will not be suffixed by the pm_id if only one app is started
703 ([ae02adf6](https://github.com/Unitech/pm2/commit/ae02adf63f70ceb3bf101be968996ca68d9ce277))
704 - Drop support for node 0.12
705 - Drop gracefulReload command
706 - Remove Interactor from PM2 source code
707 - Replace pmx with [pm2-io-apm](https://github.com/keymetrics/pm2-io-apm)
708
709
710## Bug Fixes
711 - return the configuration and allow custom conf to override default values
712 ([37dc7de1](https://github.com/Unitech/pm2/commit/37dc7de11e930aa4fce6a485e892f11ee714acd6))
713 - add use strict for node 4 compatibility
714 ([ba2ee3b1](https://github.com/Unitech/pm2/commit/ba2ee3b1ea9aa5fa665e706b3d49a205eac44d53))
715 - #3605 fix parameters definition, don't use camelcase for properties
716 ([c8616276](https://github.com/Unitech/pm2/commit/c8616276e4e08b4d90a742e219372e775bb81098))
717 - #3695 change version check method in order to make it work with alpha/beta versions
718 ([052d6c55](https://github.com/Unitech/pm2/commit/052d6c55df0e941e1dd11430bbcbcaa34061a06e))
719 - deprecated warning on isbinaryfile
720 ([db09275f](https://github.com/Unitech/pm2/commit/db09275f8e353e257c89e12fed754236b15cee74))
721 - #3688 test adaptation + pm2 serve --port option
722 ([f0249684](https://github.com/Unitech/pm2/commit/f0249684bcbfdb75749a516f447c8e8d32020709))
723 - startup script issue 18.04 #3645
724 ([ff1a7f31](https://github.com/Unitech/pm2/commit/ff1a7f315bfee38eb9fd9cdd63efcc0d971585f8))
725 - that this - uncache node_modules
726 ([294038d7](https://github.com/Unitech/pm2/commit/294038d76272a915e3addc67d3694717a9f7d704))
727 - verify default conf variable via package.json on public module
728 ([157b106d](https://github.com/Unitech/pm2/commit/157b106df78af1d28d37bbea069b926de4dceca5))
729 - bug because of const
730 ([56f05a90](https://github.com/Unitech/pm2/commit/56f05a900b03fb0c8dd635aede666c7d2f213271))
731 - do not run two pm2 para cmds
732 ([3274132b](https://github.com/Unitech/pm2/commit/3274132b866ba5c93d5786e755acbada922f5f1e))
733 - version
734 ([3ec178e5](https://github.com/Unitech/pm2/commit/3ec178e577e79730aae02c913301cd905ea8ce52))
735 - re-enable agent tests
736 ([e6febcd7](https://github.com/Unitech/pm2/commit/e6febcd70dd0f1e68b74df8563d3046ee3b32b89))
737 - test/display summary
738 ([b075e6d0](https://github.com/Unitech/pm2/commit/b075e6d09b09ff371adf045dc5079bb8ef82f1cf))
739 - skip interactor tests
740 ([36c4d6bc](https://github.com/Unitech/pm2/commit/36c4d6bca7445b46afc1236dc8ab4b8bf921148b))
741 - remove unused tests
742 ([234c6314](https://github.com/Unitech/pm2/commit/234c63143e723a508796bc1d323c7241979bf4c2))
743 - add missing libraries in travis
744 ([88fbb845](https://github.com/Unitech/pm2/commit/88fbb84597cee7029ce33f5b7e20e45f5a815b4b))
745 - remove unused variable when trying to use tracing
746 ([3aeeba02](https://github.com/Unitech/pm2/commit/3aeeba02f628bf4f19e8d5b93657fd94a6ef0ec7))
747 - remove useless tests from .sh
748 ([e0be81c8](https://github.com/Unitech/pm2/commit/e0be81c86c7defb5e7a271edd5cc37f960c6aa69))
749 - conflict
750 ([e13f39c9](https://github.com/Unitech/pm2/commit/e13f39c90b6a5e803c59c5424332520564703f5c))
751 - fix bug with interpreter args
752 ([b26efa0d](https://github.com/Unitech/pm2/commit/b26efa0d4cd72cf04762df7b7d2eaddc4f4117d2))
753 - improve error message if action has failed
754 ([d9f44f17](https://github.com/Unitech/pm2/commit/d9f44f170f115c2d6dfb6a7fe71dc31bd7fb66fb))
755 - use polyfill module for copySync with node 4.x
756 ([bc07f43b](https://github.com/Unitech/pm2/commit/bc07f43b115066f6077606df8f59379777f2a917))
757 - improve error message if action has failed
758 ([dacc6542](https://github.com/Unitech/pm2/commit/dacc654207cbe494af0d12a3f9f27c3b16541802))
759 - solve empty list when no process and try to update pm2
760 ([89511846](https://github.com/Unitech/pm2/commit/8951184688c720ded5b4b46bd5b393c3793f9b03))
761 - #3485 fix issue when there is empty dump file
762 ([f2523f6a](https://github.com/Unitech/pm2/commit/f2523f6a6b9d8b61ba6ace7b89a0353bee76360b))
763 - #3456 use homedir() instead of process.env.HOME, make module installation work on windows
764 ([1e001732](https://github.com/Unitech/pm2/commit/1e0017325fc8cf658263fb4e02c7bf8912f422b3))
765
766
767
768
769## Features
770 - add support for openbsd rc.d init scripts
771 ([fdeb0c32](https://github.com/Unitech/pm2/commit/fdeb0c327afd91b113b214c4c4de187848f9f1cb))
772 - add kill_retry_time argument
773 ([b2cc0031](https://github.com/Unitech/pm2/commit/b2cc003114b44f1a9a31876ee4a2f4cb91e210b3))
774
775 - **bin/pm2**
776 - improve usage
777 ([2c310084](https://github.com/Unitech/pm2/commit/2c310084453dd7b1546957e59b1fc7ef964d425b))
778
779
780
781
782## Refactor
783 - use @pm2/js-api for login/register on pm2.io via CLI
784 ([cb6521ac](https://github.com/Unitech/pm2/commit/cb6521ac32f4737c42fc97fef972960bfe16c829))
785 - keymetrics examples
786 ([109b331d](https://github.com/Unitech/pm2/commit/109b331ddf37e061d1890ef952f4cd167ce53f64))
787 - faster cli with less require
788 ([ee5e6a06](https://github.com/Unitech/pm2/commit/ee5e6a06cbf93f2d1fa7fa022d6bdcad55a39695))
789 - replace fs-extra with node calls
790 ([4576b4c9](https://github.com/Unitech/pm2/commit/4576b4c97bc685c9d774018d6b29c918abd7cb8d))
791 - centralize SECRET/PUBLIC/MACHINE_NAME + change some wordings
792 ([d0a2a30e](https://github.com/Unitech/pm2/commit/d0a2a30e4110496b178199fb33e026d6402dd00d))
793 - remove test deported to keymetrics-agent
794 ([299a52a2](https://github.com/Unitech/pm2/commit/299a52a253d70edcde23cbd7e0c201d492984df4))
795 - parallel test v1
796 ([08612de5](https://github.com/Unitech/pm2/commit/08612de5b7893a004ae33ed77fcb2ee3ff7b2251))
797 - e2e test rewrite
798 ([2b9ffd4e](https://github.com/Unitech/pm2/commit/2b9ffd4eb493f1ff32c979e3811f4f1fedfae97d))
799 - drop gracefullreload
800 ([bb57c76d](https://github.com/Unitech/pm2/commit/bb57c76d4191343925013d4353299092d80732c9))
801 - add node 4.x support
802 ([d322dd00](https://github.com/Unitech/pm2/commit/d322dd00de0f527224c027b4fec5e86f12fd69ed))
803 - create alias method instead of modify prototype
804 ([6d8f0dfa](https://github.com/Unitech/pm2/commit/6d8f0dfae8106deb2fee0a7ae15b6ca9802a066d))
805 - change safety var to const
806 ([047aa494](https://github.com/Unitech/pm2/commit/047aa494d5c4dd4342915766b54d673db0d5cdf1))
807 - drop some 0.x patch
808 ([0cab8880](https://github.com/Unitech/pm2/commit/0cab8880ffa362cf27ab7d7b6a64d6b478dce7cd))
809 - remove prototype from API and create method
810 ([9552bd61](https://github.com/Unitech/pm2/commit/9552bd61b72692beb620a91765ad440cdf6abefe))
811 - transform API into class
812 ([e3831f95](https://github.com/Unitech/pm2/commit/e3831f95c8d71f98e8840da37f7e883727eccd59))
813 - name tests well
814 ([c3ccc651](https://github.com/Unitech/pm2/commit/c3ccc651d09ed7291090f516637b75bda99ff71c))
815 - refactor e2e one line parallel
816 ([93802711](https://github.com/Unitech/pm2/commit/938027117cdb2f300ee772ab27f008cbe22a4b19))
817 - e2e rename
818 ([8a7db95a](https://github.com/Unitech/pm2/commit/8a7db95aabc8437f292af0316cec81ab80ec41f5))
819 - change params
820 ([282186f2](https://github.com/Unitech/pm2/commit/282186f24b19b010999f7c7c49750935ef19c190))
821 - parallelize bash test
822 ([d4b4375e](https://github.com/Unitech/pm2/commit/d4b4375e16fe7ac463b252702da662d3a21bf8b4))
823
824
825
826
827## Test
828 - adapt test to new api
829 ([7a275e27](https://github.com/Unitech/pm2/commit/7a275e279ea01b1239e9dd8b9cf8e088e407b96d))
830 - refactor before/after
831 ([b85ca3ca](https://github.com/Unitech/pm2/commit/b85ca3caa3c68e18f7ce6954cc85e90a9d33efef))
832 - 3 concurrent jobs
833 ([472aba34](https://github.com/Unitech/pm2/commit/472aba3499ff2d9d0eb834e819410026b1a44503))
834 - move test
835 ([9c973324](https://github.com/Unitech/pm2/commit/9c9733246dbe6afff1b488bc3ba3b6fea3877ea5))
836 - move test
837 ([952b7631](https://github.com/Unitech/pm2/commit/952b7631d19e1074ea73cc7a67bbaefe20950603))
838 - fix test with km_link
839 ([23fd8ecf](https://github.com/Unitech/pm2/commit/23fd8ecfea9b2bf61359f62a8e6e1a582c3b0d6e))
840
841
842
843
844## Chore
845 - shorten ecosystem file
846 ([992a0452](https://github.com/Unitech/pm2/commit/992a045227aed559e708ac4e6bb3f54beabe48e0))
847 - change motd wording
848 ([aa183ba1](https://github.com/Unitech/pm2/commit/aa183ba19d88777d82619aa40499c2661d67879e))
849 - merge master in development
850 ([0e4453d9](https://github.com/Unitech/pm2/commit/0e4453d9cc789aa08ee778ff400572337e90d2e3))
851 - keymetrics -> pm2
852 ([2c8170c2](https://github.com/Unitech/pm2/commit/2c8170c25e231eb8827bb0944b76c2f4b041d84e))
853 - upgrade all modules + keymetrics-agent -> pm2/agent + increase version enabling v8-compile-cache
854 ([53ca18c1](https://github.com/Unitech/pm2/commit/53ca18c12868ab177b60a4edff2ccaa8127e301f))
855 - pm2.io -> @pm2/io
856 ([ae098962](https://github.com/Unitech/pm2/commit/ae098962df35eee7f482dc0a514fd29a02a5f4ad))
857 - right names as pm2 maintainers
858 ([e8cd7131](https://github.com/Unitech/pm2/commit/e8cd7131a6b9c9d497a2079bcbfc03770a753a06))
859 - add changelog generation into contributing.md
860 ([d77bfbc3](https://github.com/Unitech/pm2/commit/d77bfbc3c8929851ee19ea604b2a6481d03771e3))
861 - cache node_modules
862 ([81627e94](https://github.com/Unitech/pm2/commit/81627e94c72efa1f4d726e20bbf67f0bbd5c116f))
863 - clone last 5 commits
864 ([dad38ed1](https://github.com/Unitech/pm2/commit/dad38ed1bae849147f66e44186cd71c4b9cb022d))
865 - delete old stagnating pmx inside test
866 ([36834c2c](https://github.com/Unitech/pm2/commit/36834c2c00d496e04c38abaca30202eb650015c4))
867 - pmx -> pm2.io
868 ([adcbebc3](https://github.com/Unitech/pm2/commit/adcbebc3f6419cd97c5ea99f3c3a6789585bda66))
869 - updgrade pmx-2
870 ([eeeb2988](https://github.com/Unitech/pm2/commit/eeeb2988f8886e405aea107db3b888fc1fc929f8))
871 - disable legacy test
872 ([13723bd9](https://github.com/Unitech/pm2/commit/13723bd938d0e6fb1cbf35f15eabe91c52d87b58))
873 - remove test for pmx alert system
874 ([c43414a6](https://github.com/Unitech/pm2/commit/c43414a63438d724b8099eb531ec72bab23b8ca2))
875 - sync from master
876 ([3424ee27](https://github.com/Unitech/pm2/commit/3424ee27870feaf62fdf4509cce9015f8b1a8a2e))
877 - add unique id for each process
878 ([85a5ee0f](https://github.com/Unitech/pm2/commit/85a5ee0f1fd16da9635fb4b16ddcd8d53aca8224))
879 - use npm install for CI as yarn has issue with npm
880 ([52902186](https://github.com/Unitech/pm2/commit/5290218626af815f6cae8173bc78d21881a4dda8))
881 - remove unused dependency
882 ([830fc15f](https://github.com/Unitech/pm2/commit/830fc15fad1aee95e65b2681482b03369f1f97d7))
883 - upgrade PM2 to 3.0
884 ([4bc2eb4c](https://github.com/Unitech/pm2/commit/4bc2eb4c9a8179b9ae38438e98ce7650a91b64db))
885 - remove unused console.log
886 ([33db5084](https://github.com/Unitech/pm2/commit/33db5084814ae7940c90b7f933f9514d28008b78))
887 - wording on error message
888 ([c251c8c9](https://github.com/Unitech/pm2/commit/c251c8c97e6f18aae584cac6b7f3c83cf4f2de9c))
889 - revert PR #3496
890 ([aae1d55e](https://github.com/Unitech/pm2/commit/aae1d55e410c4dcfbbca83eaabbdf1a65d55f3aa))
891 - fix issue with snapshot command + remove command forceGc
892 ([97fd1010](https://github.com/Unitech/pm2/commit/97fd1010d005e59f2411042fa95891f9717fa8b7))
893 - wording on error message
894 ([5f78ecbf](https://github.com/Unitech/pm2/commit/5f78ecbf90f9f46a7feb2a169968e86b0ecac91e))
895 - drop 0.12 test on travis
896 ([beb6e487](https://github.com/Unitech/pm2/commit/beb6e48787c39c66569141d0fd8d090736114d23))
897 - downgrade promptly
898 ([074a7a40](https://github.com/Unitech/pm2/commit/074a7a407a31b4d88442f5834d253d62f4e543b8))
899 - remove coffee and livescript dependencies
900 ([13d6565c](https://github.com/Unitech/pm2/commit/13d6565c72e3596d05f87bfc8be15d3ee45fb279))
901 - upgrade module version and engine version
902 ([84796956](https://github.com/Unitech/pm2/commit/84796956347ca638750fe89cb5545e2a90a0f2c2))
903
904
905
906
907## Branchs merged
908 - Merge branch 'development' into chore/dev-cache-node-modules
909 ([146c4e11](https://github.com/Unitech/pm2/commit/146c4e113c88e8ade17c7558c8e14cf523a3b2d6))
910 - Merge branch 'development' of https://github.com/Unitech/pm2 into new-agent
911 ([3514e7fa](https://github.com/Unitech/pm2/commit/3514e7fac624bb83b4cc22651ebc05385f9c284d))
912 - Merge branch 'development' into master
913 ([f5668331](https://github.com/Unitech/pm2/commit/f5668331dbe7346304258317a3b84450f421ed03))
914 - Merge branch 'development' into new-usage-cli
915 ([4ae27694](https://github.com/Unitech/pm2/commit/4ae27694e34c4bc6ed389566d71fc5ec48b69652))
916 - Merge branch 'Eywek-improv/agent' into new-agent
917 ([3e259dd1](https://github.com/Unitech/pm2/commit/3e259dd1d6bb96ea41897c49f3a84557c00c7dad))
918 - Merge branch 'ecosystem-documentation' of github.com:rmonnier/pm2 into ecosystem-documentation
919 ([98348955](https://github.com/Unitech/pm2/commit/98348955a6eb3a9cd524b991bd1dd6ed03d2c857))
920 - Merge branch 'development' into ecosystem-documentation
921 ([40157784](https://github.com/Unitech/pm2/commit/40157784a63bcb0e744d4ed56f6c687e28379fdd))
922 - Merge branch 'inspect_mode' of github.com:Unitech/pm2 into inspect_mode
923 ([7e1494c7](https://github.com/Unitech/pm2/commit/7e1494c7f7971aaf1f4d00d2ee691c3c41775001))
924 - Merge branch 'development' of github.com:Unitech/pm2 into development
925 ([48f81a8b](https://github.com/Unitech/pm2/commit/48f81a8b2f6f0db39edd86083fb369b74845c387))
926 - Merge branch 'development' into master
927 ([47e54109](https://github.com/Unitech/pm2/commit/47e5410987ab3d824a34c062d70c24ab686e57db))
928 - Merge branch 'development' into module_install_windows
929 ([7b82fb91](https://github.com/Unitech/pm2/commit/7b82fb916ed453c1c263bae43c962f6a5294d810))
930 - Merge branch 'development' into module_install_windows
931 ([80b0495f](https://github.com/Unitech/pm2/commit/80b0495f63d1224b850af4b14cdeb055e3fef50b))
932
933
934
935
936## Pull requests merged
937 - Merge pull request #3726 from soyuka/fix-list
938 ([0255c5a6](https://github.com/Unitech/pm2/commit/0255c5a6ab1b8a8f609d2183d998695b8c42838d))
939 - Merge pull request #3725 from soyuka/fix-list
940 ([a39eb4f8](https://github.com/Unitech/pm2/commit/a39eb4f806e87565f53758a19f0ee289b6489b67))
941 - Merge pull request #3718 from AaronM04/openbsd-init-script
942 ([85458261](https://github.com/Unitech/pm2/commit/85458261d2673c609cb252d64ad4dfbaa466d848))
943 - Merge pull request #3721 from Unitech/io_conf
944 ([70ec1f81](https://github.com/Unitech/pm2/commit/70ec1f81eae089f75e82723fde7b0b3926d0a9bc))
945 - Merge pull request #3716 from Unitech/io_conf
946 ([0bc000b9](https://github.com/Unitech/pm2/commit/0bc000b9aae7dd37b456bc2d4fbc9eb4a9f047ef))
947 - Merge pull request #3714 from Unitech/definition
948 ([d8cff0de](https://github.com/Unitech/pm2/commit/d8cff0dec5160a620d1512ff56726c073368d1a4))
949 - Merge pull request #3700 from Unitech/report_error
950 ([4b2cad40](https://github.com/Unitech/pm2/commit/4b2cad407b76994e978074a2a3825fe70656304d))
951 - Merge pull request #3670 from Unitech/changelog
952 ([4bcbcce1](https://github.com/Unitech/pm2/commit/4bcbcce16ced596f6ca2bab2b77d608a174a7c1a))
953 - Merge pull request #3662 from DanielRuf/chore/dev-cache-node-modules
954 ([540590ee](https://github.com/Unitech/pm2/commit/540590ee056b44eed3b688a7b0b16ca78ec82cd9))
955 - Merge pull request #3663 from DanielRuf/chore/dev-clone-last-5-commits
956 ([bdf95fc9](https://github.com/Unitech/pm2/commit/bdf95fc997f9ab2995b23668f25f11b6e98b5c47))
957 - Merge pull request #3584 from ngtmuzi/development
958 ([33984b64](https://github.com/Unitech/pm2/commit/33984b64a2969ca4a3a5913f0f7da0242b6c5ec1))
959 - Merge pull request #3500 from Unitech/test-parallel
960 ([da56c7af](https://github.com/Unitech/pm2/commit/da56c7aff18d3a38b3ad068b22cd75b290bac9d0))
961 - Merge pull request #3539 from KimSeongIl/master
962 ([1325704d](https://github.com/Unitech/pm2/commit/1325704d95d324e56b0ebc86aed8137e0d0aa450))
963 - Merge pull request #3556 from N-Nagorny/logs-smart-app-name-cutting
964 ([bfddf4fd](https://github.com/Unitech/pm2/commit/bfddf4fdef5ec293119d850cc2532ac5d6490ae3))
965 - Merge pull request #3553 from Unitech/fix_tracing_not_working
966 ([9d51fe08](https://github.com/Unitech/pm2/commit/9d51fe0819182339f3a6a4aee7ea603ea3f4dd76))
967 - Merge pull request #3549 from Eywek/new-agent
968 ([2f04027b](https://github.com/Unitech/pm2/commit/2f04027b536094d192b399677b3a113102f06b8e))
969 - Merge pull request #3548 from rmonnier/start-ecosystem-default
970 ([55412f26](https://github.com/Unitech/pm2/commit/55412f263250395de0085144932cfe06b8c7180d))
971 - Merge pull request #3546 from soyuka/improve-monitor-perf
972 ([e4e29233](https://github.com/Unitech/pm2/commit/e4e29233f99db36462a6e8f48eb8ebd3d2fd9fa5))
973 - Merge pull request #3534 from rmonnier/new-usage-cli
974 ([5dfba8a4](https://github.com/Unitech/pm2/commit/5dfba8a4491f0bb83f2879915f0c4b164be2552c))
975 - Merge pull request #3542 from rmonnier/default-start-ecosystem
976 ([c65595f4](https://github.com/Unitech/pm2/commit/c65595f4a70659e1e0d753e6c28a1fcedf45a91a))
977 - Merge pull request #3545 from rmonnier/default-ecosystem
978 ([b3718656](https://github.com/Unitech/pm2/commit/b3718656f630aa54880343d9742534a2a508daec))
979 - Merge pull request #3543 from rmonnier/ecosystem-documentation
980 ([a60580a1](https://github.com/Unitech/pm2/commit/a60580a12b4a0066c8df6620317fbc8bf599b0b6))
981 - Merge pull request #3541 from soyuka/development
982 ([67e7a015](https://github.com/Unitech/pm2/commit/67e7a015cabaa7b08206a3b1bf9c0399af88f76b))
983 - Merge pull request #3511 from Unitech/inspect_mode
984 ([75fb87f8](https://github.com/Unitech/pm2/commit/75fb87f8a1c46a6db8e974b421e857175e69b535))
985 - Merge pull request #3517 from Unitech/polyfill_fs_copy_node4
986 ([524f5494](https://github.com/Unitech/pm2/commit/524f54948de5080632d43bb512038d7bd7271619))
987 - Merge pull request #3516 from Unitech/drop_unused_feature
988 ([9436f11a](https://github.com/Unitech/pm2/commit/9436f11aeecfc07e77aa9d6b108df4478b43402e))
989 - Merge pull request #3510 from Unitech/dump_refacto
990 ([674e4469](https://github.com/Unitech/pm2/commit/674e4469554e6a765bb3d57a3c083e6ab53b20cc))
991 - Merge pull request #3501 from Unitech/refactor_api
992 ([9f2c4ca4](https://github.com/Unitech/pm2/commit/9f2c4ca4c9eadf6c7730e3889c72e908cd2d8f5d))
993 - Merge pull request #3496 from rmonnier/master
994 ([829cc303](https://github.com/Unitech/pm2/commit/829cc3032b2d61e20f7a2e7d1d819c0ddc0845e8))
995 - Merge pull request #3484 from Unitech/pull_by_name
996 ([24d29404](https://github.com/Unitech/pm2/commit/24d294049008a0d01b2bc407b9b2b880d5843fbd))
997 - Merge pull request #3482 from Unitech/mjs_support
998 ([ebe7b048](https://github.com/Unitech/pm2/commit/ebe7b0487218557858aaa98527360eca1776b140))
999 - Merge pull request #3495 from Unitech/module_install_windows
1000 ([e9c625d3](https://github.com/Unitech/pm2/commit/e9c625d3088c71eef4237ecd866b806957c61815))
1001 - Merge pull request #3507 from cheapsteak/patch-1
1002 ([a49287d6](https://github.com/Unitech/pm2/commit/a49287d6a1d22b39270e2d05dee2a17c0ed55797))
1003
1004
1005
1006
1007## 2.10.4 ( Thu May 17 2018 14:32:40 GMT+0200 (CEST) )
1008
1009
1010## Bug Fixes
1011 - #3645 throttle startup
1012 ([d529f675](https://github.com/Unitech/pm2/commit/d529f675d0240777cba95442ba35205c370cdb43))
1013
1014
1015
1016
1017## Chore
1018 - update issue and PR templates to use comments to hide instructions in the frontend
1019 ([9e0180ed](https://github.com/Unitech/pm2/commit/9e0180eddab071916144ad7008817bd6aef1c8ce))
1020
1021
1022
1023
1024## Pull requests merged
1025 - Merge pull request #3664 from DanielRuf/chore/update-issue-pr-templates
1026 ([067446f2](https://github.com/Unitech/pm2/commit/067446f2133ba7f761b0ad3c9f3692b167affd8b))
1027
1028
1029## v2.10.3 ( Fri Apr 27 2018 11:42:16 GMT+0200 (CEST) )
1030
1031
1032### Chore
1033 - upgrade for node 10
1034 ([cf7630e](https://github.com/Unitech/pm2/commit/cf7630e259742bdff8257cff4dbed2732bf24f9c))
1035
1036## v2.10.2 ( Thu Mar 29 2018 13:06:11 GMT+0200 (CEST) )
1037
1038
1039## Bug Fixes
1040 - reinforce pm2-runtime auto exit strategy #3567 #3206
1041 ([e09cdbab](https://github.com/Unitech/pm2/commit/e09cdbabd0b479acda3cb24154bbaa071aa35407))
1042
1043
1044
1045
1046## Pull requests merged
1047 - Merge pull request #3569 from Unitech/pm2-runtime-hot-fix
1048 ([473a2d6d](https://github.com/Unitech/pm2/commit/473a2d6d3867c617e4a41571d1780618c5025b87))
1049 - Merge pull request #3547 from Unitech/revert-3532-logs-smart-app-name-cutting
1050 ([438e3030](https://github.com/Unitech/pm2/commit/438e303013e82ecc199cb68d018144cde8a0b2e6))
1051 - Merge pull request #3532 from N-Nagorny/logs-smart-app-name-cutting
1052 ([067c18e6](https://github.com/Unitech/pm2/commit/067c18e601aca4fac10101a7c23cc4c3525ad776))
1053
1054
1055
1056## v2.10.1 ( Mon Feb 26 2018 11:38:18 GMT+0100 (CET) )
1057
1058
1059## Bug Fixes
1060 - restore --raw option #3476
1061 ([340011ca](https://github.com/Unitech/pm2/commit/340011cace2b90c2a1ead8d86baba517f5570e15))
1062
1063
1064## v2.10.0 ( Mon Feb 19 2018 14:51:19 GMT+0100 (CET) )
1065
1066
1067### Bug Fixes
1068 - add livescript in default modules
1069 ([a315eeb6](https://github.com/Unitech/pm2/commit/a315eeb65f04b22643a903f0cb1c0f416615ad8b))
1070 - replace dash with underscore
1071 ([203df768](https://github.com/Unitech/pm2/commit/203df7688ca348967c00bc45289ae70fd2c4aaaa))
1072 - make sure not pm2 is running
1073 ([bd798fd7](https://github.com/Unitech/pm2/commit/bd798fd748665e935db4bb91f9d1d66952d9842a))
1074 - auto-exit edge case fix + pm2 no daemon mode + log in raw by default + less logs
1075 ([704ae518](https://github.com/Unitech/pm2/commit/704ae518f5d7df0a631349e518d81cef51249a58))
1076 - impact v8 flag in fork mode also
1077 ([41bf6ef7](https://github.com/Unitech/pm2/commit/41bf6ef7d3633180b4c1e90f36eb206d82fab2b1))
1078 - fixup! #2182 Get rid of annoying popups in Windows 10
1079 ([3a85b59d](https://github.com/Unitech/pm2/commit/3a85b59de4a76796ad0880368d8d085a7ba55d36))
1080
1081
1082
1083
1084### Hot Fixes
1085 - \#3420 ([673acf36](https://github.com/Unitech/pm2/commit/673acf36b4ca1fd65c5135a92d56081f76237a8b))
1086
1087
1088
1089
1090### Features
1091 - add dependencies section into ecosystem.json file.
1092 ([828a30d0](https://github.com/Unitech/pm2/commit/828a30d0ccc88b3f6e2b66d517ccf5f2394bd08b))
1093 - --deep-monitoring available from pm2-runtime
1094 ([99e62e3b](https://github.com/Unitech/pm2/commit/99e62e3bb808f071d6e4850c234b34f7de65b1c2))
1095 - add deep_metrics to deep_monitoring flag
1096 ([4d1bea5e](https://github.com/Unitech/pm2/commit/4d1bea5e0bbaab1f16f75d012bca25702cdff88e))
1097 - add flag to enable deep-monitoring
1098 ([c5418688](https://github.com/Unitech/pm2/commit/c541868837a1c4421394de5dd1029d2619b5ac82))
1099 - allow pm2 to install a set of module as one single command and add deep-monitoring.
1100 ([9dddc80d](https://github.com/Unitech/pm2/commit/9dddc80db5e496def44d4d36716b7de54e5171cf))
1101 - pm2 pid <app_name> command
1102 ([6687d499](https://github.com/Unitech/pm2/commit/6687d499415151bd62489fed5331f414576ec354))
1103 - allow pm2 to install and enable event-loop-inspector data collecting
1104 ([e6b0c474](https://github.com/Unitech/pm2/commit/e6b0c47443d3e6a839bf29057ef0a80ef135c47e))
1105 - ignore signal when running in --no-daemon
1106 ([b9c01c99](https://github.com/Unitech/pm2/commit/b9c01c99d54aba98ab790b8888500ac0f0af05c9))
1107 - upgrade pmx to git development branch
1108 ([21be05a0](https://github.com/Unitech/pm2/commit/21be05a07bd93eacaddedde3b647c16468937473))
1109 - allow pm2 to enable v8 data collecting from pmx
1110 ([aa180fa8](https://github.com/Unitech/pm2/commit/aa180fa8ab47f0c687d7c21854d005ad0ebf8475))
1111 - allow pm2 to install gc-stats
1112 ([15634168](https://github.com/Unitech/pm2/commit/15634168582e4c7b3c5f47a3f58a0fcf8b732a76))
1113 - feat add changelog generation support
1114 ([14f53fc0](https://github.com/Unitech/pm2/commit/14f53fc0c28be4084778785aeace3763ed0d827f))
1115
1116 - **pm2**
1117 - add pm2 init option to generate an ecosystem file
1118 ([5d56fac7](https://github.com/Unitech/pm2/commit/5d56fac7cc12590af29ee46c68ba32a82a2b813b))
1119 - add pm2 init option to generate an ecosystem file
1120 ([a38fd199](https://github.com/Unitech/pm2/commit/a38fd199b90d27a2405f8cabab0e4f6e45c69b08))
1121
1122
1123
1124
1125### Documentation
1126 - add documentation on new pm2 install command
1127 ([c90c453f](https://github.com/Unitech/pm2/commit/c90c453f85b07adb346bc55c2b685d689a2e96f7))
1128 - add sendDataToProcessId into typescript definitions
1129 ([4a2e8d2d](https://github.com/Unitech/pm2/commit/4a2e8d2d2c4b38fe0ff2377dfe32fce9a43c8044))
1130
1131
1132
1133
1134### Refactor
1135 - delete all "if" condition when installing new module, create an object with all modules and a generic installation process
1136 ([1b92a9c4](https://github.com/Unitech/pm2/commit/1b92a9c4000734367e68d8dbd60d0901009f4c56))
1137 - deep pm2-runtime refactor #3408 #3257 #3266
1138 ([c13b2364](https://github.com/Unitech/pm2/commit/c13b23648269529a1f998d816be10f895665861e))
1139 - no more interactive spinner for connection to KM + change pm2 log format + remove some logs
1140 ([d1916f40](https://github.com/Unitech/pm2/commit/d1916f40962b2cc8a1866172eab7d5d89db093be))
1141
1142
1143
1144
1145### Chore
1146 - pmx to 1.6.3-rc2
1147 ([41815e0b](https://github.com/Unitech/pm2/commit/41815e0ba0298979f936b3d4badb196f8d9783d8))
1148 - switch pmx to development
1149 ([748019d1](https://github.com/Unitech/pm2/commit/748019d1ef0cf760b5e8de9d5b6af6fee300db02))
1150 - 2.10.0-beta
1151 ([0d2b7172](https://github.com/Unitech/pm2/commit/0d2b7172a093d0638deabb5f23383cc9eec5dda9))
1152 - upgrade pmx to 1.6.3-next
1153 ([5a1b4343](https://github.com/Unitech/pm2/commit/5a1b4343cc1e1f5018e21451a111340351706213))
1154 - upgrade pmx dep
1155 ([4bbeec3d](https://github.com/Unitech/pm2/commit/4bbeec3d170ba63af0c0ae0e2d07beec2ab49772))
1156 - switch to published pmx(@next)
1157 ([859d18fb](https://github.com/Unitech/pm2/commit/859d18fbc79e2a2760fe90e9c17e71209f8177ce))
1158 - remove --exit from mocha.opts
1159 ([36bf03e1](https://github.com/Unitech/pm2/commit/36bf03e1eed69a27e518151e2f7aa958b15db2fb))
1160 - remove unused files
1161 ([65d233e5](https://github.com/Unitech/pm2/commit/65d233e5b5290f65796b7cf3daa20706e0f3bee6))
1162
1163
1164
1165
1166### Branchs merged
1167 - Merge branch 'development' of ssh://github.com/deltasource/pm2 into hotfix/scoped-package-support
1168 ([94ea9d9e](https://github.com/Unitech/pm2/commit/94ea9d9eeff40faca8aa9f7edfc81aa29c08e740))
1169 - Merge branch 'master' into development
1170 ([46606903](https://github.com/Unitech/pm2/commit/46606903f25d0f4d0eee226da863e20e4b396dc9))
1171 - Merge branch 'development' of github.com:Unitech/pm2 into v8_option
1172 ([757562f7](https://github.com/Unitech/pm2/commit/757562f755b09124bbd006209ae38a096d692529))
1173 - Merge branch 'development' of github.com:Unitech/pm2 into gc-stats
1174 ([3ed1a747](https://github.com/Unitech/pm2/commit/3ed1a7471aec7d79f7d604447ac7445720bdaced))
1175 - Merge branch 'master' into development
1176 ([ee7651e4](https://github.com/Unitech/pm2/commit/ee7651e47e944c3c829933494c6cc765deb4bb29))
1177
1178
1179
1180
1181### Pull requests merged
1182 - Merge pull request #3466 from natcl/development
1183 ([c6d7ace8](https://github.com/Unitech/pm2/commit/c6d7ace802e667def75bc68344effa4856830fb4))
1184 - Merge pull request #3464 from andyfleming/patch-1
1185 ([dd9ebb60](https://github.com/Unitech/pm2/commit/dd9ebb6051708ee5a13cc68dbcb8238e41860bb9))
1186 - Merge pull request #3459 from rmonnier/master
1187 ([46948a98](https://github.com/Unitech/pm2/commit/46948a98e90c7864f7b8100db5c519fe9d37f11a))
1188 - Merge pull request #3458 from Unitech/pm2_install_command
1189 ([f3b35726](https://github.com/Unitech/pm2/commit/f3b35726895bd82b92813f308b787d68e9df1fa4))
1190 - Merge pull request #3453 from deltasource/hotfix/scoped-package-support
1191 ([974f9bf0](https://github.com/Unitech/pm2/commit/974f9bf0dc7a7aa7ff6860f8640da3593b802296))
1192 - Merge pull request #3448 from Unitech/deep_monitoring_flag
1193 ([331bc741](https://github.com/Unitech/pm2/commit/331bc741d7285094738a91cd816bc9755cc76605))
1194 - Merge pull request #3447 from Unitech/deep-monitoring
1195 ([719d328e](https://github.com/Unitech/pm2/commit/719d328e8d14871b34fd33df54fd80f4f8e7825f))
1196 - Merge pull request #3443 from Unitech/event-loop-inspector
1197 ([77a35274](https://github.com/Unitech/pm2/commit/77a3527407f3d090c7a5fa0bedaf943a7536b5eb))
1198 - Merge pull request #3442 from Unitech/event-loop-inspector
1199 ([dad98e6e](https://github.com/Unitech/pm2/commit/dad98e6e0738983717fee155ff0f6519955ffc1b))
1200 - Merge pull request #3424 from Unitech/sendDataToProcessId_def
1201 ([95e85eef](https://github.com/Unitech/pm2/commit/95e85eef84510dddfb0c6b13f0ada38a7dd66cae))
1202 - Merge pull request #3438 from Unitech/v8_option
1203 ([e46b15dc](https://github.com/Unitech/pm2/commit/e46b15dc32c18e8b24f66da0c79cc06f91cf11b5))
1204 - Merge pull request #3437 from Unitech/gc-stats
1205 ([1a6771aa](https://github.com/Unitech/pm2/commit/1a6771aa361bb5718bafd6e33e616725f9c0d328))
1206 - Merge pull request #3400 from toddwong/windowsHide2
1207 ([f65e8794](https://github.com/Unitech/pm2/commit/f65e8794df6e67f4ff60dfbec7c05a37721cb6f9))
1208 - Merge pull request #3421 from Unitech/generate_changelog
1209 ([b0690618](https://github.com/Unitech/pm2/commit/b0690618d940c11e28eeb5115c060bf363c7b62b))
1210 - Merge pull request #3419 from Rohja/fix-build-number-deb-rpm
1211 ([b4343de2](https://github.com/Unitech/pm2/commit/b4343de2703fce03f3cf48cc303b12bc6b69b743))
1212
1213
1214
1215
1216## 2.9.2
1217
1218- #3364 30% faster CLI via v8-compile-cache
1219
1220- add process._getActiveRequests() and process._getActiveHandles() custom metrics
1221- #3402 #3360 fix bad username
1222- #3413 check dependencies before launching tests
1223- #3295 add sorting feature for process list (pm2 ls --sort <field_name:order>)
1224- #3404 if no gid specified - set gid to uid
1225- #3287 add typing for env
1226- #3374 separate stdout and stderr for pm2-docker/pm2-runtime
1227- #3366 improve building of rpm and deb packages
1228- #3375 sendLineToStdin/sendDataToProcessId fix
1229- #3365 fix report command for windows
1230- #3367 Display an error if the process is not found when running 'pm2 logs <process-name>'
1231- #3256 TypeError: Cannot read property 'destroy' of undefined
1232- User: append SUDO_USER if no uid has been set and SUDO_USER present
1233- User: check permission of agent
1234- KM: send outliers
1235- KM: infinite retry for km connection
1236
1237## 2.9.1
1238
1239- #3356 hot fix on startup system
1240
1241## 2.9.0
1242
1243- #3278 --silent -s now does not print welcome message
1244- #3345 #2871 #3233 pm2 -v will not spawn daemon anymore
1245- #3341 update moment dependency
1246- #3314 pm2 install <MODULE> --safe will now monitor new installation of module and will
1247 fallback to previous version if the module is failing (restart, fail on npm install)
1248- #3314 module folder structure refactoring to keep independent dependencies for each modules
1249- #3324 remove yarn installation of modules
1250- #3273 pm2 --mini-list now print the right pid file
1251- #3206 add flag to auto turn off auto exit with pm2-docker
1252- #3036 Fix applying env PM2_CONCURRENT_ACTIONS correctly
1253- #3346 do not chmod systemd script (was failing systemd script on orange pi)
1254- #3347 Add --wait-ip option to override systemd initialization to wait for internet full connectivity
1255- #3348 alias pm2-docker to pm2-runtime
1256- #3350 Override HOME and USER when setting --uid to start module or application
1257- #3351 alias pm2 ps to pm2 ls (docker style)
1258
1259## 2.8.0
1260
1261- #2070 Fix sendDataToProcessId not working (@h091237557)
1262- #2182 Add windowHide options in cluster mode (@soyuka)
1263- #3206 By default in docker, pm2 will auto exit when no process are online (@dguo)
1264- #3225 fix --lines accepting invalid values (@vmarchaud)
1265- #3036 fix when PM2_CONCURRENT_ACTIONS was overriden everytime on node > 4 (@danez)
1266- Add node 9 tests on CI (@Unitech)
1267- Add pm2 unlink command (eq to pm2 link delete) (@Unitech)
1268- Fix interactor to support custom endpoints (@vmarchaud)
1269- Allow custom PM2_HOME for docker (@lucidNTR)
1270- Support MJS module (@vpotseluyko)
1271- Allow custom service name for startup (@danez)
1272- Update PMX to 1.5 (@unitech)
1273
1274## 2.7.2
1275
1276- #3200 Associate .tsx files with ts-node (@dguo)
1277- #3202 Add first draft of typescript definitions (@jportela)
1278- Allow to install http url via pm2 install (@unitech)
1279- #3204 Given --uid add all its gids automatically (@jmeit)
1280- #3184 bugfix: try/catch around userInfo to avoid crash (@vmarchaud)
1281- #3181 force upgrade to latest pm2-deploy
1282
1283## 2.7.1
1284
1285- #3117 Add required node env on cluster mode start instance (2m0nd)
1286- make profiler compatible with Node.js 8
1287
1288## 2.7.0
1289
1290- #3150 fix watchdog on agent
1291- #3001 dump-backup feature
1292- #3134 edge case error handling
1293- #3096 fix module installation
1294- #3085 honor every pm2 args on restart
1295- #3046 better error message if PM2 is misconfigured
1296- #3058 pm2-docker now does not write logs by default
1297- #3045 continue to broadcast on the bus system even if logs are disabled
1298- [Docker] Auto Exit when no application is running
1299- [Keymetrics] pm2 unmonitor fix
1300- [Beta Container Support] beta pm2 start app.js --container
1301- [Chore] upgrade modules
1302- [Chore] enhance package.json
1303
1304## 2.6.1
1305
1306- #3037 bug fix cb
1307
1308## 2.6.0
1309
1310### Changes
1311
1312- #2998 pm2 report command for automated system inspection
1313- #2997 --disable-logs option to suppress error
1314- #2290 allow to declare apps under "pm2" attribute (eq "apps"). Nicer in package.json
1315- #2994 allow to specify typescript version to be installed
1316- #2501 low memory environment pm2 setting via PM2_OPTIMIZE_MEMORY (beta)
1317- #2968 pm2 attach <pm_id> to attach to process stdin / stdout
1318- pm2-runtime -> drop in replacement for the node.js binary
1319- #2951 pm2 reload command locker via timestamped lock file
1320- #2977 pm2 reloadLogs protected
1321- #2958 Allow to delete attribute via --attribute null
1322- #2980 PM2_SILENT=true pm2 startup
1323- #2690 --parallel <number> command allows to change the nb of concurrent actions (reload/restart)
1324- expose cwd on CLI via --cwd
1325- multiple pm2-docker enhacements
1326- Alias pm2.link and pm2.unlink to pm2.interact and pm2._pre_interact
1327- Allow to customize kill signal via PM2_KILL_SIGNAL
1328- Support git+http in module installation
1329- force reverse interaction reconnection on internet discovery
1330- `--instances -1` when having a 1 cpu is no-longer spawning no processes #2953
1331- refactor the context retrieving from error
1332- add a TTL for file cache entry
1333- #2956 Fix listen_timeout in combination with wait_ready
1334- #2996 respect signal order on pm2 reload (delegate ready function to reload fn)
1335
1336### Breaking
1337
1338- Drop pm2-daemon CLI (replaced by pm2-runtime)
1339
1340## 2.5
1341
1342- `pm2 register|login` to create new account / login on Keymetrics + auto link
1343- `pm2 open` to open dashboard on browser
1344- `pm2 monitor|unmonitor <pm_id|name|all>` for selective monitoring
1345- #2818 alias pm2-docker to pm2-daemon
1346- #2809 correctly resolve git/npm repo when running pm2 install
1347- #2861 better auto exit check for docker
1348- #2870 avoid null error when preparing app config
1349- #2872 avoid showing useless warning
1350- #438 allow to override daemon config paths via env (example: `PM2_PID_FILE_PATH` to override pid file of the daemon)
1351- #2849 better gentoo template for pm2 startup
1352- #2868 allow tailing log with `--raw` flag
1353- #452 Add `PM2_WEB_STRIP_ENV_VARS` to remove environnement vars from `pm2 web` endpoint
1354- #2890 Fix wait-ready for cluster mode
1355- #2906 randomize machine name with default pm2 link
1356- #2888 allow to use regex for pm2 logs
1357- #2045 allow to rename NODE_APP_INSTANCE env variable
1358- #2809 add `increment_var` options to ask for a environnement variable to be incremented for each application started
1359- more informations when failing to deploy on custom ecosystem file
1360- fix tests for node 8
1361- fix missing callback when overriding console.log
1362- allow to rename daemon process name via `PM2_DAEMON_NAME`
1363- few typo in the readme
1364
1365### Breaking change
1366
1367- the NODE_APP_INSTANCE var behavior has been changed :
1368 - old behavior : when starting multiples instances of an app each one get an unique number, but its not working anymore if you are using `pm2 scale` (simply put its possible to have two application with the same number)
1369 - new behavior : the number are consistent, if you scale up/down it will take a number that isn't used by another application (so two application should never have the same number)
1370
1371## 2.4.5/6
1372
1373- #2818 alias pm2-docker to pm2-runtime
1374- #2815 polyfill for path.isAbsolute for node v0.11
1375
1376### Breaking change
1377
1378- rundev command has been dropped because of too low adoption
1379
1380## 2.4.4
1381
1382- #2806 fix reconnection to keymetrics
1383
1384## 2.4.3
1385
1386- #2759 disable default require of vxx in pmx
1387- #2651 always spawn pm2 daemon with `node` binary
1388- #2745 new issue template
1389- #2761 Make JSON log stream timestamp in consistent format
1390- #2770 Fix trigger API never calling callback
1391- #2796 Fix absolute path on windows
1392- [KM] profiler installation via `pm2 install v8-profiler` or `pm2 install profiler`
1393- [KM] Agent rescue system
1394
1395## 2.4.2
1396
1397- [KM] Disable pm2-server-monit auto install
1398
1399## 2.4.1
1400
1401- #2720 multi user startup script
1402- #2266 start and tail logs via `pm2 start app.js --attach`
1403- #2699 add back previous termcaps interface via `pm2 imonit`
1404- #2681 fix log folder create
1405- #2724 make sure process is stopped even if there is a restart_delay
1406- #2706 install pm2 modules via yarn if available
1407- #2719 show 15 logs line bu default
1408- #2703 allow custom timestamp with pm2-docker
1409- #2698 fix unicode on pm2 monit
1410- #2715 handle treekill edge case bug
1411- Optimize CPU usage of pm2 monit command
1412- [KM] URL web access dashboard
1413- [KM] Auto install pm2-server-monit on keymetrics linking
1414- [KM] Error reporting: add context (-B3 -A3 code lines)
1415- [KM] Transaction Tracer: reset routes on app restart / wait some time before sending
1416
1417## 2.4.0
1418
1419- #2631 new pm2 monit command (blessed dashboard!)
1420- #2670 allow to expose a folder over http via `pm2 serve <path> <port>`
1421- #2617 fix startup script generation on macosx (launchd)
1422- #2650 new option to append env name to app name (used to allow the same app to be launched in different environment w/o name conflict)
1423- #2671 allow to pass a delay to pm2-docker (`pm2-docker process.json --delay 10`)
1424- `pm2 ecosystem simple` to generate a simple ecosystem file
1425- aliasing: `pm2-dev <script>` <=> `pm2-dev start <script>`
1426- fix git parsing when using cwd
1427- #2663 allow to directly output json when logging (via log_type for JSON and --log-type via CLI)
1428- #2675 fix path when installing language module like typescript
1429- #2674 increase restart timeout for systemd startup
1430- #2564 allow to operate process (restart/reload/stop/delete) with regex
1431
1432## 2.3.0
1433
1434- Drop Node.js 0.10 support
1435- (CLI) remove immutability of CLI parameters on restart (critical for ux)
1436- Keymetrics VXX beta
1437- Alias "exec" to "script"
1438- `pm2 logs --nostream` allow to print last logs of application without attaching to logs bus #2620
1439- Added startup script for gentoo v2.3 via PR #2625
1440- optionalDependencies from http to https
1441- remove agent pid on exit
1442- #2646 check ps.stdout on treekil
1443
1444## 2.2.3
1445
1446- Various startup refactor fixes (#2598, #2587, #2590)
1447
1448## 2.2.2
1449
1450- #2574 Support Amazon systemv
1451
1452## 2.2.1 (rc: 2.2.0@next)
1453
1454- #2559 New startup system. Supported init system: systemd, upstart, launchd
1455
1456 $ pm2 startup # Auto detect available init system + Setup init scripts
1457 $ pm2 unstartup # Disable and Remove init scripts
1458
1459*SystemD, Upstart and Launchd scripts work like a charm*
1460
1461- #2515 New way to install PM2 on Debian based system:
1462
1463```
1464$ wget -O - http://apt.pm2.io/ubuntu/apt.pm2.io.gpg.key | sudo apt-key add -
1465$ echo "deb http://apt.pm2.io/ubuntu xenial main" | sudo tee /etc/apt/sources.list.d/pm2.list
1466$ sudo apt-get update
1467$ sudo apt-get install pm2
1468```
1469
1470- #1090 pm2 resurrect does not respawn the same processes
1471- #2544 Attach logs to exception
1472- #2545 Right exit code via pm2 api
1473- #2543 Fix module pid/mem monitoring
1474- #2537 Remove duplicated code in Configuration subsystem
1475- Responsive pm2 list (shortened list when < 90 columns)
1476- If not TTY do not print ascii table
1477- #2509 Trigger functions inside Node.js application from the PM2 CLI
1478- Rename pm2.triggerCustomAction() by pm2.trigger(<app_id>, <action_name>, [params], [cb])
1479
1480## 2.1.6
1481
1482- #2509 Trigger functions inside Node.js application from the PM2 CLI
1483- #2474 Resolve home path in configuration file
1484- #2526 Expose .launchAll() method to API
1485- #2351 inner pm2 actions - drop autorestart and node_args options
1486- #2530 Make sure all processes are killed on system signal to PM2
1487- #281 allow to combine PM2_SILENT + pm2 jlist to avoid extra data
1488- Alias attributes error_file to err_file + err_log + err, alias out_file to out, out_log
1489- Do not ask for pass for set/multiset from KM
1490
1491## 2.1.5
1492
1493- #2502 fix SIGTERM signal catch on pm2-docker
1494- #2498 #2500 global log rotation
1495
1496## 2.1.4
1497
1498- #2486 add --web option to pm2-docker command to expose web process api
1499- #2333 #2478 #1732 #1346 #1311 #1101 Fix GracefulShutdown SIGINT output + Better Stop process flow
1500- #2353 --wait-ready will wait that the application sends 'ready' event process.send('ready')
1501- #2425 allow to specify node.js version to be used or installed via interpreter 'node@VERSION'
1502- #2471 Make app environment immutable on application restart/reload by default for CLI actions
1503- #2451 Config file can be javascript files
1504- #2484 fix pm2 kill on windows
1505- #2101 pm2 ecosystem now generates a javascript configuration file
1506- #2422 allow to pass none to exec_interpreter
1507- Faster CLI load time, reduce load time by 1/4 (downgrade cli-table2 -> cli-table)
1508- Do not use disconnect() anymore on cluster processes
1509- Better Stop process flow: Upgrade TreeKill system + Wait for check
1510- Fix deploy issue with Windows
1511- Expose -i <instances> to pm2-docker
1512- Drop npm-shrinkwrap
1513- Upgrade chokidar (fix symlink), cron, fclone, shelljs
1514- Add yarn.lock
1515
1516## 2.0.19
1517
1518- #2466 skip cluster workaround / fix cluster mode for Node.js v7
1519- Enable Node v7 in travis
1520
1521## 2.0.16/17/18
1522
1523- #2400 Create log/pid default folder even if the root folder is already created
1524- #2395 CRON feature now call PM2 for app to be killed (allow to use SIGINT)
1525- #2413 #2405 #2406 do not exit on unhandledRejection auto catch
1526- pidusage upgrade to 1.0.8 to avoid util exception on windows when wmic fail
1527- Do no display error when pidusage try to monitor an unknow PID (modules)
1528- pm2-docker binary does not need the start option
1529
1530## 2.0.15
1531
1532- process.on('unhandledRejection'): allow to catch promise error that have not been catched
1533- upgrade fclone and pidusage (faster windows CPU/Mem monitoring)
1534- allow to call pm2 CLI from bash script managed by pm2
1535- #2394 fix pm2 id command
1536- #2385 ts-node upgraded to latest
1537- #2381 autocompletion fix
1538
1539## 2.0.12 Bradbury
1540
1541- Memory usage reduced by 40%
1542- CPU usage in overall situations reduced by 60%
1543- Refined pm2 logs command with --json, --format and --raw options
1544- Faster process management with CONCURRENT_ACTIONs enabled
1545- Faster installation (v1: ~30secs, v2: ~10secs)
1546- Faster `pm2 update` with Keymetrics linking delayed at the end
1547- Much better Module system with raw NPM feedback
1548- Better Windows support
1549- **pm2-docker** command with his official [Docker image](https://github.com/keymetrics/pm2-docker-alpine) + json output + auto exit
1550- **pm2-dev -> pmd** command enhanced (better log output, post-exec cmd)
1551- Watch and Reload instead of Watch and Restart
1552- New PM2 API, backward compatible with previous PM2 versions
1553
1554The new PM2 API is greatly tested and well designed:
1555
1556```javascript
1557var PM2 = require('pm2');
1558
1559// Or instanciate a custom PM2 instance
1560
1561var pm2 = new PM2.custom({
1562 pm2_home : // Default is the legacy $USER/.pm2. Now you can override this value
1563 cwd : // Move to CWD,
1564 daemon_mode : // Should the process stay attached to this application,
1565 independant : // Create new random instance available for current session
1566 secret_key : // Keymetrics secret key
1567 public_key : // Keymetrics public key
1568 machine_name: // Keymetrics instance name
1569});
1570
1571// Start an app
1572pm2.start('myapp.js');
1573
1574// Start an app with options
1575pm2.start({
1576 script : 'api.js',
1577 instances: 4
1578}, function(err, processes) {
1579});
1580
1581// Stop all apps
1582pm2.stop('all');
1583
1584// Bus system to detect events
1585pm2.launchBus((err, bus) => {
1586 bus.on('log:out', (message) => {
1587 console.log(message);
1588 });
1589
1590 bus.on('log:err', (message) => {
1591 console.log(message);
1592 });
1593});
1594
1595// Connect to different keymetrics bucket
1596pm2.interact(opts, cb)
1597
1598// PM2 auto closes connection if no processing is done but manually:
1599
1600pm2.disconnect(cb) // Close connection with current pm2 instance
1601pm2.destroy(cb) // Close and delete all pm2 related files of this session
1602```
1603
1604- Better CLI/API code structure
1605- PM2 isolation for multi PM2 instance management
1606
1607### Bug fixes
1608
1609- #2093 #2092 #2059 #1906 #1758 #1696 replace optional git module with tgz one
1610- #2077 fix calling pm2.restart inside pm2
1611- #2261 GRACEFUL_LISTEN_TIMEOUT for app reload configurable via --listen-timeout
1612- #2256 fix deploy command for yaml files
1613- #2105 alias pm2 logs with pm2 log
1614- Extra module display http://pm2.keymetrics.io/docs/advanced/pm2-module-system/#extra-display
1615- Yamljs + Chokidar Security fixes
1616- pm2 update / pm2 resurrect is now faster on Node > 4.0
1617- keymetrics linking after pm2 update is done once all apps are started
1618- pm2 list processes are now sorted by name instead id
1619- #2248 livescript support added in development mode
1620- The client/server file called Satan.js does not exist anymore. It has been replaced by the file combo ./lib/Client.js and ./lib/Daemon.js
1621- PM2 --no-daemon is better now
1622
1623### Breaking change
1624
1625- Coffeescript must be installed via `pm2 install coffeescript`
1626
1627## 1.1.3
1628
1629- Node v6 compatibility
1630
1631## 1.1.2
1632
1633- [#2071 #2075] Fix pm2-dev command
1634
1635## 1.1.0: Galactica release
1636
1637This release is about PM2's internals refactoring, homogenization in action commands (in terms of behavior and outputs).
1638Some interesting features has been added, as YAML file support (for application declaration) and some syntaxic sugar.
1639The Keymetrics interface has been enhanced, dividing by two the memory usage and avoiding any possible leak in any potential scenarios. Reconnection system has been refactored too, we kindly ask our Keymetrics users to upgrade to this version ASAP.
1640
1641**This version has been heavily tested in testing, production environments and deeply monitored in terms of CPU and Memory usage.**
1642
1643- [#133 #1568] Allow to rename a process via pm2 restart app --name "new-name"
1644- [#2002 #1921 #1366] Fix CLI/JSON arguments update on restart (args, node_args, name, max-memory)
1645- [#578] Add YAML support for application configuration file (in extent to JSON and JSON5 support)
1646- [Keymetrics agent refactoring] TCP wait, memory consumption divided by two, reconnection refactoring, keep alive ping system
1647- [Keymetrics agent refactoring] Fix random no response from pm2 link and pm2 unlink
1648- [#2061] Kill ESRCH of processes in cluster mode with SIGINT catcher fixed
1649- [#2012 #1650 #1743] CLI/JSON arguments update on reload
1650- [#1613] Reload all reload ALL applications (stopped, errored...)
1651- [#1961] Fix kill timeout info log
1652- [#1987] Fix FreeBSD startup script
1653- [#2011] Respect process.stdout/.stderr signature
1654- [#1602] Fix zombie process when using babel-node as interpreter
1655- [#1283] --skip-env option to not merge update with system env
1656- Homogeneize actions commands outputs
1657- Option --interpreter-args added (alias of node-args)
1658- Allow to use exactly the same option in JSON declaration and CLI (e.g. interpreter) to avoid confusion
1659- pm2 show, now shows more commands to manage processes
1660- Refactor programmatic system
1661
1662## 1.0.2
1663
1664- [#1035 #1055] Deactivate automatic dump on startup scripts
1665- [#1980] Add Javascript source map resolution when exceptions occurs [Documentation](http://pm2.keymetrics.io/docs/usage/source-map-support/)
1666- [#1937] Allow to act on application having numerics as app name
1667- [#1945] Fix post_update commands section when file contains Javascript
1668- [#624] --only <app-name> to act only on specified app name in json app declaration
1669- [0.6.1](https://github.com/keymetrics/pmx/releases/tag/0.6.1) PMX upgrade
1670
1671## 1.0.1
1672
1673- [#1895] pm2 id <app_name>: output array of ids for app_name @soyuka
1674- [#1800] pm2 show <app_name>: now also display node.js version @soyuka
1675
1676## 1.0.0
1677
1678- [#1844][#1845][#1850] Load configuration in /etc/default/pm2 + add ulimit -n override
1679- [#1810] Add --kill-timeout <number> option (delay before process receive a final SIGKILL)
1680- [#1830] Add tests for PM2_KILL_TIMEOUT (SIGKILL delay) + default SIGINT to any kind of procs
1681- [#1825] Process management commands (start/restart/stop/delete) can take multiple arguments
1682- [#1822] Add new method pm2.sendDataToProcessId(type|data|id) to send data to processes
1683- [#1819] Send SIGINT signal to process instead of SIGTERM
1684- [#1819][#1794][#1765] Avoid writing on std err/out when process is disconnected
1685
1686- Add default attribute in schema.json to allow to configure default value when passing a JSON
1687- JSON and CLI starts are now consistent in terms of option size, attribute number
1688- pm2.restart(json_data, function(err, data) now returns an array of process instead of simple object (success:true))
1689- Now pm2 restart process.json --env <X>, refresh environment variable on each restart depending of the X environment
1690- prepareJSON method in PM2 code (God.js) removed
1691- partition Common.prepareAppConf (duplicate with verifyConfs)
1692- Change signature of Common.prepareAppConf
1693- Centralize Interpreter resolution via Common.sink.resolveInterpreter(app) in Common.js
1694
1695- Better meta information when process restart/reload/stop (signal + exit code)
1696- Upgrade pm2-axon, cron, should, mocha, coffee-script, chokidar, semver NPM packages
1697- Show process configuration option when describing process
1698- Add --no-automation flag
1699- Fix when starting application with illegal names (#1764)
1700- Fix management of app starting with numerics in the filename (#1769)
1701- Fix versiong system (reset to default on resurrect/prepare)
1702- Increase buffer size for versioning meta parsing
1703
1704## 0.15.10
1705
1706- Hot fix #1746
1707
1708## 0.15.9
1709
1710- Chokidar upgraded to 1.2
1711- Fix startup script via new --hp option
1712- Fix JSON refresh system
1713
1714## 0.15.1-8
1715
1716- JSON refresh available
1717- New module system backward compatible and compatible with NPM 3.x
1718- Possibility to install module from tgz (#1713)
1719- ecosystem generated file via pm2 generate uptaded (not json5 prefix anymore, and updated comments)
1720- always prefix logs #1695
1721- blessed dependency removed
1722- drop locking system
1723- add callback to deploy (#1673)
1724- typo fixes
1725- pm2.update added
1726- small db for pm2 modules added (solve npm 3.x issue)
1727- pm2 multiset "k1 v1 k2 v2 k3 v3"
1728- babel dependency removed
1729- blessed dependency removed
1730- chalk, safe-clone-deep, shelljs, semver upgraded
1731- New command: pm2 module:update <module_name> -> Update a module
1732- New command: pm2 module:publish -> Publish module in current folder + Git push
1733- New command: pm2 module:generate [module name] -> Generate a sample module
1734- Feature: configuration system for raw Node.js applications
1735- alias pm2 install with pm2 i
1736- JSON declaration: You can now use process.env in application declaration file
1737- watch has been refactored for windows and tests
1738- allow installation of specific module version
1739- wrap final process kill intro try catch (c4aecc8)
1740- Appveyor to test PM2 under Windows added (+ fix some incorect file name)
1741- Allow to escape key name when using pm2 conf system
1742
1743## 0.14.7
1744
1745- New flag `--no-pmx` : starts an app without injecting pmx
1746- New feature : cron restart now works in fork mode as well
1747- Disabled auto-gc on interactor
1748- Allow PM2 to execute binaries in $PATH
1749- pm2 link priv pub --recyle for elastic infrastructure
1750- pm2 deploy now check default file ecosystem.js[on|on5], package.json
1751
1752## 0.14.6
1753
1754- Scoped PM2 actions
1755- Password encryption via pm2 set pm2:passwd xxxx
1756- Interactor Remote action refactor
1757- .getSync method to get configuration variable synchronously
1758- Add password protected PM2 methods (install, delete)
1759- pm2 get|pm2 conf display all confs
1760- Password protected PM2 flag
1761- New flag : `--restart-delay <ms>` (or `restart_delay` in JSON declaration)
1762- New command : `pm2 deepUpdate`
1763- New command (beta) : `pm2 logrotate`
1764- Enhancement : pm2 handles processes that can't be killed in a better way
1765- Fix : some ignore_watch issues
1766- Fix : some pm2 startup systemd issues
1767
1768## 0.14.5
1769
1770- Hot fix
1771
1772## 0.14.4
1773
1774- New command : `pm2 iprobe [app_name|app_id|'ALL']`
1775- Feature: FreeBSD startup script
1776- Fix: Remove forced GC
1777- Fix: ##1444 --next-gen-js in fork mode
1778- Fix: Windows path fix
1779
1780## 0.14.3 (Current Stable)
1781
1782- `pm2 flush` now flushes pm2.log as well
1783- New flag : `--no-treekill` : when used PM2 won't kill children processes
1784- New flags : `pm2 logs ['all'|'PM2'|app_name|app_id] [--err|--out] [--lines <n>] [--raw] [--timestamp [format]]`
1785- Enhancement: Modules installable via Github: `pm2 install username/repository`
1786- Feature: PMX has *scoped function* -> pm2 stores temporary output from custom functions
1787- Fix: Interactor issue when doing an heapdump
1788- Feature: PM2 CLI autocompletion
1789
1790## 0.14.2
1791
1792- Improved pm2-dev
1793- Now when apps list is empty, the `id` counter is set to 0
1794- Removed pres/keymetrics.js post-install script
1795- Fix : `pm2 logs` allocation error
1796- Fix : `pm2 prettylist|jlist` truncated output
1797
1798## 0.14.0 - CrystalClear (pre 1.0)
1799
1800- Removed: pm2.startJSON() method, now call pm2.start()
1801- API Change: pm2 start <app_name|app_id> restart an application already launched
1802- API Change: pm2 start <json> restart all json apps if already launched
1803- pm2 start all - restart all applications
1804- pm2 reload <json_file> possible
1805- pm2 gracefulReload <json_file> possible
1806- Smart start (pm2 start app.js ; pm2 stop app ; pm2 start app)
1807- Reduced memory footprint
1808- Reduced pipelined data
1809- Reduced CPU usage
1810- Faster command processing
1811- Upgrade shelljs, semver, colors, chalk, coffee-script, async, json-stringify-safe, cron, debug, commander
1812- Fix: launchBus() only connects and disconnects once
1813
1814- Refactored `pm2 logs` :
1815 - Now you don't need to install tail on Windows
1816 - You don't need to Ctrl^C and `pm2 logs` again when a new app is launched (this one will be detected and added to the real-time logs output)
1817 - Logs are shown in chronological order at a file level (modified date)
1818 - More verbosity : tailed logs are explicitely separated from the real-time logs
1819 - Real-time logs now use the `bus` event emitter
1820 - PM2 logs added to the `bus`
1821 - `--lines <n>` and `--raw` flags available for `pm2 logs` command
1822 - New flag : '--timestamp [format]' // default format is 'YYYY-MM-DD-HH:mm:ss'
1823 - Now you can exclusively show PM2 logs by doing `pm2 logs PM2`
1824
1825## 0.12.16
1826
1827- Feature : File transmission added in Agent
1828- Feature : Transmit Node.js/io.js version in Agent
1829- Feature : Parameters can be passed to remote actions
1830- Feature : Support JS in addition to JSON and JSON5 config files #1298
1831- Enhanced: pm2 conf display all configuration values
1832- Enhanced: pm2-dev
1833- Enhanced: Better error messages when validating data passed via CLI
1834- Enhanced: Smaller memory footprint for PM2 (~30%)
1835- Fix #1285 : PID file was deleted after a reload/gracefulReload
1836- Fix : ENOMEM made PM2 crash
1837
1838## 0.12.15
1839
1840- Fix #941 : Env variables overrided when an app is restarted
1841- max_memory_restart now performs a graceful reload
1842- `pm2 logs --raw` now shows 20 last lines of each log file
1843- pm2-dev run app.js : start an app in dev mode (--no-daemon --watch and stream logs of all launched apps)
1844- --no-daemon command now display logs of all processes (Docker)
1845
1846## 0.12.14
1847
1848- `ilogs` is no longer part of PM2
1849- Improved interaction with Keymetrics
1850- BabelJS is now integrated into PM2 (`--next-gen-js` flag)
1851
1852## 0.12.13
1853
1854- Enhanced : PM2 doesn't leave processes behind when it crashes
1855- Enhanced : Call reload instead of restart when max-memory-limit reached
1856- Enhanced : Modules are compatible ES6 by default by adding --harmony flag
1857- Enhanced : Dump feature is now smarter
1858- Fix #1206 : fix `pm2 logs` bug when merged_logs
1859- Fix : pm2 scale doesn't try to scale a fork_mode process
1860
1861## 0.12.12
1862
1863- `pm2 logs --raw` flag : show logs in raw format
1864- New command: pm2 scale <app_name> <number> - scale up/down an application
1865- Fix #1177 : no concurrent vizion.parse() for the same process event when it restarts
1866- Added: Expose kill method programmatically
1867- Added: Call disconnect without a function
1868- Added: Programmatic call to .connect can now take no-daemon-option
1869- Fixed: starting a JSON programmatically return a process list coming from God
1870- Fixed: Reflect dump functions from CLI and God
1871- Enhanced: New CLI API for configuring modules (pm2 conf module.option [value])
1872- Added: Using Keymetrics harden PM2 by enabling a WatchDog that auto restart PM2 in case of crash
1873- Added: Expose pm2 gc programmatically
1874- Added: pm2 install <module_name> update the module
1875- Enhanced: 4 new test suits for PM2 programmatics call
1876- Enhanced: Documentation restructured
1877
1878## 0.12.11
1879
1880- `--no-autorestart` flag : starts an app without automatic restart feature
1881(`"autorestart" : false` in JSON declaration)
1882
1883- `--no-vizion` flag : starts an app completely without vizion features
1884(`"vizion" : false` in JSON declaration)
1885
1886- Fix #1146 : add module._initPaths() on ProcessContainer.js so it forces each
1887new process to take the current NODE_PATH env value in account
1888
1889- New: pm2.start() now handles json objects as param
1890
1891- Added: timestamps to KM agent logs
1892
1893- Fix: now properly closes all fds after logging has finished.
1894
1895- New command: pm2 gc (manually triggers garbage collection for PM2)
1896
1897- VersioningManagment: exec() timeout configurable via .json
1898
1899- Fix #1143 :
1900If we start let's say 4 instances of an app (cluster_mode),
1901Each app will have a value in process.env.NODE_APP_INSTANCE which will be 0 for the first one,
19021, 2 and 3 for the next ones.
1903
1904- Fix #1154 :
1905Negative arguments to '-i' are substracted to CPU cores number.
1906E.g: 'pm2 start app.js -i -3' in a 8 cpus environment will start 5 instances (8 - 3).
1907
1908## 0.12.10
1909
1910- Fix : PM2 interactor doesn't send data about dead processes ('_old_') anymore.
1911- Fix #1137 : Safe params for 'pm2 list' so cli-table won't fail
1912- Refactored reverse interaction with keymetrics for better stability and more verbosity on Rollback/Pull/Upgrade operations
1913
1914## 0.12.9
1915
1916- Fix #1124 : PM2_PROGRAMMATIC flag wasn't handled properly
1917- Fix #1121 : NODE_PATH before PATH so custom node versions come first
1918- Fix #1119 : Safe params so cli-table won't fail
1919- Fix #1099 : Bug when app name starts by digit (e.g '1-myApp')
1920- Fix #1111 : More verbosity on writeFileSync errors
1921- New env setting: PM2_KILL_TIMEOUT (ms) : time to wait before a process is considered dead
1922- New env setting: PM2_CONCURRENT_ACTIONS : use it with care, value bigger than 1 is considered unstable
1923- Refactored reload/gracefulReload for better stability
1924
1925## 0.12.8
1926
1927- Fix : `Channel closed error`
1928- Fix : `Resource leak error`
1929- Fix#1091 : when passing a wrong formated number to `-i` infinite loop
1930- Fix #1068 #1096 : restart fails after reloadLogs()
1931- New : When PM2 is being killed, all restarts are blocked to avoid conflict
1932- New : PM2 dumps the process list before exiting if it is killed by signal
1933- Refactored stop/restart for better stability
1934
1935## 0.12.7
1936
1937- pm2 logs : Now shows merged logs
1938- Fix #929 #1043 : Bug pm2 stop/restart not working properly
1939- Fix #1039 : Better algorithm for vision recursive parsing to avoid infinite loops
1940- Automatize #858 #905: Directly init pm2 folder if not present when using it programmatically
1941- Add Bus system from PM2 programmatic API
1942
1943## 0.12.6
1944
1945- Enhancement of startJson command (force_name and additional_env options)
1946- Fix #990 : pm2 flush while pm2 logs was open bug
1947- Fix #1002 : pm2 monit bug
1948- Fix #1024 : enhancement
1949- Fix #1011 : json-stringify-safe bug
1950- Fix #1007 ##1028 #1013 #1009 : pm2 desc bug
1951- Fix : pm2 interact delete when file doesn't exist bug
1952
1953## 0.12.5
1954
1955- Windows support
1956
1957## 0.12.4
1958
1959- Never start a process that already has a PID [#938]
1960- 1. Make platform auto detecting. 2. Support darwin startup script. [#936]
1961- Fix #857 #935, add scriptArgs back [d61d710]
1962- Fix broken link upstart [f8ff296]
1963- Fixed: multiple calls to vizion.parse() for the same process [0e798b1]
1964- fix 2015 test easter egg - Happy New Year! [85d11d5]
1965- fixes #906 [#911]
1966- Add back automatic coffee interpreter #488 #901 [e9a69fe]
1967- Upgrade cli-table, commander, colors, moment dependencies [0cc58ce][a4b7d8d]
1968- Domain system to patch fix the exception thrown by the cluster module
1969- Fix #830 #249 #954 when there is no HOME env to default to /etc/.pm2 [17d022c]
1970
1971## 0.12.3
1972
1973- fixed critical bug: `process.env` flattens all env-vars [#898]
1974- npm maintainers format [#894]
1975- fix `pm2 desc` crash bug [#892]
1976- fix CLI typo [#888]
1977- `port` config [#885]
1978
1979## 0.12.2
1980
1981- treeKill copyright and update [#848] [#849]
1982- Allow environment variables per each ecosystem deploy [#847]
1983- max-memory-restart option [#697] [#141]
1984- JSON validation (cf ADVANCED_README.md) [#768] [#838]
1985- CLI/JSON refactoring
1986- watch fixes
1987- execute binary softwares
1988- node_args refactored (ESC support) [#838]
1989- reload env graceful and peaceful [#838]
1990- min_uptime added [#838]
1991- startOrRestart conf.json does update environment variables [#805]
1992- vizion only refresh ahead and unstaged flags [f1f829c]
1993- worker restart cluster process if it's equal to 0 && online [c2e3581]
1994- pm2 pull <name> [commit_id] [c2e3581] [4021902]
1995- fix reloadLogs for fork mode [c0143cc][197781e]
1996- waterfall logs stream [#822]
1997- --log option to have a merged error and out output [#822]
1998- God core refactors
1999- test refactoring
2000- update isBinaryFile [636fd99]
2001- pid deletion has been resurected [f2ce631]
2002- worker refactor [29fc72b]
2003- fix no color [3feead2]
2004- upgrade chokidar 0.12 with follow symlink [4ac0e74]
2005- refactor Reload [cf94517][f1eb17]
2006- avoid truncate with pm2 logs command [26aff8b]
2007- God print log with timestamp via PM2_LOG_DATE_FORMAT [bf2bf8a][3eaed07]
2008- better test suit
2009- new treekill system [11fe5f4]
2010
2011Big thanks to @Tjatse !
2012
2013## 0.12.1
2014
2015- Harden Lock system
2016- Fix Worker bug / Refactor Worker
2017- Cleanly close interactor sockets on end
2018- Add backward compatibility for older PM2 on kill action via system signal SIGQUIT
2019- once listener for killDaemon
2020
2021## 0.12.0 - clear water ops
2022
2023- better ecosystem.json5 file with embedded comments
2024- startOrRestart conf.json update environment variables #805 #812
2025- pm2 start my/bin/file work out of the box
2026- JSON5 support
2027- PM2_HOME supported - PM2 files paths relocation (logs, pid) via PM2_HOME option
2028- post_updates commands are searched in process.json/ecosystem.json/package.json
2029- Worker system to verify up to date repositories
2030- Rename process running with PM2 <version> - app_name
2031- Process Lock system
2032- Inner iteraction with PM2 possible #782
2033- Better vizion system
2034- backward / forward / pull command
2035- Doc moved to doc
2036- remove uidnumber module
2037- pre install / post install scripts removed
2038- Remote Lock System
2039- More God tests
2040- GRACEFUL_LISTEN_TIMEOUT constant configurable
2041- Logs are closed in Fork mode when reloading
2042- Fix not tty
2043- Fix cluster structure nullification
2044- Pre Windows Support
2045- Send revision process on each process event
2046- Upgrade Commander (better help display)
2047- Upgrade chokidar to 0.10.x
2048- Better interactor
2049- Better revision parsing
2050- Configuration file
2051- Close fd in fork mode while reloading
2052- Remove --run-as-user option
2053- Better CLI interface for interactor
2054- axm:monitor axm:dynamic
2055- Temporaly merge pm2-interface with pm2
2056- Cache cpu infos
2057- Make revision transit in God.bus broadcast
2058- Ignore useless events in God.bus broadcast
2059
2060## 0.11.0-1
2061
2062- Multi user support and privilege containment: UNIX sockets instead of TCP
2063- Reload refactoring
2064- Process on uncaughtexcption to flush process list
2065- pm2 logs display state change of processes
2066
2067## 0.10.x
2068
2069- multi host for pm2 deploy
2070- fork mode by default
2071- fix watch on clusters
2072- refactor watch
2073- env option via programmatic interface
2074- fix watch system
2075- correct pm2 describe command
2076- close file used via pm2 flush
2077- add startOrReload
2078- better closing events
2079
2080## 0.10.0 - PM2 Hellfire release
2081
2082- PM2 hearth code has been refactored and now it handles extreme scenario without any leak or bug
2083- PM2 restart <json|id|name|all> refresh current environment variables #528
2084- PM2 delete all more verbose
2085- PM2 reset <all|id|name> reset restart numbers
2086- Auto update script at PM2 installation
2087- --watch enhanced to avoid zombie processes
2088- Restart app when reaching a limit of memory by using --max-memory-restart (and max_memory_restart via JSON)(https://github.com/Unitech/pm2#max-memory-restart)
2089- PM2 respects strong unix standard process management
2090- Remove timestamps by default with pm2 logs
2091- Coffeescript not enabled by default anymore (enhance memory usage)
2092- PM2 Programmatic interface enhanced
2093- PM2 hearth refactor
2094- PM2 describe show node-args
2095- node_args for V8 options is now available via JSON declaration
2096- Watch system avoid ghost processes
2097- Memory leak fixes
2098- Better performance on interface
2099- Fix tests
2100- Enable PM2_NODE_OPTIONS and node-args for fork mode
2101- Dependencies updated
2102- Faster monitoring system
2103- AXM actions unification
2104- Socket errors handled
2105- Watchdog via Agent - restart automatically PM2 with previous processes in case of crash
2106- PM2_NODE_OPTIONS deprecation (use --node-args instead)
2107
2108## 0.9.6 - 0.9.5 - 0.9.4
2109
2110- Bash test auto exit when failure
2111- Bump fix log streaming
2112- Bump fix to display old logs streaming by default
2113- Bump fix
2114
2115## 0.9.3
2116
2117- Critical bug on fork mode fixed (stream close)
2118- Advanced log display interface pm2-logs #589
2119- Simple log timestamp via --log-date-format (with momentJS formating) #183
2120- Possible to pass arguments via scriptArg with programmatic PM2 #591
2121- Gentoo startup script generation #592
2122- Fix run-as-user and run-as-group in fork mode #582
2123- Documentation update
2124
2125## 0.9.2
2126
2127- max_restart enabled
2128- sudo fix for init scripts
2129- some startup refactoring
2130- Possibility to specify the configuration folder for PM2 via process.env.PM2_HOME
2131- Fix date format
2132- N/A for undefined date
2133- Evented interactions with PM2, available via pm2-interface
2134- Deep Interactor refactoring
2135- Force reload for upstart script
2136
2137## 0.9.0-0.9.1
2138
2139- CLI flattening
2140- require('pm2') possible to interact with
2141- deployment system
2142- Remove builtin monitoring feature
2143- Fix watch on delete #514
2144- Gracefull reload now rightly handled #502
2145- Allow path in watch option #501
2146- Allow management of non-interpreted binaries #499
2147- Documentation fixes
2148
2149## 0.8.12-0.8.15
2150
2151- Version bumping
2152
2153## 0.8.12
2154
2155- Fix CWD option #295
2156
2157## 0.8.10-0.8.11
2158
2159- Builtin monitoring feature with email (with pm2 subscribe)
2160- Reload Logs for Fork
2161- Deletion of possible circular dependencies error
2162- pm2 updatePM2 command to update in-memory pm2
2163- notification message if the in-memory pm2 is outdated
2164- cwd option in json #405 #417 #295
2165- README updates
2166- ipc channel for fork mode
2167- re enable process event loggin for interactor
2168- avoid possible stream error
2169- watch ignore option in JSON
2170
2171## 0.8.5-6
2172
2173- Update monitoring module
2174
2175## 0.8.4
2176
2177- Remove C++ binding for monitoring
2178- Update axon and axon-rpc
2179
2180## 0.8.2
2181
2182- Adds option to switch to a different user/group before starting a managed process #329
2183- watch doesnt watch node_module folder
2184- default log files and pid files location can be overrided by PM2_LOG_DIR / PM2_PID_DIR
2185
2186
2187## 0.8.1
2188
2189- Readme changes #400 #398
2190- Fix describe command #403
2191- reload/gracefulReload throw error if no process has been reloaded #340
2192
2193## 0.8.0
2194
2195- More verbosity to pm2.log
2196- Fast Watch & Reload
2197- New README.md
2198- --merge-logs option to merge logs for a group of process
2199- logs reload with SIGUSR2 or `pm2 reloadLogs`
2200- return failure code when no process has been reloaded
2201- Upgrade of outdated packages
2202- Silent (-s) flag remove all possible pm2 output to CLI
2203- New display for list, more compact
2204- `pm2 describe <id>` to get more details about a process
2205- Fixed 0.10.x issue when stop/kill
2206- Helper shown when -h
2207- Linter errors
2208- Systemd support for Fedora / ArchLinux
2209- #381 Add support for Amazon Linux startup script
2210- Fixed rendering
2211- Interaction possible with VitalSigns.io
2212- Avoid exception when dump file is not present
2213
2214## 0.7.8
2215
2216- List processes with user right `service pm2-init.sh status`
2217
2218## 0.7.7
2219
2220- Bug fixes, stability fixes
2221
2222## 0.7.2
2223
2224- harmony can be enabled [Enabling harmony](#a66)
2225- can pass any options to node via PM2_NODE_OPTIONS, configurable via ~/.pm2/custom_options.sh
2226- pid file written in ~/.pm2/pm2.pid
2227- startup script support for CentOS
2228- --no-daemon option (Alex Kocharin)
2229- json file now can be : started/stoped/restarted/deleted
2230- coffeescript support for new versions (Hao-kang Den)
2231- accept JSON via pipe from standard input (Ville Walveranta)
2232- adjusting logical when process got an uncaughtException (Ethanz)
2233
2234### Update from 0.x -> 0.7.2
2235
2236- CentOS crontab option should not be used anymore and use the new init script with `pm2 startup centos`
2237- If you use the configuration file or the harmonoy option, you should regenerate the init script
2238
2239## 0.7.1
2240
2241- Integrates hardened reload, graceful reload and strengthened process management
2242
2243## 0.7.0
2244
2245- Reload works at 100%
2246- Logs are now separated by process id
2247- Minimal listing with -m option
2248- pid files are deleted once process exit
2249- ping method to launch or knwo if pm2 is alive
2250- more tests
2251- coffeescript is supported in cluster mode
2252- clean exit
2253- clean process stopping
2254- speed process management enhanced
2255- async used instead of recuresive loops
2256- broad test for node 0.11.10 0.11.9 0.11.8 0.11.7 0.11.5 0.10.24 0.10.23 0.10.22 0.10.21 0.10.20 0.10.19 0.10.18 0.10.17 0.10.16 0.10.15 0.10.14 0.10.13 0.10.12 0.10.11 0.8
2257
2258## 0.6.8
2259
2260- Homogeneize JSON #186
2261- Auto intepreter selection (you can do pm2 start app.php)
2262
2263## 0.5.6
2264
2265- Coffeescript support
2266- Updating dependencies - axon - commander
2267- Log feature enhanced - duplicates removed - name or id can be passed to pm2 logs xxx
2268
2269## 0.5.5
2270
2271- Ability to set a name to a launched script + tests
2272 - with the --name option when launching file
2273 - with the "name" parameter for JSON files
2274- Ability to restart a script by name + tests
2275- Upgrade node-usage to 0.3.8 - fix monitoring feedback for MacOSx
2276- require.main now require the right file (activate it by modifying MODIFY_REQUIRE in constants.js)
2277- CentOS startup script with pm2 startup centos
2278- 0 downtime reload
2279
2280## 0.5.4
2281
2282- Remove unused variable in startup script
2283- Add options min_uptime max_restarts when configuring an app with JSON
2284- Remove pid file on process exit
2285- Command stopAll -> stop all | restartAll -> restart all (backward compatible with older versions)
2286
2287## 0.5.0
2288
2289- Hardening tests
2290- Cron mode to restart a script
2291- Arguments fully supported
2292- MacOSx monitoring possible