Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 633964 - GLEP 64 links to live version of PMS
Summary: GLEP 64 links to live version of PMS
Status: RESOLVED FIXED
Alias: None
Product: Documentation
Classification: Unclassified
Component: GLEP Changes (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: GLEP Editors
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-10-10 19:04 UTC by Ulrich Müller
Modified: 2017-10-13 11:49 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch for GLEP 64 (0001-glep-0064-Fix-link-to-PMS-section.patch,851 bytes, patch)
2017-10-10 19:08 UTC, Ulrich Müller
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ulrich Müller gentoo-dev 2017-10-10 19:04:01 UTC
The reference for the metadata cache points to https://dev.gentoo.org/~ulm/pms/head/pms.html#x1-15900013 which does not exist any more (since it is the live version).

The following link to the council-approved version should be used instead:
https://projects.gentoo.org/pms/6/pms.html#x1-16500013.2
Comment 1 Ulrich Müller gentoo-dev 2017-10-10 19:08:00 UTC
Created attachment 498350 [details, diff]
Patch for GLEP 64
Comment 2 Ulrich Müller gentoo-dev 2017-10-10 19:16:04 UTC
@blueness: Please ack.
Comment 3 Anthony Basile gentoo-dev 2017-10-11 21:01:23 UTC
(In reply to Ulrich Müller from comment #2)
> @blueness: Please ack.

Hi Ulrich, it looks good but I don't get this line:  "The metadata cache may be incomplete or non-existent, and may contain additional bogus entries."  I thought the point was to mandate making that information evailable so that other tools could use it.  Can you clarify where that sentence came from?
Comment 4 Ulrich Müller gentoo-dev 2017-10-12 09:44:03 UTC
(In reply to Anthony Basile from comment #3)
> Hi Ulrich, it looks good but I don't get this line:  "The metadata cache may
> be incomplete or non-existent, and may contain additional bogus entries."  I
> thought the point was to mandate making that information evailable so that
> other tools could use it.  Can you clarify where that sentence came from?

That sentence is there since a long time (namely 2009):
https://gitweb.gentoo.org/proj/pms.git/commit/?id=ef961a6f9b91fc0e4ff41da84a3f92888c13d116
I guess the intention of it was that future developments of the cache format should not be blocked (as is the case indeed with Portage's md5-cache).

Since GLEP 64 references the section only for the list of variables, I suppose it is no problem?


@blueness: BTW, could you please also ack that the GLEP can be distributed under a CC-BY-SA-3.0 license (see bug 631208)?
Comment 5 Anthony Basile gentoo-dev 2017-10-12 11:44:57 UTC
(In reply to Ulrich Müller from comment #4)
> (In reply to Anthony Basile from comment #3)
> > Hi Ulrich, it looks good but I don't get this line:  "The metadata cache may
> > be incomplete or non-existent, and may contain additional bogus entries."  I
> > thought the point was to mandate making that information evailable so that
> > other tools could use it.  Can you clarify where that sentence came from?
> 
> That sentence is there since a long time (namely 2009):
> https://gitweb.gentoo.org/proj/pms.git/commit/
> ?id=ef961a6f9b91fc0e4ff41da84a3f92888c13d116
> I guess the intention of it was that future developments of the cache format
> should not be blocked (as is the case indeed with Portage's md5-cache).
> 
> Since GLEP 64 references the section only for the list of variables, I
> suppose it is no problem?
> 

I'm okay with your intentions for that sentence, but I'm worried that other package managers will use it as a loophole and not bother even trying to export their cache.  The original concern was with paludis that doesn't export any information about dependent libraries as reported by ldd.  This is important to create a map of host's library dependencies for other tools.

That sentence is not part of the original GLEP or the intention.  I think this should go back to the council for discussion if you want it there.

> 
> @blueness: BTW, could you please also ack that the GLEP can be distributed
> under a CC-BY-SA-3.0 license (see bug 631208)?

Fine.
Comment 6 Larry the Git Cow gentoo-dev 2017-10-12 12:17:29 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/data/glep.git/commit/?id=f7a67265db3ae26db51e0c3d5bf9daa1ba413c8c

commit f7a67265db3ae26db51e0c3d5bf9daa1ba413c8c
Author:     Ulrich Müller <ulm@gentoo.org>
AuthorDate: 2017-10-10 18:59:14 +0000
Commit:     Ulrich Müller <ulm@gentoo.org>
CommitDate: 2017-10-12 12:12:03 +0000

    glep-0064: Fix link to PMS.
    
    Link to the latest council-approved PMS version, instead of the live
    version which is a moving target.
    
    Bug: https://bugs.gentoo.org/633964

 glep-0064.rst | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)}
Comment 7 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-10-12 12:36:17 UTC
(In reply to Anthony Basile from comment #5)
> (In reply to Ulrich Müller from comment #4)
> > (In reply to Anthony Basile from comment #3)
> > > Hi Ulrich, it looks good but I don't get this line:  "The metadata cache may
> > > be incomplete or non-existent, and may contain additional bogus entries."  I
> > > thought the point was to mandate making that information evailable so that
> > > other tools could use it.  Can you clarify where that sentence came from?
> > 
> > That sentence is there since a long time (namely 2009):
> > https://gitweb.gentoo.org/proj/pms.git/commit/
> > ?id=ef961a6f9b91fc0e4ff41da84a3f92888c13d116
> > I guess the intention of it was that future developments of the cache format
> > should not be blocked (as is the case indeed with Portage's md5-cache).
> > 
> > Since GLEP 64 references the section only for the list of variables, I
> > suppose it is no problem?
> > 
> 
> I'm okay with your intentions for that sentence, but I'm worried that other
> package managers will use it as a loophole and not bother even trying to
> export their cache.

...which is entirely correct. You *must not* in any circumstances expect the cache to be present and up-to-date. That's the purpose of cache, after all. It's meant to provide means to speed the implementation up when available but it does not replace the original data source.

> The original concern was with paludis that doesn't
> export any information about dependent libraries as reported by ldd.  This
> is important to create a map of host's library dependencies for other tools.

I don't see how that's relevant to metadata cache at all. The package manager can't know anything about dependent libraries before the package is built, and it certainly can't know them from the ebuild.
Comment 8 Anthony Basile gentoo-dev 2017-10-13 11:11:56 UTC
(In reply to Michał Górny from comment #7)
> (In reply to Anthony Basile from comment #5)
> > (In reply to Ulrich Müller from comment #4)
> > > (In reply to Anthony Basile from comment #3)
> > > > Hi Ulrich, it looks good but I don't get this line:  "The metadata cache may
> > > > be incomplete or non-existent, and may contain additional bogus entries."  I
> > > > thought the point was to mandate making that information evailable so that
> > > > other tools could use it.  Can you clarify where that sentence came from?
> > > 
> > > That sentence is there since a long time (namely 2009):
> > > https://gitweb.gentoo.org/proj/pms.git/commit/
> > > ?id=ef961a6f9b91fc0e4ff41da84a3f92888c13d116
> > > I guess the intention of it was that future developments of the cache format
> > > should not be blocked (as is the case indeed with Portage's md5-cache).
> > > 
> > > Since GLEP 64 references the section only for the list of variables, I
> > > suppose it is no problem?
> > > 
> > 
> > I'm okay with your intentions for that sentence, but I'm worried that other
> > package managers will use it as a loophole and not bother even trying to
> > export their cache.
> 
> ...which is entirely correct. You *must not* in any circumstances expect the
> cache to be present and up-to-date. That's the purpose of cache, after all.
> It's meant to provide means to speed the implementation up when available
> but it does not replace the original data source.
> 
> > The original concern was with paludis that doesn't
> > export any information about dependent libraries as reported by ldd.  This
> > is important to create a map of host's library dependencies for other tools.
> 
> I don't see how that's relevant to metadata cache at all. The package
> manager can't know anything about dependent libraries before the package is
> built, and it certainly can't know them from the ebuild.


Consider the tool revdep-rebuild (python version) which imports form gentoolkit which in turn imports portage and uses VARDB to obtain information about linkings between consumers of libraries from NEEDED.ELF.2.  This GLEP was supposed to safeguard tools like that.

There are other such tools which currently are in use which also operate on assumptions contrary to your above assertions.

Also I don't understand your statement "package manager can't know anything about dependent libraries before the package is built" because some information in VARDB is generated *after* the package is emerged.
Comment 9 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-10-13 11:26:57 UTC
... and the sentence you are referring to talks of metadata/cache in the repository, and not vardb.
Comment 10 Anthony Basile gentoo-dev 2017-10-13 11:49:51 UTC
(In reply to Michał Górny from comment #9)
> ... and the sentence you are referring to talks of metadata/cache in the
> repository, and not vardb.

Ah yes.  Sorry for the misunderstanding.