[Rubyinstaller-devel] OT: FYI - Will be partially away the next days
luislavena at gmail.com
Mon Aug 24 17:06:15 EDT 2009
On Fri, Aug 21, 2009 at 6:55 PM, Alexey Borzenkov<snaury at gmail.com> wrote:
> On Fri, Aug 21, 2009 at 8:13 PM, Luis Lavena<luislavena at gmail.com> wrote:
>> What needs to be done is complete the new DSL branch, but I has been
>> so busy that commit time to it would be impossible.
>> The new format for recipes uses checkpoint files for the tasks and
>> treat packages individually, so if a source /origin for a file
>> download changed: it will download the files and extract them, since
>> the previous checkpoint file got invalidated.
> What I'd also like to see is checksum checking for download tasks.
> Right now checksums are not checked, so you can never be sure that you
> downloaded what you originally planned on downloading. Worse, when I
> first tried building it, my connection somehow dropped in the middle
> and one of msys-related files was only partially downloaded. Yet
> somehow download task was thinking it succeeded and later extracting
> it obviously failed (so I had to delete the corrupted file to
> continue). Situations like this could be caught earlier if there was
> checksum checking.
I was considering the same, it is a flaw of the implementation that I
want to get fixed with the DSL implemention.
Please submit a Feature request with Build recipes as category at
RubyForge, so I keep track of it.
>>> Btw, using :force => true with FileUtils.mv is a really bad idea. All
>>> it does is ignores any errors, and most likely that's not what you
>>> want. I've been bitten many times by that, when it couldn't move
>>> something and just silently succeeded (e.g. immediately after ruby is
>>> unpacked Kaspersky goes inspecting it, and mv fails O.o which causes
>>> only much later in the build process, when directory ext or something
>>> else is missing).
>> I don't remember the reasoning behind it actually, was over the Bazaar
>> repo, and don't have it handy at work's computer.
> Well, I can only guess that you might have been doing it because it
> currently extracts stuff over and over again every time. And when
> extracting ruby, for example, the moving out phase was obviously
> failing, because target directories already exist.
> I just pushed this change that implements mv_r without hacking FileUtils:
> Somehow it even feels more stable than my hackish FileUtils version.
Please test it from scratch and with previous checked out tools. Once
it works as you expected, send me the pull request for me to review
Then, will merge those changes and give you commit rights, so no
longer need to work on your fork ;)
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
More information about the Rubyinstaller-devel