UNPKG

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