Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.6.7 proposal #101

Merged
merged 19 commits into from
Mar 13, 2017
Merged

v0.6.7 proposal #101

merged 19 commits into from
Mar 13, 2017

Conversation

aqrln
Copy link
Member

@aqrln aqrln commented Mar 13, 2017

Version 0.6.7 (2017-03-14, @aqrln)

This is a bugfix release.

Notable changes:

  • lib: make failed addon loading more informative (Alexey Orlenko) #90
  • w3c-ws: emit missing error event (Alexey Orlenko) #93
  • w3c-ws: fix invalid property access (Alexey Orlenko) #94
  • connection: check that method arguments exist (Alexey Orlenko) #100

All changes:

  • doc: fix linter warning in CHANGELOG.md (Alexey Orlenko) #80
  • tools: remove crlf.js from dot-ignore files (Alexey Orlenko) #83
  • npm: don't include doc/ and mkdocs.yml to package (Alexey Orlenko) #82
  • doc: add session WG meeting (Mykola Bilochub) #81
  • lint: update remark (Alexey Orlenko) #87
  • test: add Node.js 6.10 and 7.6 to .travis.yml (Alexey Orlenko) #86
  • tools: move build-native.js to tools (Alexey Orlenko) #89
  • lib: make failed addon loading more informative (Alexey Orlenko) #90
  • w3c-ws: emit missing error event (Alexey Orlenko) #93
  • w3c-ws: fix invalid property access (Alexey Orlenko) #94
  • test: add Node.js 7.7 to .travis.yml (Alexey Orlenko) #95
  • connection: change style of a forward declaration (Alexey Orlenko) #96
  • lib: change multiline function signatures style (Alexey Orlenko) #97
  • tools: generate authors list automatically (Alexey Orlenko) #88
  • meta: update AUTHORS and .mailmap (Alexey Orlenko) #88
  • meta: fix misleading language in LICENSE (Alexey Orlenko) #88
  • connection: check that method arguments exist (Alexey Orlenko) #100

aqrln and others added 19 commits March 14, 2017 00:27
Remove an extra consecutive blank line in `CHANGELOG.md`.

PR-URL: #80
This entry was copied from .gitignore file of Impress (as the whole file
was copied) at some time in the beginning of the project.  I guess, it
had been used by @tshemsedinov long time ago, but now Impress itself
doesn't have such entry in its ignore-files.

The next step will be to review my `dev/` directory, remove the helpers
that I don't need anymore and refactor the rest of them to publicly
available tests and tools to be placed in the corresponding directories
of the repository.

PR-URL: #83
Update the Markdown linting tools.

PR-URL: #87
* Move `build-native.js` to `tools/`
* Update the NPM scripts
* Make `tools/build-native.js` executable

PR-URL: #89
* Make `common.safeRequire` print the reason of failed require() to
  stderr. The error wasn't passed anywhere so the reason was lost
  and could not be delivered to user. When the Record Serialization
  parser could not load its native addon, it always stated that it
  isn't built though the actual reason might be different.

* Fix somewhat misleading language in the error message in
  `lib/record-serialization.js`. The addon is not only used on server.

For example, when the addon was compiled with a wrong version of
`node-gyp`, JSTP used to print:

> JSTP native addon is not built. Run `npm install` in order to build
> it, otherwise you will get poor server performance under load.

and it continued to print the same message however many times `npm
install` was invoked, which is certainly not very helpful.

Now the error message in the same situation looks like this:

> Error: The module
> '/Users/alex/projects/metarhia/JSTP/build/Release/jstp.node'
> was compiled against a different Node.js version using
> NODE_MODULE_VERSION 51. This version of Node.js requires
> NODE_MODULE_VERSION 53. Please try re-compiling or re-installing
> the module (for instance, using `npm rebuild` or `npm install`).
> Error: Cannot find module '../build/Debug/jstp'
> JSTP native addon is not built or is not functional. Run `npm install`
> in order to build it, otherwise you will get poor performance.

and is certainly more helpful since it contains an obvious reference to
ABI incompatibility and makes it possible to troubleshoot it.

PR-URL: #90
s/connection/socketEventEmitter

PR-URL: #94
ESLint complains that a variable is never reassigned if it is declared
like this:

    let variable;
    ...
    variable = value;

Because of this, we had a forward declaration in `connection.js` marked
with a directive for ESLint to ignore the line. This commit changes it
to assignment to null.

PR-URL: #96
Make multiline function signatures more concise.

PR-URL: #97
* Add new `update-authors.js` tool that traverses commit history using
  `git log` and creates authors list.

* Decouple common functions into a module shared between tools.

* Add `.mailmap` file.  This file is automatically parsed by Git so that
  `git log --format='%aN <%aE>'` won't show duplicate entries in case
  something was committed with misconfigured Git.  E.g., without this
  file @tshemsedinov appears twice in the list, as Timur Shemsedinov
  and as tshemsedinov, but with mailmap applied Git automatically
  coalesces these entries to use the full name only.  This file now
  includes the active collaborators (@tshemsedinov for a reason and
  @aqrln and @belochub just in case), proper names and emails of
  contributors who committed with invalid ones should be placed here.

PR-URL: #88
* Add all the contributors using `tools/update-authors.js`.
* Sort the mail map alphabetically.

PR-URL: #88
The common implementation of `application.callMethod()` involves
checking `args.length` which leads to crash if `args` is null or
undefined.  This commit provides a quick-and-dirty patch for only
this vulnerability until the common approach for message sanity
checking will have been developed.

PR-URL: #100
This is a bugfix release.

Notable changes:

 * lib: make failed addon loading more informative
 * w3c-ws: emit missing error event
 * w3c-ws: fix invalid property access
 * connection: check that method arguments exist

PR-URL: #101
@@ -33,6 +33,7 @@ common.safeRequire = (moduleName) => {
try {
return require(moduleName);
} catch (err) {
console.warn(err.toString());
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In future we will redirect this to logging provider. Just don't forget. Better create issue :)
For example in Impress to application.log.warning, if no provider then print to stdout.

Copy link
Member Author

@aqrln aqrln Mar 13, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Better create issue :)

Done :)
#102

@@ -23,9 +23,9 @@ if (jstpNative) {
}
} else {
console.warn(
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also should be redirected to logging provider

Copy link
Member

@belochub belochub left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@aqrln aqrln mentioned this pull request Mar 13, 2017
@aqrln aqrln merged commit dd238d9 into v0.6 Mar 13, 2017
aqrln added a commit that referenced this pull request Mar 13, 2017
This is a bugfix release.

Notable changes:

 * lib: make failed addon loading more informative
 * w3c-ws: emit missing error event
 * w3c-ws: fix invalid property access
 * connection: check that method arguments exist

PR-URL: #101
@aqrln aqrln deleted the v0.6.7-proposal branch March 13, 2017 22:46
belochub pushed a commit that referenced this pull request Jan 22, 2018
This is a bugfix release.

Notable changes:

 * lib: make failed addon loading more informative
 * w3c-ws: emit missing error event
 * w3c-ws: fix invalid property access
 * connection: check that method arguments exist

PR-URL: #101
belochub pushed a commit that referenced this pull request Jan 22, 2018
This is a bugfix release.

Notable changes:

 * lib: make failed addon loading more informative
 * w3c-ws: emit missing error event
 * w3c-ws: fix invalid property access
 * connection: check that method arguments exist

PR-URL: #101
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants