[pacman-dev] [PATCH 00/14] Full optdep support

Benedikt Morbach benedikt.morbach at googlemail.com
Wed Nov 23 10:51:14 EST 2011


Now that 4.0/4.0.1 is out, I thought it might be time to finally send these patches in for review.

This will probably still need some polish (maybe quite a bit in some places)
but it works quite well and I have been using it for some time.

The code is also at https://github.com/moben/pacman branch:optdep

And now, please review ald yell at my bad code :)

---
Benedikt

Benedikt Morbach (14):
  Split optdep into alpm_depend_t and description
  Hook new optdepend structures up
  Only display uninstalled optdepends during install/upgrade
  Add option for showing all optdeps again
  Show optdep install status in package info
  optdepends are not orphans unless --optdeps is specified
  Make package info show optional requirements
  Make recursive removal consider optdepends
  Show list of optrequires with -Qtdn
  Warn on optdep removal
  Add flag to recurse through optdepends
  Add option to install all optdepends by default
  Add option to ask which optdeps to install
  Make HandleOptdeps Ask and Install work together better

 doc/pacman.8.txt               |   11 +++
 doc/pacman.conf.5.txt          |   14 +++
 etc/pacman.conf.in             |    2 +
 lib/libalpm/add.c              |    4 +-
 lib/libalpm/alpm.h             |   25 +++++-
 lib/libalpm/be_local.c         |   12 ++-
 lib/libalpm/be_package.c       |    5 +-
 lib/libalpm/be_sync.c          |    8 ++-
 lib/libalpm/deps.c             |  127 ++++++++++++++++++++++++++---
 lib/libalpm/deps.h             |    5 +-
 lib/libalpm/error.c            |    2 +
 lib/libalpm/package.c          |   40 ++++++---
 lib/libalpm/remove.c           |   22 ++++-
 lib/libalpm/sync.c             |    2 +-
 lib/libalpm/trans.c            |   10 ++-
 src/pacman/conf.c              |   27 ++++++
 src/pacman/conf.h              |   10 ++
 src/pacman/package.c           |   24 ++++-
 src/pacman/pacman.c            |    7 ++
 src/pacman/query.c             |   27 +++++-
 src/pacman/remove.c            |   23 ++++-
 src/pacman/sync.c              |  125 +++++++++++++++++++++++++++--
 src/pacman/upgrade.c           |    2 +-
 src/pacman/util.c              |  177 ++++++++++++++++++++++++++++++++++------
 src/pacman/util.h              |    5 +-
 src/util/pactree.c             |    2 +-
 src/util/testdb.c              |    2 +-
 test/pacman/tests/query010.py  |   12 +++
 test/pacman/tests/query011.py  |   15 ++++
 test/pacman/tests/query012.py  |   13 +++
 test/pacman/tests/query020.py  |   14 +++
 test/pacman/tests/query021.py  |   14 +++
 test/pacman/tests/query022.py  |   14 +++
 test/pacman/tests/remove053.py |   15 ++++
 test/pacman/tests/remove054.py |   14 +++
 test/pacman/tests/remove055.py |   20 +++++
 test/pacman/tests/remove056.py |   20 +++++
 test/pacman/tests/sync060.py   |   12 +++
 test/pacman/tests/sync061.py   |   15 ++++
 test/pacman/tests/sync062.py   |   17 ++++
 test/pacman/tests/sync063.py   |   17 ++++
 41 files changed, 839 insertions(+), 93 deletions(-)
 create mode 100644 test/pacman/tests/query010.py
 create mode 100644 test/pacman/tests/query011.py
 create mode 100644 test/pacman/tests/query012.py
 create mode 100644 test/pacman/tests/query020.py
 create mode 100644 test/pacman/tests/query021.py
 create mode 100644 test/pacman/tests/query022.py
 create mode 100644 test/pacman/tests/remove053.py
 create mode 100644 test/pacman/tests/remove054.py
 create mode 100644 test/pacman/tests/remove055.py
 create mode 100644 test/pacman/tests/remove056.py
 create mode 100644 test/pacman/tests/sync060.py
 create mode 100644 test/pacman/tests/sync061.py
 create mode 100644 test/pacman/tests/sync062.py
 create mode 100644 test/pacman/tests/sync063.py

-- 
1.7.7.3



More information about the pacman-dev mailing list