Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[justusadam.language-haskell] Add 'make all' for the justusadam.language-haskell extension #122

Merged
merged 1 commit into from
Aug 19, 2020

Conversation

bryphe
Copy link
Contributor

@bryphe bryphe commented Aug 18, 2020

Issue: The language-haskell plugin is missing syntax files. These are intended to be generated during the build, via make all, but this wasn't included in the publish script. This means that the extension is broken - at least for syntax highlighting.

We noticed this in onivim/oni2#2307 using the language-haskell extension published to open-vsx.

Fix: Add make all to the prepublish script for language-haskell.

Related:

@@ -461,7 +461,7 @@
"repository": "https://github.com/JustusAdam/language-haskell",
"version": "3.3.0",
"checkout": "v3.3.0",
"prepublish": "npm i --save-dev @types/node@10"
"prepublish": "npm i --save-dev @types/node@10 && make all"
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I tested this locally and worked - and it seems like the ubuntu-latest image contains build-essentials package which has make. But I wasn't able to test it in the GH workflow environment.

Would be cool if there was a 'dry run' for PR validation! 😄

@bryphe
Copy link
Contributor Author

bryphe commented Aug 18, 2020

Also some notes about the generation here: JustusAdam/language-haskell#169

Copy link
Collaborator

@jankeromnes jankeromnes left a comment

Choose a reason for hiding this comment

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

Wow, great catch, many thanks for fixing this! 💯

Fix looks good to me, so I'll merge it and report back CI results. (I agree that a PR validation mechanism would be great -- albeit one that doesn't actually upload stuff to OpenVSX!)

I've also subscribed to the issue about publishing this extension upstream. Thanks again!

@jankeromnes jankeromnes merged commit 426e9f4 into open-vsx:master Aug 19, 2020
@spoenemann
Copy link
Collaborator

spoenemann commented Aug 19, 2020

I cannot remove the current version 3.3.0 because it is the only published version, and haskell.haskell depends on this extension. We need to publish at least one other version (could be an older version) before I can remove the broken one.

@jankeromnes
Copy link
Collaborator

jankeromnes commented Aug 19, 2020

@spoenemann Maybe we can circumvent this, e.g. by publishing an older version, that way you can delete the broken upload, and we re-publish the latest again.

EDIT: 3.0.3 is scheduled for publishing in ~6 minutes.

jankeromnes added a commit that referenced this pull request Aug 19, 2020
@jankeromnes
Copy link
Collaborator

Oops, publishing tag v3.0.3 failed with:

Running: npm i --save-dev @types/node@10 && make all
[FAIL] Could not process extension: {
  "id": "justusadam.language-haskell",
  "repository": "https://github.com/JustusAdam/language-haskell",
  "checkout": "v3.0.3",
  "prepublish": "npm i --save-dev @types/node@10 && make all"
}
Error: Command failed: npm i --save-dev @types/node@10 && make all
make: *** No rule to make target 'all'.  Stop.

I guess this all rule is quite new?

@bryphe
Copy link
Contributor Author

bryphe commented Aug 19, 2020

Thanks @jankeromnes @spoenemann !

Oops, publishing tag v3.0.3 failed

Ah, ya, it looks like the make step was added after the v3.0.3 tag - so you'd need to publish 3.0.3 without the make all step

jankeromnes added a commit that referenced this pull request Aug 20, 2020
@jankeromnes
Copy link
Collaborator

🚀 Published justusadam.language-haskell v3.0.3

@spoenemann Please delete version 3.3.0 of https://open-vsx.org/extension/justusadam/language-haskell so that we can re-publish a fixed version. 🙂

jankeromnes added a commit that referenced this pull request Aug 20, 2020
Revert "[justusadam.language-haskell] Temporarily remove 'make all' step that didn't exist in 3.0.3"
Revert "[justusadam.language-haskell] Temporarily roll back version to publish a fixed extension"
Context: #122 (comment)
jankeromnes added a commit that referenced this pull request Aug 20, 2020
Revert "[justusadam.language-haskell] Temporarily remove 'make all' step that didn't exist in 3.0.3"
Revert "[justusadam.language-haskell] Temporarily roll back version to publish a fixed extension"
Context: #122 (comment)
@spoenemann
Copy link
Collaborator

Done.

@sekunho
Copy link

sekunho commented Aug 21, 2020

The issue still persists

Error

(Sys_error
  "/home/user/.config/oni2/extensions/justusadam.language-haskell-3.0.3.vsix/syntaxes/haskell.json: No such file or directory"):

Steps:

  1. Install extension

    • Through extensions tab v3.3.0
    • Through open-vsx (with uninstalling previous) v3.0.3
  2. Open .hs file

  3. Crashes

Edit: I updated to the latest nightly and now it works

tennox pushed a commit to tennox/publish-extensions that referenced this pull request Jan 21, 2022
tennox pushed a commit to tennox/publish-extensions that referenced this pull request Jan 21, 2022
tennox pushed a commit to tennox/publish-extensions that referenced this pull request Jan 21, 2022
Revert "[justusadam.language-haskell] Temporarily remove 'make all' step that didn't exist in 3.0.3"
Revert "[justusadam.language-haskell] Temporarily roll back version to publish a fixed extension"
Context: open-vsx#122 (comment)
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