-
-
Notifications
You must be signed in to change notification settings - Fork 803
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
Expose product level information in the API #2062
Comments
We have to decide first what the endpoint will be. The most obvious solution would be to expose those informations from the existing We could also introduce a new endpoint without introducing a breaking change. This endpoint could be I think the best this to do would be to reuse the existing |
I’d be okay with the breaking change as well. We should probably have an API Changelog Issue that users can subscribe to and get notified of any changes.
We have explicitly kept it in Alpha to allow for such breaking changes, so let’s do it.
On phone right now, but there’s a API Website Parity discussion that has some of this.
|
What do you mean by an "API Website Parity discussion" ? |
This "API<>Website Parity" discussion: #759 |
I'm fine with breaking changes, as it's explicitly in alpha. It would be great to have a PR with a deploy preview PR kept open for some time first, so that I can update the https://github.com/hugovk/norwegianblue/ client to work with the new API. Then I can also release at the same time as the PR is merged (or maybe release first to support both versions). Do we have some idea of the usage of the API? Can we get a list of user agents from other clients, to try and give them advance warning? |
Netlify gave us route level Analytics information while we were paying for it, and the last report only had a single API endpoint mentioned: https://github.com/endoflife-date/endoflife.date/wiki/Netlify-Analytics-2022-01 It was also almost an year ago for the last report. I could probably get another report, but it won't tell us much beyond route-level data, no user-agents or IP addresses. Maybe we can put a banner on top of the website that warns about the impending change in the API? Seems like an overkill for now, while we're still in Alpha though. Just pinning an issue and mentioning it in the README should be fine I think. |
I think we can have both API running side-by-side on https://endoflife.date/ by combining this issue with #2066. endoflife.date API is just a script generating JSON files. So if we create a new script generating new API files in another directory (such as
Overall this approach will make it easier for endoflife API client to migrate, because both version will be available at the same time on https://endoflife.date/. Note that by this change I do not mean that the v1 API must be marked stabled: it will remain in beta until #759 issues are resolved. And the old script will have to be deleted after some time (how much will have to be decided later). I also think adding a banner is an overkill because it's still in beta (and usages of the API seems low, at least it was one year ago). But I like you idea of creating and endoflife page of endoflife API ;). |
Only 34 results for https://cs.github.com/?scopeName=All+repos&scope=&q=https%3A%2F%2Fendoflife.date%2Fapi |
For those who don't yet have access to the new GitHub code search feature : https://github.com/search?q=https%3A%2F%2Fendoflife.date%2Fapi&type=code. |
Read through all of the links, and added the relevant ones here: https://github.com/endoflife-date/endoflife.date/wiki/Known-Users I didn't add non-critical users (such as generating READMEs, or dotfiles, or one-time scripts etc). |
Still a work in progress, but I started something. Example: https://deploy-preview-2080--endoflife-date.netlify.app/api/v1/python.json. |
@captn3m0, do you know if Another problem I saw in the current API : some field have multiple types (such as |
We’d added it to make it easier for consumption, couldn’t find usage in the wild and I don’t think it will show up in Netlify Analytics either (it shows too 100 pages or so iirc).
Okay with dropping it in the v1 release, will enable Netlify Analytics and try to get some numbers.
|
Those links are not used on the website, but will soon be used in the API (#2062).
Compared the the old v0 API : - v1 API is now generated using a Jekyll Generator (see https://jekyllrb.com/docs/plugins/generators/). - JSON files has been moved to the v1 subdirectory (#2066). This makes it easier to implement non-backward-compatible changes in API. - The all.json, that returned a simple array of product names in v0, now returns a JSON document in v1. The array of products can be found under the 'products' key. This enables us to add endoflife.date-level data (such as the number of products). - The "products" array in all.json now also contains JSON document instead of simple strings. This will make it easier in the future to expose new data (such as tags for products). - Product level information are now exposed in the API (#2062) at the "product" endpoint. Instead of a JSON array in v0, v1 returns a JSON document. The release cycles array can be found under the 'releases' key. - Cycles data now always contains all the release cycles key, even if they are null. - Individual cycles JSON files has been removed (we thought it was not used/useful enough to be kept).
Compared the the old v0 API : - v1 API is now generated using a Jekyll Generator (see https://jekyllrb.com/docs/plugins/generators/). - JSON files has been moved to the v1 subdirectory (#2066). This makes it easier to implement non-backward-compatible changes in API. - The all.json, that returned a simple array of product names in v0, now returns a JSON document in v1. The array of products can be found under the 'products' key. This enables us to add endoflife.date-level data (such as the number of products). - The "products" array in all.json now also contains JSON document instead of simple strings. This will make it easier in the future to expose new data (such as tags for products). - Product level information are now exposed in the API (#2062) at the "product" endpoint. Instead of a JSON array in v0, v1 returns a JSON document. The release cycles array can be found under the 'releases' key. - Cycles data now always contains all the release cycles key, even if they are null. - Individual cycles JSON files has been removed (we thought it was not used/useful enough to be kept).
Those links are not used on the website, but will soon be used in the API (#2062).
Compared the the old v0 API : - v1 API is now generated using a Jekyll Generator (see https://jekyllrb.com/docs/plugins/generators/). - JSON files has been moved to the v1 subdirectory (#2066). This makes it easier to implement non-backward-compatible changes in API. - The all.json, that returned a simple array of product names in v0, now returns a JSON document in v1. The array of products can be found under the 'products' key. This enables us to add endoflife.date-level data (such as the number of products). - The "products" array in all.json now also contains JSON document instead of simple strings. This will make it easier in the future to expose new data (such as tags for products). - Product level information are now exposed in the API (#2062) at the "product" endpoint. Instead of a JSON array in v0, v1 returns a JSON document. The release cycles array can be found under the 'releases' key. - Cycles data now always contains all the release cycles key, even if they are null. - Individual cycles JSON files has been removed (we thought it was not used/useful enough to be kept).
Compared the the old v0 API : - v1 API is now generated using a Jekyll Generator (see https://jekyllrb.com/docs/plugins/generators/). - JSON files has been moved to the v1 subdirectory (#2066). This makes it easier to implement non-backward-compatible changes in API. - The all.json, that returned a simple array of product names in v0, now returns a JSON document in v1. The array of products can be found under the 'products' key. This enables us to add endoflife.date-level data (such as the number of products). - The "products" array in all.json now also contains JSON document instead of simple strings. This will make it easier in the future to expose new data (such as tags for products). - Product level information are now exposed in the API (#2062) at the "product" endpoint. Instead of a JSON array in v0, v1 returns a JSON document. The release cycles array can be found under the 'releases' key. - Cycles data now always contains all the release cycles key, even if they are null. - Individual cycles JSON files has been removed (we thought it was not used/useful enough to be kept).
Compared the the old v0 API : - v1 API is now generated using a Jekyll Generator (see https://jekyllrb.com/docs/plugins/generators/). - JSON files has been moved to the v1 subdirectory (#2066). This makes it easier to implement non-backward-compatible changes in API. - The all.json, that returned a simple array of product names in v0, now returns a JSON document in v1. The array of products can be found under the 'products' key. This enables us to add endoflife.date-level data (such as the number of products). - The "products" array in all.json now also contains JSON document instead of simple strings. This will make it easier in the future to expose new data (such as tags for products). - Product level information are now exposed in the API (#2062) at the "product" endpoint. Instead of a JSON array in v0, v1 returns a JSON document. The release cycles array can be found under the 'releases' key. - Cycles data now always contains all the release cycles key, even if they are null. - Individual cycles JSON files has been removed (we thought it was not used/useful enough to be kept).
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
This is a major rework of the API with a lot of breaking changes. See CHANGELOG_API.md for more information. Note that we thought of disabling API generation in development (using JEKYLL_ENV like the Jekyll Feed plugin - see https://github.com/jekyll/jekyll-feed/blob/master/lib/jekyll-feed/generator.rb#L145), but it was finally reverted. It does not work well with Netlify preview, and generate production URL (i.e. https://endoflife.date URLs) in development which makes it difficult to use.
Currently no product-level information is available from the API. Urls such as https://endoflife.date/api/python.json only contains product releases.
We need an endpoint for exposing product level information.
The text was updated successfully, but these errors were encountered: