Commit Graph
100 Commits
Author SHA1 Message Date
Asher 39ce82a44d Add 4.92.2 release date 2024-08-19 15:30:25 -08:00
Asher 7f893234ab Update Helm version 2024-08-19 15:30:21 -08:00
Asher de65bfc947 Update changelog with correct Code version 2024-08-16 01:50:10 -08:00
Asher 34c6751bf8 Update VS Code to 1.92.2 (#6941)
* Update VS Code to 1.92.2

* Use server-main.js to load VS Code

It looks like the bootstrap files are now bundled so we can no longer
require them.  We could make them included again, but maybe it is better
to go through the main entrypoint anyway because it includes some nls
stuff which is maybe necessary.

This also fixes what looks like a bug where we could create two servers
if two requests came in.  I am not sure what the practical consequences
of that would be, but it will no longer do that.

* Drop es2020 patch

Unfortunately, VS Code will not load with this.  It seems to be because
`this` is being used in static properties, and it becomes `void 0` for
some reason under the es2020 target.  For example:

  static PREFIX_BY_CATEGORY = `${this.PREFIX}${this.SCOPE_PREFIX}`;

becomes

  AbstractGotoSymbolQuickAccessProvider.PREFIX_BY_CATEGORY = `${(void 0).PREFIX}${(void 0).SCOPE_PREFIX}`;

Which, obviously, will not work.

Older versions of Safari (and maybe other browsers) are likely affected.

* Fix display language

* Update Playwright

I think maybe because of the dropped es2020 patch that Webkit is now
failing because it is too old.

* Do not wait for networkidle in e2e tests

I am not sure what is going on but some tests on Webkit are timing out
and it seems the page is loaded but something is still trying to
download.  Not good, but for now try to at least get the tests passing.
2024-08-15 21:33:21 -08:00
Asher 461d4cba59 Update script tests
Installing from npm now tells you the version.
2024-08-01 11:31:44 -08:00
Asher 31bc0c6b1a Fix dangling links in standalone release
The fix will now run both to the GitHub and npm release instead of only
for the npm releases.

Closes #5157.
2024-07-25 09:16:15 -08:00
Asher 0f9436e7b9 Remove Ranger for now
- We have a labeling bot that is marking issues as upstream (so far
  correctly) now Ranger is closing them right away and it felt too
  aggressive to me.
- It keeps posting its comment twice.  Not sure how to fix that.
2024-07-19 10:51:31 -08:00
Asher 6467c60166 Remove section about VS Code Remote
It has nothing to do with code-server and will not connect to or use
code-server in any way.

Closes #5613.
2024-07-12 17:02:40 -08:00
Asher d9812a5970 Use version in npm install
Closes #4832.
2024-07-12 16:23:29 -08:00
Asher f2c326147d Fix login page assets over proxy domain 2024-07-12 15:06:44 -08:00
Asher 37a72ce63b Enforce yarn version
Closes https://github.com/coder/code-server/issues/6695.
2024-07-12 14:49:10 -08:00
Asher 6a14070664 Add faq entry about web views
Closes #5671.
2024-07-11 11:52:23 -08:00
Asher a9eb923790 Remove unused audit-ci dependency
There is a `yarn ci` script which was using audit-ci but this does not
appear to be called anywhere.

The security worflow uses `yarn audit` and `npm audit` which seem fine
enough anyway.
2024-07-10 13:23:24 -08:00
Asher d83ba4b46f Release v4.91.0 2024-07-09 23:23:16 -08:00
Asher fb3e3e1546 Log custom extensions gallery 2024-07-09 12:47:24 -08:00
Asher 901191e0f9 Update changelog 2024-07-08 17:51:47 -08:00
Asher dd79446b00 Remove display language test
It is not working.  I test this manually anyway so for now just remove
the test, but I think maybe we have to watch for code-server to extract
the language files, and then reload the page, or maybe we have to
install the language from the UI.

Ideally we can drop our patch in the future anyway...
2024-07-08 17:50:08 -08:00
Asher 090e0fad76 Update to Code 1.91.0 (#6885) 2024-07-08 14:10:34 -08:00
Asher 6514ba4bf3 Update contributing docs 2024-07-03 13:33:02 -08:00
Asher c7d88abf9f v4.90.3 2024-06-21 11:01:16 -08:00
Asher 26c763485b Update JSON parse error matcher
Looks like this text changed?
2024-06-21 09:52:42 -08:00
Asher d431c9cd9d Fix log file path
The first argument is a file name, not a path.  When the log gets
rotated it prepends the date which ends up creating a path in the
current working directory.
2024-06-21 09:47:44 -08:00
Asher ed069310a4 v4.90.2 2024-06-17 10:42:09 -08:00
Asher a73549539b Cache unchanging telemetry data
Might make sense to cache the rest as well, and evict from the cache
periodically.  For now this is enough to fix a hang I often see in our
deployment of Coder.  Might only be surfacing now because new telemetry
calls were added to startup.
2024-06-12 15:09:45 -08:00
Asher e7ca9cd6ac Fix changelog heading indentation 2024-06-12 13:05:41 -08:00
Asher 9da9f2029c v4.90.0 2024-06-12 13:03:51 -08:00
Asher 0c802ba165 Remove node-gyp install (#6831)
Seems to install fine without it now.
2024-06-08 20:07:51 -08:00
Asher 1bd2b9cf08 Fix segfault in CI (#6830)
Setting DISABLE_V8_COMPILE_CACHE=1 seems to fix it.
2024-06-08 20:07:24 -08:00
Asher 3b467dec95 Update changelog for 1.90.0 2024-06-06 15:05:12 -08:00
Asher 3b6ad479a6 Release v4.89.1 and v4.89.0 2024-05-14 10:17:35 -08:00
Asher ab4b36f573 Fix setuptools install on macOS
This is erroring now with "This environment is externally managed".
2024-05-07 13:41:21 -08:00
Asher 0f4791b816 Add remote machine ID to telemetry 2024-05-07 11:35:01 -08:00
Asher 97653152dd Flush telemetry appender on dispose 2024-05-06 19:36:52 -08:00
Asher 2633bca30b Move telemetry endpoint to product service
This will let us use it in the client.
2024-05-06 18:39:39 -08:00
Asher 125a972c81 Do not add extra args in toCodeArgs
It should only convert the args that are passed in.
2024-05-06 18:39:22 -08:00
Asher 7050002fb6 Add missing semicolon 2024-05-06 18:39:21 -08:00
Asher 4563517d90 Add isContainer property to telemetry 2024-05-06 18:37:41 -08:00
Asher fb2afbd9d6 Handle undefined body
In the latest Express it seems the body is undefined when no data is
passed (instead of being empty).
2024-04-16 11:29:12 -08:00
Asher 3d8d544f89 Refactor VS Code routes to match others 2024-04-16 11:00:33 -08:00
Asher 323a1f3234 Only require unsafe-perm if you are root
Remove it from the docs, as the error message should be sufficient and
it seems weird to recommend unsafe-perm by default.
2024-04-16 10:48:46 -08:00
Asher b8d830b826 Update path syntax for Express
It seems that * matches a literal * now, so we have to use a regular
expression.

Parentheses around a parameter no longer works (it causes it to match on
the parameter name literally) and I am not sure why we had it anyway as
it had no effect previously.

Matching with a leading / does not appear to work either, but we do not
need the leading / anyway since the proxy logic was changed to use the
whole path.  Consequently it will never be / anymore from what I can
tell but I left that check in just in case.  I turned it into a named
parameter as well, because that seems better.
2024-04-16 09:54:33 -08:00
Asher 417c1f36cb Release 4.23.1 2024-04-15 16:37:01 -08:00
Asher 3eb9cf7a08 Update express and qs
It does not appear we have to pin qs anymore.
2024-04-15 16:32:52 -08:00
Asher deebb21345 Release 4.23.0 2024-04-08 13:24:39 -08:00
Asher 73e615da4e Fix extension installation test
This throws now that the exit is non-zero.
2024-04-05 17:39:21 -08:00
Asher bec6ab2678 Fix masking exit code
Addresses the part of #6367 that we can fix.
2024-04-05 16:31:58 -08:00
Asher 45e96ec3b0 Shorten bug dropdown descriptions 2024-03-14 12:19:13 -08:00
Asher 66364429e3 Release 4.22.1 2024-03-14 12:16:35 -08:00
Asher 0e384d5442 Tweak issue templates
- Remove the redundant title prefix.
- Remove outdated assignees.
- Improve reproduction step description (trying to get folks to submit
  more specific/detailed reproductions).
- Render logs with shell (not sure if this actually changes anything).
- Use dropdowns for testing in VS Code and Codespaces.  I think the
  existing checkboxes are still confusing so hopefully this sorts it.
2024-03-14 12:16:33 -08:00
Asher c65b1f2870 Continue release drafting on Codecov failure 2024-03-12 09:41:21 -08:00
Asher 132f7d1470 Default keepAlive to true for proxy agent 2024-03-11 14:13:21 -08:00
Asher 56b5992280 Pin Arch Linux action version
We are still getting the old one, I think?
2024-03-06 14:10:57 -09:00
Asher 275c130845 Update Arch Linux action username
This broke due to the username being changed, and GitHub does not appear
to put any redirects in place.
2024-03-06 14:04:32 -09:00
Asher 223ecf7c30 Release v4.22.0 2024-03-04 06:52:54 -09:00
Asher 2248c8bdd4 Correct changelog link 2024-02-28 14:56:38 -09:00
Asher d2dfeedb2f Release v4.21.2 2024-02-28 14:22:31 -09:00
Asher 460a4564c3 Revert "chore: bump codecov/codecov-action from 3 to 4 (#6652)"
This reverts commit 63beaaabd7.

It appears to be no longer capable of finding git.
2024-02-28 14:04:55 -09:00
Asher c31d2a0e37 Release v4.21.1 2024-02-09 13:02:44 -09:00
Asher 413c47a86d Update Node to 18.17.1
For https://github.com/coder/code-server/issues/6666.
2024-02-07 21:11:27 -09:00
Asher 5b62943216 Release v4.21.0 2024-02-05 09:41:51 -09:00
Asher d6ef385de2 Release v4.20.1 2024-01-22 08:34:02 -09:00
Asher fdb46d3fe5 Exit with 1 when VS Code CLI errors
Addresses part of #6367.  The script bundled with VS Code still has the
same problem but it would be better to fix that one upstream.
2024-01-11 12:46:09 -09:00
Asher d49b3bf159 Fix query string being double-encoding over path proxy
Instead of trying to piece together the original URL and re-encode what
needs to be re-encoded, strip out the base from the original URL.

Fixes #6307.
2024-01-11 12:26:06 -09:00
Asher 07901026a0 Release v4.20.0 2023-12-21 12:53:25 -09:00
Asher d0215eca88 Tweak bug report template
These checkboxes keep getting checked despite the submitter using an
insecure context or not having tested upstream.  I think two things are
at play here:

1. Folks might be interpreting "cannot reproduce" as "did not
   reproduce" or "did not have time to reproduce".
2. The checkboxes are required to submit the issue so folks might be
   marking them just so they can get their issue submitted; maybe they
   are not even reading the checkboxes and are just seeing the error
   that they need to be marked and blindly marking them because while
   in some cases folks will add "I had to check this but it is not
   true", usually they say nothing.

In any case, hopefully these changes make the checkboxes more accurate,
and then if they are unchecked we can ask them to go reproduce in VS
Code or use a secure context or whatever the case may be.
2023-12-18 13:56:35 -09:00
Asher 26a3437849 Use debug instead of trace
Trace outputs stack traces which is entirely unnecessary for these two
log entries and makes the logs noisier than they need to be.
2023-12-06 13:19:36 -09:00
Asher 3e8100b70e Release v4.19.1 2023-11-29 12:23:25 -09:00
Asher 0c98611e6b Ensure we only ever set workspace initialized to true
This is just a guard in case there are paths where the workspace is
already marked as initialized but the workspace configuration is not and
we end up actually un-initializing it.
2023-11-27 17:36:26 -09:00
Asher 73cb236535 Add back local storage patch
And fix the workspace bug.  It is caused by an issue with how some
global variables are being used asynchronously and is exacerbated by the
delay reading settings from the remote introduces.

1. The workspace is created and is marked as not initialized.
2. The configuration's change handler is triggered, and now
   initialization is complete.
3. The handler tries to set the global workspace variable to initialized
   but the workspace has not been set yet so we get an undefined error.
4. The workspace global is now set, but it is set to the old value with
   initialized still set to false.
5. Workspace is never marked as initialized until something else
   triggers the on change handler again.

Fixes #3061, and closes #6546.

My guess is this logic changed in one of the VS Code updates,
introducing this async bug but never getting caught probably because for
them the settings are always local thus minimal delay.
2023-11-27 17:25:38 -09:00
Asher 9ba66ec468 Use machine settings for e2e tests
User settings are browser-based so use machine settings instead.
2023-11-20 15:42:34 -09:00
Asher 09dd5fe44d Delete local storage patch
The main goal of this patch was to make user settings stored on disk
instead of in the browser, but this stopped working some time ago.  Not
only that but it is causing a bug where a workspace will not fully open.

A secondary goal was to fix the Vim extension but the extension appears
to work just fine without this change now (both the server and browser
versions).

This patch is not useful anymore anyway because there are remote-level
settings that *do* get stored on disk and can be used instead of
user-level settings when necessary.

Fixes #3061, and possibly #6153.
2023-11-20 13:32:59 -09:00
Asher edf078d1d2 Release v4.19.0 2023-11-20 07:29:25 -09:00
Asher 984fb135dc Fix node-gyp failure on macOS (#6537) 2023-11-16 10:10:36 -09:00
Asher da254c39ee Set Node version in a single place (#6534)
This should make it much easier to update.  Also use 18.15.0
specifically since that is what VS Code ships with.

Additionally, it fixes the post-install script being skipped due to
a Yarn v1 bug that happens when Yarn installs node-gyp, which
it does because 18.18 onward stopped bundling node-gyp.
2023-11-14 12:45:56 -09:00
Asher 11e6e656c0 Release v4.18.0 2023-10-20 12:03:13 -08:00
Asher c2d79d94f9 Use secure context in bug report template
Some folks run over localhost, which will work just fine for service
workers.
2023-10-11 17:19:19 -08:00
Asher 27e7b931e7 Remove mention of legacy extension API
We would like to shut this down.
2023-10-04 15:44:54 -08:00
Asher f4bf492051 Release v4.17.1 2023-09-29 15:21:48 -08:00
Asher 2eba7af117 Use code-server commit in product.json
Also remove github.com from the trusted domains.  This causes the
browser to block the popup instead (probably because the space between
interaction and popup is too great), which is difficult to notice in
Chromium.  Even in Firefox with the extra bar they add at the top it can
be easy to miss.
2023-09-29 13:58:01 -08:00
Asher 0dc59c0da2 Add trusted extension list
Also trust github.com to make the auth flow smoother.
2023-09-29 10:39:00 -08:00
Asher 6275520348 Fix incorrect argon2 target in arm builds (#6453)
* Fix building from source on arm

Not building from source causes argon2 to pull the wrong arch, so we
have to build from source.

But building from source is causing the new Kerberos module to fail on
arm64 and keytar to fail on both.

The latter has been very difficult to debug because the GitHub image
provides a different result to containers based on Ubuntu 20.04.
Because of this, use a container instead.

Use debian:buster as the container because it is easier to set up the
architecture sources (no need to modify the sources) and because it
seems to come with glibc 2.28 rather than 2.31.

Also use the exact version of Node (18.15.0) for reproducibility.

* Set owner and group during tar to zero

Otherwise you get IDs that can cause (benign) errors while extracting,
which might be confusing.  At the very least, I did not see these errors
from previous tars (although they seem to use 1001).

There is no guarantee what IDs might exist so 0 seems the most
reasonable.
2023-09-27 19:17:47 -08:00
Asher 2bb51a25a9 Refresh proxy URI patch 2023-09-26 12:19:13 -08:00
Asher 7a213161f2 Build from source on cross-compile step
The comment said the issue with argon2 was related to CentOS 7 but the
cross-compile steps never used CentOS 7 so maybe the real issue is with
the architecture.
2023-09-26 09:58:53 -08:00
Asher a1131fadf2 Enable secret storage (#6450)
* Remove unused dependency patch

* Enable secret storage based on local storage

* Remove unnecessary GitHub auth patch

It works now without the patch.
2023-09-26 08:35:41 -08:00
Asher 468cf5c6ce Update npm publish workflow to use v18 2023-09-22 17:53:56 -08:00
Asher 800bf364d6 Release v4.17.0 2023-09-22 17:49:40 -08:00
Asher 58f6e24a07 Fix installation of kerberos module on armv7l (#6442)
Also build with the same version of Node we will release with.
2023-09-22 00:54:14 -08:00
Asher 7868f4db23 Fix cross-compilation (#6441)
* Avoid packaging yarn.lock

Since the shrinkwrap is what we want everything to use.

* Build with npm

It seems we stuck with yarn because npm was giving us errors but I will try
sorting it out now so we can build with npm as originally intended.

* Remove build from source

Not using CentOS 7 anymore so based on the comment we no longer need
this.  Keytar seems to install fine now.

* Update missed Node version

These numbers are all over the place.

* npm_config_arch must be lowercase

* Patch out Kerberos

I am not sure exactly how it is used but I think it is not a path code-server
worries about, at least not right now.  Just going to patch it out rather than
figure out how to build it on armv7l but we can revisit later.
2023-09-21 23:21:01 -08:00
Asher acc50a5d36 Update dependencies and force-update qs (#6440)
* Update dependencies and force-update qs

This is mainly an attempt to get rid of as many resolutions as possible
since it seems they are unnecessary except for qs (according to yarn/npm
audit).

For qs use 6.9.7 since Express is using 6.9.6 and that matches the most
closely.

Also add overrides since this is npm's version of yarn's resolutions and
we need it for the shrinkwrap to generate with the right dependencies.

Decided to keep pinning @types/node as well although I am not sure it is
necessary.  Express is pulling in v20 types.  Since this is
development-only we only need it in resolutions.

* Run formatter

Some rules seem to have changed with the dependency updates.

* Replace deprecated bodyParser.json() usage

* Audit npm shrinkwrap as well

* Skip installing dependencies in audit

It seems the tools only require the lock files.

* Fix tests when using ipv6

* Add missing openssl dependency to flake
2023-09-21 16:13:34 -08:00
Asher 47ee7ae670 Bump minimum glibc to 2.28 (#6439)
At least, for the standalone and for anyone running on default Node 18.

If support for 2.17 is needed then one would need to build Node 18 with 2.17 and then build code-server with that version (specifically, the native npm modules).
2023-09-21 13:42:17 -08:00
Asher 70d0c603cc Update to VS Code 1.82.2 (#6436)
* Update VS Code to 1.82.2

* Add new libkrb5 dependency

* Update patches

The only changes were to context except:

- The URL callback provider uses a new _callbackRoute argument and moved
  locations.
- The telemetry provider gets passed the request service as the first
  argument now.
- CSP hash changed, as usual.

* Update Node to v18

* Revert back to es2020

es2022 is breaking Safari.
2023-09-20 15:33:28 -08:00
Asher 03dc8cd808 Propagate post-installation failures
pipefail might be ideal here but not sure how wide the support is yet
considering this may run on plain sh.
2023-09-11 09:27:29 -08:00
Asher 3e1c00e017 Run formatter
Not sure why CI missed these, will have to look into it.
2023-09-11 09:27:28 -08:00
Asher 913fc30866 Upgrade @coder/logger (#6409)
This gets rid of the unused peer dependency that was pulling in
protobufjs.
2023-08-30 12:10:34 -08:00
Asher eb498b0d6d Remove humanPath (#6404)
The tilde is ambiguous and it can be helpful to know exactly what paths
code-server is trying to use, especially if it is running as a different
user than you expected.
2023-08-29 14:25:24 -08:00
Asher 3cb92edc76 Release v4.16.1 2023-07-31 11:21:45 -08:00
Asher a82f1ceaa5 Add missing FAQ table of contents entry 2023-07-28 17:46:36 -08:00
Asher 25254214fb Release v4.16.0 2023-07-28 17:32:57 -08:00
Asher feb5e6770c Add entry for location of configuration
Closes #6324.
2023-07-28 17:32:48 -08:00
Asher e37b35278d Account for disabled proxy in startup logs 2023-07-27 09:26:11 -08:00