[Feat]: Update Code to 1.80 #6316
Copy link
Copy link
Closed
Labels
enhancementSome improvement that isn't a featureSome improvement that isn't a feature
Description
What is your suggestion?
Update Code to 1.80
Why do you want this feature?
Are there any workarounds to get this functionality today?
Are you interested in submitting a PR for this?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementSome improvement that isn't a featureSome improvement that isn't a feature
Activity
benz0li commentedon Jul 8, 2023
@code-asher VS Code 1.80.0 was released two days ago: https://code.visualstudio.com/updates/v1_80
Take a
.1/.2-release as base for a new code-server release.ℹ️
.0-releases have had some fundamental bugs..0/.1-releases as base for a release candidate (RC).2-releasealeleba commentedon Jul 10, 2023
@code-asher I want to subscribe to this, we need to update the VSCode Version, maybe we can automate this process, I will be honored to help you in this task of automation if you want.
aleleba commentedon Jul 11, 2023
@code-asher I have been reading the code of the project and notice that vscode is a submodule of this project, I found some documentation on how the project can automate the process of update the submodules with github actions. I attach some docs for this: https://tommoa.me/blog/github-auto-update-submodules/ . The development team can focus con make the product better and not need to remind to update submodules.
code-asher commentedon Jul 11, 2023
Updating the submodule is pretty easy, the more difficult part is resolving conflicts with the patches and I am not sure that can be fully automated.
aleleba commentedon Jul 14, 2023
@code-asher if you teach me on how to resolve this conflicts, I can assist the team on my free time 👍🏼
code-asher commentedon Jul 14, 2023
That would be fantastic! We use
quiltfor patches so the basic workflow is:quilt push -fquilt refreshIf you are not familiar with quilt, the conflicts get placed in
.rejfiles so resolving just means looking at those files and adding the changes back manually.More details here: https://coder.com/docs/code-server/latest/CONTRIBUTING#version-updates-to-code
Often the conflicts are just simple line changes. Upstream added a new line, moved a line, etc, so we just have to re-apply our changes in the new context.
If you decide to tackle this please feel free to lean on me for any support you might need.
aleleba commentedon Jul 15, 2023
@code-asher, this docs are great, I will start working on this the next week on my free time, thank you for the docs, I will be reading it, and let you know if I have some doubts, thank you to let me help on this amazing project.
benz0li commentedon Jul 15, 2023
@code-asher How to get the correct replacement SHA-256 value?
index.html.rej
benz0li commentedon Jul 15, 2023
@aleleba FYI: Docker image
glcr.b-data.ch/jupyterlab/python/base:latest-devtools1 contains code-server and has all prerequisites installed to build code-server itself.ℹ️ See JupyterLab Python docker stack for more information about this image.
Footnotes
Multi-arch:
linux/amd64,linux/arm64/v8↩benz0li commentedon Jul 15, 2023
P.S.: 1.80.1 released
code-asher commentedon Jul 17, 2023
benz0li commentedon Jul 19, 2023
My basic workflow from scratch:
Update Code
quilt push -fquilt refreshSet version
Install dependencies
Build code-server
Build release packages
Then, I deploy at https://coder.jupyter.b-data.ch/ (image
R (base:test-devtools-docker)) and test some functionality manually.benz0li commentedon Jul 19, 2023
Command
code-server --versionin JupyterLab Terminal returns0.0.0 070a5a3179fe8213102854bcb37607bda690358f with Code 1.80.1.ℹ️ In code-server > Help > About the version is correctly displayed:
v4.15.0-rc.1@code-asher Can you tell why that is?
code-asher commentedon Jul 19, 2023
Hmmm good question. It pulls the version from the
package.jsonso maybe it did not get updated somehow?That said, I launched https://coder.jupyter.b-data.ch and opened the JupyterLab terminal and it gives me the right version!
code-asher commentedon Jul 19, 2023
Actually that is not the right version. Previous version. My bad. Will test a bit and see if I get the same issue.
benz0li commentedon Jul 20, 2023
Most likely you started image
R (jupyterlab/r/verse:latest-devtools-docker)instead ofR (base:test-devtools-docker).code-asher commentedon Jul 20, 2023
Ahh thank you! Looks like we set the version in the release.yaml flow just before publishing releases.
If I recall correctly we have this because we wanted the ability to promote an RC to a full release without having to rebuild it (so we can just replace the version without rebuilding since that would technically be a different, untested build) but it has not been fully implemented yet (we still have to set
VERSIONduring build time for the version embedded in VS Code).I think at some point what we will need to do is remove
VERSIONand dynamically updatelib/vscode/product.jsonthe same way we dopackage.jsoninstead.