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

Revert "handle_wrap: IsRefed -> Unrefed, no isAlive check" #6546

Merged
merged 2 commits into from
May 11, 2016

Conversation

Fishrock123
Copy link
Contributor

Checklist
  • tests and code linting passes
  • a test and/or benchmark is included
  • the commit message follows commit guidelines
Affected core subsystem(s)

handle_wrap

Description of change

This reverts commit 9bb5a5e.

Refs: #6395
Refs: #6204
Refs: #6401
Refs: #6382
Fixes: #6381

Conflicts:
src/handle_wrap.cc
test/parallel/test-handle-wrap-isrefed-tty.js
test/parallel/test-handle-wrap-isrefed.js

My own stupidity for changing this. cc @bnoordhuis, @jasnell, @trevnorris so this can hopefully be landed properly into a release. (Hopefully this week?..)

@Fishrock123 Fishrock123 added the lib / src Issues and PRs related to general changes in the lib or src directory. label May 3, 2016
@nodejs-github-bot nodejs-github-bot added the c++ Issues and PRs that require attention from people who are familiar with C++. label May 3, 2016
@Fishrock123
Copy link
Contributor Author

@Fishrock123 Fishrock123 mentioned this pull request May 3, 2016
4 tasks
@Fishrock123
Copy link
Contributor Author

Fishrock123 commented May 3, 2016

and here's some proof (kinda) that it actually works (reasonably): #6381 (comment)

@jasnell
Copy link
Member

jasnell commented May 3, 2016

Can you please add some explanation in the commit message about why would be reverted.

@Fishrock123
Copy link
Contributor Author

@jasnell done, ptal

@Fishrock123 Fishrock123 force-pushed the revert-9bb5a5e branch 2 times, most recently from cd80f4b to 2688e45 Compare May 3, 2016 15:37
@jasnell
Copy link
Member

jasnell commented May 3, 2016

Thank you. CI is green. LGTM but want @bnoordhuis and @trevnorris to sign off as well.

@Fishrock123
Copy link
Contributor Author

ping @bnoordhuis & @trevnorris

@bnoordhuis
Copy link
Member

Quick LGTM. Can we rename them now to hasRef() and HasRef() in a follow-up PR? :-)

@Fishrock123
Copy link
Contributor Author

@bnoordhuis I may as well do that in a second commit here then..

@Fishrock123
Copy link
Contributor Author

updated ptal..

@bnoordhuis
Copy link
Member

2nd commit LGTM2.

@Fishrock123
Copy link
Contributor Author

attempting to ping @trevnorris again

@trevnorris
Copy link
Contributor

LGTM. Second commit enough to warrant another CI run?

@Fishrock123
Copy link
Contributor Author

@Fishrock123
Copy link
Contributor Author

CI is green, landing.

This reverts commit 9bb5a5e.

This API is not suitable because it depended on being able to
potentially access the handle's flag after the handle was already
cleaned up. Since this is not actually possible (obviously, oops)
this newer API no longer makes much sense, and the older API is more
suitable.

API comparison:
IsRefed -> Has a strong reference AND is alive. (Deterministic)
Unrefed -> Has a weak reference OR is dead. (Less deterministic)

Refs: nodejs#6395
Refs: nodejs#6204
Refs: nodejs#6401
Refs: nodejs#6382
Fixes: nodejs#6381

PR-URL: nodejs#6546
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>

Conflicts:
	src/handle_wrap.cc
	test/parallel/test-handle-wrap-isrefed-tty.js
	test/parallel/test-handle-wrap-isrefed.js
Rename slightly to HasRef() at bnoordhuis’ request.
Better reflects what we actually do for this check.

Refs: nodejs#6395
Refs: nodejs#6204
Refs: nodejs#6401
Refs: nodejs#6382
Refs: nodejs#6381

PR-URL: nodejs#6546
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
@Fishrock123 Fishrock123 merged commit fe4837a into nodejs:master May 11, 2016
@Fishrock123 Fishrock123 deleted the revert-9bb5a5e branch May 11, 2016 21:45
evanlucas pushed a commit that referenced this pull request May 17, 2016
This reverts commit 9bb5a5e.

This API is not suitable because it depended on being able to
potentially access the handle's flag after the handle was already
cleaned up. Since this is not actually possible (obviously, oops)
this newer API no longer makes much sense, and the older API is more
suitable.

API comparison:
IsRefed -> Has a strong reference AND is alive. (Deterministic)
Unrefed -> Has a weak reference OR is dead. (Less deterministic)

Refs: #6395
Refs: #6204
Refs: #6401
Refs: #6382
Fixes: #6381

PR-URL: #6546
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>

Conflicts:
	src/handle_wrap.cc
	test/parallel/test-handle-wrap-isrefed-tty.js
	test/parallel/test-handle-wrap-isrefed.js
evanlucas pushed a commit that referenced this pull request May 17, 2016
Rename slightly to HasRef() at bnoordhuis’ request.
Better reflects what we actually do for this check.

Refs: #6395
Refs: #6204
Refs: #6401
Refs: #6382
Refs: #6381

PR-URL: #6546
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
@MylesBorins
Copy link
Contributor

@Fishrock123 Added dont-land label. please feel free to make a change if that was incorrect

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ Issues and PRs that require attention from people who are familiar with C++. lib / src Issues and PRs related to general changes in the lib or src directory.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants