Accessing the latest version x.y.z releases by x.y or x #360

Open
reezer opened this Issue Aug 10, 2012 · 16 comments

Comments

Projects
None yet
@reezer
Contributor

reezer commented Aug 10, 2012

Various CDNs (Google's for example) allow access of the latest bug fix release of a certain series by not specifying the minor version number. This makes sense, because such releases usually don't contain anything that can breakage, but only contain bug, performance or stability fixes (maybe better support for certain browsers).

To give an example. The current:

http://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.0/jquery-1.8.0.min.js

should also be available as:

http://cdnjs.cloudflare.com/ajax/libs/jquery/1.8/jquery-1.8.min.js

and once 1.8.1 is released link to:

http://cdnjs.cloudflare.com/ajax/libs/jquery/1.8.1/jquery-1.8.1.min.js

For comparison see:

https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js
https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js

(Maybe it would be better to mention this in its own ticket, but specifying the version number twice seems unnecessary.)

@ryankirkman

This comment has been minimized.

Show comment Hide comment
@ryankirkman

ryankirkman Aug 11, 2012

Owner

So there's a few issues with implementing this:

  • It assumes everyone follows semantic versioning in the same manner
  • Depending on the Cache-Control max-age you might not actually get bug fixes for a long time (e.g. 1 year)
  • I'm not sure how we would implement this from a technical sense
    • Right now everything is just static file serving. Introducing somewhat dynamic script serving will complicate things

In regards to including the version number in the file name, my policy is to include the file exactly as it is provided by the library maintainer, filename and all, e.g. http://code.jquery.com/jquery-1.8.0.min.js

Owner

ryankirkman commented Aug 11, 2012

So there's a few issues with implementing this:

  • It assumes everyone follows semantic versioning in the same manner
  • Depending on the Cache-Control max-age you might not actually get bug fixes for a long time (e.g. 1 year)
  • I'm not sure how we would implement this from a technical sense
    • Right now everything is just static file serving. Introducing somewhat dynamic script serving will complicate things

In regards to including the version number in the file name, my policy is to include the file exactly as it is provided by the library maintainer, filename and all, e.g. http://code.jquery.com/jquery-1.8.0.min.js

@reezer

This comment has been minimized.

Show comment Hide comment
@reezer

reezer Aug 11, 2012

Contributor
  • Well, one should of course know the library one uses. It's also not like one would have to include such a version. (and a lot of different libraries for sanity reasons follow this or similar semantics)
  • Isn't that what ETags are for?
  • Would symlinks be an option? That way they'd implemented just like most libraries in Unix systems, which do exactly what I propose here. But I don't know if and how git supports links.
Contributor

reezer commented Aug 11, 2012

  • Well, one should of course know the library one uses. It's also not like one would have to include such a version. (and a lot of different libraries for sanity reasons follow this or similar semantics)
  • Isn't that what ETags are for?
  • Would symlinks be an option? That way they'd implemented just like most libraries in Unix systems, which do exactly what I propose here. But I don't know if and how git supports links.
@blaise-io

This comment has been minimized.

Show comment Hide comment
@blaise-io

blaise-io Sep 25, 2012

I’d also appreciate this, in my case for jQuery as well. It would be great to automatically benefit from bug fix releases (third digit) without having to monitor bug fix releases and updating paths every time.

I understand this may be complicated because it needs adjustments to the existing architecture, but I think it would make a great additional to the service.

I’d also appreciate this, in my case for jQuery as well. It would be great to automatically benefit from bug fix releases (third digit) without having to monitor bug fix releases and updating paths every time.

I understand this may be complicated because it needs adjustments to the existing architecture, but I think it would make a great additional to the service.

@thomasdavis

This comment has been minimized.

Show comment Hide comment
@thomasdavis

thomasdavis Oct 17, 2012

Owner

This is most likely out of our scope for now, we are trying to keep management overheads down.

Though will keep the ticket alive if anyone has any good ideas. Symlinks sounds like the way to go but I'm not sure I want to be managing hundreds of symlinks etc

Owner

thomasdavis commented Oct 17, 2012

This is most likely out of our scope for now, we are trying to keep management overheads down.

Though will keep the ticket alive if anyone has any good ideas. Symlinks sounds like the way to go but I'm not sure I want to be managing hundreds of symlinks etc

@thomasdavis

This comment has been minimized.

Show comment Hide comment
@thomasdavis

thomasdavis Dec 17, 2012

Owner

Thanks @hpatoio

Owner

thomasdavis commented Dec 17, 2012

Thanks @hpatoio

@thomasdavis

This comment has been minimized.

Show comment Hide comment
@thomasdavis

thomasdavis Jun 27, 2013

Owner
Owner

thomasdavis commented Jun 27, 2013

@fidian

This comment has been minimized.

Show comment Hide comment
@fidian

fidian Jul 3, 2013

In #1495 I offered to make a shell script that would manage the multitude of shell scripts and it could be added as part of your build process. @ryankirkman had a concern that any sort of complexity might not work. Have symlinks even been tried? If not, I'd be happy to give a pull request that would add symlinks for a single project to save on clutter. It appears that the CDN might just proxy the first request through to another host, so I suppose it's more important to see if the original host supports symlinks.

fidian commented Jul 3, 2013

In #1495 I offered to make a shell script that would manage the multitude of shell scripts and it could be added as part of your build process. @ryankirkman had a concern that any sort of complexity might not work. Have symlinks even been tried? If not, I'd be happy to give a pull request that would add symlinks for a single project to save on clutter. It appears that the CDN might just proxy the first request through to another host, so I suppose it's more important to see if the original host supports symlinks.

@altmind

This comment has been minimized.

Show comment Hide comment
@altmind

altmind Apr 14, 2014

Contributor

👍 It will be a cool and needed feature.

Contributor

altmind commented Apr 14, 2014

👍 It will be a cool and needed feature.

@petecooper

This comment has been minimized.

Show comment Hide comment
@petecooper

petecooper May 14, 2014

Contributor

Tagging in #987

Contributor

petecooper commented May 14, 2014

Tagging in #987

@AliMD

This comment has been minimized.

Show comment Hide comment
@AliMD

AliMD Jun 25, 2014

👍 nice idea ;)
whats your schedule for do it ?

AliMD commented Jun 25, 2014

👍 nice idea ;)
whats your schedule for do it ?

@lmccart lmccart referenced this issue in processing/p5.js Jul 18, 2014

Closed

CDNJS Nightly Build #260

@vakata

This comment has been minimized.

Show comment Hide comment
@vakata

vakata Sep 11, 2014

Contributor

If not wild card support, how about using "latest", especially for libs that use the npm hook - in npm there always is a latest tag. That could even promote moving to verified sources (npm) for the libs, and reduce manual submissions.

Contributor

vakata commented Sep 11, 2014

If not wild card support, how about using "latest", especially for libs that use the npm hook - in npm there always is a latest tag. That could even promote moving to verified sources (npm) for the libs, and reduce manual submissions.

@luigimannoni

This comment has been minimized.

Show comment Hide comment
@luigimannoni

luigimannoni Jan 16, 2015

Completely agree with that, i guess having a /latest/.js and /latest/.min.js would be easier to maintain rather than using wildcards

Completely agree with that, i guess having a /latest/.js and /latest/.min.js would be easier to maintain rather than using wildcards

@AliMD

This comment has been minimized.

Show comment Hide comment
@AliMD

AliMD Feb 5, 2015

Do you forgot this feature/issue ?!

AliMD commented Feb 5, 2015

Do you forgot this feature/issue ?!

@eusonlito

This comment has been minimized.

Show comment Hide comment
@eusonlito

eusonlito Feb 11, 2015

👍

👍

@Garbee Garbee referenced this issue in google/material-design-lite Mar 24, 2015

Closed

Inline examples #77

@coliff coliff referenced this issue in ResponsiveImagesCG/responsiveimages.org Apr 28, 2015

Merged

Switched to using CDN version of picturefill (closes #70) #71

@dandv dandv referenced this issue in jsdelivr/jsdelivr Jul 7, 2015

Closed

[question] get latest from CDN ? #4672

@dandv

This comment has been minimized.

Show comment Hide comment
@dandv

dandv Jul 8, 2015

I'd really like for latest or last to work. Useful also in examples of how to use libraries.

dandv commented Jul 8, 2015

I'd really like for latest or last to work. Useful also in examples of how to use libraries.

@Kristinita

This comment has been minimized.

Show comment Hide comment
@Kristinita

Kristinita Feb 18, 2018

+1

+1

@scribblemaniac scribblemaniac referenced this issue in alrra/browser-logos Mar 17, 2018

Closed

@Latest #139

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment