UNPKG

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