[pacman-dev] [GIT] The official pacman repository branch, master, updated. v3.1.4-127-g6d79ba2

Dan McGee dan at archlinux.org
Sun Apr 27 09:37:16 EDT 2008


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  6d79ba2db0f37f46b925a509ef83724fc0f61184 (commit)
       via  481c3edc89fa674f9723c13ab4d12f032cf8ca02 (commit)
       via  8fdf08ef782d234efe7957873839433ced64ffcc (commit)
       via  670fadf0411bbdd75a8db75ef46f55b1d9db339a (commit)
       via  701a03dcdb113e92b4f8de52a7a427dfdfc3dd27 (commit)
       via  30bdf94c2b444ff475a32e7b0c569e8c3cf05797 (commit)
       via  ff9744aa1f9d3da380e722fd44a07b8c8a68d101 (commit)
       via  1b5a851851cce4ae53e82fdec128ff6d6f73393b (commit)
      from  423820b34c018e655aac5836873fef8dc475bd74 (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 6d79ba2db0f37f46b925a509ef83724fc0f61184
Author: Dan McGee <dan at archlinux.org>
Date:   Sat Apr 26 13:03:53 2008 -0500

    Fix some fallout from the delta/download changes
    
    We removed one too many FREELIST() calls when trying to fix some memleaks,
    and add a safety/sanity check to ensure filename is set, as packages in old
    DBs are likely to not have this field.
    
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 481c3edc89fa674f9723c13ab4d12f032cf8ca02
Author: Chantry Xavier <shiningxc at gmail.com>
Date:   Wed Feb 13 20:42:43 2008 +0100

    get_filename : use the FILENAME db field only.
    
    Reference : FS#9547.
    
    The get_filename function first tries to get the filename field from the
    database, and if it doesn't find it, it tries to guess it based on the name,
    version and arch.
    
    This field was introduced in 3.0, but there are still many old entries in
    the official databases without it. So the databases need to be regenerated
    first before this patch can be applied.
    There is a second problem with the delta code, which needs the filename for
    locally installed packages too, but this field is not present in the local
    db. So the delta code needs to be fixed first.
    
    Signed-off-by: Chantry Xavier <shiningxc at gmail.com>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 8fdf08ef782d234efe7957873839433ced64ffcc
Author: Chantry Xavier <shiningxc at gmail.com>
Date:   Wed Feb 27 17:45:01 2008 +0100

    libalpm/sync.c : memleak fixes.
    
    Signed-off-by: Chantry Xavier <shiningxc at gmail.com>

commit 670fadf0411bbdd75a8db75ef46f55b1d9db339a
Author: Chantry Xavier <shiningxc at gmail.com>
Date:   Wed Feb 27 16:09:49 2008 +0100

    Get rid of the delta patches list
    
    As Nathan noticed, the new informations in the delta struct allows us to
    get rid of this list :
    http://www.archlinux.org/pipermail/pacman-dev/2008-February/011163.html
    
    So I rewrote apply_deltas for that. The previous apply_deltas also had a
    limitation: it assumed that the initial package and the deltas were in the
    first cache dir, which is not necessarily the case. That situation is
    supported now.
    
    Signed-off-by: Chantry Xavier <shiningxc at gmail.com>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 701a03dcdb113e92b4f8de52a7a427dfdfc3dd27
Author: Chantry Xavier <shiningxc at gmail.com>
Date:   Sat Feb 16 10:47:22 2008 -0600

    Completely rework delta algorithm
    
    Using the graph structures that Nagy set up for dependency sorting, we now
    do a similar process for deltas. Load up all of the deltas into a graph
    object on which we can then apply Dijkstra's algorithm, using the new weight
    field of graph struct.
    We initialize the nodes weight using the base files that we can use in our
    filecache (both filename and md5sum must match). The algorithm then picks
    the best path among those that can be resolved.
    
    Note that this algorithm has a few advantages over the old one:
    1. It is completely file agnostic. These delta chains do not have to consist
       of package files- this could be adopted to do delta-fied DBs.
    2. It does not use the local_db anymore, or even care if a package or file
       is currently installed. Instead, it only looks in the filecache for files
       and packages that match delta chain entries.
    
    Original-work-by: Dan McGee <dan at archlinux.org>
    Signed-off-by: Chantry Xavier <shiningxc at gmail.com>

commit 30bdf94c2b444ff475a32e7b0c569e8c3cf05797
Author: Dan McGee <dan at archlinux.org>
Date:   Fri Feb 15 20:17:57 2008 -0600

    Rework delta struct and modify code accordingly
    
    Start to move the delta struct away from an assumed package name scheme and
    towards something that is package (or even filename) agnostic. This will
    allow us much greater flexibility in the usage of deltas (maybe even sync
    DBs some day) as well as allowing code outside of delta.h/delta.c to be much
    cleaner with less of a need for snprintf() calls.
    
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit ff9744aa1f9d3da380e722fd44a07b8c8a68d101
Author: Chantry Xavier <shiningxc at gmail.com>
Date:   Sat Apr 26 11:30:49 2008 +0200

    Refactor the trans init and release code.
    
    The calls to alpm_trans_init and alpm_trans_release (+ error checking) were
    duplicated between remove.c, sync.c and upgrade.c
    This patch introduces trans_init and trans_release functions in util.c to
    have this code just once.
    
    So instead of having to do the same change 3 times for fixing FS#10273, I
    just had to do it once (so I did it too :))
    
    Signed-off-by: Chantry Xavier <shiningxc at gmail.com>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 1b5a851851cce4ae53e82fdec128ff6d6f73393b
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Mon Apr 21 12:16:15 2008 +0200

    Kill compute_requiredby usage in can_remove_package()
    
    In the can_remove_package function, we don't need to compute the whole
    requiredby list, we just need to find one member of it that doesn't belong
    to the targets list.
    That way we get a small speedup and remove the only usage of
    alpm_pkg_compute_requiredby in the backend, so that it can be tweaked for
    frontend usage.
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Chantry Xavier <shiningxc at gmail.com>
    Signed-off-by: Dan McGee <dan at archlinux.org>

-----------------------------------------------------------------------

Summary of changes:
 lib/libalpm/alpm.h    |    6 +-
 lib/libalpm/delta.c   |  311 +++++++++++++++++++++++++--------------------
 lib/libalpm/delta.h   |   23 +++-
 lib/libalpm/deps.c    |   18 ++--
 lib/libalpm/error.c   |    2 +-
 lib/libalpm/graph.h   |    1 +
 lib/libalpm/package.c |   14 +--
 lib/libalpm/package.h |    2 +
 lib/libalpm/sync.c    |  334 ++++++++++++++++++++++---------------------------
 lib/libalpm/util.c    |    4 +-
 src/pacman/remove.c   |   35 ++----
 src/pacman/sync.c     |   39 ++-----
 src/pacman/upgrade.c  |   34 +----
 src/pacman/util.c     |   29 ++++-
 src/pacman/util.h     |    2 +
 15 files changed, 411 insertions(+), 443 deletions(-)


hooks/post-receive
--
The official pacman repository




More information about the pacman-dev mailing list