Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 596338 - Let emerge store resolve information in a file, and resolve using past resolutions
Summary: Let emerge store resolve information in a file, and resolve using past resolu...
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on: 528394
Blocks: 155723
  Show dependency tree
 
Reported: 2016-10-06 11:01 UTC by Alexander Berntsen (RETIRED)
Modified: 2017-06-14 05:29 UTC (History)
3 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Berntsen (RETIRED) gentoo-dev 2016-10-06 11:01:17 UTC
THE IDEA
========
Whenever Portage resolves how to do something, we could save all of this information to a file. We could then re-use resolutions instead of needlessly re-resolving.

Through options, we could do this automatically. I.e. store all resolutions, and only remove them when they are useless.


MOTIVATION
==========
Too often, someone does 'emerge X', only to be told that they need to unmask Y and Z, and then restart 'emerge X'. That's, often, ten minutes of their day gone. There are other scenarios where it'd be useful too.


USAGE
=====
This stuff should probably work in the background. If it is enabled as a piece of automagic, it'll store all resolutions, and then prompt the user to reuse them if applicable.

→ emerge --ask X

Calculating dependencies...

You have calculated dependencies before.

1) Resolve again
2) Use TIMESTAMP resolution
3) Use TIMESTAMP resolution


DETAILS
=======
There needs to be a way to validate whether the resolution is outdated (and therefore useless). Zac suggests to store state hashes for all package repositories, the installed package database, and the portage configuration. He also thinks we should assert that users can't modify ebuilds without updating the state hash. This all sounds reasonable to me.
Comment 1 Zac Medico gentoo-dev 2016-10-06 16:14:13 UTC
(In reply to Alexander Berntsen from comment #0)
> DETAILS
> =======
> There needs to be a way to validate whether the resolution is outdated (and
> therefore useless). Zac suggests to store state hashes for all package
> repositories, the installed package database, and the portage configuration.
> He also thinks we should assert that users can't modify ebuilds without
> updating the state hash. This all sounds reasonable to me.

This part ties in with bug 528394.