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

runPluginVerifier: release 2020.1 seems to be resolved to build 202.7660.26 rather than 201.6668.121 #553

Closed
PawelLipski opened this issue Oct 29, 2020 · 10 comments
Assignees
Labels

Comments

@PawelLipski
Copy link

PawelLipski commented Oct 29, 2020

See https://github.com/VirtusLab/git-machete-intellij-plugin/pull/637/files for a sample PR where this happens.

Full build logs can be seen under https://app.circleci.com/pipelines/github/VirtusLab/git-machete-intellij-plugin/3675/workflows/8c46c821-3518-4a1b-be9e-c03268609d37/jobs/3851 , step Verify binary compatibility with supported IntelliJ versions (failure of this pipeline is expected and not related to this very issue).

First we get:

2020-10-29T18:41:08 [main] INFO  verification - Reading IDE /root/.pluginVerifier/ides/IC-2020.1
2020-10-29T18:41:12 [main] INFO  verification - Reading IDE /root/.pluginVerifier/ides/IC-2020.1.4
2020-10-29T18:41:15 [main] INFO  verification - Reading IDE /root/.pluginVerifier/ides/IC-2020.2.3
2020-10-29T18:41:18 [main] INFO  verification - Reading IDE /root/.pluginVerifier/ides/IC-203.5251.39

which is expected, but later the actual verification runs against:

Scheduled verifications (4):
com.virtuslab.git-machete:0.8.1-32-SNAPSHOT+git.a833b4c against IC-202.7660.26,
com.virtuslab.git-machete:0.8.1-32-SNAPSHOT+git.a833b4c against IC-201.8743.12,
com.virtuslab.git-machete:0.8.1-32-SNAPSHOT+git.a833b4c against IC-202.7660.26,
com.virtuslab.git-machete:0.8.1-32-SNAPSHOT+git.a833b4c against IC-203.5251.39

so 201.6668.121 (2020.1) seems to be missing and, surprisingly, replaced with one more instance of 202.7660.26 (2020.2.3)... which also happens to be the version against which the plugin is being built.

@hsz
Copy link
Member

hsz commented Oct 30, 2020

Ok, it appears that there's an issue with the service that resolves IDE download URLs - for major versions, like 2020.1, there's the latest stable returned - 2020.2.3 as for now.

Anyway, I've got in touch with the team lead responsible for that and I got also confirmation, that some IDEs are removed i.e. due to security reasons: WS-2019.1.2, PY-2019.1.2 + all major releases, so 2020.1 is not present on CDN anyway.

Please keep in mind that these versions are not listed within the Marketplace dashboard as well:
image

I'll try to find out the best way to provide an up-to-date list of the IDE versions available for testing with the Plugins Verifier.

@hsz hsz self-assigned this Oct 30, 2020
@hsz hsz added the bug label Oct 30, 2020
@PawelLipski
Copy link
Author

Ok! good to know, thanks :)
This implies that possibly caring for compatibility with 2020.1 specifically isn't that important... also, are there any guarantees by design like if, for the given release A.B (e.g. 2020.1), plugin is compatible with any A.B.C (e.g. 2020.1.4), then it's compatible all A.B.*?

@hsz
Copy link
Member

hsz commented Oct 30, 2020

Minor releases introduce rather bug fixes and should not introduce breaking changes like the method signatures modifications of the 2020.1.

FYI: there's Incompatible Changes in IntelliJ Platform and Plugins API section in SDK Docs available that utilizes all breaking changes introduced in time.

@hsz
Copy link
Member

hsz commented Oct 30, 2020

The proper fix is provided. When there'll be a source of truth available regarding the available IDE versions that can be provided to the Plugin Verifier, it'll be linked within the stack trace and documentation.

@PawelLipski
Copy link
Author

@hsz is there an ETA for v0.6.2 that would include this fix? ;)

@gamerson
Copy link

gamerson commented Nov 4, 2020

@hsz is there an ETA for v0.6.2 that would include this fix? ;)

Also trying to add 0.7.0-SNAPSHOT seems to not work. Last few snapshots here are missing the jar file: https://oss.sonatype.org/content/repositories/snapshots/org/jetbrains/intellij/plugins/gradle-intellij-plugin/org.jetbrains.intellij.plugins.gradle-intellij-plugin/0.7.0-SNAPSHOT/

@hsz
Copy link
Member

hsz commented Nov 5, 2020

The list of the available products that can be used for testing is here: https://jb.gg/intellij-platform-builds-list

@AlexPl292
Copy link
Member

Wow, cool! What is the proposed usage of this link? Just open it and find the products or there is some integration with the plugin?
Also, I may be wrong, but last time I've tried to check against 2020.2.1, 2020.1.2, and 2020.1.1 they were unavailable, but they are presented in this list.

@hsz
Copy link
Member

hsz commented Nov 5, 2020

Probably shortened URL is not yet refreshed - valid target URL is:

https://data.services.jetbrains.com/products?fields=code,name,releases.downloads,releases.version,releases.build,releases.type&code=DG,PS,DL,MPS,MPSIIP,RDCPPP,WS,AC,IIC,IIE,GO,CL,PCD,PCC,RD,PCE,IIU,RM,PCP

That's a raw dataset from the data.services - the quickest solution I could provide for the listing of available product versions.
Each item contains, i.e.:

{
  type: "release",
  downloads: {
    sourcesArchive: {
      link: "https://github.com/JetBrains/intellij-community/archive/idea/201.8538.31.zip",
      size: 0,
      checksumLink: "https://github.com/JetBrains/intellij-community/archive/idea/201.8538.31.zip.sha256"
    },
    linux: {
      link: "https://download.jetbrains.com/idea/ideaIC-2020.1.3.tar.gz",
      size: 641212612,
      checksumLink: "https://download.jetbrains.com/idea/ideaIC-2020.1.3.tar.gz.sha256"
    },
    linuxWithoutJBR: {
      link: "https://download.jetbrains.com/idea/ideaIC-2020.1.3-no-jbr.tar.gz",
      size: 529511746,
      checksumLink: "https://download.jetbrains.com/idea/ideaIC-2020.1.3-no-jbr.tar.gz.sha256"
    },
    thirdPartyLibrariesJson: {
      link: "https://download.jetbrains.com/idea/ideaIC-2020.1.3-third-party-libraries.json",
      size: 35811,
      checksumLink: "https://download.jetbrains.com/idea/ideaIC-2020.1.3-third-party-libraries.json.sha256"
    },
    windows: {
      link: "https://download.jetbrains.com/idea/ideaIC-2020.1.3.exe",
      size: 572771320,
      checksumLink: "https://download.jetbrains.com/idea/ideaIC-2020.1.3.exe.sha256"
    },
    windowsZip: {
      link: "https://download.jetbrains.com/idea/ideaIC-2020.1.3.win.zip",
      size: 633144712,
      checksumLink: "https://download.jetbrains.com/idea/ideaIC-2020.1.3.win.zip.sha256"
    },
    mac: {
      link: "https://download.jetbrains.com/idea/ideaIC-2020.1.3.dmg",
      size: 634690438,
      checksumLink: "https://download.jetbrains.com/idea/ideaIC-2020.1.3.dmg.sha256"
    }
  },
  version: "2020.1.3",
  build: "201.8538.31"
}

The downloads property points out that the version is available via CDN - but we're not going to rely on these URLs.

If type is release - use 2020.1.3, otherwise - build property should be used.

@hsz
Copy link
Member

hsz commented Nov 5, 2020

v0.6.2 is now available.

@hsz hsz unpinned this issue Nov 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants