Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Update dependencies and Node to v16 #3828

Merged
merged 13 commits into from
Nov 17, 2021

Conversation

maciaszczykm
Copy link
Contributor

@maciaszczykm maciaszczykm commented Nov 8, 2021

What this PR does / why we need it

Which issue(s) this PR fixes

Closes #3827.

Special notes for your reviewer

Build image was updated in https://github.com/kubermatic/infra/pull/1557.

For Node >=16.10 it might be required to add --legacy-peer-deps param while using npm i command. npm ci works like before.

➜ node --version
v16.13.0

➜ npm outdated    
Package                            Current   Wanted  Latest  Location                                        Depended by
@angular-devkit/build-angular      12.2.13  12.2.13  13.0.2  node_modules/@angular-devkit/build-angular      kubermatic-dashboard
@angular/animations                12.2.13  12.2.13  13.0.1  node_modules/@angular/animations                kubermatic-dashboard
@angular/cdk                       12.2.13  12.2.13  13.0.1  node_modules/@angular/cdk                       kubermatic-dashboard
@angular/cli                       12.2.13  12.2.13  13.0.2  node_modules/@angular/cli                       kubermatic-dashboard
@angular/common                    12.2.13  12.2.13  13.0.1  node_modules/@angular/common                    kubermatic-dashboard
@angular/compiler                  12.2.13  12.2.13  13.0.1  node_modules/@angular/compiler                  kubermatic-dashboard
@angular/compiler-cli              12.2.13  12.2.13  13.0.1  node_modules/@angular/compiler-cli              kubermatic-dashboard
@angular/core                      12.2.13  12.2.13  13.0.1  node_modules/@angular/core                      kubermatic-dashboard
@angular/forms                     12.2.13  12.2.13  13.0.1  node_modules/@angular/forms                     kubermatic-dashboard
@angular/localize                  12.2.13  12.2.13  13.0.1  node_modules/@angular/localize                  kubermatic-dashboard
@angular/material                  12.2.13  12.2.13  13.0.1  node_modules/@angular/material                  kubermatic-dashboard
@angular/platform-browser          12.2.13  12.2.13  13.0.1  node_modules/@angular/platform-browser          kubermatic-dashboard
@angular/platform-browser-dynamic  12.2.13  12.2.13  13.0.1  node_modules/@angular/platform-browser-dynamic  kubermatic-dashboard
@angular/router                    12.2.13  12.2.13  13.0.1  node_modules/@angular/router                    kubermatic-dashboard
cypress                              8.7.0    8.7.0   9.0.0  node_modules/cypress                            kubermatic-dashboard
cypress-fail-fast                    3.2.0    3.2.0   3.3.0  node_modules/cypress-fail-fast                  kubermatic-dashboard
flag-icon-css                        3.5.0    3.5.0   4.1.5  node_modules/flag-icon-css                      kubermatic-dashboard
lint-staged                         11.2.6   11.2.6  12.0.2  node_modules/lint-staged                        kubermatic-dashboard
ngx-cookie-service                  12.0.3   12.0.3  13.0.0  node_modules/ngx-cookie-service                 kubermatic-dashboard
stylelint                           14.0.1   14.0.1  14.1.0  node_modules/stylelint                          kubermatic-dashboard
typescript                           4.3.5    4.3.5   4.4.4  node_modules/typescript                         kubermatic-dashboard

angular/components#23907 needs to be solved to make the unit tests pass. I had to revert to Angular LTS version as v13 is not stable enough at the moment.

Release note

NONE

@kubermatic-bot kubermatic-bot added release-note-none Denotes a PR that doesn't merit a release note. do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. labels Nov 8, 2021
@kubermatic-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: maciaszczykm

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubermatic-bot kubermatic-bot added approved Indicates a PR has been approved by an approver from all required OWNERS files. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels Nov 8, 2021
@maciaszczykm maciaszczykm changed the title [WIP] Update dependencies and Node to v16 Update dependencies and Node to v16 Nov 8, 2021
@kubermatic-bot kubermatic-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Nov 8, 2021
@maciaszczykm
Copy link
Contributor Author

/assign @kgroschoff @floreks

@maciaszczykm
Copy link
Contributor Author

/hold

Until upstream issues will be fixed.

@kubermatic-bot kubermatic-bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Nov 8, 2021
@maciaszczykm
Copy link
Contributor Author

/hold cancel
/assign @kgroschoff

@kubermatic-bot kubermatic-bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Nov 12, 2021
@codecov
Copy link

codecov bot commented Nov 12, 2021

Codecov Report

Merging #3828 (7661dbd) into master (26b8812) will not change coverage.
The diff coverage is 64.70%.

Impacted file tree graph

@@           Coverage Diff            @@
##           master    #3828    +/-   ##
========================================
  Coverage   52.25%   52.25%            
========================================
  Files         286      286            
  Lines       10333    10333            
  Branches     1178     1362   +184     
========================================
  Hits         5399     5399            
+ Misses       4932     4620   -312     
- Partials        2      314   +312     
Impacted Files Coverage Δ
...ic-datacenters/datacenter-data-dialog/component.ts 25.88% <33.33%> (ø)
...details/constraints/constraint-dialog/component.ts 88.73% <66.66%> (ø)
...eeper-config/gatekeeper-config-dialog/component.ts 86.44% <66.66%> (ø)
...-templates/constraint-template-dialog/component.ts 87.50% <66.66%> (ø)
...constraints/default-constraint-dialog/component.ts 88.73% <66.66%> (ø)
src/app/shared/utils/mla-utils.ts 100.00% <100.00%> (ø)
src/app/component.ts 76.81% <0.00%> (ø)
src/app/member/component.ts 59.13% <0.00%> (ø)
src/app/wizard/step/base.ts 22.22% <0.00%> (ø)
src/app/core/services/api.ts 8.10% <0.00%> (ø)
... and 97 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 26b8812...7661dbd. Read the comment docs.

@kgroschoff
Copy link
Contributor

mocked e2e tests showing following

  Running:  providers/openstack.spec.ts                                                   (11 of 24)

<--- Last few GCs --->

[772:0x5084950]   831386 ms: Mark-sweep (reduce) 2043.4 (2054.8) -> 2042.5 (2054.8) MB, 2856.7 / 0.0 ms  (average mu = 0.132, current mu = 0.009) allocation failure scavenge might not succeed
[772:0x5084950]   834188 ms: Mark-sweep (reduce) 2043.6 (2051.8) -> 2042.5 (2052.8) MB, 2790.1 / 0.0 ms  (average mu = 0.072, current mu = 0.004) allocation failure scavenge might not succeed


<--- JS stacktrace --->

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
 1: 0xa222f0 node::Abort() [/usr/local/bin/node]
 2: 0x96411f node::FatalError(char const*, char const*) [/usr/local/bin/node]
 3: 0xb97f1e v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/usr/local/bin/node]
 4: 0xb98297 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/usr/local/bin/node]
 5: 0xd52fd5  [/usr/local/bin/node]
 6: 0xd53b5f  [/usr/local/bin/node]
 7: 0xd61beb v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/usr/local/bin/node]
 8: 0xd657ac v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/usr/local/bin/node]
 9: 0xd2af4d v8::internal::Factory::AllocateRaw(int, v8::internal::AllocationType, v8::internal::AllocationAlignment) [/usr/local/bin/node]
10: 0xd271a9 v8::internal::FactoryBase<v8::internal::Factory>::AllocateRawArray(int, v8::internal::AllocationType) [/usr/local/bin/node]
11: 0xd27264 v8::internal::FactoryBase<v8::internal::Factory>::NewFixedArrayWithFiller(v8::internal::Handle<v8::internal::Map>, int, v8::internal::Handle<v8::internal::Oddball>, v8::internal::AllocationType) [/usr/local/bin/node]
12: 0xeb545e  [/usr/local/bin/node]
13: 0xeb570d  [/usr/local/bin/node]
14: 0xc0aee9 v8::internal::Builtin_ArrayUnshift(int, unsigned long*, v8::internal::Isolate*) [/usr/local/bin/node]
15: 0x1423359  [/usr/local/bin/node]

Not sure if this is a flake or something that is caused by your changes? Do you have an idea?

Otherwise I think your pr looks good.

@maciaszczykm
Copy link
Contributor Author

@kgroschoff Adjusted the limits, now Cypress should be more stable.

@maciaszczykm
Copy link
Contributor Author

/hold

There is issue with Cypress after version bump.

@kubermatic-bot kubermatic-bot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Nov 12, 2021
@maciaszczykm
Copy link
Contributor Author

/hold cancel

@kubermatic-bot kubermatic-bot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Nov 15, 2021
@maciaszczykm
Copy link
Contributor Author

/test pre-dashboard-test-e2e

@maciaszczykm
Copy link
Contributor Author

/retest

@floreks
Copy link
Contributor

floreks commented Nov 17, 2021

/lgtm

@kubermatic-bot kubermatic-bot added the lgtm Indicates that a PR is ready to be merged. label Nov 17, 2021
@kubermatic-bot
Copy link
Contributor

LGTM label has been added.

Git tree hash: 368195927112c8784f609b021204651da53252b1

@maciaszczykm
Copy link
Contributor Author

/retest

1 similar comment
@maciaszczykm
Copy link
Contributor Author

/retest

@kubermatic-bot kubermatic-bot merged commit 81064c8 into kubermatic:master Nov 17, 2021
@maciaszczykm maciaszczykm deleted the dependencies branch November 19, 2021 11:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. lgtm Indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesn't merit a release note. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update Node version and dependencies
4 participants