[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