Age | Commit message (Collapse) | Author | Files | Lines |
|
Also added stubs for Server.address()
This was done to prevent crashes in some popular frameworks like express
Supports both CommonJS and the new ES Modules system syntax e.g:
app.js:
const http = require('http')
app.mjs:
import http from "http"
Usage on Node 14.16.x and higher:
{
"type": "external",
"processes": {"spare": 0},
"working_directory": '/project',
"executable": "/usr/bin/env",
"arguments": [
"node",
"--loader",
"unit-http/require_shim.mjs"
"--require",
"unit-http/require_shim",
"app.js"
]
}
Usage on Node 14.15.x and lower:
{
"type": "external",
"processes": {"spare": 0},
"working_directory": '/project',
"executable": "/usr/bin/env",
"arguments": [
"node",
"--require",
"unit-http/require_shim",
"app.js"
]
}
|
|
ServerRequest now inherit stream Readable object. ServerResponse
provides 'writable' property.
Thanks to Wu Jian Ping (@wujjpp).
This closes #274, closes #317 issues and closes #502 PR on GitHub.
|
|
This is required for Express framework compatibility.
This closes #418 issue on GitHub.
|
|
ServerResponse.write() method tries to write data buffer using libunit
and stores buffers to write in a Server-wide output queue, which is
processed in response to SHM_ACK message from router.
As a side effect 'drain' event implemented and socket.writable flag
reflect current state.
|
|
|
|
In Node.js version 11.10.0 and later, the writeHead() function returns "this".
|
|
This closes #240 issue on GitHub.
|
|
This closes #236 on GitHub.
Thanks to 0xcdcdcdcd.
|
|
|
|
|
|
|
|
|
|
No functional changes.
|
|
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.
|
|
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.
|
|
|
|
|
|
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.
|
|
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.
|
|
|
|
|
|
|