After some feedback, we realized it is more intuitive to disable file
downloads by setting the environment variable
`CS_DISABLE_FILE_DOWNLOADS` to `true` than `1`. This commit adds support
for both.
* refactor: add timeout for race condition in heart test
* fixup!: set mtime to 0 and check for update
* fixup!: use utimes directly instead of file open
* fixup!: remove import
* refactor(heart): extract logic into heartbeatTimer fn
To make it easier to test, I extract heartbeatTimer into it's own
function.
* feat(testing): add tests for heart.ts
* fixup
* fixup!: remove unneeded heart call
* Update src/node/heart.ts
Co-authored-by: Asher <ash@coder.com>
* fixup!: use mockResolvedValue everywhere
* fixup!: add stat test for timestamp check
Co-authored-by: Asher <ash@coder.com>
We tried to switch from `yarn` to `npm` because `yarn` ignores lockfiles
but learned that we missed a few key things.
For now, we are reverting docs and a few other changes that suggested
using `npm` instead of `yarn` until we fully remove `yarn` from the
codebase.
t Please enter the commit message for your changes. Lines starting
* Update termux.md
1) Updated information to use PRoot (simpler than Andronix and the way supported by Termux) to create and access the Debian distro.
2) Added helpful information on using PRoot with your dev environment.
3) Cleaned up spelling, grammar, and made documentation more consistent between sections.
* docs: Termux correct packages to install
Updated some erroneously missing packages (vim and sudo) necessary for multi-user setup.
* docs: cleaned up verbiage
Co-authored-by: Joe Previte <jjprevite@gmail.com>
* docs: corrected punctuation
Co-authored-by: Joe Previte <jjprevite@gmail.com>
* docs: correct punctuation
Co-authored-by: Joe Previte <jjprevite@gmail.com>
* docs: clarify pkg command shorthand
* Ran yarn fmt on docs
Co-authored-by: Joe Previte <jjprevite@gmail.com>
* Link upstream sync section in MAINTAINING to CONTRIBUTING
* Update MAINTAINING.md table of contents
Co-authored-by: Joe Previte <jjprevite@gmail.com>
* Fix code-server version not appearing in other languages
It needs to be separate from the localize call since the language
version of that string is used and it will not include a spot for the
code-server version.
I also moved the "v" so we do not get "vUnknown".
* Add code-server version to product configuration
Before 1.64 the entire product configuration was sent to the client but
that was removed so we have to add anything we want to use on the
client, like the code-server version (used in the about dialog).
Fixes#5027.
* Refresh patches
* Change version test to look for specific version
This will catch if we are not sending the actual version to the client.
* Use --exclude to skip node_modules
Instead of copying and then deleting them. This will also catch some
node_modules directories that were missed.
* Remove per-extension dependency install
Code packages all the dependencies using webpack for each extension so
there are no dependencies to install.
* Include source maps
I also moved this to its own patch because it feels sufficiently
standalone.
Fixes#5026.
* Refresh language patch
The base is slightly different so it needed to be refreshed.
* Add missing package.json
This was caused by switching to Code's package step which does not
include the package.json.
Fixes#5019.
* Include keytar
It seems this actually is used now.
* fix: source lib.sh in docker-buildx-push for tagging version
* chore: use ubuntu and update git config homebrew job
* refactor: simplify brew-bump.sh script
* Revert "fix: source lib.sh in docker-buildx-push for tagging version"
This reverts commit 2f7a3610cb1efa6bca7794d8b265001ea347cccb.
* Regenerate last opened patch
The lines were a bit off.
* Remove packaged .gitignore files
Fixes#4964.
* Remove extra Node binary
This gets overidden in the standalone but it was getting uselessly
included in the npm package.
* Move integration types into code-server
This will be easier to maintain than to have it as a patch.
* Disable connection token
Using a flag means we will not need to patch it out. I think this is
new from 1.64?
* Add product.json to build process
This way we do not have to patch it.
* Ship with remote agent package.json
Instead of the root one. This contains fewer dependencies.
* Let Code handle errors
This way we will not have to patch Code to make this work and I think it
makes sense to let Code handle the request.
If we do want to handle errors we can do it cleanly by patching their
error handler to throw instead.
* Move manifest override into code-server
This way we will not have to patch it.
* Move to patches
- Switch submodule to track upstream
- Add quilt to the process
- Add patches
The node-* ignore was ignoring one of the diffs so I removed it. This
was added when we were curling Node as node-v{version}-darwin-x64 for
the macOS build but this no longer happens (we use the Node action to
install a specific version now so we just use the system-wide Node).
* Use pre-packaged Code
* refactor: checkout homebrew-core in action instead of script
This moves the git clone step from the `brew-bump.sh` script into the
`npm-brew.yaml` as part of the job using actions/checkout instead.
* refactor: clean up brew-bump.sh script
* fixup
* fixup!: remove step to clean up homebrew repo
* fixup!: use correct ./ci path steps-lib.sh
* fixup!: add exit code 0 for duplicate PRs
* fix(ci): correctly download npm artifact
* fixup! fix(ci): correctly download npm artifact
* docs: update MAINTAINING
* fixup! docs: update MAINTAINING
* fixup! Merge branch 'main' into 4949-chore-fix-npm-workflow
* chore: get ci to run
* refactor: use vVERSION branch name instead of release
* refactor: use new download artifact in docker workflow
* refactor: clean up release-github-assets script
* fixup: remove extra v
* fixup! fixup: remove extra v
* feat(npm): use DEV_PACKAGE_NAME for development
* feat(ci): use npm v7 in npm job
* fixup: add npm version
* fixup: always set package name
* wip
* fix: check for npm and npm v7
* fixup
* fixup: move after release dir created
* fixup: use jq
* fixup: use jq correctly
* Move Code to a submodule
Closes#4901.
* Base Code cache on hash and re-enable node_modules cache
The current setup appears to only rebuild VS Code if the dependencies
change but we need to rebuild it if anything changes.
I also re-enabled the commented out node_modules caches. They look like
they should work to me with the submodule method. I think the problem
occurred because Code itself was being installed in the yarn step.