UNPKG

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