Skip to content

Conversation

@rtholmes
Copy link
Contributor

@rtholmes rtholmes commented Oct 31, 2022

Status

  • Dependencies updated
  • CircleCI updated

Overview

PR for fixing #428

  • Node - existing: v12; current: v18 is LTS until 2025-05.
  • Typescript - existing: 3.7.2; current: v4.8.4.
  • Mongo - existing: 3.0.2; current: v5 is LTS until 2025. NOTE: just using the mongo:latest docker image.
  • Restify v10

Notes worth knowing

  • node-fetch has to stay at v2.X; v3 only supports ESM modules (which we don't want to transition to).

@coveralls
Copy link

coveralls commented Oct 31, 2022

Pull Request Test Coverage Report for Build d73ae85f-f1f1-4087-a108-236b4f50fea8

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 77 unchanged lines in 4 files lost coverage.
  • Overall coverage increased (+0.1%) to 89.586%

Files with Coverage Reduction New Missed Lines %
src/server/BackendServer.ts 2 95.08%
src/server/common/ClasslistAgent.ts 3 95.52%
src/server/common/GeneralRoutes.ts 11 92.47%
src/controllers/GitHubActions.ts 61 88.75%
Totals Coverage Status
Change from base Build 6ba4e95e-c4ee-4e73-8a87-763e7010abd8: 0.1%
Covered Lines: 3634
Relevant Lines: 3987

💛 - Coveralls

All dependencies are up-to-date EXCEPT node-fetch which must be kept at v2.6.7.

Updating node-fetch is not possible without converting the whole project to ESM, which would be a terrible idea and all kinds of work.
@rtholmes
Copy link
Contributor Author

rtholmes commented Oct 31, 2022

Currently broken because of restify node18 problem.

Issue: restify/node-restify#1925
PR: restify/node-restify#1906

Sadly the public links to these projects cannot be hidden, sorry if you're here from Restify :(

@rtholmes rtholmes self-assigned this Oct 31, 2022
@rtholmes rtholmes added this to the v3.0 milestone Oct 31, 2022
@winstan
Copy link
Member

winstan commented Nov 28, 2022

Restify supports node18 today via:
PR: restify/node-restify#1929

@rtholmes
Copy link
Contributor Author

@winstan This seems to be ready to try on a host. I can't merge to master because 310 is still taking changes and I don't want to risk the changes to the DB/Node this late in the term.

Is there a dev instance somewhere we can spin up from this PR?

@@ -1,4 +1,4 @@
FROM nginx:1.13-alpine
FROM node:lts-alpine
Copy link
Member

Choose a reason for hiding this comment

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

I don't think you meant to change the container from nginx to node... I think you meant to change it to this?
FROM nginx:stable-alpine

Copy link
Contributor Author

Choose a reason for hiding this comment

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

fixed, good catch!

@rtholmes
Copy link
Contributor Author

Also @winstan, if you happen to know what mongo image to use other than mongo:latest, I really struggled for the right version. v5 is in LTS, but v6 is out: it would be nice to have a v5latest image, but I couldn't find one.

@winstan
Copy link
Member

winstan commented Nov 29, 2022

Also @winstan, if you happen to know what mongo image to use other than mongo:latest, I really struggled for the right version. v5 is in LTS, but v6 is out: it would be nice to have a v5latest image, but I couldn't find one.

Sorry, nope. :(

@winstan
Copy link
Member

winstan commented Nov 29, 2022

@rtholmes : Dev hosts: classy-dev and cs210-dev. I've given you access to both. (Talk to Paul about cs210-dev.)
Be sure to use /opt/classy-scripts/fix-classy to reset permissions on /var/opt/classy so you can make changes (like nuke the database)
I got it to build on classy-dev, but the database isn't happy...

@winstan
Copy link
Member

winstan commented Nov 29, 2022

If you want a cs310-dev host, send a request to help@cs...

@rtholmes
Copy link
Contributor Author

Also @winstan, if you happen to know what mongo image to use other than mongo:latest, I really struggled for the right version. v5 is in LTS, but v6 is out: it would be nice to have a v5latest image, but I couldn't find one.

Sorry, nope. :(

I almost wonder if we want to use mongo:5.0.14, just so we can be in control of updating the mongo image? I'm fine with node:lts-alpine since it's v18 and should be for a few years.

…k to v5 (a v5lts tag would be best, but this does not seem to exist)
@winstan
Copy link
Member

winstan commented Nov 30, 2022

Playing some more with getting the db to run... Complained of missing processor extension AVX. I found a way to update the processor model for the VM and now everything seems to start up and run fine. (classy-dev)
I need to update the processor model for all Classy boxes now...

@rtholmes
Copy link
Contributor Author

@winstan glad you got it going! I'm running a modern mongo on my local dev instance so the db behaviours should be ok, but I never thought about that kind of problem! I do know they changed the auth mechanism though (there have been warnings on the terminal for a while) so I'll have to look into those (next week) and see whether I need to change how we open connections to mongo.

@rtholmes rtholmes marked this pull request as ready for review November 30, 2022 20:47
@rtholmes
Copy link
Contributor Author

@winstan I moved 310 onto a branch so this is probably good to merge to master. This might also be a good time (after the merge) to rename master to main, is that ok with you?

@winstan
Copy link
Member

winstan commented Nov 30, 2022

@winstan I moved 310 onto a branch so this is probably good to merge to master. This might also be a good time (after the merge) to rename master to main, is that ok with you?

Sure, sounds good.

@rtholmes rtholmes merged commit c24e63d into master Nov 30, 2022
@rtholmes rtholmes deleted the 2022-11_update-dependencies branch February 22, 2024 19:47
Sign up for free to 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.

4 participants