[pacman-dev] Idea: Merge -U and -S (half universal transaction)?
Hi! After killing pmsyncpkg_t, there is not much difference between -S and -U transactions. The only difference is that trans-packages come from pkgcache (-S) or they are loaded from file (-U). And of course, with -S we have an extra step, we have to actually download the packages. However, -U is much more stupid than -S atm. Now the removes field is attached to pmpkg_t, so we could implement FS#3492 without pain, the conflict resolving part from sync.c can be reused without any modification*. Or if we allow mixed trans-packages list (pkg-origin can indicate that we have a file[-U] or repo[-S] package), even the implementaion of FS#5798 should be also straightforward. The only difference between PKG_FROM_CACHE and PKG_FROM_FILE packages, that PKG_FROM_CACHE needs to be downloaded. Then -U would become a sync transaction (internally), and add_commit would be a helper function only. *: I started to work on the implementation of mixed target list, and I realised that the most annoying difference is that PKG_FROM_CACHE packages are not duplicated, so they are mustn't be freed (the new _alpm_pkg_free_trans should be used), but PKG_FROM_FILE packages must be freed. How much memory can we spare by not duplicating sync packages (not calling _alpm_pkg_dup when adding them to transaction target)? The whole base repo is 0.5 MB atm. Does this hack worth? With the old behaviour, implementing this idea (and so FS#3492 and FS#5798) would be really nice. With the new behaviour it would not. (And I don't really like the need for _alpm_pkg_free_trans neither.) Bye ___ pacman-dev mailing list pacman-dev@archlinux.org http://www.archlinux.org/mailman/listinfo/pacman-dev
Re: [pacman-dev] Idea: Merge -U and -S (half universal transaction)?
On Mon, Jun 8, 2009 at 1:24 PM, Nagy Gaborng...@bibl.u-szeged.hu wrote: Hi! After killing pmsyncpkg_t, there is not much difference between -S and -U transactions. The only difference is that trans-packages come from pkgcache (-S) or they are loaded from file (-U). And of course, with -S we have an extra step, we have to actually download the packages. However, -U is much more stupid than -S atm. Now the removes field is attached to pmpkg_t, so we could implement FS#3492 without pain, the conflict resolving part from sync.c can be reused without any modification*. Or if we allow mixed trans-packages list (pkg-origin can indicate that we have a file[-U] or repo[-S] package), even the implementaion of FS#5798 should be also straightforward. The only difference between PKG_FROM_CACHE and PKG_FROM_FILE packages, that PKG_FROM_CACHE needs to be downloaded. Then -U would become a sync transaction (internally), and add_commit would be a helper function only. *: I started to work on the implementation of mixed target list, and I realised that the most annoying difference is that PKG_FROM_CACHE packages are not duplicated, so they are mustn't be freed (the new _alpm_pkg_free_trans should be used), but PKG_FROM_FILE packages must be freed. How much memory can we spare by not duplicating sync packages (not calling _alpm_pkg_dup when adding them to transaction target)? The whole base repo is 0.5 MB atm. Does this hack worth? With the old behaviour, implementing this idea (and so FS#3492 and FS#5798) would be really nice. With the new behaviour it would not. (And I don't really like the need for _alpm_pkg_free_trans neither.) I think it'd be neat! That's all I got :) ___ pacman-dev mailing list pacman-dev@archlinux.org http://www.archlinux.org/mailman/listinfo/pacman-dev
[pacman-dev] [GIT] The official pacman repository branch, master, updated. v3.2.2-175-gaa579b8
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project The official pacman repository. The branch, master has been updated via aa579b843899ccba093f83faa942599ce1110c24 (commit) via 19b8b638851713da64dd2aa7ff31e911ffe925cd (commit) via e61ab1536f4b198ac5c62cf68d706d93bc6481be (commit) via 13b281d74380d9622574bd546e7f9084054ae289 (commit) from 9af9c0f328094228fa363d842ddc9b2a605f0d22 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - commit aa579b843899ccba093f83faa942599ce1110c24 Author: Dan McGee d...@archlinux.org Date: Sat Jun 6 11:03:29 2009 -0500 Give sensible feedback when a repo has no configured servers This fixes FS#14899. When running an -Sp operation without servers configured for a repository, we would segfault, so add an assert to the backend method returning the first server preventing a null pointer dereference. In addition, add a new error code to libalpm that indicates we have no servers configured for a repository. This makes -Sy and -S package operations fail gracefully and helpfully when a repo is set up with no servers, as the default mirrorlist in Arch is provided this way. Signed-off-by: Dan McGee d...@archlinux.org commit 19b8b638851713da64dd2aa7ff31e911ffe925cd Author: Nagy Gabor ng...@bibl.u-szeged.hu Date: Sun Jun 7 14:30:11 2009 +0200 Introduce _alpm_pkg_free_trans() The main purpose of this function to make our code more readable. It frees transaction specific fields of pmpkg_t. (It is used when a package is removed from the target list.) Signed-off-by: Nagy Gabor ng...@bibl.u-szeged.hu Signed-off-by: Dan McGee d...@archlinux.org commit e61ab1536f4b198ac5c62cf68d706d93bc6481be Author: Dan McGee d...@archlinux.org Date: Sat Jun 6 12:49:37 2009 -0500 makepkg: refactor sanity checking into a function No new checks, just move it into a function and return 1 rather than exit directly. This also allows the use of local variables. Signed-off-by: Dan McGee d...@archlinux.org Signed-off-by: Allan McRae al...@archlinux.org commit 13b281d74380d9622574bd546e7f9084054ae289 Author: Xavier Chantry shinin...@gmail.com Date: Fri May 22 00:24:26 2009 +0200 xdelta : only handle gz compression specifically There is apparently no need to handle the re-compression manually when applying a xdelta patch in case of bzip2 or xz. Only gzip needs to be handled specifically for disabling timestamp with the -n option. After this patch, if xdelta is enhanced with xz support (1-line patch), it will be transparent from pacman side. Signed-off-by: Xavier Chantry shinin...@gmail.com Signed-off-by: Dan McGee d...@archlinux.org --- Summary of changes: lib/libalpm/alpm.h|1 + lib/libalpm/db.c |1 + lib/libalpm/dload.c |2 + lib/libalpm/error.c |2 + lib/libalpm/package.c | 13 + lib/libalpm/package.h |1 + lib/libalpm/sync.c| 26 -- lib/libalpm/trans.c |7 +-- scripts/makepkg.sh.in | 142 ++--- src/pacman/sync.c | 10 +++- 10 files changed, 116 insertions(+), 89 deletions(-) hooks/post-receive -- The official pacman repository ___ pacman-dev mailing list pacman-dev@archlinux.org http://www.archlinux.org/mailman/listinfo/pacman-dev
[pacman-dev] [PATCH] makepkg: fix variable backup/restore for splitpkg
The backup and restore of variables that can be overridden while making split packages only dealt with the first element, not the whole array (FS#15010). Adjust the bash voodoo to fix it... Signed-off-by: Allan McRae al...@archlinux.org --- scripts/makepkg.sh.in |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index f46b7f8..e2e1604 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1262,7 +1262,7 @@ devel_update() { backup_package_variables() { for var in ${splitpkg_overrid...@]}; do indirect=${var}_backup - eval ${indirect}=\${!var}\ + eval ${indirect}=(\${$v...@]}) done } @@ -1270,7 +1270,7 @@ restore_package_variables() { for var in ${splitpkg_overrid...@]}; do indirect=${var}_backup if [ -n ${!indirect} ]; then - eval ${var}=\${!indirect}\ + eval ${var}=(\${$indire...@]}) else unset ${var} fi -- 1.6.3.2 ___ pacman-dev mailing list pacman-dev@archlinux.org http://www.archlinux.org/mailman/listinfo/pacman-dev
Re: [pacman-dev] [PATCH] makepkg: fix variable backup/restore for splitpkg
Allan McRae wrote: The backup and restore of variables that can be overridden while making split packages only dealt with the first element, not the whole array (FS#15010). Adjust the bash voodoo to fix it... Signed-off-by: Allan McRae al...@archlinux.org --- scripts/makepkg.sh.in |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index f46b7f8..e2e1604 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -1262,7 +1262,7 @@ devel_update() { backup_package_variables() { for var in ${splitpkg_overrid...@]}; do indirect=${var}_backup - eval ${indirect}=\${!var}\ + eval ${indirect}=(\${$v...@]}) Bonus points for anyone who understands what I was doing and what is being done now... All I know is that is works! :) done } @@ -1270,7 +1270,7 @@ restore_package_variables() { for var in ${splitpkg_overrid...@]}; do indirect=${var}_backup if [ -n ${!indirect} ]; then - eval ${var}=\${!indirect}\ + eval ${var}=(\${$indire...@]}) else unset ${var} fi ___ pacman-dev mailing list pacman-dev@archlinux.org http://www.archlinux.org/mailman/listinfo/pacman-dev