Commit Graph

51 Commits

Author SHA1 Message Date
filipenevola
39e57ecd79 Bump package versions for the official 1.10 release. 🎉 2020-03-12 14:29:56 -03:00
filipenevola
12ee7d37af Bump package versions for 1.10.0-rc.5 release 2020-03-11 23:02:39 -03:00
filipenevola
5e5c75b36b Bump package versions for 1.10-rc.4 release 2020-03-06 13:10:35 -04:00
filipenevola
5404d065e9 Bump package versions for 1.10-rc.3 release 2020-03-02 15:39:38 -04:00
filipenevola
e898ab9b98 Bump package versions for 1.10-rc.2 release 2020-02-28 16:13:02 -04:00
Ben Newman
5a182b515e Bump package versions for 1.10-rc.1 release. 2020-02-27 16:47:11 -05:00
Ben Newman
edc7180382 Bump package versions for 1.10-rc.0 release. 🎉 2020-02-26 15:52:12 -05:00
Ben Newman
93e9f96124 Two stray -beta110.11 version updates.
These versions were included in the 1.10-beta.11 release, but accidentally
not committed with the other version bumps.
2020-02-26 15:38:16 -05:00
Ben Newman
6232550cb8 Gracefully handle EPIPE errors for nonessential IPC messages.
These stray EPIPE messages have been a problem for a while now, especially
on Windows.

In most cases, they appear to stem from sending a message to a process
that is about to exit, such that the message races against the exit, and
sometimes loses. When that message is a just an obligatory response to a
final message from the exiting process, the exiting process probably does
not care about (and will not receive) the response, so we can safely
swallow the EPIPE error.

Now that all otherProcess.send calls have a callback function, I'm hopeful
we will never see EPIPE errors again.
2020-02-26 12:11:33 -05:00
Ben Newman
37eb174612 Bump package versions for the official 1.8 release. :feelsgood: 2018-10-05 17:29:17 -04:00
Ben Newman
8ddd2f3eae Bump package versions for 1.8-rc.17 release. 2018-10-03 15:15:55 -04:00
Ben Newman
24e1c9f2e7 Bump package versions for 1.8-rc.16 release. 2018-09-18 17:27:34 -04:00
Ben Newman
6020a7c181 Bump package versions for 1.8-rc.15 release. 2018-09-18 14:47:52 -04:00
Ben Newman
1320cdb455 Bump package versions for 1.8-rc.14 release. 2018-09-13 12:46:10 -04:00
Ben Newman
bb72ba969f Bump package versions for 1.8-rc.13 release. 2018-09-13 12:04:36 -04:00
Ben Newman
b5208c7786 Bump package versions for 1.7.1-rc.12 release. 2018-09-12 12:56:21 -04:00
Ben Newman
210d1ac514 Bump package versions for 1.7.1-rc.11 release. 2018-09-11 14:02:00 -04:00
Ben Newman
3d4fb7a8ad Bump package versions for 1.7.1-rc.10 release. 2018-09-11 10:24:58 -04:00
Ben Newman
203829c4f8 Bump package versions for 1.7.1-rc.9 release. 2018-09-10 17:05:14 -04:00
Ben Newman
6134251621 Bump package versions for 1.7.1-rc.8 release. 2018-09-07 10:51:48 -04:00
Ben Newman
b1e44642fe Bump package versions for 1.7.1-rc.7 release. 2018-09-05 21:37:38 -04:00
Ben Newman
5906bb9c1e Bump package versions for 1.7.1-rc.6 release. 2018-09-05 13:28:12 -04:00
Ben Newman
cfa96534bc Bump package versions for 1.7.1-rc.5 release. 2018-08-21 20:53:08 -04:00
Ben Newman
1a74403296 Bump package versions for 1.7.1-rc.4 release. 2018-08-20 15:52:11 -04:00
Ben Newman
db194c5914 Bump package versions for 1.7.1-rc.3 release. 2018-08-20 10:34:48 -04:00
Ben Newman
86030c1001 Bump package versions for 1.7.1-rc.2 release. 2018-08-16 19:03:51 -04:00
Ben Newman
b14624aba4 Bump package versions for 1.7.1-rc.0 release. 2018-08-15 14:40:49 -04:00
Ben Newman
af40e4c2c7 Bump package versions for 1.7.1-beta.33 release. 2018-08-14 20:39:21 -04:00
Ben Newman
554936cff3 Bump package versions for 1.7.1-beta.32 release. 2018-08-13 18:47:20 -04:00
Ben Newman
62fa9927ce Bump package versions for 1.7.1-beta.31 release. 2018-08-10 12:59:17 -04:00
Ben Newman
2ffea7b476 Bump package versions for 1.7.1-beta.30 release. 2018-08-09 16:52:13 -04:00
Ben Newman
8baffaf090 Bump package versions for 1.7.1-beta.29 release. 2018-08-07 13:59:29 -04:00
Ben Newman
0b2485e553 Bump package versions for 1.7.1-beta.28 release. 2018-08-06 10:34:39 -04:00
Ben Newman
a007738d2f Bump package versions for 1.7.1-beta.27 release. 2018-08-04 14:40:57 -04:00
Ben Newman
d38101bdde Bump package versions for 1.7.1-beta.26 release. 2018-08-04 13:15:33 -04:00
Ben Newman
350a3952c9 Bump package versions for 1.7.1-beta.25 release. 2018-08-03 12:00:07 -04:00
Ben Newman
1bd1fcf588 Bump package versions for 1.7.1-beta.24 release. 2018-07-31 21:16:09 -04:00
Ben Newman
cd52a0b458 Bump package versions for 1.7.1-beta.23 release. 2018-07-31 17:08:40 -04:00
Ben Newman
c32fd23b1a Bump package versions for 1.7.1-beta.22 release. 2018-07-26 20:27:16 -04:00
Ben Newman
9fb02e9bb2 Bump package versions for 1.7.1-beta.21 release. 2018-07-20 19:12:12 -04:00
Ben Newman
a58775663f Bump package versions for 1.7.1-beta.20 release. 2018-07-19 18:12:30 -04:00
Ben Newman
121eb30c90 Shorten initial README.md description for inter-process-messaging. 2018-07-17 21:12:46 -04:00
Ben Newman
fe45f24c8f Bump package versions for 1.7.1-beta.19 release. 2018-07-17 21:02:07 -04:00
Ben Newman
7d25b592b6 Use ARSON to encode and decode IPC payloads and results. 2018-07-17 16:44:59 -04:00
Ben Newman
5ea442bb12 Update packages/inter-process-messaging/README.md. 2018-07-17 16:44:58 -04:00
Ben Newman
f4946306c0 Make IPC system more testable, and implement some basic tests. 2018-07-17 16:44:58 -04:00
Ben Newman
eceb3b0f57 Silence UnhandledPromiseRejectionWarning in exit handler. 2018-07-17 16:44:58 -04:00
Ben Newman
9faaddd641 Handle child process 'exit' event in IPC system. 2018-07-17 13:24:02 -04:00
Ben Newman
393196eb93 Remove parent/child terminology from the IPC system.
Every process is potentially the child of some other process and the
parent of zero or more child processes of its own, so it's confusing to
use terminology that always treats the current global.process as a
"parent" process, or to include PARENT and CHILD in the message types.

Instead, this new implementation uses message types MESSAGE, RESPONSE,
PING, and PONG, and refers to `process` and `otherProcess` objects,
with the caveat that sometimes `process === otherProcess`, because
`process.send` can be used to send messages to the parent process.

Instead of relying on the child to send a special CHILD_READY message to
the parent when it's ready to receive messages, the sending process polls
the receiving process with a preflight PING message, and the receiving
process immediately responds with a PONG when ready.
2018-07-17 13:11:48 -04:00
Ben Newman
692b533d49 Extract IPC type strings into a shared module. 2018-07-17 10:27:00 -04:00