UNPKG

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