[pacman-dev] [GIT] The official pacman repository branch, master, updated. v3.3.0-52-g19e07eb

Dan McGee dan at archlinux.org
Tue Sep 8 23:19:12 EDT 2009


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  19e07eb8e84dd117061a600abdd9c8fed7391a07 (commit)
       via  8ff3b87066d35d3518a3cd0bef27b86c3a85e983 (commit)
       via  0da96abc900560f21c643b255c94a60232f4a24b (commit)
       via  b7db46d610efd5f71d5e4e887fed7a3fd3b3dd86 (commit)
       via  90e3e026d1236ad89c142b427d7eeb842bbb7ff4 (commit)
       via  12b55958d8884bd6828e0888ab9dc10d38bcd72f (commit)
       via  902dfe5900c89461e76f03a3429a867cc93fd418 (commit)
       via  f53d9bab0ef28f2417abb10d1dff4867bf06b8ea (commit)
      from  cd5b029e934476e8ea6dade5798bfa3d6b6ceafd (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 19e07eb8e84dd117061a600abdd9c8fed7391a07
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Tue Sep 1 00:25:56 2009 +0200

    Re-enable REMOVE_PKGS test in pactest suite
    
    With the help of --ask switch it is possible to test remove_unresolvable
    feature, so I reverted the change of commit f2061c5f on ignore005.py with
    --ask=32 added.
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 8ff3b87066d35d3518a3cd0bef27b86c3a85e983
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Wed Jul 15 19:14:01 2009 +0200

    Remove transaction type
    
    This basically started with this change :
    
     /* Transaction */
     struct __pmtrans_t {
    -       pmtranstype_t type;
            pmtransflag_t flags;
            pmtransstate_t state;
    -       alpm_list_t *packages;      /* list of (pmpkg_t *) */
    +       alpm_list_t *add;      /* list of (pmpkg_t *) */
    +       alpm_list_t *remove;      /* list of (pmpkg_t *) */
    
    And then I have to modify all the code accordingly.

commit 0da96abc900560f21c643b255c94a60232f4a24b
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Tue Jun 9 17:23:46 2009 +0200

    Use sync.c for upgrade transaction prepare and commit
    
    This patch utilizes the power of sync.c to fix FS#3492 and FS#5798.
    Now an upgrade transaction is just a sync transaction internally (in alpm),
    so all sync features are available with -U as well:
    * conflict resolving
    * sync dependencies from sync repos
    * remove unresolvable targets
    
    See http://www.archlinux.org/pipermail/pacman-dev/2009-June/008725.html
    for the concept.
    
    We use "mixed" target list, where PKG_FROM_FILE origin indicates local
    package file, PKG_FROM_CACHE indicates sync package. The front-end can add
    only one type of packages (depending on transaction type) atm, but if alpm
    resolves dependencies for -U, we may get a real mixed trans->packages list.
    
    _alpm_pkg_free_trans() was modified so that it can handle both target types
    _alpm_add_prepare() was removed, we use _alpm_sync_prepare() instead
    _alpm_add_commit() was renamed to _alpm_upgrade_targets()
    
    sync.c (and deps.c) was modified slightly to handle mixed target lists,
    the modifications are straightforward. There is one notable change here: We
    don't create new upgrade trans in sync.c, we replace the pkgcache entries
    with the loaded package files in the target list (this is a bit hackish) and
    call _alpm_upgrade_targets(). This implies a TODO (pkg->origin_data.db is
    not accessible anymore), but it doesn't hurt anything with pacman front-end,
    so it will be fixed later (otherwise this patch would be huge).
    
    I updated the documentation of -U and I added a new pactest, upgrade090.py,
    to test the syncdeps feature of -U.
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit b7db46d610efd5f71d5e4e887fed7a3fd3b3dd86
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Mon Aug 31 23:54:51 2009 +0200

    Do not remove conflict by default
    
    When a conflict is detected, pacman asks if the user wants to remove
    the conflicting package.  In many cases this is a bad idea.  e.g.
    
    udev conflicts with initscripts (initscripts<2009.07).
    Remove initscripts [Y/n]
    
    This changes the query to [y/N].
    
    The --noconfirm behavior has been also changed, because it chooses the
    default answer. Since the yes answer is more interesting in our pactests
    dealing with conflicts, I inserted '--ask=4' to all of them with one
    exception: sync042.py tests the no answer.
    
    (I also fixed a typo in sync043.py)
    
    Original-work-by: Allan McRae <allan at archlinux.org>
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>

commit 90e3e026d1236ad89c142b427d7eeb842bbb7ff4
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Mon Aug 31 20:17:05 2009 +0200

    Re-add the non-user friendly --ask option
    
    This re-implements the --ask option which was removed in commit
    1ff8e7f364a9f640ada7526384646d510ac29967.
    
    This option does not have to be exposed to the user (help,doc,etc), but is
    very very useful for pactest if we want to have more coverage there.
    
    This was rewritten in a smarter way, without code duplication. And with a
    different behavior : this option is now only used to inverse default
    behavior to questions.
    
    We still use bit operations based on the following struct :
    /* Transaction Conversations (ie, questions) */
    typedef enum _pmtransconv_t {
            PM_TRANS_CONV_INSTALL_IGNOREPKG = 0x01,
            PM_TRANS_CONV_REPLACE_PKG = 0x02,
            PM_TRANS_CONV_CONFLICT_PKG = 0x04,
            PM_TRANS_CONV_CORRUPTED_PKG = 0x08,
            PM_TRANS_CONV_LOCAL_NEWER = 0x10,
            PM_TRANS_CONV_REMOVE_PKGS = 0x20,
    } pmtransconv_t;
    
    for each conv matched, the default answer is inversed.
    
    --ask 0 : all default answers are preserved
    --ask 4 : only conflict question is inversed
    --ask 63 : all questions are inversed (63 == 1+2+4+8+16+32)
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 12b55958d8884bd6828e0888ab9dc10d38bcd72f
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Mon Aug 31 16:20:18 2009 +0200

    Add a new reason field to pmconflict_t struct
    
    Sometimes "foo conflicts with bar" information is not enough, see this
    thread: http://bbs.archlinux.org/viewtopic.php?id=77647. That's why I added
    a new reason field to our pmconflict_t struct that stores the packager-
    defined conflict that induced the fact that package1 conflicts with
    package2.
    
    I modified the front-end (in callback.c, sync.c, upgrade.c) to print this
    new information as well.
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>

commit 902dfe5900c89461e76f03a3429a867cc93fd418
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Mon Jul 27 14:21:26 2009 +0200

    Change Y/n to y/N with REMOVE_PKGS (remove_unresolvable) callback
    
    The main reason for this change is that scripts could not catch the removed
    targets with -S --noconfirm (the return value was 0). So the effect of a
    pacman command may have differed from the expected one. Moreover, for my
    taste the default no answer is better (I wanted to install the specified
    targets, not a subset of them).
    
    I had to change some pactest files as well, because now the default behavior
    is not to remove unresolvable targets. In fact, the only pactest file that
    tested this feature was ignore005.py.
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit f53d9bab0ef28f2417abb10d1dff4867bf06b8ea
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Mon Sep 7 20:58:49 2009 +0200

    Allow '-Su foo' operation
    
    This implements FS#15581
    
    '-Su foo' should be more or less equivalent do '-Su ; -S foo'
    
    Note : I moved a block of code to a new process_target function
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>
    Signed-off-by: Dan McGee <dan at archlinux.org>

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

Summary of changes:
 doc/pacman.8.txt                         |    7 +-
 lib/libalpm/add.c                        |  187 +--------------
 lib/libalpm/add.h                        |    3 +-
 lib/libalpm/alpm.h                       |   19 +-
 lib/libalpm/be_files.c                   |    3 +-
 lib/libalpm/conflict.c                   |   26 ++-
 lib/libalpm/conflict.h                   |    3 +-
 lib/libalpm/deps.c                       |    2 +-
 lib/libalpm/package.c                    |   18 +-
 lib/libalpm/remove.c                     |  174 +++++++++------
 lib/libalpm/remove.h                     |    5 +-
 lib/libalpm/sync.c                       |  176 ++++++---------
 lib/libalpm/trans.c                      |  381 ++++++++++++++----------------
 lib/libalpm/trans.h                      |    9 +-
 pactest/tests/depconflict110.py          |    8 +-
 pactest/tests/ignore002.py               |    2 +-
 pactest/tests/ignore003.py               |    2 +-
 pactest/tests/ignore004.py               |    2 +-
 pactest/tests/ignore005.py               |    2 +-
 pactest/tests/provision020.py            |    2 +-
 pactest/tests/provision022.py            |    2 +-
 pactest/tests/sync042.py                 |    6 +-
 pactest/tests/sync043.py                 |    6 +-
 pactest/tests/sync044.py                 |    2 +-
 pactest/tests/sync1004.py                |    2 +-
 pactest/tests/sync1008.py                |    2 +-
 pactest/tests/{sync110.py => sync150.py} |    9 +-
 pactest/tests/sync300.py                 |    2 +-
 pactest/tests/sync890.py                 |    2 +-
 pactest/tests/sync892.py                 |    2 +-
 pactest/tests/sync893.py                 |    2 +-
 pactest/tests/sync895.py                 |    2 +-
 pactest/tests/sync896.py                 |    2 +-
 pactest/tests/sync897.py                 |    2 +-
 pactest/tests/sync899.py                 |    2 +-
 pactest/tests/sync900.py                 |    2 +-
 pactest/tests/sync901.py                 |    2 +-
 pactest/tests/sync992.py                 |    2 +-
 pactest/tests/sync999.py                 |    2 +-
 pactest/tests/upgrade051.py              |    4 +-
 pactest/tests/upgrade090.py              |   28 +++
 src/pacman/callback.c                    |   26 ++-
 src/pacman/conf.h                        |    2 +
 src/pacman/pacman.c                      |    7 +
 src/pacman/remove.c                      |   10 +-
 src/pacman/sync.c                        |  159 +++++++------
 src/pacman/upgrade.c                     |   76 +++++--
 src/pacman/util.c                        |   35 +---
 src/pacman/util.h                        |    3 +-
 49 files changed, 655 insertions(+), 779 deletions(-)
 copy pactest/tests/{sync110.py => sync150.py} (68%)
 create mode 100644 pactest/tests/upgrade090.py


hooks/post-receive
--
The official pacman repository


More information about the pacman-dev mailing list