Pass more information on the download URL for early compatibility check #190

Closed
opened 2024-06-18 12:54:19 +02:00 by Dalai Felinto · 2 comments

In order to help blender to figure out as early as possible if an extension is compatible with it, we want to pass more arguments to the URL.

  • repository
  • platforms: optional, comma-separated values
  • blender_version_min
  • blender_version_max: optional

With the exception of the repository, all the other values are from the manifest. Keep in mind that the platforms needs to take into account [build.generated] platforms=....

Example:
https://extensions.blender.org/add-ons/bioxelnodes/0.2.2/download/add-on-bioxelnodes-v0.2.2.zip?repository=/api/v1/extensions/&blender_version_min=4.2.0&platforms=windows-x64,macos-arm64

In order to help blender to figure out as early as possible if an extension is compatible with it, we want to pass more arguments to the URL. * repository * platforms: optional, comma-separated values * blender_version_min * blender_version_max: optional With the exception of the repository, all the other values are from the manifest. Keep in mind that the platforms needs to take into account [`[build.generated] platforms=...`](https://projects.blender.org/infrastructure/extensions-website/issues/74#issuecomment-1216985). Example: `https://extensions.blender.org/add-ons/bioxelnodes/0.2.2/download/add-on-bioxelnodes-v0.2.2.zip?repository=/api/v1/extensions/&blender_version_min=4.2.0&platforms=windows-x64,macos-arm64`
Dalai Felinto added the
Priority
Normal
Type
Report
labels 2024-06-18 12:54:19 +02:00

@Oleg-Komarov mentioned this isn't correct use of these URL arguments... and I'm not a web developer so I can't really judge these things.
However it has some advantages:

  • This works with a statically generated site - no need for a server that responds to specific requests.
  • The compatibility can be known instantly when dropping without having to make a request to the server.

In short it makes the implementation simple on Blender's side and doesn't require additional delay from client/server communication.

@Oleg-Komarov mentioned this isn't correct use of these URL arguments... and I'm not a web developer so I can't really judge these things. However it has some advantages: - This works with a statically generated site - no need for a server that responds to specific requests. - The compatibility can be known instantly when dropping without having to make a request to the server. In short it makes the implementation simple on Blender's side and doesn't require additional delay from client/server communication.
Owner

Deployed in production

Deployed in production
Sign in to join this conversation.
No Milestone
No project
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: infrastructure/extensions-website#190
No description provided.