cubiq / iscroll

Smooth scrolling for the web
http://iscrolljs.com
MIT License
12.88k stars 3.81k forks source link

Please use semver for tags. So that we can install with bower #364

Closed ericfong closed 11 years ago

ericfong commented 11 years ago

Please use semver for tags. So that we can install with bower

https://github.com/bower/bower

http://semver.org/

cubiq commented 11 years ago

does bower need bower.json or can live with package.json?

ericfong commented 11 years ago

I am not sure too.

But bower can catch the right git tag by using url: https://github.com/documentcloud/underscore.git#~1.4.4

But in https://github.com/documentcloud/underscore.git We don't have any bower.json or components.json

So, I think just need to name the tag as "X.Y.Z" is ok

davidpfahler commented 11 years ago

Semver makes a lot of sense anyways. @cubiq Can we agree to use it in the future?

In regards to bower, we don't need a component.json to make it work. The latest version uses bower.json anyways. It would make it more usable for frontend devs, though, because we can specify a main file, which could point to the src/iscroll.js (v4). Bower could then just install this file instead of the entire repository. But it's one more file to add and maintain. I used to use semver-sync to keep package.json and component.json in sync, but I'm afraid it can't handle bower.json, yet. So I suggest postponing bower.json implementation for now.

@ericfong Are you referring to iScroll 4 or 5? I'm not sure if you can even get iScroll 4 with bower because it's on another branch now. IScroll 5 is still in beta, so there is no stable semver tag.

EDIT: semver-sync does support bower.json https://github.com/cimi/semver-sync/issues/5#issuecomment-18454065

cubiq commented 11 years ago

I thought I used that standard, but it seems I should have done 5.0.0-beta.1 instead of 5.0.0-beta1 (although package.json doc suggests to use the latter).

bower.json if needed can be generated by build.js, there's no need to maintain that with another package

ericfong commented 11 years ago

I am still using v4

Work around by url: https://github.com/cubiq/iscroll/archive/v4.zip in components.json

davidpfahler commented 11 years ago

@cubiq good point. In regards to semver, we need to tag without the "v" at the beginning, so "5.0.0" instead of "v5.0" would be correct semver.

Shall I fix this? I'll just retag the same commit but with a different name. The old tags should be kept to not break existing code imho.

cubiq commented 11 years ago

oh sorry you were talking about git tags, but if we had a bower.json wouldn't that take the precedence?

davidpfahler commented 11 years ago

Nope, it's looking for tags on github. But I guess naming those tags in a semver manner is a good idea, too.

cubiq commented 11 years ago

white I find that it makes sense to tag a x.y release, I don't really understand the x.y.z tag. anyway if that's what it takes to make the community happy...

davidpfahler commented 11 years ago

For example, iScroll4 had couple us bug fixes and feature releases. I anyone depended on particular version, that was really hard to get, because there are not tags for these versions. Instead, they had to search for a specific commit before the bug fix and check that out themselves. So the idea is to tag any bugfix with a patch version update (e.g. 4.2.x) and any feature in a minor update (4.x.1).

davidpfahler commented 11 years ago

@ericfong You should be fine with this tag: https://github.com/cubiq/iscroll/tree/v4.2.5

I'm going to make sure we have semver complient tags in the future. Thanks for reporting this issue.

ericfong commented 11 years ago

Thanks a lot

cubiq commented 11 years ago

didn't we say that it should be 4.2.5 (without "v")? Also having both x.y and x.y.z tags seems a bit overkill...

frankie-loves-jesus commented 10 years ago

Getting this when trying to use Bower in Ruby on Rails (http://rails-assets.org):

Post-install message from rails-assets-iscroll:
This component doesn't define main assets in bower.json.
Please open new pull request in component's repository:
https://github.com/cubiq/iscroll