Updating !Boot and !System

Sprow webpages at sprow.co.uk
Fri Feb 19 23:36:42 GMT 2016

In article <80b18a5455.DaveMeUK at my.inbox.com>,
   Dave Higton <dave at davehigton.me.uk> wrote:
> In message <55547cd825webpages at sprow.co.uk>
>           Sprow <webpages at sprow.co.uk> wrote:
> >How many files are present in the !Boot/!System updates from NetSurf?
> >CI 3419 has 
> >  13 in !Cache
> >  5  in !System
> >  78 in !Unicode
> >so it's not beyond the wit of man to have 91 lines in an obey file, 
> >assuming you use some tool to get their leaf names (or, I suppose, a bit
> >of perl or whatever to generate the script by the build system).
> Today I've been writing a small BASIC prog to recurse through all
> the files in a folder and use Install_Update to update the copy
> in a similar location within Boot$Dir or System$Dir as appropriate.
> It's not crunched and is only about 60 lines.  It does rely on the
> relative path in the real Boot$Dir/System$Dir being identical to
> that in the !Boot/!System that we provide - that must be so,
> mustn't it? 

Yes, the layout of a merge-able !Boot or !System only works if it's the same
structure as the target. In the 2 examples I pointed at it's of the form

  Install_Update <Obey$Dir>.Thing <System$Dir>.Thing

> It still doesn't compare the file contents, so, just like the
> pure Copy process, it will typically update more often than needed.

For speed you could just operate a heirarchy
=> Are the date stamps the same?
==> Are the sizes the same?
===> Are the contents the same?

The last one will be slowest, but 1 & 2 will probably catch most files which
are likely to be identical.

> I've written some multi-tasking comparison code elsewhere, and
> I'll see if I can build it into the above tool.

I'm not sure where why "multi-tasking" is specifically mentioned here. It's
only 91 files, if you want it to multi-task make it a TaskObey file.

> >> And it still copies based on the file date (which we know we
> >> can't trust) and not the file content. 
> >
> >Not so. See section 5.2 of the spec [...]
> Thank you for that... more info that I didn't even know existed!

You might even spot that the other bits of the spec (for example relating to
phrasing of help) got adopted into the Style Guide - the information's out
there, just moving at treacle speed,

More information about the netsurf-dev mailing list