Don't know how to build task 'docs:rdocs'

144 views
Skip to first unread message

Gordon Thiesfeld

unread,
Aug 26, 2009, 4:48:41 PM8/26/09
to rubyin...@googlegroups.com
I did some work on the docs tasks so that they'll only run if the CHM
files don't exist. Anyway, now when I run rake ruby19:package, if the
package needs to be created the task runs fine. If the installer
package exists, rake fails with this error.

C:\scripts\repo\oneclick>rake ruby19:package -t
(in C:/scripts/repo/oneclick)
Loading common.rake
Loading mingw.rake
Loading msys.rake
Loading defaults.rake
Loading gdbm.rake
Loading iconv.rake
Loading openssl.rake
Loading pdcurses.rake
Loading rbreadline.rake
Loading zlib.rake
Loading extract_utils.rake
Loading ruby18.rake
Loading ruby19.rake
Loading inno.rake
Loading release.rake
Loading book.rake
Loading docs.rake
Loading rubygems.rake
** Invoke ruby19:package (first_time)
** Invoke innosetup (first_time)
** Execute innosetup
rake aborted!
Don't know how to build task 'docs:rdocs'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1728:in
`[]'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:649:in
`timestamp'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:649:in
`collect'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:649:in
`timestamp'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:787:in
`out_of_date?'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2383:in
`any?'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:787:in
`each'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:787:in
`any?'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:787:in
`out_of_date?'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:771:in
`needed?'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:615:in
`format_trace_flags'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:592:in
`invoke_with_call_chain'
c:/ruby/186-p368-mingw32/lib/ruby/1.8/monitor.rb:242:in `synchronize'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in
`invoke_with_call_chain'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:607:in
`invoke_prerequisites'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:604:in
`each'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:604:in
`invoke_prerequisites'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:596:in
`invoke_with_call_chain'
c:/ruby/186-p368-mingw32/lib/ruby/1.8/monitor.rb:242:in `synchronize'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:590:in
`invoke_with_call_chain'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:583:in
`invoke'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2051:in
`invoke_task'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in
`top_level'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in
`each'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2029:in
`top_level'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in
`standard_exception_handling'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2023:in
`top_level'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2001:in
`run'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:2068:in
`standard_exception_handling'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/lib/rake.rb:1998:in
`run'
c:/ruby/186-p368-mingw32/lib/ruby/gems/1.8/gems/rake-0.8.7/bin/rake:31
c:/ruby/186-p368-mingw32/bin/rake:19:in `load'
c:/ruby/186-p368-mingw32/bin/rake:19

I'm not sure what's going on. Any ideas?

Alexey Borzenkov

unread,
Aug 26, 2009, 4:53:11 PM8/26/09
to rubyin...@googlegroups.com
On Thu, Aug 27, 2009 at 12:48 AM, Gordon Thiesfeld<gthie...@gmail.com> wrote:
> I did some work on the docs tasks so that they'll only run if the CHM
> files don't exist.  Anyway, now when I run rake ruby19:package, if the
> package needs to be created the task runs fine.  If the installer
> package exists, rake fails with this error.

[...snip...]

> Don't know how to build task 'docs:rdocs'

[...snip...]

> I'm not sure what's going on.  Any ideas?

Yes. It's rake bug. See http://github.com/snaury/rake for the fix.
I've sent pull request, but unfortunately haven't heard any reply yet.
:(

Gordon Thiesfeld

unread,
Aug 26, 2009, 4:59:27 PM8/26/09
to rubyin...@googlegroups.com
On Wed, Aug 26, 2009 at 3:53 PM, Alexey Borzenkov<sna...@gmail.com> wrote:
> Yes. It's rake bug. See http://github.com/snaury/rake for the fix.
> I've sent pull request, but unfortunately haven't heard any reply yet.
> :(
>

Ok, well now I can stop banging my head against the wall. Thanks!

Alexey Borzenkov

unread,
Aug 26, 2009, 5:01:45 PM8/26/09
to rubyin...@googlegroups.com
On Thu, Aug 27, 2009 at 12:59 AM, Gordon Thiesfeld<gthie...@gmail.com> wrote:
> Ok, well now I can stop banging my head against the wall.  Thanks!

You can work around it by just specifying fully specified task names.
Unfortunately you'll need to make sure there are no relative
dependencies for THE COMPLETE chain, up to the very top. That's why in
my proper-openssl-2 branch you can see a bunch of dependencies
specified as 'dependencies:openssl:something' instead of just
:something.

Luis Lavena

unread,
Aug 26, 2009, 5:17:23 PM8/26/09
to rubyin...@googlegroups.com

You should submit it as a patch for Rake:

http://onestepback.org/redmine/projects/show/rake
--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

Luis Lavena

unread,
Aug 26, 2009, 5:21:19 PM8/26/09
to rubyin...@googlegroups.com

Yes, rakes sucks at resolving dependencies, has been stated at the
readme and documentation but doesn't work.

What I do is use the full dependency chain, a bummer, but a solution :P

Alexey Borzenkov

unread,
Aug 26, 2009, 5:26:28 PM8/26/09
to rubyin...@googlegroups.com
On Thu, Aug 27, 2009 at 1:21 AM, Luis Lavena<luisl...@gmail.com> wrote:
> Yes, rakes sucks at resolving dependencies, has been stated at the
> readme and documentation but doesn't work.
>
> What I do is use the full dependency chain, a bummer, but a solution :P

Yes, but it's still a little tricky and unintuitive. Imagine a situation:

namespace :something do
task :task1
task :task2 => [:task1]
file "somefile" => 'something:task2'
end

Even though you specified a fully qualified dependency for somefile,
now task2 will start failing if somefile already exists. It can
actually go really really deep, and very far from the actual problem,
and was very confusing to me when I encountered it.

And thanks for rake's redmine link, I hope I'll find some time
tomorrow to report it there...

Reply all
Reply to author
Forward
0 new messages