Xavier wrote:
On Thu, Feb 26, 2009 at 4:11 AM, Allan McRae <allan@archlinux.org> wrote:
+# Get the package name from the delta filename +getpkgname() { + local tmp + + tmp=${1##*/} + echo ${tmp%-*-*_to*} +}
Rename this to getdeltapkgname to clarify it is only used for deltas? Self document function names make my head hurt less.
Sorry, I had exactly the same thought, I just didn't know where to add delta :) I will use your suggestion.
Otherwise, a quick read of the other changes made sense to me, but I will need to do this in more detail.
This is probably the patch that requires the most careful review (compared to the other 4), so it would be highly appreciated.
OK. I will pull your patches into a git branch to remind myself to go through these in a lot of detail sometime in the next week or so. Do you have a git home now that Dan moved his server or do I need to apply them from the mailing list? shining.toofishes.net does not seem to exist anymore. Did you test whether creating a repo db from (e.g.) your cache gave the same result with the new and old version. I don't remember anything that should change just adding packages.
One comment that is moderately related to this. Should there be a mechanism to inspect the deltas are remove the ones that are no longer necessary? I.e. deltas with a broken chain, deltas who chain download will be bigger than the package. Should that be a job of repo-add when adding a new delta or a separate script?
I don't know, that seems neat but maybe too much complexity, I am not sure. Finding out how deltas could/should be managed has always been a big issue to me, how/when they are added, how/when they are removed.
I think deciding when they should be removed is the easiest part here: 1) when you can not get from a delta to the current package, it should be removed 2) when getting from a delta to the current package requires more download than just downloading the current package (or whatever criterion pacman uses - 80%?), it should be deleted. Perhaps this should be a separate script, or maybe a flag (repo-add --cleandelta)? Deciding when to add them is very political... Allan