zos: update compiler options and default compiler - #1768

Closed
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos
Closed

zos: update compiler options and default compiler#1768
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos

Conversation

@zsw007

Copy link
Copy Markdown
Contributor
Checklist
  • npm install && npm test passes
  • tests are included
  • documentation is changed or added
  • commit message follows commit guidelines
Description of change
  • updated the z/OS compiler options to support the latest version of Node.js on z/OS
  • on z/OS, the default compiler is njsc/njsc++ instead of gcc/g++, so the parameters in gyp have been updated accordingly

@richardlaurichardlau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Changes look okay to me, but cc @refack regarding the gyp changes.

@rvagg

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

CI to check this doesn't regress other platforms: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/131/ (✔️)

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

Going to check this still works with the recently released z/OS Node.js 8. All being well I plan to merge this later today.

@richardlau

Copy link
Copy Markdown
Member
Tests all pass with the current z/OS Node.js 8 🎉
:/home/riclau/github/node-gyp>npm test
> node-gyp@5.0.0 test /home/riclau/github/node-gyp
> npm run lint && tape test/test-*
> node-gyp@5.0.0 lint /home/riclau/github/node-gyp
> eslint bin lib testTAP version 13
# build simple addonok 1 should be equalok 2 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 3 should be equal
# make sure addon symbols do not overlapok 4 should be equalok 5 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 6 should be equal
# build simple addon in path with non-ascii charactersok 7 python console app can't encode non-ascii character. # SKIP
# addon works with renamed host executableok 8 should be equalok 9 should end in okrunning /tmp/notnodeok 10 should be equal
# configure PYTHONPATH with no existing envok 11 should be equal
# configure PYTHONPATH with existing env of one dirok 12 should be equalok 13 should be equivalent
# configure PYTHONPATH with existing env of multiple dirsok 14 should be equalok 15 should be equivalent
# download over httpok 16 should be equalok 17 should be equal
# download over https with custom caok 18 should be equalok 19 should be equalok 20 should be equal
# download with missing cafileok 21 (unnamed assert)
# check certificate splittingok 22 should be equalok 23 should not be equal
# find accessible - empty arrayok 24 should be equal
# find accessible - single item array, readableok 25 should be equal
# find accessible - single item array, readable in subdirok 26 should be equal
# find accessible - single item array, unreadableok 27 should be equal
# find accessible - multi item array, no matchesok 28 should be equal
# find accessible - multi item array, single matchok 29 should be equal
# find accessible - multi item array, return first matchok 30 should be equal
# test find-node-directory - node installok 31 should be equalok 32 should be equalok 33 should be equalok 34 should be equalok 35 should be equalok 36 should be equal
# test find-node-directory - node buildok 37 should be equalok 38 should be equalok 39 should be equalok 40 should be equalok 41 should be equalok 42 should be equal
# test find-node-directory - node in bin directoryok 43 should be equalok 44 should be equalok 45 should be equalok 46 should be equalok 47 should be equalok 48 should be equal
# test find-node-directory - node in build release dirok 49 should be equalok 50 should be equalok 51 should be equalok 52 should be equalok 53 should be equalok 54 should be equal
# test find-node-directory - node in Debug release dirok 55 should be equalok 56 should be equalok 57 should be equalok 58 should be equalok 59 should be equalok 60 should be equal
# test find-node-directory - not foundok 61 should be equalok 62 should be equalok 63 should be equalok 64 should be equalok 65 should be equalok 66 should be equal
# test find-node-directory - node installok 67 should be equalok 68 should be equalok 69 should be equalok 70 should be equalok 71 should be equalok 72 should be equal
# find pythonok 73 should be equalok 74 should be equalok 75 should be equalok 76 (unnamed assert)
# find python - pythonok 77 should be equalok 78 (unnamed assert)ok 79 should be equalok 80 (unnamed assert)ok 81 should be equalok 82 should be equal
# find python - python too oldok 83 (unnamed assert)ok 84 (unnamed assert)
# find python - python too newok 85 (unnamed assert)ok 86 (unnamed assert)
# find python - no pythonok 87 (unnamed assert)ok 88 (unnamed assert)
# find python - no python2ok 89 should be equalok 90 should be equal
# find python - no python2, no python, unixok 91 (unnamed assert)ok 92 (unnamed assert)
# find python - no python, use python launcherok 93 should not be equalok 94 should not be equalok 95 should be equalok 96 should be equal
# find python - python 3, use python launcherok 97 should not be equalok 98 should not be equalok 99 should be equalok 100 should be equal
# find python - python 3, use python launcher, python 2 too oldok 101 should not be equalok 102 should not be equalok 103 should be equalok 104 should be equalok 105 (unnamed assert)ok 106 (unnamed assert)
# find python - no python, no python launcher, good guessok 107 (unnamed assert)ok 108 (unnamed assert)ok 109 should be equalok 110 (unnamed assert)
# find python - no python, no python launcher, bad guessok 111 (unnamed assert)ok 112 (unnamed assert)
# VS2013ok 113 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\12.0ok 114 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0\MSBuildToolsPathok 115 should be equalok 116 should be equivalent
# VS2013 should not be found on new node versionsok 117 expect errorok 118 no data
# VS2015ok 119 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\14.0ok 120 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\14.0\MSBuildToolsPathok 121 should be equalok 122 should be equivalent
# error from PowerShellok 123 expect errorok 124 no data
# empty output from PowerShellok 125 expect errorok 126 no data
# output from PowerShell not JSONok 127 expect errorok 128 no data
# wrong JSON from PowerShellok 129 expect errorok 130 no data
# empty JSON from PowerShellok 131 expect errorok 132 no data
# future versionok 133 expect errorok 134 expect errorok 135 no data
# single unusable VS2017ok 136 expect errorok 137 expect errorok 138 no data
# minimal VS2017 Build Toolsok 139 should be equalok 140 should be equivalent
# VS2017 Community with C++ workloadok 141 should be equalok 142 should be equivalent
# VS2019 Preview with C++ workloadok 143 should be equalok 144 should be equivalent
# minimal VS2019 Build Toolsok 145 should be equalok 146 should be equivalent
# VS2019 Community with C++ workloadok 147 should be equalok 148 should be equivalent
# fail when looking for invalid pathok 149 expect errorok 150 no data
# look for VS2013 by version numberok 151 should be equalok 152 should be equivalent
# look for VS2013 by installation pathok 153 should be equalok 154 should be equivalent
# look for VS2015 by version numberok 155 should be equalok 156 should be equivalent
# look for VS2015 by installation pathok 157 should be equalok 158 should be equivalent
# look for VS2017 by version numberok 159 should be equalok 160 should be equivalent
# look for VS2017 by installation pathok 161 should be equalok 162 should be equivalent
# look for VS2019 by version numberok 163 should be equalok 164 should be equivalent
# look for VS2017 by installation pathok 165 should be equalok 166 should be equivalent
# latest version should be found by defaultok 167 should be equalok 168 should be equivalent
# run on a usable VS Command Promptok 169 should be equalok 170 should be equivalent
# run on a unusable VS Command Promptok 171 expect errorok 172 no data
# run on a VS Command Prompt with matching msvs_versionok 173 should be equalok 174 should be equivalent
# run on a VS Command Prompt with mismatched msvs_versionok 175 expect errorok 176 no data
# EACCES retry oncegyp WARN EACCES user "RICLAU" does not have permission to access the dev dir "/home/riclau/github/node-gyp/test/8.16.0"gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"gyp WARN install got an error, rolling back installgyp WARN install got an error, rolling back installok 177 (unnamed assert)ok 178 (unnamed assert)ok 179 (unnamed assert)
# options in environmentok 180 should be equivalent
# test process release - process.version = 0.8.20ok 181 should be equalok 182 should be equivalent
# test process release - process.version = 0.10.21ok 183 should be equalok 184 should be equivalent
# test process release - process.version = 0.12.9ok 185 should be equalok 186 should be equivalent
# test process release - process.version = 0.10.41ok 187 should be equalok 188 should be equivalent
# test process release - process.release ~ node@0.10.42ok 189 should be equalok 190 should be equivalent
# test process release - process.release ~ node@0.12.10ok 191 should be equalok 192 should be equivalent
# test process release - process.release ~ node@4.1.23ok 193 should be equalok 194 should be equivalent
# test process release - process.release ~ node@4.1.23 / corp buildok 195 should be equalok 196 should be equivalent
# test process release - process.release ~ node@4.1.23 --target=0.10.40ok 197 should be equalok 198 should be equivalent
# test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/bazgyp verb download using dist-url https://foo.bar/bazok 199 should be equalok 200 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23ok 201 should be equalok 202 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/gyp verb download using dist-url http://foo.bar/baz/ok 203 should be equalok 204 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4ok 205 should be equalok 206 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]ok 207 should be equalok 208 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]ok 209 should be equalok 210 should be equivalent
# test process release - NODEJS_ORG_MIRRORgyp verb download using dist-url http://foo.barok 211 should be equalok 212 should be equivalent1..212
# tests 212
# pass 212
# ok:/home/riclau/github/node-gyp>

richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@richardlau

Copy link
Copy Markdown
Member

Landed in 98a49de...ea9b68e.

@richardlau

Copy link
Copy Markdown
Member

@rvagg AFAICT this should have no effect on the existing non-z/OS platforms so I'll leave it up to you as to whether to include it in the v5.0.1 proposal or leave it for later. The z/OS port of Node.js 8 already includes a patched version of node-gyp for when it is used by the version of npm it includes -- This PR is for cases where modules directly depend on/invoke node-gyp.

@rvagg

Copy link
Copy Markdown
Member

I'll keep 5.0.1 simple and queue up another release after I get it out. thanks @richardlau

rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@rvaggrvagg mentioned this pull request Jun 21, 2019
@richardlau

Copy link
Copy Markdown
Member

Upstreamed the gyp changes to refack/GYP3#47.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@zsw007@rvagg@richardlau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

zos: update compiler options and default compiler - #1768

Closed
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos
Closed

zos: update compiler options and default compiler#1768
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos

Conversation

@zsw007

Copy link
Copy Markdown
Contributor
Checklist
  • npm install && npm test passes
  • tests are included
  • documentation is changed or added
  • commit message follows commit guidelines
Description of change
  • updated the z/OS compiler options to support the latest version of Node.js on z/OS
  • on z/OS, the default compiler is njsc/njsc++ instead of gcc/g++, so the parameters in gyp have been updated accordingly

@richardlaurichardlau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Changes look okay to me, but cc @refack regarding the gyp changes.

@rvagg

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

CI to check this doesn't regress other platforms: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/131/ (✔️)

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

Going to check this still works with the recently released z/OS Node.js 8. All being well I plan to merge this later today.

@richardlau

Copy link
Copy Markdown
Member
Tests all pass with the current z/OS Node.js 8 🎉
:/home/riclau/github/node-gyp>npm test
> node-gyp@5.0.0 test /home/riclau/github/node-gyp
> npm run lint && tape test/test-*
> node-gyp@5.0.0 lint /home/riclau/github/node-gyp
> eslint bin lib testTAP version 13
# build simple addonok 1 should be equalok 2 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 3 should be equal
# make sure addon symbols do not overlapok 4 should be equalok 5 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 6 should be equal
# build simple addon in path with non-ascii charactersok 7 python console app can't encode non-ascii character. # SKIP
# addon works with renamed host executableok 8 should be equalok 9 should end in okrunning /tmp/notnodeok 10 should be equal
# configure PYTHONPATH with no existing envok 11 should be equal
# configure PYTHONPATH with existing env of one dirok 12 should be equalok 13 should be equivalent
# configure PYTHONPATH with existing env of multiple dirsok 14 should be equalok 15 should be equivalent
# download over httpok 16 should be equalok 17 should be equal
# download over https with custom caok 18 should be equalok 19 should be equalok 20 should be equal
# download with missing cafileok 21 (unnamed assert)
# check certificate splittingok 22 should be equalok 23 should not be equal
# find accessible - empty arrayok 24 should be equal
# find accessible - single item array, readableok 25 should be equal
# find accessible - single item array, readable in subdirok 26 should be equal
# find accessible - single item array, unreadableok 27 should be equal
# find accessible - multi item array, no matchesok 28 should be equal
# find accessible - multi item array, single matchok 29 should be equal
# find accessible - multi item array, return first matchok 30 should be equal
# test find-node-directory - node installok 31 should be equalok 32 should be equalok 33 should be equalok 34 should be equalok 35 should be equalok 36 should be equal
# test find-node-directory - node buildok 37 should be equalok 38 should be equalok 39 should be equalok 40 should be equalok 41 should be equalok 42 should be equal
# test find-node-directory - node in bin directoryok 43 should be equalok 44 should be equalok 45 should be equalok 46 should be equalok 47 should be equalok 48 should be equal
# test find-node-directory - node in build release dirok 49 should be equalok 50 should be equalok 51 should be equalok 52 should be equalok 53 should be equalok 54 should be equal
# test find-node-directory - node in Debug release dirok 55 should be equalok 56 should be equalok 57 should be equalok 58 should be equalok 59 should be equalok 60 should be equal
# test find-node-directory - not foundok 61 should be equalok 62 should be equalok 63 should be equalok 64 should be equalok 65 should be equalok 66 should be equal
# test find-node-directory - node installok 67 should be equalok 68 should be equalok 69 should be equalok 70 should be equalok 71 should be equalok 72 should be equal
# find pythonok 73 should be equalok 74 should be equalok 75 should be equalok 76 (unnamed assert)
# find python - pythonok 77 should be equalok 78 (unnamed assert)ok 79 should be equalok 80 (unnamed assert)ok 81 should be equalok 82 should be equal
# find python - python too oldok 83 (unnamed assert)ok 84 (unnamed assert)
# find python - python too newok 85 (unnamed assert)ok 86 (unnamed assert)
# find python - no pythonok 87 (unnamed assert)ok 88 (unnamed assert)
# find python - no python2ok 89 should be equalok 90 should be equal
# find python - no python2, no python, unixok 91 (unnamed assert)ok 92 (unnamed assert)
# find python - no python, use python launcherok 93 should not be equalok 94 should not be equalok 95 should be equalok 96 should be equal
# find python - python 3, use python launcherok 97 should not be equalok 98 should not be equalok 99 should be equalok 100 should be equal
# find python - python 3, use python launcher, python 2 too oldok 101 should not be equalok 102 should not be equalok 103 should be equalok 104 should be equalok 105 (unnamed assert)ok 106 (unnamed assert)
# find python - no python, no python launcher, good guessok 107 (unnamed assert)ok 108 (unnamed assert)ok 109 should be equalok 110 (unnamed assert)
# find python - no python, no python launcher, bad guessok 111 (unnamed assert)ok 112 (unnamed assert)
# VS2013ok 113 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\12.0ok 114 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0\MSBuildToolsPathok 115 should be equalok 116 should be equivalent
# VS2013 should not be found on new node versionsok 117 expect errorok 118 no data
# VS2015ok 119 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\14.0ok 120 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\14.0\MSBuildToolsPathok 121 should be equalok 122 should be equivalent
# error from PowerShellok 123 expect errorok 124 no data
# empty output from PowerShellok 125 expect errorok 126 no data
# output from PowerShell not JSONok 127 expect errorok 128 no data
# wrong JSON from PowerShellok 129 expect errorok 130 no data
# empty JSON from PowerShellok 131 expect errorok 132 no data
# future versionok 133 expect errorok 134 expect errorok 135 no data
# single unusable VS2017ok 136 expect errorok 137 expect errorok 138 no data
# minimal VS2017 Build Toolsok 139 should be equalok 140 should be equivalent
# VS2017 Community with C++ workloadok 141 should be equalok 142 should be equivalent
# VS2019 Preview with C++ workloadok 143 should be equalok 144 should be equivalent
# minimal VS2019 Build Toolsok 145 should be equalok 146 should be equivalent
# VS2019 Community with C++ workloadok 147 should be equalok 148 should be equivalent
# fail when looking for invalid pathok 149 expect errorok 150 no data
# look for VS2013 by version numberok 151 should be equalok 152 should be equivalent
# look for VS2013 by installation pathok 153 should be equalok 154 should be equivalent
# look for VS2015 by version numberok 155 should be equalok 156 should be equivalent
# look for VS2015 by installation pathok 157 should be equalok 158 should be equivalent
# look for VS2017 by version numberok 159 should be equalok 160 should be equivalent
# look for VS2017 by installation pathok 161 should be equalok 162 should be equivalent
# look for VS2019 by version numberok 163 should be equalok 164 should be equivalent
# look for VS2017 by installation pathok 165 should be equalok 166 should be equivalent
# latest version should be found by defaultok 167 should be equalok 168 should be equivalent
# run on a usable VS Command Promptok 169 should be equalok 170 should be equivalent
# run on a unusable VS Command Promptok 171 expect errorok 172 no data
# run on a VS Command Prompt with matching msvs_versionok 173 should be equalok 174 should be equivalent
# run on a VS Command Prompt with mismatched msvs_versionok 175 expect errorok 176 no data
# EACCES retry oncegyp WARN EACCES user "RICLAU" does not have permission to access the dev dir "/home/riclau/github/node-gyp/test/8.16.0"gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"gyp WARN install got an error, rolling back installgyp WARN install got an error, rolling back installok 177 (unnamed assert)ok 178 (unnamed assert)ok 179 (unnamed assert)
# options in environmentok 180 should be equivalent
# test process release - process.version = 0.8.20ok 181 should be equalok 182 should be equivalent
# test process release - process.version = 0.10.21ok 183 should be equalok 184 should be equivalent
# test process release - process.version = 0.12.9ok 185 should be equalok 186 should be equivalent
# test process release - process.version = 0.10.41ok 187 should be equalok 188 should be equivalent
# test process release - process.release ~ node@0.10.42ok 189 should be equalok 190 should be equivalent
# test process release - process.release ~ node@0.12.10ok 191 should be equalok 192 should be equivalent
# test process release - process.release ~ node@4.1.23ok 193 should be equalok 194 should be equivalent
# test process release - process.release ~ node@4.1.23 / corp buildok 195 should be equalok 196 should be equivalent
# test process release - process.release ~ node@4.1.23 --target=0.10.40ok 197 should be equalok 198 should be equivalent
# test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/bazgyp verb download using dist-url https://foo.bar/bazok 199 should be equalok 200 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23ok 201 should be equalok 202 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/gyp verb download using dist-url http://foo.bar/baz/ok 203 should be equalok 204 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4ok 205 should be equalok 206 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]ok 207 should be equalok 208 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]ok 209 should be equalok 210 should be equivalent
# test process release - NODEJS_ORG_MIRRORgyp verb download using dist-url http://foo.barok 211 should be equalok 212 should be equivalent1..212
# tests 212
# pass 212
# ok:/home/riclau/github/node-gyp>

richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@richardlau

Copy link
Copy Markdown
Member

Landed in 98a49de...ea9b68e.

@richardlau

Copy link
Copy Markdown
Member

@rvagg AFAICT this should have no effect on the existing non-z/OS platforms so I'll leave it up to you as to whether to include it in the v5.0.1 proposal or leave it for later. The z/OS port of Node.js 8 already includes a patched version of node-gyp for when it is used by the version of npm it includes -- This PR is for cases where modules directly depend on/invoke node-gyp.

@rvagg

Copy link
Copy Markdown
Member

I'll keep 5.0.1 simple and queue up another release after I get it out. thanks @richardlau

rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@rvaggrvagg mentioned this pull request Jun 21, 2019
@richardlau

Copy link
Copy Markdown
Member

Upstreamed the gyp changes to refack/GYP3#47.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@zsw007@rvagg@richardlau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

zos: update compiler options and default compiler - #1768

Closed
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos
Closed

zos: update compiler options and default compiler#1768
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos

Conversation

@zsw007

Copy link
Copy Markdown
Contributor
Checklist
  • npm install && npm test passes
  • tests are included
  • documentation is changed or added
  • commit message follows commit guidelines
Description of change
  • updated the z/OS compiler options to support the latest version of Node.js on z/OS
  • on z/OS, the default compiler is njsc/njsc++ instead of gcc/g++, so the parameters in gyp have been updated accordingly

@richardlaurichardlau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Changes look okay to me, but cc @refack regarding the gyp changes.

@rvagg

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

CI to check this doesn't regress other platforms: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/131/ (✔️)

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

Going to check this still works with the recently released z/OS Node.js 8. All being well I plan to merge this later today.

@richardlau

Copy link
Copy Markdown
Member
Tests all pass with the current z/OS Node.js 8 🎉
:/home/riclau/github/node-gyp>npm test
> node-gyp@5.0.0 test /home/riclau/github/node-gyp
> npm run lint && tape test/test-*
> node-gyp@5.0.0 lint /home/riclau/github/node-gyp
> eslint bin lib testTAP version 13
# build simple addonok 1 should be equalok 2 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 3 should be equal
# make sure addon symbols do not overlapok 4 should be equalok 5 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 6 should be equal
# build simple addon in path with non-ascii charactersok 7 python console app can't encode non-ascii character. # SKIP
# addon works with renamed host executableok 8 should be equalok 9 should end in okrunning /tmp/notnodeok 10 should be equal
# configure PYTHONPATH with no existing envok 11 should be equal
# configure PYTHONPATH with existing env of one dirok 12 should be equalok 13 should be equivalent
# configure PYTHONPATH with existing env of multiple dirsok 14 should be equalok 15 should be equivalent
# download over httpok 16 should be equalok 17 should be equal
# download over https with custom caok 18 should be equalok 19 should be equalok 20 should be equal
# download with missing cafileok 21 (unnamed assert)
# check certificate splittingok 22 should be equalok 23 should not be equal
# find accessible - empty arrayok 24 should be equal
# find accessible - single item array, readableok 25 should be equal
# find accessible - single item array, readable in subdirok 26 should be equal
# find accessible - single item array, unreadableok 27 should be equal
# find accessible - multi item array, no matchesok 28 should be equal
# find accessible - multi item array, single matchok 29 should be equal
# find accessible - multi item array, return first matchok 30 should be equal
# test find-node-directory - node installok 31 should be equalok 32 should be equalok 33 should be equalok 34 should be equalok 35 should be equalok 36 should be equal
# test find-node-directory - node buildok 37 should be equalok 38 should be equalok 39 should be equalok 40 should be equalok 41 should be equalok 42 should be equal
# test find-node-directory - node in bin directoryok 43 should be equalok 44 should be equalok 45 should be equalok 46 should be equalok 47 should be equalok 48 should be equal
# test find-node-directory - node in build release dirok 49 should be equalok 50 should be equalok 51 should be equalok 52 should be equalok 53 should be equalok 54 should be equal
# test find-node-directory - node in Debug release dirok 55 should be equalok 56 should be equalok 57 should be equalok 58 should be equalok 59 should be equalok 60 should be equal
# test find-node-directory - not foundok 61 should be equalok 62 should be equalok 63 should be equalok 64 should be equalok 65 should be equalok 66 should be equal
# test find-node-directory - node installok 67 should be equalok 68 should be equalok 69 should be equalok 70 should be equalok 71 should be equalok 72 should be equal
# find pythonok 73 should be equalok 74 should be equalok 75 should be equalok 76 (unnamed assert)
# find python - pythonok 77 should be equalok 78 (unnamed assert)ok 79 should be equalok 80 (unnamed assert)ok 81 should be equalok 82 should be equal
# find python - python too oldok 83 (unnamed assert)ok 84 (unnamed assert)
# find python - python too newok 85 (unnamed assert)ok 86 (unnamed assert)
# find python - no pythonok 87 (unnamed assert)ok 88 (unnamed assert)
# find python - no python2ok 89 should be equalok 90 should be equal
# find python - no python2, no python, unixok 91 (unnamed assert)ok 92 (unnamed assert)
# find python - no python, use python launcherok 93 should not be equalok 94 should not be equalok 95 should be equalok 96 should be equal
# find python - python 3, use python launcherok 97 should not be equalok 98 should not be equalok 99 should be equalok 100 should be equal
# find python - python 3, use python launcher, python 2 too oldok 101 should not be equalok 102 should not be equalok 103 should be equalok 104 should be equalok 105 (unnamed assert)ok 106 (unnamed assert)
# find python - no python, no python launcher, good guessok 107 (unnamed assert)ok 108 (unnamed assert)ok 109 should be equalok 110 (unnamed assert)
# find python - no python, no python launcher, bad guessok 111 (unnamed assert)ok 112 (unnamed assert)
# VS2013ok 113 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\12.0ok 114 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0\MSBuildToolsPathok 115 should be equalok 116 should be equivalent
# VS2013 should not be found on new node versionsok 117 expect errorok 118 no data
# VS2015ok 119 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\14.0ok 120 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\14.0\MSBuildToolsPathok 121 should be equalok 122 should be equivalent
# error from PowerShellok 123 expect errorok 124 no data
# empty output from PowerShellok 125 expect errorok 126 no data
# output from PowerShell not JSONok 127 expect errorok 128 no data
# wrong JSON from PowerShellok 129 expect errorok 130 no data
# empty JSON from PowerShellok 131 expect errorok 132 no data
# future versionok 133 expect errorok 134 expect errorok 135 no data
# single unusable VS2017ok 136 expect errorok 137 expect errorok 138 no data
# minimal VS2017 Build Toolsok 139 should be equalok 140 should be equivalent
# VS2017 Community with C++ workloadok 141 should be equalok 142 should be equivalent
# VS2019 Preview with C++ workloadok 143 should be equalok 144 should be equivalent
# minimal VS2019 Build Toolsok 145 should be equalok 146 should be equivalent
# VS2019 Community with C++ workloadok 147 should be equalok 148 should be equivalent
# fail when looking for invalid pathok 149 expect errorok 150 no data
# look for VS2013 by version numberok 151 should be equalok 152 should be equivalent
# look for VS2013 by installation pathok 153 should be equalok 154 should be equivalent
# look for VS2015 by version numberok 155 should be equalok 156 should be equivalent
# look for VS2015 by installation pathok 157 should be equalok 158 should be equivalent
# look for VS2017 by version numberok 159 should be equalok 160 should be equivalent
# look for VS2017 by installation pathok 161 should be equalok 162 should be equivalent
# look for VS2019 by version numberok 163 should be equalok 164 should be equivalent
# look for VS2017 by installation pathok 165 should be equalok 166 should be equivalent
# latest version should be found by defaultok 167 should be equalok 168 should be equivalent
# run on a usable VS Command Promptok 169 should be equalok 170 should be equivalent
# run on a unusable VS Command Promptok 171 expect errorok 172 no data
# run on a VS Command Prompt with matching msvs_versionok 173 should be equalok 174 should be equivalent
# run on a VS Command Prompt with mismatched msvs_versionok 175 expect errorok 176 no data
# EACCES retry oncegyp WARN EACCES user "RICLAU" does not have permission to access the dev dir "/home/riclau/github/node-gyp/test/8.16.0"gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"gyp WARN install got an error, rolling back installgyp WARN install got an error, rolling back installok 177 (unnamed assert)ok 178 (unnamed assert)ok 179 (unnamed assert)
# options in environmentok 180 should be equivalent
# test process release - process.version = 0.8.20ok 181 should be equalok 182 should be equivalent
# test process release - process.version = 0.10.21ok 183 should be equalok 184 should be equivalent
# test process release - process.version = 0.12.9ok 185 should be equalok 186 should be equivalent
# test process release - process.version = 0.10.41ok 187 should be equalok 188 should be equivalent
# test process release - process.release ~ node@0.10.42ok 189 should be equalok 190 should be equivalent
# test process release - process.release ~ node@0.12.10ok 191 should be equalok 192 should be equivalent
# test process release - process.release ~ node@4.1.23ok 193 should be equalok 194 should be equivalent
# test process release - process.release ~ node@4.1.23 / corp buildok 195 should be equalok 196 should be equivalent
# test process release - process.release ~ node@4.1.23 --target=0.10.40ok 197 should be equalok 198 should be equivalent
# test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/bazgyp verb download using dist-url https://foo.bar/bazok 199 should be equalok 200 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23ok 201 should be equalok 202 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/gyp verb download using dist-url http://foo.bar/baz/ok 203 should be equalok 204 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4ok 205 should be equalok 206 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]ok 207 should be equalok 208 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]ok 209 should be equalok 210 should be equivalent
# test process release - NODEJS_ORG_MIRRORgyp verb download using dist-url http://foo.barok 211 should be equalok 212 should be equivalent1..212
# tests 212
# pass 212
# ok:/home/riclau/github/node-gyp>

richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@richardlau

Copy link
Copy Markdown
Member

Landed in 98a49de...ea9b68e.

@richardlau

Copy link
Copy Markdown
Member

@rvagg AFAICT this should have no effect on the existing non-z/OS platforms so I'll leave it up to you as to whether to include it in the v5.0.1 proposal or leave it for later. The z/OS port of Node.js 8 already includes a patched version of node-gyp for when it is used by the version of npm it includes -- This PR is for cases where modules directly depend on/invoke node-gyp.

@rvagg

Copy link
Copy Markdown
Member

I'll keep 5.0.1 simple and queue up another release after I get it out. thanks @richardlau

rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@rvaggrvagg mentioned this pull request Jun 21, 2019
@richardlau

Copy link
Copy Markdown
Member

Upstreamed the gyp changes to refack/GYP3#47.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@zsw007@rvagg@richardlau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

zos: update compiler options and default compiler - #1768

Closed
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos
Closed

zos: update compiler options and default compiler#1768
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos

Conversation

@zsw007

Copy link
Copy Markdown
Contributor
Checklist
  • npm install && npm test passes
  • tests are included
  • documentation is changed or added
  • commit message follows commit guidelines
Description of change
  • updated the z/OS compiler options to support the latest version of Node.js on z/OS
  • on z/OS, the default compiler is njsc/njsc++ instead of gcc/g++, so the parameters in gyp have been updated accordingly

@richardlaurichardlau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Changes look okay to me, but cc @refack regarding the gyp changes.

@rvagg

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

CI to check this doesn't regress other platforms: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/131/ (✔️)

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

Going to check this still works with the recently released z/OS Node.js 8. All being well I plan to merge this later today.

@richardlau

Copy link
Copy Markdown
Member
Tests all pass with the current z/OS Node.js 8 🎉
:/home/riclau/github/node-gyp>npm test
> node-gyp@5.0.0 test /home/riclau/github/node-gyp
> npm run lint && tape test/test-*
> node-gyp@5.0.0 lint /home/riclau/github/node-gyp
> eslint bin lib testTAP version 13
# build simple addonok 1 should be equalok 2 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 3 should be equal
# make sure addon symbols do not overlapok 4 should be equalok 5 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 6 should be equal
# build simple addon in path with non-ascii charactersok 7 python console app can't encode non-ascii character. # SKIP
# addon works with renamed host executableok 8 should be equalok 9 should end in okrunning /tmp/notnodeok 10 should be equal
# configure PYTHONPATH with no existing envok 11 should be equal
# configure PYTHONPATH with existing env of one dirok 12 should be equalok 13 should be equivalent
# configure PYTHONPATH with existing env of multiple dirsok 14 should be equalok 15 should be equivalent
# download over httpok 16 should be equalok 17 should be equal
# download over https with custom caok 18 should be equalok 19 should be equalok 20 should be equal
# download with missing cafileok 21 (unnamed assert)
# check certificate splittingok 22 should be equalok 23 should not be equal
# find accessible - empty arrayok 24 should be equal
# find accessible - single item array, readableok 25 should be equal
# find accessible - single item array, readable in subdirok 26 should be equal
# find accessible - single item array, unreadableok 27 should be equal
# find accessible - multi item array, no matchesok 28 should be equal
# find accessible - multi item array, single matchok 29 should be equal
# find accessible - multi item array, return first matchok 30 should be equal
# test find-node-directory - node installok 31 should be equalok 32 should be equalok 33 should be equalok 34 should be equalok 35 should be equalok 36 should be equal
# test find-node-directory - node buildok 37 should be equalok 38 should be equalok 39 should be equalok 40 should be equalok 41 should be equalok 42 should be equal
# test find-node-directory - node in bin directoryok 43 should be equalok 44 should be equalok 45 should be equalok 46 should be equalok 47 should be equalok 48 should be equal
# test find-node-directory - node in build release dirok 49 should be equalok 50 should be equalok 51 should be equalok 52 should be equalok 53 should be equalok 54 should be equal
# test find-node-directory - node in Debug release dirok 55 should be equalok 56 should be equalok 57 should be equalok 58 should be equalok 59 should be equalok 60 should be equal
# test find-node-directory - not foundok 61 should be equalok 62 should be equalok 63 should be equalok 64 should be equalok 65 should be equalok 66 should be equal
# test find-node-directory - node installok 67 should be equalok 68 should be equalok 69 should be equalok 70 should be equalok 71 should be equalok 72 should be equal
# find pythonok 73 should be equalok 74 should be equalok 75 should be equalok 76 (unnamed assert)
# find python - pythonok 77 should be equalok 78 (unnamed assert)ok 79 should be equalok 80 (unnamed assert)ok 81 should be equalok 82 should be equal
# find python - python too oldok 83 (unnamed assert)ok 84 (unnamed assert)
# find python - python too newok 85 (unnamed assert)ok 86 (unnamed assert)
# find python - no pythonok 87 (unnamed assert)ok 88 (unnamed assert)
# find python - no python2ok 89 should be equalok 90 should be equal
# find python - no python2, no python, unixok 91 (unnamed assert)ok 92 (unnamed assert)
# find python - no python, use python launcherok 93 should not be equalok 94 should not be equalok 95 should be equalok 96 should be equal
# find python - python 3, use python launcherok 97 should not be equalok 98 should not be equalok 99 should be equalok 100 should be equal
# find python - python 3, use python launcher, python 2 too oldok 101 should not be equalok 102 should not be equalok 103 should be equalok 104 should be equalok 105 (unnamed assert)ok 106 (unnamed assert)
# find python - no python, no python launcher, good guessok 107 (unnamed assert)ok 108 (unnamed assert)ok 109 should be equalok 110 (unnamed assert)
# find python - no python, no python launcher, bad guessok 111 (unnamed assert)ok 112 (unnamed assert)
# VS2013ok 113 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\12.0ok 114 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0\MSBuildToolsPathok 115 should be equalok 116 should be equivalent
# VS2013 should not be found on new node versionsok 117 expect errorok 118 no data
# VS2015ok 119 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\14.0ok 120 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\14.0\MSBuildToolsPathok 121 should be equalok 122 should be equivalent
# error from PowerShellok 123 expect errorok 124 no data
# empty output from PowerShellok 125 expect errorok 126 no data
# output from PowerShell not JSONok 127 expect errorok 128 no data
# wrong JSON from PowerShellok 129 expect errorok 130 no data
# empty JSON from PowerShellok 131 expect errorok 132 no data
# future versionok 133 expect errorok 134 expect errorok 135 no data
# single unusable VS2017ok 136 expect errorok 137 expect errorok 138 no data
# minimal VS2017 Build Toolsok 139 should be equalok 140 should be equivalent
# VS2017 Community with C++ workloadok 141 should be equalok 142 should be equivalent
# VS2019 Preview with C++ workloadok 143 should be equalok 144 should be equivalent
# minimal VS2019 Build Toolsok 145 should be equalok 146 should be equivalent
# VS2019 Community with C++ workloadok 147 should be equalok 148 should be equivalent
# fail when looking for invalid pathok 149 expect errorok 150 no data
# look for VS2013 by version numberok 151 should be equalok 152 should be equivalent
# look for VS2013 by installation pathok 153 should be equalok 154 should be equivalent
# look for VS2015 by version numberok 155 should be equalok 156 should be equivalent
# look for VS2015 by installation pathok 157 should be equalok 158 should be equivalent
# look for VS2017 by version numberok 159 should be equalok 160 should be equivalent
# look for VS2017 by installation pathok 161 should be equalok 162 should be equivalent
# look for VS2019 by version numberok 163 should be equalok 164 should be equivalent
# look for VS2017 by installation pathok 165 should be equalok 166 should be equivalent
# latest version should be found by defaultok 167 should be equalok 168 should be equivalent
# run on a usable VS Command Promptok 169 should be equalok 170 should be equivalent
# run on a unusable VS Command Promptok 171 expect errorok 172 no data
# run on a VS Command Prompt with matching msvs_versionok 173 should be equalok 174 should be equivalent
# run on a VS Command Prompt with mismatched msvs_versionok 175 expect errorok 176 no data
# EACCES retry oncegyp WARN EACCES user "RICLAU" does not have permission to access the dev dir "/home/riclau/github/node-gyp/test/8.16.0"gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"gyp WARN install got an error, rolling back installgyp WARN install got an error, rolling back installok 177 (unnamed assert)ok 178 (unnamed assert)ok 179 (unnamed assert)
# options in environmentok 180 should be equivalent
# test process release - process.version = 0.8.20ok 181 should be equalok 182 should be equivalent
# test process release - process.version = 0.10.21ok 183 should be equalok 184 should be equivalent
# test process release - process.version = 0.12.9ok 185 should be equalok 186 should be equivalent
# test process release - process.version = 0.10.41ok 187 should be equalok 188 should be equivalent
# test process release - process.release ~ node@0.10.42ok 189 should be equalok 190 should be equivalent
# test process release - process.release ~ node@0.12.10ok 191 should be equalok 192 should be equivalent
# test process release - process.release ~ node@4.1.23ok 193 should be equalok 194 should be equivalent
# test process release - process.release ~ node@4.1.23 / corp buildok 195 should be equalok 196 should be equivalent
# test process release - process.release ~ node@4.1.23 --target=0.10.40ok 197 should be equalok 198 should be equivalent
# test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/bazgyp verb download using dist-url https://foo.bar/bazok 199 should be equalok 200 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23ok 201 should be equalok 202 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/gyp verb download using dist-url http://foo.bar/baz/ok 203 should be equalok 204 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4ok 205 should be equalok 206 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]ok 207 should be equalok 208 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]ok 209 should be equalok 210 should be equivalent
# test process release - NODEJS_ORG_MIRRORgyp verb download using dist-url http://foo.barok 211 should be equalok 212 should be equivalent1..212
# tests 212
# pass 212
# ok:/home/riclau/github/node-gyp>

richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@richardlau

Copy link
Copy Markdown
Member

Landed in 98a49de...ea9b68e.

@richardlau

Copy link
Copy Markdown
Member

@rvagg AFAICT this should have no effect on the existing non-z/OS platforms so I'll leave it up to you as to whether to include it in the v5.0.1 proposal or leave it for later. The z/OS port of Node.js 8 already includes a patched version of node-gyp for when it is used by the version of npm it includes -- This PR is for cases where modules directly depend on/invoke node-gyp.

@rvagg

Copy link
Copy Markdown
Member

I'll keep 5.0.1 simple and queue up another release after I get it out. thanks @richardlau

rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@rvaggrvagg mentioned this pull request Jun 21, 2019
@richardlau

Copy link
Copy Markdown
Member

Upstreamed the gyp changes to refack/GYP3#47.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@zsw007@rvagg@richardlau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

zos: update compiler options and default compiler - #1768

Closed
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos
Closed

zos: update compiler options and default compiler#1768
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos

Conversation

@zsw007

Copy link
Copy Markdown
Contributor
Checklist
  • npm install && npm test passes
  • tests are included
  • documentation is changed or added
  • commit message follows commit guidelines
Description of change
  • updated the z/OS compiler options to support the latest version of Node.js on z/OS
  • on z/OS, the default compiler is njsc/njsc++ instead of gcc/g++, so the parameters in gyp have been updated accordingly

@richardlaurichardlau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Changes look okay to me, but cc @refack regarding the gyp changes.

@rvagg

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

CI to check this doesn't regress other platforms: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/131/ (✔️)

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

Going to check this still works with the recently released z/OS Node.js 8. All being well I plan to merge this later today.

@richardlau

Copy link
Copy Markdown
Member
Tests all pass with the current z/OS Node.js 8 🎉
:/home/riclau/github/node-gyp>npm test
> node-gyp@5.0.0 test /home/riclau/github/node-gyp
> npm run lint && tape test/test-*
> node-gyp@5.0.0 lint /home/riclau/github/node-gyp
> eslint bin lib testTAP version 13
# build simple addonok 1 should be equalok 2 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 3 should be equal
# make sure addon symbols do not overlapok 4 should be equalok 5 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 6 should be equal
# build simple addon in path with non-ascii charactersok 7 python console app can't encode non-ascii character. # SKIP
# addon works with renamed host executableok 8 should be equalok 9 should end in okrunning /tmp/notnodeok 10 should be equal
# configure PYTHONPATH with no existing envok 11 should be equal
# configure PYTHONPATH with existing env of one dirok 12 should be equalok 13 should be equivalent
# configure PYTHONPATH with existing env of multiple dirsok 14 should be equalok 15 should be equivalent
# download over httpok 16 should be equalok 17 should be equal
# download over https with custom caok 18 should be equalok 19 should be equalok 20 should be equal
# download with missing cafileok 21 (unnamed assert)
# check certificate splittingok 22 should be equalok 23 should not be equal
# find accessible - empty arrayok 24 should be equal
# find accessible - single item array, readableok 25 should be equal
# find accessible - single item array, readable in subdirok 26 should be equal
# find accessible - single item array, unreadableok 27 should be equal
# find accessible - multi item array, no matchesok 28 should be equal
# find accessible - multi item array, single matchok 29 should be equal
# find accessible - multi item array, return first matchok 30 should be equal
# test find-node-directory - node installok 31 should be equalok 32 should be equalok 33 should be equalok 34 should be equalok 35 should be equalok 36 should be equal
# test find-node-directory - node buildok 37 should be equalok 38 should be equalok 39 should be equalok 40 should be equalok 41 should be equalok 42 should be equal
# test find-node-directory - node in bin directoryok 43 should be equalok 44 should be equalok 45 should be equalok 46 should be equalok 47 should be equalok 48 should be equal
# test find-node-directory - node in build release dirok 49 should be equalok 50 should be equalok 51 should be equalok 52 should be equalok 53 should be equalok 54 should be equal
# test find-node-directory - node in Debug release dirok 55 should be equalok 56 should be equalok 57 should be equalok 58 should be equalok 59 should be equalok 60 should be equal
# test find-node-directory - not foundok 61 should be equalok 62 should be equalok 63 should be equalok 64 should be equalok 65 should be equalok 66 should be equal
# test find-node-directory - node installok 67 should be equalok 68 should be equalok 69 should be equalok 70 should be equalok 71 should be equalok 72 should be equal
# find pythonok 73 should be equalok 74 should be equalok 75 should be equalok 76 (unnamed assert)
# find python - pythonok 77 should be equalok 78 (unnamed assert)ok 79 should be equalok 80 (unnamed assert)ok 81 should be equalok 82 should be equal
# find python - python too oldok 83 (unnamed assert)ok 84 (unnamed assert)
# find python - python too newok 85 (unnamed assert)ok 86 (unnamed assert)
# find python - no pythonok 87 (unnamed assert)ok 88 (unnamed assert)
# find python - no python2ok 89 should be equalok 90 should be equal
# find python - no python2, no python, unixok 91 (unnamed assert)ok 92 (unnamed assert)
# find python - no python, use python launcherok 93 should not be equalok 94 should not be equalok 95 should be equalok 96 should be equal
# find python - python 3, use python launcherok 97 should not be equalok 98 should not be equalok 99 should be equalok 100 should be equal
# find python - python 3, use python launcher, python 2 too oldok 101 should not be equalok 102 should not be equalok 103 should be equalok 104 should be equalok 105 (unnamed assert)ok 106 (unnamed assert)
# find python - no python, no python launcher, good guessok 107 (unnamed assert)ok 108 (unnamed assert)ok 109 should be equalok 110 (unnamed assert)
# find python - no python, no python launcher, bad guessok 111 (unnamed assert)ok 112 (unnamed assert)
# VS2013ok 113 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\12.0ok 114 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0\MSBuildToolsPathok 115 should be equalok 116 should be equivalent
# VS2013 should not be found on new node versionsok 117 expect errorok 118 no data
# VS2015ok 119 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\14.0ok 120 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\14.0\MSBuildToolsPathok 121 should be equalok 122 should be equivalent
# error from PowerShellok 123 expect errorok 124 no data
# empty output from PowerShellok 125 expect errorok 126 no data
# output from PowerShell not JSONok 127 expect errorok 128 no data
# wrong JSON from PowerShellok 129 expect errorok 130 no data
# empty JSON from PowerShellok 131 expect errorok 132 no data
# future versionok 133 expect errorok 134 expect errorok 135 no data
# single unusable VS2017ok 136 expect errorok 137 expect errorok 138 no data
# minimal VS2017 Build Toolsok 139 should be equalok 140 should be equivalent
# VS2017 Community with C++ workloadok 141 should be equalok 142 should be equivalent
# VS2019 Preview with C++ workloadok 143 should be equalok 144 should be equivalent
# minimal VS2019 Build Toolsok 145 should be equalok 146 should be equivalent
# VS2019 Community with C++ workloadok 147 should be equalok 148 should be equivalent
# fail when looking for invalid pathok 149 expect errorok 150 no data
# look for VS2013 by version numberok 151 should be equalok 152 should be equivalent
# look for VS2013 by installation pathok 153 should be equalok 154 should be equivalent
# look for VS2015 by version numberok 155 should be equalok 156 should be equivalent
# look for VS2015 by installation pathok 157 should be equalok 158 should be equivalent
# look for VS2017 by version numberok 159 should be equalok 160 should be equivalent
# look for VS2017 by installation pathok 161 should be equalok 162 should be equivalent
# look for VS2019 by version numberok 163 should be equalok 164 should be equivalent
# look for VS2017 by installation pathok 165 should be equalok 166 should be equivalent
# latest version should be found by defaultok 167 should be equalok 168 should be equivalent
# run on a usable VS Command Promptok 169 should be equalok 170 should be equivalent
# run on a unusable VS Command Promptok 171 expect errorok 172 no data
# run on a VS Command Prompt with matching msvs_versionok 173 should be equalok 174 should be equivalent
# run on a VS Command Prompt with mismatched msvs_versionok 175 expect errorok 176 no data
# EACCES retry oncegyp WARN EACCES user "RICLAU" does not have permission to access the dev dir "/home/riclau/github/node-gyp/test/8.16.0"gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"gyp WARN install got an error, rolling back installgyp WARN install got an error, rolling back installok 177 (unnamed assert)ok 178 (unnamed assert)ok 179 (unnamed assert)
# options in environmentok 180 should be equivalent
# test process release - process.version = 0.8.20ok 181 should be equalok 182 should be equivalent
# test process release - process.version = 0.10.21ok 183 should be equalok 184 should be equivalent
# test process release - process.version = 0.12.9ok 185 should be equalok 186 should be equivalent
# test process release - process.version = 0.10.41ok 187 should be equalok 188 should be equivalent
# test process release - process.release ~ node@0.10.42ok 189 should be equalok 190 should be equivalent
# test process release - process.release ~ node@0.12.10ok 191 should be equalok 192 should be equivalent
# test process release - process.release ~ node@4.1.23ok 193 should be equalok 194 should be equivalent
# test process release - process.release ~ node@4.1.23 / corp buildok 195 should be equalok 196 should be equivalent
# test process release - process.release ~ node@4.1.23 --target=0.10.40ok 197 should be equalok 198 should be equivalent
# test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/bazgyp verb download using dist-url https://foo.bar/bazok 199 should be equalok 200 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23ok 201 should be equalok 202 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/gyp verb download using dist-url http://foo.bar/baz/ok 203 should be equalok 204 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4ok 205 should be equalok 206 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]ok 207 should be equalok 208 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]ok 209 should be equalok 210 should be equivalent
# test process release - NODEJS_ORG_MIRRORgyp verb download using dist-url http://foo.barok 211 should be equalok 212 should be equivalent1..212
# tests 212
# pass 212
# ok:/home/riclau/github/node-gyp>

richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@richardlau

Copy link
Copy Markdown
Member

Landed in 98a49de...ea9b68e.

@richardlau

Copy link
Copy Markdown
Member

@rvagg AFAICT this should have no effect on the existing non-z/OS platforms so I'll leave it up to you as to whether to include it in the v5.0.1 proposal or leave it for later. The z/OS port of Node.js 8 already includes a patched version of node-gyp for when it is used by the version of npm it includes -- This PR is for cases where modules directly depend on/invoke node-gyp.

@rvagg

Copy link
Copy Markdown
Member

I'll keep 5.0.1 simple and queue up another release after I get it out. thanks @richardlau

rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@rvaggrvagg mentioned this pull request Jun 21, 2019
@richardlau

Copy link
Copy Markdown
Member

Upstreamed the gyp changes to refack/GYP3#47.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@zsw007@rvagg@richardlau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

zos: update compiler options and default compiler - #1768

Closed
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos
Closed

zos: update compiler options and default compiler#1768
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos

Conversation

@zsw007

Copy link
Copy Markdown
Contributor
Checklist
  • npm install && npm test passes
  • tests are included
  • documentation is changed or added
  • commit message follows commit guidelines
Description of change
  • updated the z/OS compiler options to support the latest version of Node.js on z/OS
  • on z/OS, the default compiler is njsc/njsc++ instead of gcc/g++, so the parameters in gyp have been updated accordingly

@richardlaurichardlau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Changes look okay to me, but cc @refack regarding the gyp changes.

@rvagg

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

CI to check this doesn't regress other platforms: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/131/ (✔️)

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

Going to check this still works with the recently released z/OS Node.js 8. All being well I plan to merge this later today.

@richardlau

Copy link
Copy Markdown
Member
Tests all pass with the current z/OS Node.js 8 🎉
:/home/riclau/github/node-gyp>npm test
> node-gyp@5.0.0 test /home/riclau/github/node-gyp
> npm run lint && tape test/test-*
> node-gyp@5.0.0 lint /home/riclau/github/node-gyp
> eslint bin lib testTAP version 13
# build simple addonok 1 should be equalok 2 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 3 should be equal
# make sure addon symbols do not overlapok 4 should be equalok 5 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 6 should be equal
# build simple addon in path with non-ascii charactersok 7 python console app can't encode non-ascii character. # SKIP
# addon works with renamed host executableok 8 should be equalok 9 should end in okrunning /tmp/notnodeok 10 should be equal
# configure PYTHONPATH with no existing envok 11 should be equal
# configure PYTHONPATH with existing env of one dirok 12 should be equalok 13 should be equivalent
# configure PYTHONPATH with existing env of multiple dirsok 14 should be equalok 15 should be equivalent
# download over httpok 16 should be equalok 17 should be equal
# download over https with custom caok 18 should be equalok 19 should be equalok 20 should be equal
# download with missing cafileok 21 (unnamed assert)
# check certificate splittingok 22 should be equalok 23 should not be equal
# find accessible - empty arrayok 24 should be equal
# find accessible - single item array, readableok 25 should be equal
# find accessible - single item array, readable in subdirok 26 should be equal
# find accessible - single item array, unreadableok 27 should be equal
# find accessible - multi item array, no matchesok 28 should be equal
# find accessible - multi item array, single matchok 29 should be equal
# find accessible - multi item array, return first matchok 30 should be equal
# test find-node-directory - node installok 31 should be equalok 32 should be equalok 33 should be equalok 34 should be equalok 35 should be equalok 36 should be equal
# test find-node-directory - node buildok 37 should be equalok 38 should be equalok 39 should be equalok 40 should be equalok 41 should be equalok 42 should be equal
# test find-node-directory - node in bin directoryok 43 should be equalok 44 should be equalok 45 should be equalok 46 should be equalok 47 should be equalok 48 should be equal
# test find-node-directory - node in build release dirok 49 should be equalok 50 should be equalok 51 should be equalok 52 should be equalok 53 should be equalok 54 should be equal
# test find-node-directory - node in Debug release dirok 55 should be equalok 56 should be equalok 57 should be equalok 58 should be equalok 59 should be equalok 60 should be equal
# test find-node-directory - not foundok 61 should be equalok 62 should be equalok 63 should be equalok 64 should be equalok 65 should be equalok 66 should be equal
# test find-node-directory - node installok 67 should be equalok 68 should be equalok 69 should be equalok 70 should be equalok 71 should be equalok 72 should be equal
# find pythonok 73 should be equalok 74 should be equalok 75 should be equalok 76 (unnamed assert)
# find python - pythonok 77 should be equalok 78 (unnamed assert)ok 79 should be equalok 80 (unnamed assert)ok 81 should be equalok 82 should be equal
# find python - python too oldok 83 (unnamed assert)ok 84 (unnamed assert)
# find python - python too newok 85 (unnamed assert)ok 86 (unnamed assert)
# find python - no pythonok 87 (unnamed assert)ok 88 (unnamed assert)
# find python - no python2ok 89 should be equalok 90 should be equal
# find python - no python2, no python, unixok 91 (unnamed assert)ok 92 (unnamed assert)
# find python - no python, use python launcherok 93 should not be equalok 94 should not be equalok 95 should be equalok 96 should be equal
# find python - python 3, use python launcherok 97 should not be equalok 98 should not be equalok 99 should be equalok 100 should be equal
# find python - python 3, use python launcher, python 2 too oldok 101 should not be equalok 102 should not be equalok 103 should be equalok 104 should be equalok 105 (unnamed assert)ok 106 (unnamed assert)
# find python - no python, no python launcher, good guessok 107 (unnamed assert)ok 108 (unnamed assert)ok 109 should be equalok 110 (unnamed assert)
# find python - no python, no python launcher, bad guessok 111 (unnamed assert)ok 112 (unnamed assert)
# VS2013ok 113 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\12.0ok 114 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0\MSBuildToolsPathok 115 should be equalok 116 should be equivalent
# VS2013 should not be found on new node versionsok 117 expect errorok 118 no data
# VS2015ok 119 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\14.0ok 120 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\14.0\MSBuildToolsPathok 121 should be equalok 122 should be equivalent
# error from PowerShellok 123 expect errorok 124 no data
# empty output from PowerShellok 125 expect errorok 126 no data
# output from PowerShell not JSONok 127 expect errorok 128 no data
# wrong JSON from PowerShellok 129 expect errorok 130 no data
# empty JSON from PowerShellok 131 expect errorok 132 no data
# future versionok 133 expect errorok 134 expect errorok 135 no data
# single unusable VS2017ok 136 expect errorok 137 expect errorok 138 no data
# minimal VS2017 Build Toolsok 139 should be equalok 140 should be equivalent
# VS2017 Community with C++ workloadok 141 should be equalok 142 should be equivalent
# VS2019 Preview with C++ workloadok 143 should be equalok 144 should be equivalent
# minimal VS2019 Build Toolsok 145 should be equalok 146 should be equivalent
# VS2019 Community with C++ workloadok 147 should be equalok 148 should be equivalent
# fail when looking for invalid pathok 149 expect errorok 150 no data
# look for VS2013 by version numberok 151 should be equalok 152 should be equivalent
# look for VS2013 by installation pathok 153 should be equalok 154 should be equivalent
# look for VS2015 by version numberok 155 should be equalok 156 should be equivalent
# look for VS2015 by installation pathok 157 should be equalok 158 should be equivalent
# look for VS2017 by version numberok 159 should be equalok 160 should be equivalent
# look for VS2017 by installation pathok 161 should be equalok 162 should be equivalent
# look for VS2019 by version numberok 163 should be equalok 164 should be equivalent
# look for VS2017 by installation pathok 165 should be equalok 166 should be equivalent
# latest version should be found by defaultok 167 should be equalok 168 should be equivalent
# run on a usable VS Command Promptok 169 should be equalok 170 should be equivalent
# run on a unusable VS Command Promptok 171 expect errorok 172 no data
# run on a VS Command Prompt with matching msvs_versionok 173 should be equalok 174 should be equivalent
# run on a VS Command Prompt with mismatched msvs_versionok 175 expect errorok 176 no data
# EACCES retry oncegyp WARN EACCES user "RICLAU" does not have permission to access the dev dir "/home/riclau/github/node-gyp/test/8.16.0"gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"gyp WARN install got an error, rolling back installgyp WARN install got an error, rolling back installok 177 (unnamed assert)ok 178 (unnamed assert)ok 179 (unnamed assert)
# options in environmentok 180 should be equivalent
# test process release - process.version = 0.8.20ok 181 should be equalok 182 should be equivalent
# test process release - process.version = 0.10.21ok 183 should be equalok 184 should be equivalent
# test process release - process.version = 0.12.9ok 185 should be equalok 186 should be equivalent
# test process release - process.version = 0.10.41ok 187 should be equalok 188 should be equivalent
# test process release - process.release ~ node@0.10.42ok 189 should be equalok 190 should be equivalent
# test process release - process.release ~ node@0.12.10ok 191 should be equalok 192 should be equivalent
# test process release - process.release ~ node@4.1.23ok 193 should be equalok 194 should be equivalent
# test process release - process.release ~ node@4.1.23 / corp buildok 195 should be equalok 196 should be equivalent
# test process release - process.release ~ node@4.1.23 --target=0.10.40ok 197 should be equalok 198 should be equivalent
# test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/bazgyp verb download using dist-url https://foo.bar/bazok 199 should be equalok 200 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23ok 201 should be equalok 202 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/gyp verb download using dist-url http://foo.bar/baz/ok 203 should be equalok 204 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4ok 205 should be equalok 206 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]ok 207 should be equalok 208 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]ok 209 should be equalok 210 should be equivalent
# test process release - NODEJS_ORG_MIRRORgyp verb download using dist-url http://foo.barok 211 should be equalok 212 should be equivalent1..212
# tests 212
# pass 212
# ok:/home/riclau/github/node-gyp>

richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@richardlau

Copy link
Copy Markdown
Member

Landed in 98a49de...ea9b68e.

@richardlau

Copy link
Copy Markdown
Member

@rvagg AFAICT this should have no effect on the existing non-z/OS platforms so I'll leave it up to you as to whether to include it in the v5.0.1 proposal or leave it for later. The z/OS port of Node.js 8 already includes a patched version of node-gyp for when it is used by the version of npm it includes -- This PR is for cases where modules directly depend on/invoke node-gyp.

@rvagg

Copy link
Copy Markdown
Member

I'll keep 5.0.1 simple and queue up another release after I get it out. thanks @richardlau

rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@rvaggrvagg mentioned this pull request Jun 21, 2019
@richardlau

Copy link
Copy Markdown
Member

Upstreamed the gyp changes to refack/GYP3#47.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@zsw007@rvagg@richardlau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

zos: update compiler options and default compiler - #1768

Closed
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos
Closed

zos: update compiler options and default compiler#1768
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos

Conversation

@zsw007

Copy link
Copy Markdown
Contributor
Checklist
  • npm install && npm test passes
  • tests are included
  • documentation is changed or added
  • commit message follows commit guidelines
Description of change
  • updated the z/OS compiler options to support the latest version of Node.js on z/OS
  • on z/OS, the default compiler is njsc/njsc++ instead of gcc/g++, so the parameters in gyp have been updated accordingly

@richardlaurichardlau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Changes look okay to me, but cc @refack regarding the gyp changes.

@rvagg

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

CI to check this doesn't regress other platforms: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/131/ (✔️)

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

Going to check this still works with the recently released z/OS Node.js 8. All being well I plan to merge this later today.

@richardlau

Copy link
Copy Markdown
Member
Tests all pass with the current z/OS Node.js 8 🎉
:/home/riclau/github/node-gyp>npm test
> node-gyp@5.0.0 test /home/riclau/github/node-gyp
> npm run lint && tape test/test-*
> node-gyp@5.0.0 lint /home/riclau/github/node-gyp
> eslint bin lib testTAP version 13
# build simple addonok 1 should be equalok 2 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 3 should be equal
# make sure addon symbols do not overlapok 4 should be equalok 5 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 6 should be equal
# build simple addon in path with non-ascii charactersok 7 python console app can't encode non-ascii character. # SKIP
# addon works with renamed host executableok 8 should be equalok 9 should end in okrunning /tmp/notnodeok 10 should be equal
# configure PYTHONPATH with no existing envok 11 should be equal
# configure PYTHONPATH with existing env of one dirok 12 should be equalok 13 should be equivalent
# configure PYTHONPATH with existing env of multiple dirsok 14 should be equalok 15 should be equivalent
# download over httpok 16 should be equalok 17 should be equal
# download over https with custom caok 18 should be equalok 19 should be equalok 20 should be equal
# download with missing cafileok 21 (unnamed assert)
# check certificate splittingok 22 should be equalok 23 should not be equal
# find accessible - empty arrayok 24 should be equal
# find accessible - single item array, readableok 25 should be equal
# find accessible - single item array, readable in subdirok 26 should be equal
# find accessible - single item array, unreadableok 27 should be equal
# find accessible - multi item array, no matchesok 28 should be equal
# find accessible - multi item array, single matchok 29 should be equal
# find accessible - multi item array, return first matchok 30 should be equal
# test find-node-directory - node installok 31 should be equalok 32 should be equalok 33 should be equalok 34 should be equalok 35 should be equalok 36 should be equal
# test find-node-directory - node buildok 37 should be equalok 38 should be equalok 39 should be equalok 40 should be equalok 41 should be equalok 42 should be equal
# test find-node-directory - node in bin directoryok 43 should be equalok 44 should be equalok 45 should be equalok 46 should be equalok 47 should be equalok 48 should be equal
# test find-node-directory - node in build release dirok 49 should be equalok 50 should be equalok 51 should be equalok 52 should be equalok 53 should be equalok 54 should be equal
# test find-node-directory - node in Debug release dirok 55 should be equalok 56 should be equalok 57 should be equalok 58 should be equalok 59 should be equalok 60 should be equal
# test find-node-directory - not foundok 61 should be equalok 62 should be equalok 63 should be equalok 64 should be equalok 65 should be equalok 66 should be equal
# test find-node-directory - node installok 67 should be equalok 68 should be equalok 69 should be equalok 70 should be equalok 71 should be equalok 72 should be equal
# find pythonok 73 should be equalok 74 should be equalok 75 should be equalok 76 (unnamed assert)
# find python - pythonok 77 should be equalok 78 (unnamed assert)ok 79 should be equalok 80 (unnamed assert)ok 81 should be equalok 82 should be equal
# find python - python too oldok 83 (unnamed assert)ok 84 (unnamed assert)
# find python - python too newok 85 (unnamed assert)ok 86 (unnamed assert)
# find python - no pythonok 87 (unnamed assert)ok 88 (unnamed assert)
# find python - no python2ok 89 should be equalok 90 should be equal
# find python - no python2, no python, unixok 91 (unnamed assert)ok 92 (unnamed assert)
# find python - no python, use python launcherok 93 should not be equalok 94 should not be equalok 95 should be equalok 96 should be equal
# find python - python 3, use python launcherok 97 should not be equalok 98 should not be equalok 99 should be equalok 100 should be equal
# find python - python 3, use python launcher, python 2 too oldok 101 should not be equalok 102 should not be equalok 103 should be equalok 104 should be equalok 105 (unnamed assert)ok 106 (unnamed assert)
# find python - no python, no python launcher, good guessok 107 (unnamed assert)ok 108 (unnamed assert)ok 109 should be equalok 110 (unnamed assert)
# find python - no python, no python launcher, bad guessok 111 (unnamed assert)ok 112 (unnamed assert)
# VS2013ok 113 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\12.0ok 114 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0\MSBuildToolsPathok 115 should be equalok 116 should be equivalent
# VS2013 should not be found on new node versionsok 117 expect errorok 118 no data
# VS2015ok 119 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\14.0ok 120 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\14.0\MSBuildToolsPathok 121 should be equalok 122 should be equivalent
# error from PowerShellok 123 expect errorok 124 no data
# empty output from PowerShellok 125 expect errorok 126 no data
# output from PowerShell not JSONok 127 expect errorok 128 no data
# wrong JSON from PowerShellok 129 expect errorok 130 no data
# empty JSON from PowerShellok 131 expect errorok 132 no data
# future versionok 133 expect errorok 134 expect errorok 135 no data
# single unusable VS2017ok 136 expect errorok 137 expect errorok 138 no data
# minimal VS2017 Build Toolsok 139 should be equalok 140 should be equivalent
# VS2017 Community with C++ workloadok 141 should be equalok 142 should be equivalent
# VS2019 Preview with C++ workloadok 143 should be equalok 144 should be equivalent
# minimal VS2019 Build Toolsok 145 should be equalok 146 should be equivalent
# VS2019 Community with C++ workloadok 147 should be equalok 148 should be equivalent
# fail when looking for invalid pathok 149 expect errorok 150 no data
# look for VS2013 by version numberok 151 should be equalok 152 should be equivalent
# look for VS2013 by installation pathok 153 should be equalok 154 should be equivalent
# look for VS2015 by version numberok 155 should be equalok 156 should be equivalent
# look for VS2015 by installation pathok 157 should be equalok 158 should be equivalent
# look for VS2017 by version numberok 159 should be equalok 160 should be equivalent
# look for VS2017 by installation pathok 161 should be equalok 162 should be equivalent
# look for VS2019 by version numberok 163 should be equalok 164 should be equivalent
# look for VS2017 by installation pathok 165 should be equalok 166 should be equivalent
# latest version should be found by defaultok 167 should be equalok 168 should be equivalent
# run on a usable VS Command Promptok 169 should be equalok 170 should be equivalent
# run on a unusable VS Command Promptok 171 expect errorok 172 no data
# run on a VS Command Prompt with matching msvs_versionok 173 should be equalok 174 should be equivalent
# run on a VS Command Prompt with mismatched msvs_versionok 175 expect errorok 176 no data
# EACCES retry oncegyp WARN EACCES user "RICLAU" does not have permission to access the dev dir "/home/riclau/github/node-gyp/test/8.16.0"gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"gyp WARN install got an error, rolling back installgyp WARN install got an error, rolling back installok 177 (unnamed assert)ok 178 (unnamed assert)ok 179 (unnamed assert)
# options in environmentok 180 should be equivalent
# test process release - process.version = 0.8.20ok 181 should be equalok 182 should be equivalent
# test process release - process.version = 0.10.21ok 183 should be equalok 184 should be equivalent
# test process release - process.version = 0.12.9ok 185 should be equalok 186 should be equivalent
# test process release - process.version = 0.10.41ok 187 should be equalok 188 should be equivalent
# test process release - process.release ~ node@0.10.42ok 189 should be equalok 190 should be equivalent
# test process release - process.release ~ node@0.12.10ok 191 should be equalok 192 should be equivalent
# test process release - process.release ~ node@4.1.23ok 193 should be equalok 194 should be equivalent
# test process release - process.release ~ node@4.1.23 / corp buildok 195 should be equalok 196 should be equivalent
# test process release - process.release ~ node@4.1.23 --target=0.10.40ok 197 should be equalok 198 should be equivalent
# test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/bazgyp verb download using dist-url https://foo.bar/bazok 199 should be equalok 200 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23ok 201 should be equalok 202 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/gyp verb download using dist-url http://foo.bar/baz/ok 203 should be equalok 204 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4ok 205 should be equalok 206 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]ok 207 should be equalok 208 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]ok 209 should be equalok 210 should be equivalent
# test process release - NODEJS_ORG_MIRRORgyp verb download using dist-url http://foo.barok 211 should be equalok 212 should be equivalent1..212
# tests 212
# pass 212
# ok:/home/riclau/github/node-gyp>

richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@richardlau

Copy link
Copy Markdown
Member

Landed in 98a49de...ea9b68e.

@richardlau

Copy link
Copy Markdown
Member

@rvagg AFAICT this should have no effect on the existing non-z/OS platforms so I'll leave it up to you as to whether to include it in the v5.0.1 proposal or leave it for later. The z/OS port of Node.js 8 already includes a patched version of node-gyp for when it is used by the version of npm it includes -- This PR is for cases where modules directly depend on/invoke node-gyp.

@rvagg

Copy link
Copy Markdown
Member

I'll keep 5.0.1 simple and queue up another release after I get it out. thanks @richardlau

rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@rvaggrvagg mentioned this pull request Jun 21, 2019
@richardlau

Copy link
Copy Markdown
Member

Upstreamed the gyp changes to refack/GYP3#47.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@zsw007@rvagg@richardlau
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

zos: update compiler options and default compiler - #1768

Closed
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos
Closed

zos: update compiler options and default compiler#1768
zsw007 wants to merge 2 commits into
nodejs:masterfrom
ibmruntimes:v4.x.zos

Conversation

@zsw007

Copy link
Copy Markdown
Contributor
Checklist
  • npm install && npm test passes
  • tests are included
  • documentation is changed or added
  • commit message follows commit guidelines
Description of change
  • updated the z/OS compiler options to support the latest version of Node.js on z/OS
  • on z/OS, the default compiler is njsc/njsc++ instead of gcc/g++, so the parameters in gyp have been updated accordingly

@richardlaurichardlau left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Changes look okay to me, but cc @refack regarding the gyp changes.

@rvagg

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

@richardlau I'll leave this one up to you to get merged

CI to check this doesn't regress other platforms: https://ci.nodejs.org/view/All/job/nodegyp-test-pull-request/131/ (✔️)

@richardlau

richardlau commented Jun 20, 2019

Copy link
Copy Markdown
Member

Going to check this still works with the recently released z/OS Node.js 8. All being well I plan to merge this later today.

@richardlau

Copy link
Copy Markdown
Member
Tests all pass with the current z/OS Node.js 8 🎉
:/home/riclau/github/node-gyp>npm test
> node-gyp@5.0.0 test /home/riclau/github/node-gyp
> npm run lint && tape test/test-*
> node-gyp@5.0.0 lint /home/riclau/github/node-gyp
> eslint bin lib testTAP version 13
# build simple addonok 1 should be equalok 2 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 3 should be equal
# make sure addon symbols do not overlapok 4 should be equalok 5 should end in okrunning /home/riclau/node-v8.16.0-os390-s390x/bin/nodeok 6 should be equal
# build simple addon in path with non-ascii charactersok 7 python console app can't encode non-ascii character. # SKIP
# addon works with renamed host executableok 8 should be equalok 9 should end in okrunning /tmp/notnodeok 10 should be equal
# configure PYTHONPATH with no existing envok 11 should be equal
# configure PYTHONPATH with existing env of one dirok 12 should be equalok 13 should be equivalent
# configure PYTHONPATH with existing env of multiple dirsok 14 should be equalok 15 should be equivalent
# download over httpok 16 should be equalok 17 should be equal
# download over https with custom caok 18 should be equalok 19 should be equalok 20 should be equal
# download with missing cafileok 21 (unnamed assert)
# check certificate splittingok 22 should be equalok 23 should not be equal
# find accessible - empty arrayok 24 should be equal
# find accessible - single item array, readableok 25 should be equal
# find accessible - single item array, readable in subdirok 26 should be equal
# find accessible - single item array, unreadableok 27 should be equal
# find accessible - multi item array, no matchesok 28 should be equal
# find accessible - multi item array, single matchok 29 should be equal
# find accessible - multi item array, return first matchok 30 should be equal
# test find-node-directory - node installok 31 should be equalok 32 should be equalok 33 should be equalok 34 should be equalok 35 should be equalok 36 should be equal
# test find-node-directory - node buildok 37 should be equalok 38 should be equalok 39 should be equalok 40 should be equalok 41 should be equalok 42 should be equal
# test find-node-directory - node in bin directoryok 43 should be equalok 44 should be equalok 45 should be equalok 46 should be equalok 47 should be equalok 48 should be equal
# test find-node-directory - node in build release dirok 49 should be equalok 50 should be equalok 51 should be equalok 52 should be equalok 53 should be equalok 54 should be equal
# test find-node-directory - node in Debug release dirok 55 should be equalok 56 should be equalok 57 should be equalok 58 should be equalok 59 should be equalok 60 should be equal
# test find-node-directory - not foundok 61 should be equalok 62 should be equalok 63 should be equalok 64 should be equalok 65 should be equalok 66 should be equal
# test find-node-directory - node installok 67 should be equalok 68 should be equalok 69 should be equalok 70 should be equalok 71 should be equalok 72 should be equal
# find pythonok 73 should be equalok 74 should be equalok 75 should be equalok 76 (unnamed assert)
# find python - pythonok 77 should be equalok 78 (unnamed assert)ok 79 should be equalok 80 (unnamed assert)ok 81 should be equalok 82 should be equal
# find python - python too oldok 83 (unnamed assert)ok 84 (unnamed assert)
# find python - python too newok 85 (unnamed assert)ok 86 (unnamed assert)
# find python - no pythonok 87 (unnamed assert)ok 88 (unnamed assert)
# find python - no python2ok 89 should be equalok 90 should be equal
# find python - no python2, no python, unixok 91 (unnamed assert)ok 92 (unnamed assert)
# find python - no python, use python launcherok 93 should not be equalok 94 should not be equalok 95 should be equalok 96 should be equal
# find python - python 3, use python launcherok 97 should not be equalok 98 should not be equalok 99 should be equalok 100 should be equal
# find python - python 3, use python launcher, python 2 too oldok 101 should not be equalok 102 should not be equalok 103 should be equalok 104 should be equalok 105 (unnamed assert)ok 106 (unnamed assert)
# find python - no python, no python launcher, good guessok 107 (unnamed assert)ok 108 (unnamed assert)ok 109 should be equalok 110 (unnamed assert)
# find python - no python, no python launcher, bad guessok 111 (unnamed assert)ok 112 (unnamed assert)
# VS2013ok 113 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\12.0ok 114 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\12.0\MSBuildToolsPathok 115 should be equalok 116 should be equivalent
# VS2013 should not be found on new node versionsok 117 expect errorok 118 no data
# VS2015ok 119 expected search for registry value HKLM\Software\Microsoft\VisualStudio\SxS\VC7\14.0ok 120 expected search for registry value HKLM\Software\Microsoft\MSBuild\ToolsVersions\14.0\MSBuildToolsPathok 121 should be equalok 122 should be equivalent
# error from PowerShellok 123 expect errorok 124 no data
# empty output from PowerShellok 125 expect errorok 126 no data
# output from PowerShell not JSONok 127 expect errorok 128 no data
# wrong JSON from PowerShellok 129 expect errorok 130 no data
# empty JSON from PowerShellok 131 expect errorok 132 no data
# future versionok 133 expect errorok 134 expect errorok 135 no data
# single unusable VS2017ok 136 expect errorok 137 expect errorok 138 no data
# minimal VS2017 Build Toolsok 139 should be equalok 140 should be equivalent
# VS2017 Community with C++ workloadok 141 should be equalok 142 should be equivalent
# VS2019 Preview with C++ workloadok 143 should be equalok 144 should be equivalent
# minimal VS2019 Build Toolsok 145 should be equalok 146 should be equivalent
# VS2019 Community with C++ workloadok 147 should be equalok 148 should be equivalent
# fail when looking for invalid pathok 149 expect errorok 150 no data
# look for VS2013 by version numberok 151 should be equalok 152 should be equivalent
# look for VS2013 by installation pathok 153 should be equalok 154 should be equivalent
# look for VS2015 by version numberok 155 should be equalok 156 should be equivalent
# look for VS2015 by installation pathok 157 should be equalok 158 should be equivalent
# look for VS2017 by version numberok 159 should be equalok 160 should be equivalent
# look for VS2017 by installation pathok 161 should be equalok 162 should be equivalent
# look for VS2019 by version numberok 163 should be equalok 164 should be equivalent
# look for VS2017 by installation pathok 165 should be equalok 166 should be equivalent
# latest version should be found by defaultok 167 should be equalok 168 should be equivalent
# run on a usable VS Command Promptok 169 should be equalok 170 should be equivalent
# run on a unusable VS Command Promptok 171 expect errorok 172 no data
# run on a VS Command Prompt with matching msvs_versionok 173 should be equalok 174 should be equivalent
# run on a VS Command Prompt with mismatched msvs_versionok 175 expect errorok 176 no data
# EACCES retry oncegyp WARN EACCES user "RICLAU" does not have permission to access the dev dir "/home/riclau/github/node-gyp/test/8.16.0"gyp WARN EACCES attempting to reinstall using temporary dev dir "/tmp/.node-gyp"gyp WARN install got an error, rolling back installgyp WARN install got an error, rolling back installok 177 (unnamed assert)ok 178 (unnamed assert)ok 179 (unnamed assert)
# options in environmentok 180 should be equivalent
# test process release - process.version = 0.8.20ok 181 should be equalok 182 should be equivalent
# test process release - process.version = 0.10.21ok 183 should be equalok 184 should be equivalent
# test process release - process.version = 0.12.9ok 185 should be equalok 186 should be equivalent
# test process release - process.version = 0.10.41ok 187 should be equalok 188 should be equivalent
# test process release - process.release ~ node@0.10.42ok 189 should be equalok 190 should be equivalent
# test process release - process.release ~ node@0.12.10ok 191 should be equalok 192 should be equivalent
# test process release - process.release ~ node@4.1.23ok 193 should be equalok 194 should be equivalent
# test process release - process.release ~ node@4.1.23 / corp buildok 195 should be equalok 196 should be equivalent
# test process release - process.release ~ node@4.1.23 --target=0.10.40ok 197 should be equalok 198 should be equivalent
# test process release - process.release ~ node@4.1.23 --dist-url=https://foo.bar/bazgyp verb download using dist-url https://foo.bar/bazok 199 should be equalok 200 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23ok 201 should be equalok 202 should be equivalent
# test process release - process.release ~ frankenstein@4.1.23 --dist-url=http://foo.bar/baz/gyp verb download using dist-url http://foo.bar/baz/ok 203 should be equalok 204 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4ok 205 should be equalok 206 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 passed as argv[0]ok 207 should be equalok 208 should be equivalent
# test process release - process.release ~ node@4.0.0-rc.4 - bogus string passed as argv[0]ok 209 should be equalok 210 should be equivalent
# test process release - NODEJS_ORG_MIRRORgyp verb download using dist-url http://foo.barok 211 should be equalok 212 should be equivalent1..212
# tests 212
# pass 212
# ok:/home/riclau/github/node-gyp>

richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
richardlau pushed a commit that referenced this pull request Jun 20, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@richardlau

Copy link
Copy Markdown
Member

Landed in 98a49de...ea9b68e.

@richardlau

Copy link
Copy Markdown
Member

@rvagg AFAICT this should have no effect on the existing non-z/OS platforms so I'll leave it up to you as to whether to include it in the v5.0.1 proposal or leave it for later. The z/OS port of Node.js 8 already includes a patched version of node-gyp for when it is used by the version of npm it includes -- This PR is for cases where modules directly depend on/invoke node-gyp.

@rvagg

Copy link
Copy Markdown
Member

I'll keep 5.0.1 simple and queue up another release after I get it out. thanks @richardlau

rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
rvagg pushed a commit that referenced this pull request Jun 21, 2019
PR-URL: #1768
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@rvaggrvagg mentioned this pull request Jun 21, 2019
@richardlau

Copy link
Copy Markdown
Member

Upstreamed the gyp changes to refack/GYP3#47.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@zsw007@rvagg@richardlau