[pacman-dev] [PATCH 0/5] Properly detect conflicts with directory symlinks
Allan McRae
allan at archlinux.org
Sun Jul 29 02:18:30 EDT 2012
This series of patches make pacman perform conflict checking with all directory
paths resovled. This means that inter-package conflicts such as /lib/foo and
/usr/lib/foo when /lib -> usr/lib are detected. Similarly, if a package moves
a file from /lib/foo to /usr/lib/foo when /lib -> usr/lib (i.e. the file is
effectively the same), this is no longer detected as a conflict with the
filesystem.
A big thanks to Andrew for fixing my initial attempt at the resolving of the
filelist and making my idea for efficiently storing paths that are unchanged
by resolving a reality.
Allan McRae (3):
Add resolved_path to alpm_filelist_t
Resolve file paths during inter-package conflict check
Avoid upgrade conflict with unchanged effective path
Andrew Gregory (2):
Add _alpm_filelist_resolve
_alpm_filelist_resolve: use original filenames where possible
lib/libalpm/alpm.h | 1 +
lib/libalpm/conflict.c | 6 ++
lib/libalpm/filelist.c | 174 ++++++++++++++++++++++++++++++++---
lib/libalpm/filelist.h | 2 +
lib/libalpm/package.c | 22 ++++-
test/pacman/tests/fileconflict001.py | 2 -
test/pacman/tests/fileconflict013.py | 2 -
test/pacman/tests/fileconflict016.py | 2 -
test/pacman/tests/fileconflict017.py | 26 ++++++
9 files changed, 217 insertions(+), 20 deletions(-)
create mode 100644 test/pacman/tests/fileconflict017.py
--
1.7.11.3
More information about the pacman-dev
mailing list