[pacman-dev] [GIT] The official pacman repository branch, maint, updated. v4.0.0-29-g3343185

Dan McGee dan at archlinux.org
Thu Oct 27 16:19:33 EDT 2011

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, maint has been updated
       via  3343185473c79d556b29bda30c9c482c7fef5289 (commit)
       via  1052709921da50ec5203efaa313dbda75625a4e1 (commit)
       via  24881034f62cecb9e601fdfee9458f34f32b2507 (commit)
       via  8a9ce12a27970beb644952a83d27f54d1d7f751a (commit)
       via  5c1885b55eae870a10c91793d05a74d74a075e83 (commit)
       via  7a6b01d46c1da385dd34466e757beafa33e02afa (commit)
      from  2da59e1aa91fa4160ec1c8ec84d94d8141b2a832 (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 3343185473c79d556b29bda30c9c482c7fef5289
Author: Dan McGee <dan at archlinux.org>
Date:   Thu Oct 27 14:59:24 2011 -0500

    Introduce ALPM_BUFFER_SIZE constant
    This takes the place of three previously used constants:
    In libarchive 3.0, the first constant will be no more, so we can ensure
    we are forward-compatible by removing our usage of it now. The rest are
    unified for consistency.
    By default, we will use the value of BUFSIZ provided by <stdio.h>, which
    is 8192 on Linux. If that is undefined, a default value is provided.
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 1052709921da50ec5203efaa313dbda75625a4e1
Author: Dave Reisner <dreisner at archlinux.org>
Date:   Mon Oct 24 10:29:15 2011 -0400

    paccache: add vim modeline
    Signed-off-by: Dave Reisner <dreisner at archlinux.org>

commit 24881034f62cecb9e601fdfee9458f34f32b2507
Author: Dave Reisner <dreisner at archlinux.org>
Date:   Mon Oct 24 10:28:35 2011 -0400

    paccache: ensure seen/seenarch vars are set
    Doesn't do a whole lot of good to compare against values that are never
    set. Fixes bug where -vvv output wasn't grouping packages together
    Signed-off-by: Dave Reisner <dreisner at archlinux.org>

commit 8a9ce12a27970beb644952a83d27f54d1d7f751a
Author: Dan McGee <dan at archlinux.org>
Date:   Wed Oct 26 17:32:46 2011 -0500

    Fix issues with replacing unowned symlinks
    There aretwo seperate issues in the same block of file conflict
    checking code here:
    1) If realpath errored, such as when a symlink was broken, we would call
       'continue' rather than simply exit this particular method of
       resolution. This was likely just a copy-paste mistake as the previous
       resolving steps all use loops where continue makes sense. Refactor
       the check so we only proceed if realpath is successful, and continue
       with the rest of the checks either way.
    2) The real problem this code was trying to solve was canonicalizing
       path component (e.g., directory) symlinks. The final component, if
       not a directory, should not be handled at all in this loop. Add a
       !S_ISLNK() condition to the loop so we only call this for real files.
    There are few other small cleanups to the debug messages that I made
    while debugging this problem- we don't need to keep printing the file
    name, and ensure every block that sets resolved_conflict to true prints
    a debug message so we know how it was resolved.
    This fixes the expected failures from symlink010.py and symlink011.py,
    while still ensuring the fix for fileconflict007.py works.
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 5c1885b55eae870a10c91793d05a74d74a075e83
Author: Dan McGee <dan at archlinux.org>
Date:   Wed Oct 26 16:43:36 2011 -0500

    Add some unowned symlink replacement tests
    These should all prevent installation, and yet two of the three tests
    currently fail. Not good.
    The best way to see what is going on here is to diff the three new tests
    side by side- there is only a small difference between the three tests,
    and that is in the destination of the symlink in question that should
    never be overwritten.
      symlink010.py: myprogsuffix -> myprog
      symlink011.py: myprogsuffix -> broken
      symlink012.py: myprogsuffix -> otherprog
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 7a6b01d46c1da385dd34466e757beafa33e02afa
Author: Dan McGee <dan at archlinux.org>
Date:   Wed Oct 26 15:44:55 2011 -0500

    Don't realloc a 0-length files array when loading packages
    There is some pecular behavior going on here when a package is loaded
    that has no files, as is very common in our test suite. When we enter
    the realloc/sort code, a package without files will call the following:
        files = realloc(NULL, 0);
    One would assume this is a no-op, returning a NULL pointer, but that is
    not the case and valgrind later reports we are leaking memory. Fix the
    whole thing by skipping the reallocation and sort steps if the pointer
    is NULL, as we have nothing to do.
    Note that the package still gets marked as 'files loaded', becuase
    although there were none, we tried and were successful.
    Signed-off-by: Dan McGee <dan at archlinux.org>


Summary of changes:
 contrib/paccache.in                  |    3 +++
 lib/libalpm/add.c                    |   11 +++++++----
 lib/libalpm/be_package.c             |   22 ++++++++++++----------
 lib/libalpm/be_sync.c                |    2 +-
 lib/libalpm/conflict.c               |   33 +++++++++++++++++++--------------
 lib/libalpm/util.c                   |   20 ++++++++------------
 lib/libalpm/util.h                   |    7 +++++++
 test/pacman/tests/fileconflict007.py |    2 +-
 test/pacman/tests/symlink010.py      |   24 ++++++++++++++++++++++++
 test/pacman/tests/symlink011.py      |   24 ++++++++++++++++++++++++
 test/pacman/tests/symlink012.py      |   24 ++++++++++++++++++++++++
 11 files changed, 130 insertions(+), 42 deletions(-)
 create mode 100644 test/pacman/tests/symlink010.py
 create mode 100644 test/pacman/tests/symlink011.py
 create mode 100644 test/pacman/tests/symlink012.py

The official pacman repository

More information about the pacman-dev mailing list