UNPKG

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