On 12 August 2014 21:56, Dennis Gilmore <dennis@ausil.us> wrote:
On Tue, 12 Aug 2014 21:05:07 +0200
Stephen John Smoogen <smooge@gmail.com> wrote:


> Where are we now:
> We support 3 arches.
I think you mean 3 releases. we have 3 arches for epel5 and epel6 and 2
for epel7


I actually meant arches as I forgot that i386 isn't a 7 item.

 
> RHEL4: 1258 srpms. EOL
> RHEL5: 3651 srpms
> RHEL6: 5449 srpms
> RHEL7: 3100 srpms and growing fastest
>
>   * Maybe as the way to implement EPIC rather than EPEL.
> * Policy change that allows for regular major changes in EPEL.
>   * Can't update at any times.
>   * Can make incompatible changes on the next point release of
> RHEL->CentOS.
>   * Example: When RHEL7.1 comes out we have a 30 day window to get
> packages updated and new packages in that make incompatible changes.
>     * Archive 7.0.  The toplevel 7 tree is a symlink to whatever point
> release is latest.
> * Formalize the governance of EPEL.
>   * Written policies of some sort for decision making
>   * Elections?
>   * Problems to solve:
>     * Don't want to just listen to the people who are loudest
>     * Don't want to just listen to the people who have been around the
> longest
> * Do we want automated testing of EPEL?  yes.  get it working on
> whatever subset you can and we'll go on from there.
> * Move to CentOS as build system?  Gives us additional arches.
>
> * Could we do an ISV program like quaid does?

something to consider is moving epel to /opt/fedora/epel or somewhere
like it, then dealing with overlap etc should be simpler, but it would
take a massive change in packaging and could really only be done in
epel8

I think that would be something with softwarecollections.org as that seems in line with their way of packaging items.  I think that for some sorts of packages and libraries it makes sense for that, but I don't know if EPEL would mix and match like that. What I would like to do is the following:

We move from our moving distribution to a point release cycle with a disk layout like the following:

epel
epel/development/
epel/development/5
epel/development/6
epel/development/7
epel/beta/5.12
epel/beta/6.7
epel/beta/7.1
epel/releases
epel/releases/6.6
epel/releases/5.11
epel/releases/7.0
epel/updates
epel/updates/6.6
epel/updates/5.11
epel/updates/7.0
epel/updates/testing/
epel/updates/testing/6.6
epel/updates/testing/5.11
epel/updates/testing/7.0

epel/development would be like the current EPEL directories but without the stringent requirements that packages are locked to a specific version for the lifetime of the overall RHEL release. Instead whenever RHEL releases a new dot release (7.0, 6.6, 5.11), EPEL would branch off the releases from development to beta/7.0 or beta/6.6 etc. Packages would be built against the point release and would need to be tested to get sufficient karma for 'release'. Once 6 weeks have passed from the RHEL point release, all packages which had gotten enough karma and that had completed repository trees would be put into epel/releases/6.6. Updates to that package would be put into updates/testing/6.6 and then promoted to updates/6.6 when enough karma had been given for an update. New packages which were added after the point release would show up in updates following the process Fedora does for new packages between point releases. 

Later when 7.1, 6.7, 5.12 (or whatever they are called) comes out then the process is repeated which will make sure that packages that aren't needed enough to have sponsors will not be in EPEL and potentially broken and large updates are possible so if python34 is in 7.0 but python35 is ready for 7.2 it can replace it without problems (or similarly with ruby23 etc etc). Once the next point release is made ready, the old point release will be archived off to keep storage levels within reason. 

I know that this proposal needs a lot more fleshing out, but I think it covers the use cases many users of EPEL need for long term usage of packages.


--
Stephen J Smoogen.