[pacman-dev] Idea: Merge -U and -S (half universal transaction)?

2009-06-08 Thread Nagy Gabor
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)?

2009-06-08 Thread Aaron Griffin
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

2009-06-08 Thread Dan McGee
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

2009-06-08 Thread Allan McRae
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

2009-06-08 Thread Allan McRae

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