marcandre / backports

The latest features of Ruby backported to older versions.
MIT License
437 stars 52 forks source link

Rename tags to spec-tags #81

Closed ixti closed 11 years ago

ixti commented 11 years ago

tags is a filename used by ctags, so due to name collision gem-ctags fails when backports installed :((

marcandre commented 11 years ago

Hi! I'm sorry you're having trouble with backports. I will need your help to help you though, as I'm a bit confused by your request. I'm confused because the backports gem publishes only what's in the lib folder, and tags is outside of it, so I don't see how there could be a collision. Indeed, no library in Ruby should be able to see/read the backports tags folder. Do you have a bit of code that shows the error you're getting? Thanks

ixti commented 11 years ago

Hi,

no problems at all, I have already sent a pull request to make sure gem ctags will at least continue to other gems :D anyway, an issue is easily reproducable:

gem uninstall backports
gem install gem-ctags
gem ctags
# works ok
gem install backports
# error from gem ctags
gem ctags
# gem ctags continues to fail

You are right about that tags should not be in gem, but unfortunately it happened to be there, you can check it yourself: http://rubygems.org/downloads/backports-3.3.3.gem

ixti commented 11 years ago

To check that backports gem has tags dir:

gem install backports -v=3.3.3
gem unpack backports -v=3.3.3
ls backports-3.3.3 | grep tags

or

curl -L http://rubygems.org/downloads/backports-3.3.3.gem | tar xm --exclude metadata.gz
zcat data.tar.gz | tar t | grep "^tags/"
marcandre commented 11 years ago

I see.

I meant that the "tags" folder should not be visible from gems, but gem-ctags is an extension for gem, not a ruby gem.

I moved the tags & rubyspec folder inside a new spec folder and used a different option for mspec to check there. Took me a half hour figuring how to move a git module :-(

You should be good to go now.

ixti commented 11 years ago

Thank you!