[pacman-dev] [GIT] The official pacman repository branch, master, updated. v3.4.1-122-gef32aa0
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 ef32aa0219146866b7f7e55c95afc327819dd6cf (commit) via 68b50c81c79bcf01db0fd66ff523f32cc0dc67e9 (commit) via 24d77291da93fcd5d09df2b1d1d05474616f18a5 (commit) via 5b17d8f27d9a490a461eb2946f7c209d42c5762e (commit) via fbcadebcab57d59e460368fb6ed48bba0bbfb8a1 (commit) via d39248120e4b30e56fe052dcf5973e16e482975e (commit) via e464339e3bd37e9bdb2c8d13fa29408a1123f620 (commit) via 448f78c067955d617c302f322a2dc6507cb6eb13 (commit) via 5717c7d508db463ec178a83e852dc5e89212bd15 (commit) via 149ab6b2723c41954b638cd603e5d4ac392c8659 (commit) via 4a8e396a58219fcc6d906ce7c2bb4c4b904bd64c (commit) via 5e61f077357de1767efada259aeb824bcbfe0086 (commit) via fc32faaa6ab4081e2046b2a81e4f9949af2f7282 (commit) via 5b2de3d8ecceea0eed3124e50792400adce4e95a (commit) via 6eedf06fcc224648155bc5253d6fe1975be8da00 (commit) via 96e277cfd935d680d6309311260fe79567324e9c (commit) via 0909a72000b03332c5203b16b6a4e862c0662e03 (commit) via c56b576f6fef464f82f425219ef386fe8b742899 (commit) via efbae3cfcbd8e401084cb26853bbe46120daea4d (commit) via 522ef5e981580a52ee0ffa37178d7ddf116ebd51 (commit) via b9a531c2d7e3eefab5d987d83a1cb869e1220fac (commit) via 6cebd4e6028f717663cda0af1221f3ac74d5ab9f (commit) via d1126db1281596ba8ea960bfa963e86731d28b5e (commit) via 49176461a6b476e673e232075c95f07963750f74 (commit) via a7dc3875f15f9600e011c313c8846de6af3a2c8c (commit) from 5fcb005ebd270c1ecff3403695680145253961a2 (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 ef32aa0219146866b7f7e55c95afc327819dd6cf Author: Dan McGee <dan@archlinux.org> Date: Wed Oct 13 23:09:20 2010 -0500 Small tweaks after backend merge Just a few small things I noticed looking through the code. Signed-off-by: Dan McGee <dan@archlinux.org> commit 68b50c81c79bcf01db0fd66ff523f32cc0dc67e9 Merge: 6eedf06 24d7729 Author: Dan McGee <dan@archlinux.org> Date: Wed Oct 13 22:46:04 2010 -0500 Merge remote branch 'allan/backend' commit 24d77291da93fcd5d09df2b1d1d05474616f18a5 Author: Allan McRae <allan@archlinux.org> Date: Wed Oct 13 21:18:03 2010 +1000 Only write to local repos We do not write to sync repos so kill the code for that. Signed-off-by: Allan McRae <allan@archlinux.org> commit 5b17d8f27d9a490a461eb2946f7c209d42c5762e Author: Allan McRae <allan@archlinux.org> Date: Mon Oct 11 15:10:26 2010 +1000 Clean-up parsing sync database Remove unnecessary parsing of fields not found in sync desc file. Signed-off-by: Allan McRae <allan@archlinux.org> commit fbcadebcab57d59e460368fb6ed48bba0bbfb8a1 Author: Allan McRae <allan@archlinux.org> Date: Mon Oct 11 15:06:10 2010 +1000 Clean-up parsing local database Remove unnecessary parsing of fields not found in local desc files. Leave %FORCE% parsing as this likely will make an appearance in desc files in the future. Signed-off-by: Allan McRae <allan@archlinux.org> commit d39248120e4b30e56fe052dcf5973e16e482975e Author: Allan McRae <allan@archlinux.org> Date: Mon Oct 11 14:57:16 2010 +1000 Remove lazy loading of deltas Local packages do not have deltas so remove lazy loading of delta information. Signed-off-by: Allan McRae <allan@archlinux.org> commit e464339e3bd37e9bdb2c8d13fa29408a1123f620 Author: Allan McRae <allan@archlinux.org> Date: Mon Oct 11 14:05:07 2010 +1000 Move and rename splitname The splitname function is a general utility function and so is better suited to util.h. Rename it to _alpm_splitname to indicate it is an internal libalpm function as was the case prior to splitting local and sync db handling. Signed-off-by: Allan McRae <allan@archlinux.org> commit 448f78c067955d617c302f322a2dc6507cb6eb13 Author: Allan McRae <allan@archlinux.org> Date: Mon Oct 11 13:47:18 2010 +1000 Restrict visibility of checkdbdir and get_pkgpath These functions are only needed by be_local and were only promoted to db.{h,c} as part of the splitting of handling the local and sync dbs. Move them into be_local.c and make them static again. Signed-off-by: Allan McRae <allan@archlinux.org> commit 5717c7d508db463ec178a83e852dc5e89212bd15 Author: Allan McRae <allan@archlinux.org> Date: Sat Jul 10 00:52:50 2010 +1000 Clean up all old database files and directories Clean-up the previous download location of the sync database and any old extracted sync database directories which are unneeded with the tar-db backend. Signed-off-by: Allan McRae <allan@archlinux.org> commit 149ab6b2723c41954b638cd603e5d4ac392c8659 Author: Allan McRae <allan@archlinux.org> Date: Sun Oct 10 15:25:45 2010 +1000 Only download sync databases As the sync databases are read directly from the tarball, we no longer need to extract them. Signed-off-by: Allan McRae <allan@archlinux.org> commit 4a8e396a58219fcc6d906ce7c2bb4c4b904bd64c Author: Allan McRae <allan@archlinux.org> Date: Sun Oct 10 14:49:10 2010 +1000 Parse sync database Read in package information for a tar based sync database. Do not use lazy loading for sync db. Signed-off-by: Allan McRae <allan@archlinux.org> commit 5e61f077357de1767efada259aeb824bcbfe0086 Author: Allan McRae <allan@archlinux.org> Date: Sat Oct 9 23:31:29 2010 +1000 Populate sync db from archive Read in list of packages for sync db from tar archive. Breaks reading in _alpm_sync_db_read and a lot of pactests (which is expected as they do not handle sync db in archives...). Signed-off-by: Allan McRae <allan@archlinux.org> commit fc32faaa6ab4081e2046b2a81e4f9949af2f7282 Author: Allan McRae <allan@archlinux.org> Date: Sat Oct 9 20:16:15 2010 +1000 Completely separate local and sync db handling Put the db_operations struct to use and completely split the handling of the sync and local databases. Signed-off-by: Allan McRae <allan@archlinux.org> commit 5b2de3d8ecceea0eed3124e50792400adce4e95a Author: Allan McRae <allan@archlinux.org> Date: Wed Oct 13 18:04:07 2010 +1000 Separate be_files into be_sync and be_local The file be_files.c is "split" to be_local.c and be_sync.c in order to achieve separate handling of sync and local databases. Some basic clean-up of functions that are only of use for local or sync databases has been performed and some rough function renaming in duplicated code has been performed to prevent compilation errors. However, most of the clean-up and final separation of sync and local db handling occurs in following patches. Signed-off-by: Allan McRae <allan@archlinux.org> commit 6eedf06fcc224648155bc5253d6fe1975be8da00 Author: Dan McGee <dan@archlinux.org> Date: Wed Oct 13 17:50:54 2010 -0500 Fix bash shell location check BASH is defined when you are actually using bash during configure, which sucks because it ends up being '/bin/sh', messing up all of our scripts. Change the name of the variable we use in configure, and also ensure we get a full path to the executable by using AC_PATH_PROGS rather than AC_CHECK_PROGS. Finally, change the variable name everywhere we use it. Signed-off-by: Dan McGee <dan@archlinux.org> commit 96e277cfd935d680d6309311260fe79567324e9c Author: Allan McRae <allan@archlinux.org> Date: Wed Oct 13 22:56:35 2010 +1000 Move db cache handling functions These will be needed for the handling of both local and sync database caches, so put them in a common location. Signed-off-by: Allan McRae <allan@archlinux.org> commit 0909a72000b03332c5203b16b6a4e862c0662e03 Author: Allan McRae <allan@archlinux.org> Date: Wed Oct 13 17:55:55 2010 +1000 Move database handling utility functions Move splitname, checkdbdir, get_pkgpath into db.{h,c} as these will be needed to parse both the local and sync databases during the initial splitting. They will be moved out of db.{h,c} at to more appropriate locations at a later stage. Signed-off-by: Allan McRae <allan@archlinux.org> commit c56b576f6fef464f82f425219ef386fe8b742899 Author: Allan McRae <allan@archlinux.org> Date: Mon Aug 2 14:40:04 2010 +1000 Fix documentation syntax and typo Signed-off-by: Allan McRae <allan@archlinux.org> commit efbae3cfcbd8e401084cb26853bbe46120daea4d Author: Dan McGee <dan@archlinux.org> Date: Sat Jul 10 21:06:21 2010 -0500 Initial hack at a DB operations struct It doesn't do a whole lot yet, but these type of operations will potentially be different for the DBs we load. Signed-off-by: Dan McGee <dan@archlinux.org> commit 522ef5e981580a52ee0ffa37178d7ddf116ebd51 Author: Dan McGee <dan@archlinux.org> Date: Mon May 12 07:49:01 2008 +1000 Move the cache stuff where it should be Cache bullshit only has relevance to be_files, so move it there. Signed-off-by: Dan McGee <dan@archlinux.org> [Allan: BIG rebase] Signed-off-by: Allan McRae <allan@archlinux.org> commit b9a531c2d7e3eefab5d987d83a1cb869e1220fac Author: Dan McGee <dan@archlinux.org> Date: Sun May 11 16:49:01 2008 -0500 Move changelog functions to callback struct Signed-off-by: Dan McGee <dan@archlinux.org> commit 6cebd4e6028f717663cda0af1221f3ac74d5ab9f Author: Dan McGee <dan@archlinux.org> Date: Sun May 11 16:00:33 2008 -0500 Complete rework of package accessor logic Hopefully we've finally arrived at package handling nirvana, or at least this commit will get us a heck of a lot closer. The former method of getting the depends list for a package was the following: 1. call alpm_pkg_get_depends() 2. this method would check if the package came from the cache 3. if so, ensure our cache level is correct, otherwise call db_load 4. finally return the depends list Why did this suck? Because getting the depends list from the package shouldn't care about whether the package was loaded from a file, from the 'package cache', or some other system which we can't even use because the damn thing is so complicated. It should just return the depends list. So what does this commit change? It adds a pointer to a struct of function pointers to every package for all of these 'package operations' as I've decided to call them (I know, sounds completely straightforward, right?). So now when we call an alpm_pkg_get-* function, we don't do any of the cache logic or anything else there- we let the actual backend handle it by delegating all work to the method at pkg->ops->get_depends. Now that be_package has achieved equal status with be_files, we can treat packages from these completely different load points differently. We know a package loaded from a zip file will have all of its fields populated, so we can set up all its accessor functions to be direct accessors. On the other hand, the packages loaded from the local and sync DBs are not always fully-loaded, so their accessor functions are routed through the same logic as before. Net result? More code. However, this code now make it roughly 52 times easier to open the door to something like a read-only tar.gz database backend. Are you still reading? I'm impressed. Looking at the patch will probably be clearer than this long-winded explanation. Signed-off-by: Dan McGee <dan@archlinux.org> [Allan: rebase and adjust] Signed-off-by: Allan McRae <allan@archlinux.org> commit d1126db1281596ba8ea960bfa963e86731d28b5e Author: Dan McGee <dan@archlinux.org> Date: Sun May 11 12:00:18 2008 -0500 Allow local and sync db to be treated separately Implement this seemingly simple change in package.h: typedef enum _pmpkgfrom_t { - PKG_FROM_CACHE = 1, - PKG_FROM_FILE + PKG_FROM_FILE = 1, + PKG_FROM_LOCALDB, + PKG_FROM_SYNCDB } pmpkgfrom_t; which requires flushing out several assumptions from around the codebase with regards to usage of the PKG_FROM_CACHE value. Make some changes where required to allow the switch, and now the correct value should be set (via a crude hack) depending on whether a package was loaded as an entry in a local db or a sync db. This patch underwent some big rebasing from Allan and Dan. Signed-off-by: Dan McGee <dan@archlinux.org> Signed-off-by: Allan McRae <allan@archlinux.org> commit 49176461a6b476e673e232075c95f07963750f74 Author: Dan McGee <dan@archlinux.org> Date: Wed Jul 7 09:39:39 2010 -0500 Unify caching concerns in package accessors Move almost all of the caching related stuff into a single #define (which should maybe even just be a static function) so we don't duplicate logic all over the place. This also makes the code a heck of a lot shorter and means further changes to this stuff don't have to touch each and every getter function. Signed-off-by: Dan McGee <dan@archlinux.org> commit a7dc3875f15f9600e011c313c8846de6af3a2c8c Author: Dan McGee <dan@archlinux.org> Date: Tue Oct 12 08:26:50 2010 -0500 contrib/ follow-up work * Add a .gitignore file * Use the same 'GEN' output we have in the scripts/ Makefile when doing our edits on the .in files * Remove PKGBUILD.vim and vimprojects from our edit list, they have no need to be in the list Signed-off-by: Dan McGee <dan@archlinux.org> ----------------------------------------------------------------------- Summary of changes: configure.ac | 2 +- contrib/.gitignore | 9 + contrib/Makefile.am | 11 +- contrib/{PKGBUILD.vim.in => PKGBUILD.vim} | 0 contrib/bacman.in | 2 +- contrib/pacdiff.in | 2 +- contrib/pacscripts.in | 2 +- contrib/pactree.in | 2 +- contrib/{vimprojects.in => vimprojects} | 0 contrib/wget-xdelta.sh.in | 2 +- lib/libalpm/Makefile.am | 4 +- lib/libalpm/add.c | 7 +- lib/libalpm/{be_files.c => be_local.c} | 704 ++++++++++++++--------------- lib/libalpm/be_package.c | 111 +++++ lib/libalpm/be_sync.c | 440 ++++++++++++++++++ lib/libalpm/cache.c | 291 ------------ lib/libalpm/cache.h | 44 -- lib/libalpm/conflict.c | 1 - lib/libalpm/db.c | 271 ++++++++++-- lib/libalpm/db.h | 48 ++- lib/libalpm/deps.c | 1 - lib/libalpm/package.c | 417 +++++------------- lib/libalpm/package.h | 63 +++- lib/libalpm/po/POTFILES.in | 3 +- lib/libalpm/remove.c | 5 +- lib/libalpm/sync.c | 3 +- lib/libalpm/trans.c | 1 - lib/libalpm/util.c | 45 ++ lib/libalpm/util.h | 2 + scripts/Makefile.am | 2 +- scripts/makepkg.sh.in | 2 +- scripts/pacman-optimize.sh.in | 2 +- scripts/pkgdelta.sh.in | 2 +- scripts/rankmirrors.sh.in | 2 +- scripts/repo-add.sh.in | 2 +- src/pacman/sync.c | 32 +- 36 files changed, 1431 insertions(+), 1106 deletions(-) create mode 100644 contrib/.gitignore rename contrib/{PKGBUILD.vim.in => PKGBUILD.vim} (100%) rename contrib/{vimprojects.in => vimprojects} (100%) rename lib/libalpm/{be_files.c => be_local.c} (59%) create mode 100644 lib/libalpm/be_sync.c delete mode 100644 lib/libalpm/cache.c delete mode 100644 lib/libalpm/cache.h hooks/post-receive -- The official pacman repository
On Wed, Oct 13, 2010 at 11:11 PM, Dan McGee <dan@archlinux.org> wrote:
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 ef32aa0219146866b7f7e55c95afc327819dd6cf (commit) via 68b50c81c79bcf01db0fd66ff523f32cc0dc67e9 (commit) via 24d77291da93fcd5d09df2b1d1d05474616f18a5 (commit) via 5b17d8f27d9a490a461eb2946f7c209d42c5762e (commit) via fbcadebcab57d59e460368fb6ed48bba0bbfb8a1 (commit) via d39248120e4b30e56fe052dcf5973e16e482975e (commit) via e464339e3bd37e9bdb2c8d13fa29408a1123f620 (commit) via 448f78c067955d617c302f322a2dc6507cb6eb13 (commit) via 5717c7d508db463ec178a83e852dc5e89212bd15 (commit) via 149ab6b2723c41954b638cd603e5d4ac392c8659 (commit) via 4a8e396a58219fcc6d906ce7c2bb4c4b904bd64c (commit) via 5e61f077357de1767efada259aeb824bcbfe0086 (commit) via fc32faaa6ab4081e2046b2a81e4f9949af2f7282 (commit) via 5b2de3d8ecceea0eed3124e50792400adce4e95a (commit) via 6eedf06fcc224648155bc5253d6fe1975be8da00 (commit) via 96e277cfd935d680d6309311260fe79567324e9c (commit) via 0909a72000b03332c5203b16b6a4e862c0662e03 (commit) via c56b576f6fef464f82f425219ef386fe8b742899 (commit) via efbae3cfcbd8e401084cb26853bbe46120daea4d (commit) via 522ef5e981580a52ee0ffa37178d7ddf116ebd51 (commit) via b9a531c2d7e3eefab5d987d83a1cb869e1220fac (commit) via 6cebd4e6028f717663cda0af1221f3ac74d5ab9f (commit) via d1126db1281596ba8ea960bfa963e86731d28b5e (commit) via 49176461a6b476e673e232075c95f07963750f74 (commit) via a7dc3875f15f9600e011c313c8846de6af3a2c8c (commit) from 5fcb005ebd270c1ecff3403695680145253961a2 (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.
Thanks again, Allan, for your continuing work on something I started 2.5 years ago on this tar database backend stuff! Let's get this out there to all of us that might actually run it and give it the trials it needs before we can think about a 3.5.0 release. At least I'm going all in on one or two machines; I will be running a new build of pacman-git that doesn't use the old sync DB stuff any longer. -Dan
participants (2)
-
Dan McGee
-
dan@archlinux.org