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

build: call setlocal in vcbuild.bat #15754

Closed
wants to merge 1 commit into from
Closed

Conversation

danbev
Copy link
Contributor

@danbev danbev commented Oct 3, 2017

Currently the variables set in vcbuild.bat are mostly global and
escape/leak out into the calling process. For example, running
vcbuild.bat test and then echoing the config variable gives:

vcbuild.bat test
...
echo %config%
Release

After this change the same command give:

vcbuild.bat test
...
echo %config%
%config%
Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • commit message follows commit guidelines
Affected core subsystem(s)

build

Currently the variables set in vcbuild.bat are mostly global and
escape/leak out into the calling process. For example, running
vcbuild.bat test and then echoing the config variable gives:

vcbuild.bat test
...
echo %config%
Release

After this change the same command give:
vcbuild.bat test
...
echo %config%
%config%
@nodejs-github-bot nodejs-github-bot added build Issues and PRs related to build files or the CI. windows Issues and PRs related to the Windows platform. labels Oct 3, 2017
@danbev
Copy link
Contributor Author

danbev commented Oct 3, 2017

danbev added a commit to danbev/node that referenced this pull request Oct 5, 2017
Currently the variables set in vcbuild.bat are mostly global and
escape/leak out into the calling process. For example, running
vcbuild.bat test and then echoing the config variable gives:

vcbuild.bat test
...
echo %config%
Release

After this change the same command give:
vcbuild.bat test
...
echo %config%
%config%

PR-URL: nodejs#15754
Reviewed-By: James M Snell <jasnell@gmail.com>
@danbev
Copy link
Contributor Author

danbev commented Oct 5, 2017

Landed in b9a55a9

@danbev danbev closed this Oct 5, 2017
@danbev danbev deleted the setlocal branch October 5, 2017 07:20
MylesBorins pushed a commit that referenced this pull request Oct 7, 2017
Currently the variables set in vcbuild.bat are mostly global and
escape/leak out into the calling process. For example, running
vcbuild.bat test and then echoing the config variable gives:

vcbuild.bat test
...
echo %config%
Release

After this change the same command give:
vcbuild.bat test
...
echo %config%
%config%

PR-URL: #15754
Reviewed-By: James M Snell <jasnell@gmail.com>
@MylesBorins MylesBorins mentioned this pull request Oct 7, 2017
MylesBorins pushed a commit that referenced this pull request Oct 11, 2017
Currently the variables set in vcbuild.bat are mostly global and
escape/leak out into the calling process. For example, running
vcbuild.bat test and then echoing the config variable gives:

vcbuild.bat test
...
echo %config%
Release

After this change the same command give:
vcbuild.bat test
...
echo %config%
%config%

PR-URL: #15754
Reviewed-By: James M Snell <jasnell@gmail.com>
addaleax pushed a commit to addaleax/ayo that referenced this pull request Oct 12, 2017
Currently the variables set in vcbuild.bat are mostly global and
escape/leak out into the calling process. For example, running
vcbuild.bat test and then echoing the config variable gives:

vcbuild.bat test
...
echo %config%
Release

After this change the same command give:
vcbuild.bat test
...
echo %config%
%config%

PR-URL: nodejs/node#15754
Reviewed-By: James M Snell <jasnell@gmail.com>
@MylesBorins
Copy link
Contributor

this landed cleanly on v6.x. LMK if it should be backed out

MylesBorins pushed a commit that referenced this pull request Oct 17, 2017
Currently the variables set in vcbuild.bat are mostly global and
escape/leak out into the calling process. For example, running
vcbuild.bat test and then echoing the config variable gives:

vcbuild.bat test
...
echo %config%
Release

After this change the same command give:
vcbuild.bat test
...
echo %config%
%config%

PR-URL: #15754
Reviewed-By: James M Snell <jasnell@gmail.com>
@MylesBorins MylesBorins mentioned this pull request Oct 17, 2017
@refack
Copy link
Contributor

refack commented Oct 17, 2017

@MylesBorins back it out. This is semver-major

@refack refack added the semver-major PRs that contain breaking changes and should be released in the next major version. label Oct 17, 2017
@refack
Copy link
Contributor

refack commented Oct 17, 2017

This change is semver-major.

@refack
Copy link
Contributor

refack commented Oct 17, 2017

Revert PR: #16270

@refack
Copy link
Contributor

refack commented Oct 17, 2017

Post-mortem: what happened to the "who to CC" procedure? https://github.com/nodejs/node/blob/master/doc/onboarding-extras.md
AFAIK it was created so that things will not slip unreviewed.

@danbev
Copy link
Contributor Author

danbev commented Oct 18, 2017

Apologies for this, I really thought this was a very minor change 😞 Sorry about causing extra work.

Post-mortem: what happened to the "who to CC" procedure?

Even though I'm aware of that section in the docs I've not been using it at all. I'll make sure to use it in future PRs.

@lance
Copy link
Member

lance commented Oct 18, 2017

@refack I think there should be more to the post-mortem than this. There is no specific group or person identified for build in https://github.com/nodejs/node/blob/master/doc/onboarding-extras.md#who-to-cc-in-issues, only platform - e.g. @nodejs/platform-windows. It might be good to update the "who to CC" section with a bit about build: PRs, since it's not immediately obvious that the platform team should have been notified.

To be honest, I'm pretty sure I would have done the same thing here. It's a one line change, reviewed by a TSC member, landing after 48 hours have elapsed. Other than those 48 hours having occurred primarily over a weekend, it seems pretty much by-the-book.

In #16270 you mention that this behavior was discussed several times in the past, but where would one look to know about these discussions? If we can improve the documentation to prevent an error like this in the future, it would be great. Sometimes you just don't know what you don't know.

/cc @jasnell @MylesBorins @addaleax @danbev

@refack
Copy link
Contributor

refack commented Oct 18, 2017

First of all I'm replying here since it's interesting for me to try and learn. not piling on @danbev whom I respect and IMHO did nothing wrong.

@lance I tend to agree with your conclusions.

  1. I would probably have done the same, I don't think the process was broken.
  2. I don't CC enough, both in PRs I open, and PRs I review.
  3. Written knowledge is highly fragmented around the GitHub org, and while code changes can be git blamed, thing that were decided not to do, have no trace except in GitHub comments.

That's why I only touched on the "who to CC" issue, since at the moment more eyeballs is the best heuristic I'm aware of to defragment the "institutional knowledge"

jasnell pushed a commit that referenced this pull request Oct 18, 2017
Make sure contributors know to cc @nodejs/build when submitting issues
that are build related (in addition to whatever platform are relevant).

PR-URL: #16298
Ref: #15754 (comment)
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
@MylesBorins
Copy link
Contributor

I've backed this out of v6.x-staging... we should land the revert commit on 8.x in the next release

@refack
Copy link
Contributor

refack commented Oct 18, 2017

we should land the revert commit on 8.x in the next release

I've noted that down.

@lance
Copy link
Member

lance commented Oct 18, 2017

@refack in this case, is it worth a code comment in vcbuild.bat? I only suggest this because apparently the issue has been discussed and rejected before. I don't know enough about building on Windows to know if it's likely to come up again or not.

I also tend to think of /cc'ing as nagging a bit. That's a misperception on my part for sure. But of course, I cc'd the world in my comment above. :)

MylesBorins pushed a commit that referenced this pull request Oct 23, 2017
Make sure contributors know to cc @nodejs/build when submitting issues
that are build related (in addition to whatever platform are relevant).

PR-URL: #16298
Ref: #15754 (comment)
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
addaleax pushed a commit to ayojs/ayo that referenced this pull request Oct 26, 2017
Make sure contributors know to cc @nodejs/build when submitting issues
that are build related (in addition to whatever platform are relevant).

PR-URL: nodejs/node#16298
Ref: nodejs/node#15754 (comment)
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
addaleax pushed a commit to ayojs/ayo that referenced this pull request Dec 7, 2017
Make sure contributors know to cc @nodejs/build when submitting issues
that are build related (in addition to whatever platform are relevant).

PR-URL: nodejs/node#16298
Ref: nodejs/node#15754 (comment)
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues and PRs related to build files or the CI. semver-major PRs that contain breaking changes and should be released in the next major version. windows Issues and PRs related to the Windows platform.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants