UNPKG

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