Closed cedric05 closed 2 years ago
I've been having the same issue for months now. https://github.com/rokucommunity/vscode-brightscript-language/runs/6864880864?check_suite_focus=true#step:10:38
@TwitchBronBron You've had this issue with ovsx 0.3.0 (or earlier)?
This has also been happening to us for months over at Astro.
Example from today's release: https://github.com/withastro/language-tools/runs/6985935480?check_suite_focus=true
This is the last time it worked for me (ovsx@0.2.0 in package-lock.json; on January 12, 2022): https://github.com/rokucommunity/vscode-brightscript-language/actions/runs/1689259345
And this is the first failure after that (ovsx@0.2.1 in package-lock.json: on January 14, 2022): https://github.com/rokucommunity/vscode-brightscript-language/actions/runs/1699095172
Thanks @TwitchBronBron
I diffed versions 0.2.0
and 0.2.1
The main difference is that in version 0.2.1
the ExtensionProcessor
starts reading properties from the *.vsixmanifest XML file (instead of package.json) and it creates WEB__RESOURCE
FileResources
for web extensions. This most likely has a performance impact, especially creating the FileResources
.
@TwitchBronBron @Princesseuh I'll try publishing your extensions against versions 0.2.0 and 0.2.1 to see if there's a performance difference.
@TwitchBronBron @Princesseuh After looking at your failed CI jobs again, I can't really pinpoint a openvsx-server release that may have introduced this issue. I mean https://github.com/withastro/language-tools/runs/5484791314?check_suite_focus=true was able to publish the extension to Open VSX on March 9, 2022, while https://github.com/rokucommunity/vscode-brightscript-language/actions/runs/1699095172 already started failing on January 14, 2022.
It might be the file size (~20MB). I'll compare publishing your extensions with some small extensions (~500KB)
After looking at your failed CI jobs again, I can't really pinpoint a openvsx-server release that may have introduced this issue. I mean https://github.com/withastro/language-tools/runs/5484791314?check_suite_focus=true was able to publish the extension to Open VSX on March 9, 2022
If that can help, that release was completely empty due to an issue on our side 😅 None of our actual working releases have ever completed, as far as I know
Something to note is that like the original poster says, the publishing always work, the process just never ends
the publishing always work, the process just never ends
That sounds like a Gateway Timeout (504) or Bad Gateway (502) status code. The request times out, but the extension still gets published.
How does the CI publishing step determine it finished (either successfully or with an exception)?
I'm not too familiar, but I would assume it waits for the process to end and checks the return code
Yes, like mentioned in the issue description, extension gets published but process never dies. I'm guessing
// filename cli/src/publish.ts
const packagePaths = options.packagePath || [undefined];
const targets = options.targets || [undefined];
for (const packagePath of packagePaths) {
for (const target of targets) {
internalPublishOptions.push({ ... options, packagePath: packagePath, target: target });
}
}
// promise.all is taking for ever or
await Promise.all(internalPublishOptions.map(publishOptions => doPublish(publishOptions)));
for this commit https://github.com/eclipse/openvsx/commit/36ef42f5e293789e7b78fb9839e586b4c44665b2
I've noticed that the extension
folder inside the .vsix
is being stored in the external storage provider, if the extension happens to have many dependencies in the node_modules
, this process can be painfully slow.
@cedric05 I'll test that piece of code, publishing 1 and multiple extensions at once.
@marshallwalker That's true. However the MS Marketplace does that too: https://rokucommunity.vscode-unpkg.net/RokuCommunity/brightscript/2.33.2/extension/node_modules/ Maybe uploading resources or the whole publishing process should run in the background?
@amvanbaren today i submitted a very small extension. i didn't run into any issues, looks like filesize is the issue.
@amvanbaren today i submitted a very small extension. i didn't run into any issues, looks like filesize is the issue.
That's what I'm thinking too. That's also why when you publish to the VS marketplace, it tells you the URL to the published version will be available in a couple minutes (not right away).
PR #482 changes the publishing logic in the CLI. It waits until all publish processes have finished and then reports the errors it encountered, if any. You can give it a try to see if you get a clear error message or at least that ovsx
doesn't hang.
we use
to publish. earlier it used to work correctly, from past one week, its taking for ever. fyi, it looks like it has published extension but still process did not die/killed
refer1: https://github.com/cedric05/dothttp-runner/runs/6830285884?check_suite_focus=true#step:9:1 refer2: https://github.com/cedric05/dothttp-runner/runs/6642336794?check_suite_focus=true#step:9:2