technicalpickles / jeweler

Opinionated tool for creating and managing Rubygem projects
MIT License
1.48k stars 169 forks source link

ghpages:relase task #100

Closed dreamcat4 closed 8 years ago

dreamcat4 commented 14 years ago

Hi !

Back in issue 92, TechnicalPickles suggested that there might be room in the jeweler api for a new rake documentation:release rake task.

I just wanted to offer to implement that, based on defaulting to gh-pages release of (either yard or rdoc). So the intended behaviour is for no clumsy setup, and to use grancher to push the docs up to github. (takes the pain away).

Please see next comment for justifications as to why we might want this.

dreamcat4 commented 14 years ago

Its widely acknowledged that the "future" seems to be new hosted web services like rdoc.info and yardoc.org. However I just wanted to point out why those sites aren't really the first choice for everyone.

1) rdoc.info is allright if you've documented everything in Yard. But there are many big / older projects (and new ones!) that are still written in rdoc. And yard doesnt care to support very well at all. So all the rdoc formatting, etc gets all screwed up on rdoc.info. So its better to use hanna templates and push them out to our gh-pages automatically with jeweler. This is also as rubyforge is now getting defunct.

2) Theres seems to be enough of us who aren't really that overwhelmed with the look and feel of the new Yard template on those sites. Thankfully Loren has written a plugin system into yard. So theres actually people (including myself) who are writing yard plugins which overlay onto that original template with a different layout, improved look and feel, etc.

Not to mention Loren's own plugins for documenting additional things like the rspec tests, etc. However these new yard plugins simply cant be applied to either of the websites rdoc.info or yardoc.org, which run in a restricted fashion. (They wont allow running of arbitrary ruby code on server-side for security reasons).

But its fine if we can do local generation + gh-pages. Id just like to make this more convenient in jeweler.

dreamcat4 commented 14 years ago

Looks like the grancher.rb file is plenty small enough to be included within jeweler. That would mean no extra gem dependency.

http://judofyr.github.com/grancher/

So can I just go ahead and implement this then? Approval wanted

dreamcat4 commented 14 years ago

This code needs to be looked at. Peek the topic branch at:

http://github.com/dreamcat4/jeweler/tree/issue-100-ghpages

Documentation can be gleaned from:

http://github.com/dreamcat4/jeweler/blob/issue-100-ghpages/lib/jeweler/ghpages_tasks.rb

We really hope this new feature can be brought through to the next release of Jeweler. AFAKT, theres also other juggling left to do. The new Thor command line options arent working yet. Kristian had some commit, however you want to move them out of generator.rb and into the individual plugin files.

Thanks.

dreamcat4 commented 14 years ago

Topic branch updated at -

http://github.com/dreamcat4/jeweler/tree/issue-100-ghpages

dreamcat4 commented 13 years ago

As mentioned on the jeweler mailinglist...

Have rebased onto master 1.5.x line.

This latest code is here: http://github.com/dreamcat4/jeweler/tree/ghpages-1.5.x