[pacman-dev] [GIT] The official pacman repository branch, master, updated. v3.2.2-140-g4b78852

Dan McGee dan at archlinux.org
Sat Apr 11 15:16:33 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  4b78852f7e78ec605be0a382ddc78afe33251d78 (commit)
       via  aefb4e0fa54ad5b4140d6991f389b5a6fb4ead6d (commit)
       via  391952600d30bf7c28c5403c5c9e220d345ffe87 (commit)
       via  634304feae6574d42e069a6718621cf2852f08ab (commit)
       via  56fd24ecf8b75904444f548488fbe96185cf2492 (commit)
       via  77efd512165ca2066dc6547bda52082f8bd11db2 (commit)
       via  93ca155b48a29685914ffa10b11be42ef5d4734a (commit)
       via  0c614c181efec31ea8d3948745e5746b642cb10c (commit)
       via  91d43ba4b44e0827c6d9b66c70485672953f5a6d (commit)
       via  59b4725bbb881140fea47dd2d1b09cef37e8a9dc (commit)
       via  a556bc57fccf9b35f9b2eca08ddae595c3a75592 (commit)
       via  bbcf96230ad16ad91f5ab8cb93c05fd15136d3e4 (commit)
       via  89685bdb2918c59a109cba2199ab25bc1bcfa784 (commit)
       via  994804f20e51ea6dbbb236b919846a420b2d2369 (commit)
       via  f8bb69c1d22473a3a82c6bab27799e3cada56a0a (commit)
       via  9fa18d9a4b4ce5217842c71d8a45676e3fb9d3f4 (commit)
       via  c8beffa7904abe7e0ad01fed6113acf449df15cd (commit)
      from  101c16b3eb8048dffd1c6c4438e84b759d2e2aff (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 4b78852f7e78ec605be0a382ddc78afe33251d78
Author: Dan McGee <dan at archlinux.org>
Date:   Sat Apr 11 14:13:03 2009 -0500

    const-ify endswith()
    
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit aefb4e0fa54ad5b4140d6991f389b5a6fb4ead6d
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Sat Mar 7 19:44:34 2009 +0100

    Remove pmsyncpkg_t
    
    pmsyncpkg_t data sructure was removed:
    1. pmpkg_t.reason is used instead of pmsyncpkg_t.newreason. (The target
    packages come from sync repos, so we can use this field without any
    problems. Upgrade transaction also uses this field to store this info.)
    2. pmsyncpkg_t.removes was moved to pmpkg_t.removes.
    This step requires careful programming, because we don't duplicate packages
    when we add them to trans->packages. So we modify sync pkgcache when we
    add this transaction-only info to our package. Hence it is important to
    free this list when we remove any package from the target list
    (remove_unresolvable, remove_conflicts, trans_free), otherwise this could
    confuse the new sync transactions (with non-pacman GUI).
    
    Overall, our code became ~100 line shorter, and we can call our helper
    functions directly on trans->packages in sync.c, we don't need to maintain
    parallel package lists.
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 391952600d30bf7c28c5403c5c9e220d345ffe87
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Fri Jan 2 17:43:05 2009 +0100

    Fix for trans001.py (FS#9088)
    
    From now on _alpm_db_find_fileconflicts() works with upgrade and remove
    target lists (like checkdeps), which makes it transaction independent
    (we still need a trans param because of the progressbar). This is a small
    step towards the universal transaction. So we call this function directly
    from sync.c before commiting the remove transaction. This is much safer,
    but we can get false fileconflict error alarms in some tricky cases
    ("symlinks puzzle" etc).
    
    The patch on find_fileconflict looks complex, but it is mainly an
    "indent-patch", the new code-part can be found after the
    /* check remove list ... */ comment, and I modified something around the
    "file has changed hand" case (see comment modifications in the code).
    
    Unfortunately sync.c became more ugly, because we have to create 2 parallel
    internal transactions: to avoid duplicated work, upgrade transaction is
    used to load package data (filelists). This problem will disappear, when
    we finally get rid of internal transactions.
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 634304feae6574d42e069a6718621cf2852f08ab
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Sat Mar 7 16:25:29 2009 +0100

    Free *data list when user removes unresolvable packages
    
    Resolvedeps reports error when it cannot resolve some dependencies, puts
    them into the *data list, and set pm_errno. If user removes the
    unresolvable packages from the target list, we have no error anymore,
    so from now on we free *data list (we eliminate a memleak) and unset
    pm_errno.
    
    (Additionally I removed two needless lines from the code, unresolvable list
    is always freed in cleanup.)
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 56fd24ecf8b75904444f548488fbe96185cf2492
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Wed Mar 4 20:34:06 2009 +0100

    Print warning in _alpm_resolvedep() if a satisfier package is ignored without QUESTION
    
    After commit f57f8d33862050acc8d131710c100ba47877e675 pacman *silently*
    ignores packages from IgnorePkg/IgnoreGroup during dependency resolving,
    if prompt == 0. This behavior is changed to "give warning + ignore".
    (Otherwise the user is not informed about the fact that the package
    resolving was blocked by ignorepkg.)
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 77efd512165ca2066dc6547bda52082f8bd11db2
Author: Nagy Gabor <ngaba at bibl.u-szeged.hu>
Date:   Sun Nov 9 17:34:49 2008 +0100

    New error type: PM_ERR_PKG_IGNORED
    
    This patch fixes FS#12059.
    Now sync_addtarget can return with PM_ERR_PKG_IGNORED, which indicates that
    although the requested package was found it is in ignorepkg, so alpm could
    not add it to the transaction. So the front-end can decide what to do.
    
    Signed-off-by: Nagy Gabor <ngaba at bibl.u-szeged.hu>
    Signed-off-by: Dan McGee <dan at archlinux.org>

commit 93ca155b48a29685914ffa10b11be42ef5d4734a
Merge: 101c16b3eb8048dffd1c6c4438e84b759d2e2aff 0c614c181efec31ea8d3948745e5746b642cb10c
Author: Dan McGee <dan at archlinux.org>
Date:   Sat Apr 11 13:50:56 2009 -0500

    Merge branch 'xav/repo-add'

commit 0c614c181efec31ea8d3948745e5746b642cb10c
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Tue Mar 3 17:13:52 2009 +0100

    repo-add : rename gstmpdir to tmpdir
    
    What does gstmpdir mean?
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit 91d43ba4b44e0827c6d9b66c70485672953f5a6d
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Tue Mar 3 17:10:26 2009 +0100

    repo-add : don't change the modification time on depends and desc
    
    The modification time on depends and desc file were changed to match the
    modification time of the package file. I don't see why and we are actualling
    losing information here. If we want to know the date of the package file, we
    can just look inside the depends file. If we want to know when the entry was
    created, we should not alter the modification time of depends and desc.
    
    Besides, this had the non-obvious and undocumented side effect that the
    depends file was always created, even if it was empty. And pacman actually
    does require that. So I added a "touch depends" to always create the file.
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit 59b4725bbb881140fea47dd2d1b09cef37e8a9dc
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Tue Mar 3 17:05:14 2009 +0100

    repo-add : new locking system
    
    Weird things could happen if several repo-add were run concurrently on the
    same database. The introduced locking system will prevent this to happen.
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit a556bc57fccf9b35f9b2eca08ddae595c3a75592
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Fri Feb 27 15:18:10 2009 +0100

    repo-add : fix package variables declaration
    
    - arch was missing
    
    - backup is not used by repo-add. However makepkg still needs to put it in
      PKGINFO because pacman uses it
    
    - startdir is no longer used after the new delta implementation
    
    - the declaration of group, depend, backup, etc is not needed because these
      variables are always declared before being used :
    	declare $var="$val"
    	case "$var" in
    		group)    _groups="$_groups$group\n" ;;
    
    - reorder the variables declaration to follow the same order than they are
      written to the depends and desc file, for making future checks easier
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit bbcf96230ad16ad91f5ab8cb93c05fd15136d3e4
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Wed Feb 25 19:06:16 2009 +0100

    repo-add : rewrite delta support
    
    Use the correct database format
    
    Use xdelta3 to get the source and destination files from the delta itself
    
    Allow delta files to be added with repo-add just like package files. delta
    files can also be removed with repo-remove. This is simply done by looking
    for a .delta extension in the arguments, and calling the appropriate
    db_write_delta or db_remove_delta functions.
    
    Example usage:
    repo-add repo/test.db.tar.gz repo/libx11-1.1.99.2-2-x86_64.pkg.tar.gz
    repo-add repo/test.db.tar.gz repo/libx11-1.1.5-2_to_1.1.99.2-2-x86_64.delta
    repo-remove repo/test.db.tar.gz libx11-1.1.5-2_to_1.1.99.2-2-x86_64.delta
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit 89685bdb2918c59a109cba2199ab25bc1bcfa784
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Thu Feb 26 20:08:33 2009 +0100

    repo-add : drop delta support to rewrite it from scratch
    
    The current implementation has several problems :
    
    Wrong database format
    
    All the info is taken from the filename, which is a bit ugly
    
    It looks for .delta files in the current directory when adding a package,
    which is not very flexible
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit 994804f20e51ea6dbbb236b919846a420b2d2369
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Thu Feb 26 20:02:05 2009 +0100

    repo-add.sh.in : repo-remove improvements
    
    * report when a package entry to be removed is not found
    
    * backup and restore eventual "deltas" files
    
    * slight optimization when looking for an entry : only look at the entries
    starting with $pkgname
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit f8bb69c1d22473a3a82c6bab27799e3cada56a0a
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Thu Feb 26 19:23:33 2009 +0100

    repo-add cleanup
    
    Refactor the main loop, which was difficult to read.
    
    Use case instead of if when appropriate.
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit 9fa18d9a4b4ce5217842c71d8a45676e3fb9d3f4
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Wed Feb 25 19:26:31 2009 +0100

    Add pkgdelta script to create deltas.
    
    This should obsolete the delta support in makepkg. Having a separate script
    should be more flexible.
    
    Example usage:
    $ pkgdelta repo/tzdata-2009a-1-x86_64.pkg.tar.gz repo/tzdata-2009b-1-x86_64.pkg.tar.gz
    ==> Generating delta from version 2009a-1 to version 2009b-1
    ==> Generated delta : 'repo/tzdata-2009a-1_to_2009b-1-x86_64.delta'
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

commit c8beffa7904abe7e0ad01fed6113acf449df15cd
Author: Xavier Chantry <shiningxc at gmail.com>
Date:   Thu Feb 19 19:12:34 2009 +0100

    Fix several issues with xdelta
    
    1) The changes to sync.c look big but there are mostly caused by
    the indentation. Fix a bug where download_size == 0 because the packages and
    deltas are already in the cache, but we still need to build the deltas list
    and apply the deltas to create the final package.
    
    2) Fix the gzip / md5sum issue by switching to xdelta3, disabling external
    recompression and using gzip -n in pacman, and disable bsdtar compression
    and using gzip -n in makepkg.
    
    Signed-off-by: Xavier Chantry <shiningxc at gmail.com>

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

Summary of changes:
 doc/pacman.conf.5.txt     |    2 +-
 lib/libalpm/add.c         |    2 +-
 lib/libalpm/alpm.h        |    5 +-
 lib/libalpm/conflict.c    |   90 ++++----
 lib/libalpm/conflict.h    |    3 +-
 lib/libalpm/delta.c       |    5 +-
 lib/libalpm/deps.c        |   14 ++-
 lib/libalpm/error.c       |    2 +
 lib/libalpm/package.c     |    8 +
 lib/libalpm/package.h     |    1 +
 lib/libalpm/sync.c        |  497 +++++++++++++++++++--------------------------
 lib/libalpm/sync.h        |   13 --
 lib/libalpm/trans.c       |    7 +-
 lib/libalpm/trans.h       |    2 +-
 pactest/tests/trans001.py |    2 -
 scripts/.gitignore        |    1 +
 scripts/Makefile.am       |    3 +
 scripts/makepkg.sh.in     |   23 ++-
 scripts/pkgdelta.sh.in    |  165 +++++++++++++++
 scripts/repo-add.sh.in    |  378 +++++++++++++++++++++-------------
 src/pacman/sync.c         |    9 +-
 src/pacman/util.c         |    7 +-
 22 files changed, 720 insertions(+), 519 deletions(-)
 create mode 100644 scripts/pkgdelta.sh.in


hooks/post-receive
--
The official pacman repository


More information about the pacman-dev mailing list