Planned setup.ini changes for early 2018

Peter A. Castro doctor@fruitbat.org
Thu Jan 11 17:55:00 GMT 2018


On Wed, 10 Jan 2018, Jon Turney wrote:

Greetings, Jon,

> * Add depends: to version descriptions
>
> This is a version-specific list of required packages (as opposed to 
> requires:, which is per-package, and contains the union of the dependencies 
> for all versions).
>
> I believe that historical setup versions will either ignore, or can handle 
> depends: (just containing package names, without version relations) 
> relatively sanely (see [1] et seq. for details).

As long as the behaviour you outline in [1] is consistent, then that means 
I should be able to use older Setup with newer setup.ini, yes?  That will 
be useful for people who use the Time Machine. :)

> * De-duplicate source archives
>
> Source archives which are identical[2] between x86 and x86_64 will be moved 
> to paths starting src/ in the release area.

I'm not quite visualizing this,  Do you mean there will be a new directory 
name 'src' that will be on the same level as 'x86' and 'x86_64' or 
will it be higher up the directory tree?  It matters to me for the Time 
Machine as I'll need to be able to re-create the same directory hierarchy 
for each circa.  It's a selectively automated process currently, but I 
need to know what symlink to place where.  :)

> Doing post-hoc de-duplication is unfortunate, but worthwhile given the 
> potential size saving in mirrors (see [3] et seq.), until cygport can be 
> taught how to make suitable source packages (which has several unresolved 
> issues, also discussed at [3], [4] et seq.).

Will this be done en masse upon the next setup.ini build cycle, or over 
time as each new package is updated?  Having a massive amount of "new" 
packages show up under a "new" directory named 'src' will be quite a lot 
for the mirrors to absorb all at once.  For the Time Machine it might 
effectively be double as I have to maintain the old hierarchy as well as 
the new one (under the assumption that you'd apply the de-duplication 
retroactively).

> * Migrate from setup.hint to pvr.hint in release area
>
> I also plan to migrate all remaining setup.hints to pvr.hints in the release 
> area (setup.hint in uploads have been automatically migrated since [5]).
>
> This should have no effect on the generated setup.ini, but enables some 
> complexity (some of which isn't implemented properly, see [6]) to be removed 
> from calm.
>
> [1] https://cygwin.com/ml/cygwin-apps/2017-12/msg00020.html
> [2] my current implementation considers two archives identical if they have 
> an identical set of members, with identical contents. Permitted differences 
> include the mtime, mode or owner of members.
> [3] https://cygwin.com/ml/cygwin-apps/2017-04/msg00069.html
> [4] https://cygwin.com/ml/cygwin-apps/2017-05/msg00012.html
> [5] https://cygwin.com/ml/cygwin-apps/2017-11/msg00044.html
> [6] https://cygwin.com/ml/cygwin-apps/2017-10/msg00123.html

-- 
--=> Peter A. Castro
Email: doctor at fruitbat dot org / Peter dot Castro at oracle dot com
 	"Cats are just autistic Dogs" -- Dr. Tony Attwood



More information about the Cygwin-apps mailing list