Commit Graph

19 Commits

Author SHA1 Message Date
Alexander Borisov
dcf51274ce Node.js: checking uniqueness of HTTP headers for different case. 2018-12-19 15:56:30 +03:00
Alexander Borisov
607653c0f1 Node.js: calling write callback asynchronously. 2018-12-19 15:56:13 +03:00
Alexander Borisov
704fe556b4 Node.js: style fixes.
No functional changes.
2018-12-19 15:56:09 +03:00
Alexander Borisov
dc16885b60 Node.js: changed the unit-http socket constructor.
Third-party file descriptors are not supported.
Socket "readable" and "writable" options are set true by default.
2018-12-19 15:56:06 +03:00
Alexander Borisov
f47a5db506 Node.js: napi_call_function() replaced with napi_make_callback().
The sequence of napi_open_callback_scope(),
napi_call_function(), and napi_close_callback_scope() functions calls
executes the provided JS code and all functions enqueued by
process.nextTick() and Promises during this execution.
2018-12-19 15:56:01 +03:00
Alexander Borisov
13c9ebccca Node.js: changed the 'data' event calling sequence for the request.
The problem is caused by Promises' inconsistency.
The 'date' event could have been triggered before the user has started
listening for it.  To resolve the issue, we override the 'on' method of
the request's emitter.
2018-12-19 15:55:58 +03:00
Alexander Borisov
de3c062c6e Node.js: buffering HTTP headers before writing the body. 2018-12-19 15:55:54 +03:00
Valentin Bartenev
aeb026c8ab Node.js: removed unused dependency. 2018-12-12 19:57:15 +03:00
Valentin Bartenev
2b4d83cbd8 Node.js: npm package readme cleanup. 2018-11-15 15:53:35 +03:00
Alexander Borisov
5c2021f834 Node.js: res.write() must return a bool value. 2018-11-15 14:42:51 +03:00
Alexander Borisov
fb18a09cd7 Node.js: fixed handling of response header fields.
This fixes two issues:

- values for mutiple header fields with the same name
  passed as arrays were converted to string;

- the type of field value wasn't preserved as required
  by specification.
2018-11-15 15:21:52 +03:00
Alexander Borisov
06b404feb1 Node.js: added correct exit processing.
Node.js processes didn't exit after the changes in b9f7635e6be2,
as the quit command from port wasn't handled by the module.
2018-11-15 15:39:34 +03:00
Alexander Borisov
71f4cb9134 Node.js: added reference count increment for the Unit object.
We increase the number to the Unit object so that it lives forever.
This is necessary so that the garbage collector does not delete the Unit object.
2018-11-15 15:24:45 +03:00
Andrey Zelenkov
4a77c447ba Node.js: socket.js improvements.
- Fixed handling of the "options" parameter in Socket() constructor;
- Now the connect() method returns "this";
- Deduplicated the address() method;
- Added missing "callback" argument to the end() method;
- Now the destroy() method returns "this";
- Added "timeout" argument type check in the setTimeout() method.
2018-11-06 19:04:01 +03:00
Andrey Zelenkov
b7442743cf Node.js: fixed typo in naming rawHeaders() method of request. 2018-11-01 19:10:32 +03:00
Alexander Borisov
c838c3bd15 Node.js: added async request execution. 2018-10-31 15:51:51 +03:00
Alexander Borisov
5b3d3e0a88 Node.js: additional type check for response.setHeader value. 2018-10-24 16:21:53 +03:00
Alexander Borisov
7801814126 Added ability to publish Node.js module. 2018-10-23 13:06:44 +03:00
Alexander Borisov
ea62327b00 Added Node.js support. 2018-10-03 17:50:03 +03:00