UNPKG

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