Pacman-dev
Threads by month
- ----- 2024 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
October 2018
- 8 participants
- 25 discussions
[pacman-dev] [GIT] The official pacman repository branch, master, updated. v5.1.1-51-gb5d62d2c
by Allan McRae 21 Oct '18
by Allan McRae 21 Oct '18
21 Oct '18
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 b5d62d2c91a2caf5c18945921cdf12af6f36b2d4 (commit)
via 3561c872ca0980c76442fcbf3985cc92a8f572f7 (commit)
via 882e707e40bbade0111cf3bdedbdac4d4b70453b (commit)
via b5191ea140386dd9b73e4509ffa9a6d347c1b5fa (commit)
via e12d03217430500be269392463876440210f7916 (commit)
via ea877c596bc380acd608468e4e38186ac0252197 (commit)
via c887d2cf00d7c2238edd1d317b8c887e774b6d3f (commit)
via ac959bb9c6ce549047a954109ae825158855e386 (commit)
via 9886566abb375043740167ce5066f1a186c71176 (commit)
via 2c91d08e62dd13979192df4a0b2ca76bde87cfd0 (commit)
via 79a528735ee198ac880b65d946cfde9181872b44 (commit)
via 02255fd97e831854d1f29e6fac687a4a508f44fa (commit)
via 8c9046e6042fd23bf6a1bb204062fc644c322689 (commit)
via afb9c0140fd6949ede64cc1a304e9349772fca04 (commit)
via ffde85aadfe0e08fb710102d0a547335e9d1a200 (commit)
via d96d0ffe7c88d9521a9e6cdd65939e9a20733cdf (commit)
from 7afe51171fe063bf3031cc68fc8c7ac914a01de2 (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 b5d62d2c91a2caf5c18945921cdf12af6f36b2d4
Author: Eli Schwartz <eschwartz(a)archlinux.org>
Date: Thu Jun 28 13:19:43 2018 -0400
Port scripts to use libmakepkg's messaging code.
Remove all remnants of library/{output_format,term_colors}.sh
Signed-off-by: Eli Schwartz <eschwartz(a)archlinux.org>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit 3561c872ca0980c76442fcbf3985cc92a8f572f7
Author: Eli Schwartz <eschwartz(a)archlinux.org>
Date: Thu Jun 28 13:19:42 2018 -0400
message.sh: add modifications from output_format.sh
In the spirit of making libmakepkg more useful as a library, and,
critically, *using* that library for additional pacman scripts, we
should include all of output_format.sh and term_colors.sh directly in
libmakepkg and hopefully stop having to embed additional copies in e.g.
repo-add via m4 macros.
Signed-off-by: Eli Schwartz <eschwartz(a)archlinux.org>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit 882e707e40bbade0111cf3bdedbdac4d4b70453b
Author: Eli Schwartz <eschwartz(a)archlinux.org>
Date: Thu Jun 28 13:19:41 2018 -0400
makepkg: send messages to stdout rather than stderr
This behavior is confusing, since it means absolutely everything goes to
stderr and makepkg itself is a quiet program that produces no expected
output???
The only situation where messages should go to stderr rather than
stdout, is with --geninteg which is meant to return the checksums on
stdout (but we don't want to totally get rid of status messages when
redirecting the results elsewhere, or, worse, redirect status messages
to a PKGBUILD). For this specific case, redirect message output to
stderr in the --geninteg callers directly.
Implements FS#17173
Signed-off-by: Eli Schwartz <eschwartz(a)archlinux.org>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit b5191ea140386dd9b73e4509ffa9a6d347c1b5fa
Author: Eli Schwartz <eschwartz(a)archlinux.org>
Date: Tue Aug 21 10:15:12 2018 -0400
makepkg: use builtin globbing to print files in package
- it comes with free collation when moving the LC_ALL declaration up a bit;
this fixes a bug where the .FILES were not being properly sorted and
their order depended on directory creation order, which broke
reproducible builds in the wild.
- it handles sorting null-delimited output everywhere, without sort -z;
this lets us get rid of sed hacks
- it is faster than invoking multiple find subprocesses
- dotfiles can be automatically printed *and the C locale sorts them first*
with a single ** glob
Signed-off-by: Eli Schwartz <eschwartz(a)archlinux.org>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit e12d03217430500be269392463876440210f7916
Author: Eli Schwartz <eschwartz(a)archlinux.org>
Date: Mon Aug 13 21:20:56 2018 -0400
makepkg: use bash 4.4 to localize `set` without explicitly saving/restoring
Signed-off-by: Eli Schwartz <eschwartz(a)archlinux.org>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit ea877c596bc380acd608468e4e38186ac0252197
Author: Eli Schwartz <eschwartz(a)archlinux.org>
Date: Fri Sep 7 11:58:53 2018 -0400
bash-completion: disable completions for pacman --search operations
We don't need exact package name completions for something that expects a
regular expression *search*, which is what we currently do. If you want
a package name completion for a search, you don't need the search.
This change is consistent with the current state of zsh completions.
Fixes FS#59965
Signed-off-by: Eli Schwartz <eschwartz(a)archlinux.org>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit c887d2cf00d7c2238edd1d317b8c887e774b6d3f
Author: Eli Schwartz <eschwartz(a)archlinux.org>
Date: Fri Sep 7 11:58:52 2018 -0400
bash-completion: don't complete filenames when they're not wanted
Filename completion should only be generated for makepkg, when using the
options -p or --config... which means we should offer option completions
by default.
Filename completion for pacman, should not be generated when using -Qu,
or -F without -o.
Signed-off-by: Eli Schwartz <eschwartz(a)archlinux.org>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit ac959bb9c6ce549047a954109ae825158855e386
Author: Andrew Gregory <andrew.gregory.8(a)gmail.com>
Date: Fri Oct 12 19:16:53 2018 -0700
handle EINTR while polling scripts/hooks
If poll() is interrupted by a signal, alpm was closing the socket it
uses for listening to script/hook output. This would drop script output
at the least and kill the script at the worst.
Fixes FS#60396
Signed-off-by: Andrew Gregory <andrew.gregory.8(a)gmail.com>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit 9886566abb375043740167ce5066f1a186c71176
Author: Andrew Gregory <andrew.gregory.8(a)gmail.com>
Date: Wed Oct 3 00:42:38 2018 -0700
reset signal handlers before running scripts/hooks
Front-ends or libraries may set signals to be ignored, which gets
inherited across fork and exec. This can cause scripts to malfunction
if they expect the signal. To make matters worse, scripts written in
bash can't reset signals that were ignored when bash was started.
Fixes FS#56756
Signed-off-by: Andrew Gregory <andrew.gregory.8(a)gmail.com>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit 2c91d08e62dd13979192df4a0b2ca76bde87cfd0
Author: morganamilo <morganamilo(a)gmail.com>
Date: Tue Oct 16 18:49:23 2018 +0100
libmakepkg: fix linting arrays of empty strings
[[ ${array[@]} ]] will resolve to false if array only contains empty
strings. This means that values such as "depends=('')" can be inserted
into a pkgbuild and bypass the linting.
This causes makepkg to successfully build the package while pacman
refuses to install it because of the unmet dependency on ''.
Instead check the length of the array.
Signed-off-by: morganamilo <morganamilo(a)gmail.com>
Signed-off-by: Allan McRae <allan(a)archlinux.org>
commit 79a528735ee198ac880b65d946cfde9181872b44
Author: Dave Reisner <dreisner(a)archlinux.org>
Date: Mon Aug 20 20:52:34 2018 -0400
Drop vestiges of SIZECMD
SIZECMD was replaced in 1af766987f with a POSIX solution, and this token
is no longer used/needed.
commit 02255fd97e831854d1f29e6fac687a4a508f44fa
Author: morganamilo <morganamilo(a)gmail.com>
Date: Wed Oct 17 16:40:47 2018 +0100
libalpm: process needed before group selection
When --needed is used, up to date packages are now filtered out
before showing the group select.
Fixes FS#22870.
Signed-off-by: morganamilo <morganamilo(a)gmail.com>
commit 8c9046e6042fd23bf6a1bb204062fc644c322689
Author: morganamilo <morganamilo(a)gmail.com>
Date: Sat Oct 20 14:58:52 2018 +0100
pacman: don't error when a group exists but all packages are ignored
Currently when attempting to sync a group where all packages are
ignored, either by ignorepkg, ignoregroup or --needed, pacman
will error with "target not found".
Instead, if a group has no packages check if the group exists
before throwing an error.
Signed-off-by: morganamilo <morganamilo(a)gmail.com>
commit afb9c0140fd6949ede64cc1a304e9349772fca04
Author: Dave Reisner <dreisner(a)archlinux.org>
Date: Sun Aug 19 21:12:33 2018 -0400
Port pactest to python3
Use BytesIO instead of StringIO, and ensure that we unicode-encode data
where needed.
commit ffde85aadfe0e08fb710102d0a547335e9d1a200
Author: Olivier Brunel <jjk(a)jjacky.com>
Date: Wed Oct 17 17:11:01 2018 +0200
alpm: Fix SIGINT handling re: aborting download
Upon receiving SIGINT a flag is set to abort the (curl) download.
However, since it was never reset/initialized, if a front-end doesn't
actually exit on SIGINT, and later tries any operation that needs to
perform a new download, said download would always get aborted right
away due to the flag not having been reset.
commit d96d0ffe7c88d9521a9e6cdd65939e9a20733cdf
Author: Olivier Brunel <jjk(a)jjacky.com>
Date: Tue Oct 9 18:29:05 2018 +0200
alpm: Do not raise SIGINT when filesize goes over limit
Variable dload_interrupted is used both to abort a download because
SIGINT was caught, and when a file limit is reached. But raising SIGINT
is only meant to happen in the first case.
Signed-off-by: Olivier Brunel <jjk(a)jjacky.com>
-----------------------------------------------------------------------
Summary of changes:
configure.ac | 2 +-
lib/libalpm/dload.c | 3 +-
lib/libalpm/sync.c | 11 ++++++++
lib/libalpm/util.c | 30 +++++++++++++++++++-
scripts/Makefile.am | 21 ++++----------
scripts/completion/bash_completion.in | 20 ++++++++++----
.../libmakepkg/integrity/generate_checksum.sh.in | 2 +-
scripts/libmakepkg/util/message.sh.in | 14 ++++++++--
scripts/libmakepkg/util/pkgbuild.sh.in | 4 +--
scripts/library/README | 10 -------
scripts/library/output_format.sh | 32 ----------------------
scripts/library/term_colors.sh | 21 --------------
scripts/makepkg.sh.in | 15 ++++++----
scripts/pacman-db-upgrade.sh.in | 12 +++++---
scripts/pacman-key.sh.in | 12 +++++---
scripts/pkgdelta.sh.in | 12 +++++---
scripts/po/POTFILES.in | 2 --
scripts/repo-add.sh.in | 14 ++++++++--
src/pacman/sync.c | 18 ++++++++++++
test/pacman/pactest.py | 5 ++--
test/pacman/pmdb.py | 4 +--
test/pacman/pmpkg.py | 6 ++--
test/pacman/tests/TESTS | 2 ++
test/pacman/tests/scriptlet-signal-handling.py | 15 ++++++++++
test/pacman/tests/scriptlet-signal-reset.py | 11 ++++++++
test/pacman/util.py | 2 +-
26 files changed, 175 insertions(+), 125 deletions(-)
delete mode 100644 scripts/library/output_format.sh
delete mode 100644 scripts/library/term_colors.sh
create mode 100644 test/pacman/tests/scriptlet-signal-handling.py
create mode 100644 test/pacman/tests/scriptlet-signal-reset.py
hooks/post-receive
--
The official pacman repository
1
0
[pacman-dev] [PATCH 1/2] bash-completion: don't complete filenames when they're not wanted
by Eli Schwartz 21 Oct '18
by Eli Schwartz 21 Oct '18
21 Oct '18
Filename completion should only be generated for makepkg, when using the
options -p or --config... which means we should offer option completions
by default.
Filename completion for pacman, should not be generated when using -Qu,
or -F without -o.
Signed-off-by: Eli Schwartz <eschwartz(a)archlinux.org>
---
scripts/completion/bash_completion.in | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/scripts/completion/bash_completion.in b/scripts/completion/bash_completion.in
index d99fba53..31b41f71 100644
--- a/scripts/completion/bash_completion.in
+++ b/scripts/completion/bash_completion.in
@@ -71,10 +71,13 @@ _pacman_key() {
}
_makepkg() {
+ compopt +o default
local cur opts prev
COMPREPLY=()
_get_comp_words_by_ref cur prev
- if [[ $cur = -* && ! $prev =~ ^-(-(config|help|key|version)$|\w*[Vhp]) ]]; then
+ if [[ $prev = @(-p|--config) ]]; then
+ compopt -o default
+ elif [[ ! $prev =~ ^-(-(config|help|key|version)$|\w*[Vh]) ]]; then
opts=('allsource asdeps check clean cleanbuild config force geninteg help
holdver ignorearch install key log needed noarchive nobuild nocheck
nocolor noconfirm nodeps noextract noprepare noprogressbar nosign
@@ -101,6 +104,7 @@ _pacman_repo_list() {
}
_pacman() {
+ compopt -o default
local common core cur database files prev query remove sync upgrade o
COMPREPLY=()
_get_comp_words_by_ref cur prev
@@ -131,12 +135,14 @@ _pacman() {
D|R)
_pacman_pkg Qq;;
F)
- _arch_incomp 'l list' && _pacman_pkg Slq
- ;;
+ { _arch_incomp 'l list' && _pacman_pkg Slq ; } ||
+ _arch_incomp 'o owns' ||
+ compopt +o default;;
Q)
{ _arch_incomp 'g groups' && _pacman_pkg Qg sort; } ||
{ _arch_incomp 'p file' && _pacman_file; } ||
- _arch_incomp 'o owns' || _arch_incomp 'u upgrades' ||
+ { _arch_incomp 'u upgrades' && compopt +o default; } ||
+ _arch_incomp 'o owns' ||
_pacman_pkg Qq;;
S)
{ _arch_incomp 'g groups' && _pacman_pkg Sg; } ||
@@ -153,8 +159,8 @@ _pacman_file() {
compopt -o filenames; _filedir 'pkg.tar*'
}
-complete -F _pacman -o default pacman
-complete -F _makepkg -o default makepkg
+complete -F _pacman pacman
+complete -F _makepkg makepkg
complete -F _pacman_key -o default pacman-key
# ex:et ts=2 sw=2 ft=sh
--
2.18.0
2
2
21 Oct '18
If poll() is interrupted by a signal, alpm was closing the socket it
uses for listening to script/hook output. This would drop script output
at the least and kill the script at the worst.
Fixes FS#60396
Signed-off-by: Andrew Gregory <andrew.gregory.8(a)gmail.com>
---
lib/libalpm/util.c | 10 +++++++++-
test/pacman/tests/TESTS | 1 +
test/pacman/tests/scriptlet-signal-handling.py | 15 +++++++++++++++
3 files changed, 25 insertions(+), 1 deletion(-)
create mode 100644 test/pacman/tests/scriptlet-signal-handling.py
diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index eaf85e93..d33eef2a 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -665,6 +665,7 @@ int _alpm_run_chroot(alpm_handle_t *handle, const char *cmd, char *const argv[],
ssize_t olen = 0, ilen = 0;
nfds_t nfds = 2;
struct pollfd fds[2], *child2parent = &(fds[0]), *parent2child = &(fds[1]);
+ int poll_ret;
child2parent->fd = child2parent_pipefd[TAIL];
child2parent->events = POLLIN;
@@ -685,7 +686,14 @@ int _alpm_run_chroot(alpm_handle_t *handle, const char *cmd, char *const argv[],
#define STOP_POLLING(p) do { close(p->fd); p->fd = -1; } while(0)
while((child2parent->fd != -1 || parent2child->fd != -1)
- && poll(fds, nfds, -1) > 0) {
+ && (poll_ret = poll(fds, nfds, -1)) != 0) {
+ if(poll_ret == -1) {
+ if(errno == EINTR) {
+ continue;
+ } else {
+ break;
+ }
+ }
if(child2parent->revents & POLLIN) {
if(_alpm_chroot_read_from_child(handle, child2parent->fd,
ibuf, &ilen, sizeof(ibuf)) != 0) {
diff --git a/test/pacman/tests/TESTS b/test/pacman/tests/TESTS
index 5deb93c4..dc0b4ec3 100644
--- a/test/pacman/tests/TESTS
+++ b/test/pacman/tests/TESTS
@@ -150,6 +150,7 @@ TESTS += test/pacman/tests/replace102.py
TESTS += test/pacman/tests/replace103.py
TESTS += test/pacman/tests/replace104.py
TESTS += test/pacman/tests/replace110.py
+TESTS += test/pacman/tests/scriptlet-signal-handling.py
TESTS += test/pacman/tests/scriptlet-signal-reset.py
TESTS += test/pacman/tests/scriptlet001.py
TESTS += test/pacman/tests/scriptlet002.py
diff --git a/test/pacman/tests/scriptlet-signal-handling.py b/test/pacman/tests/scriptlet-signal-handling.py
new file mode 100644
index 00000000..e65df55b
--- /dev/null
+++ b/test/pacman/tests/scriptlet-signal-handling.py
@@ -0,0 +1,15 @@
+self.description = "Handle signal interrupts while running scriptlets/hooks"
+
+p1 = pmpkg("dummy")
+p1.install['post_install'] = """
+ kill -INT $PPID # send an arbitrary signal that pacman catches
+ sleep 1 # give alpm time to close the socket if EINTR was not handled
+ echo to-parent # if the interrupt is not handled this will die with SIGPIPE
+ echo success > interrupt_was_handled
+ """
+self.addpkg(p1)
+
+self.args = "-U %s" % p1.filename()
+
+self.addrule("PACMAN_RETCODE=0")
+self.addrule("FILE_EXIST=interrupt_was_handled")
--
2.19.0
2
1
[pacman-dev] [PATCH] reset signal handlers before running scripts/hooks
by Andrew Gregory 21 Oct '18
by Andrew Gregory 21 Oct '18
21 Oct '18
Front-ends or libraries may set signals to be ignored, which gets
inherited across fork and exec. This can cause scripts to malfunction
if they expect the signal. To make matters worse, scripts written in
bash can't reset signals that were ignored when bash was started.
Fixes FS#56756
Signed-off-by: Andrew Gregory <andrew.gregory.8(a)gmail.com>
---
Hopefully nobody ignores or depends on signals outside of the POSIX
list. As far as I can tell, the only way to reset all signal handlers
is to iterate over the entire range of positive integers.
lib/libalpm/util.c | 20 ++++++++++++++++++++
test/pacman/tests/TESTS | 1 +
test/pacman/tests/scriptlet-signal-reset.py | 11 +++++++++++
3 files changed, 32 insertions(+)
create mode 100644 test/pacman/tests/scriptlet-signal-reset.py
diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index a06f5bfd..eaf85e93 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -548,6 +548,25 @@ static int _alpm_chroot_read_from_child(alpm_handle_t *handle, int fd,
return 0;
}
+static void _alpm_reset_signals(void)
+{
+ /* reset POSIX defined signals (see signal.h) */
+ /* there are likely more but there is no easy way
+ * to get the full list of valid signals */
+ int *i, signals[] = {
+ SIGABRT, SIGALRM, SIGBUS, SIGCHLD, SIGCONT, SIGFPE, SIGHUP, SIGILL,
+ SIGINT, SIGKILL, SIGPIPE, SIGQUIT, SIGSEGV, SIGSTOP, SIGTERM, SIGTSTP,
+ SIGTTIN, SIGTTOU, SIGUSR1, SIGUSR2, SIGPOLL, SIGPROF, SIGSYS, SIGTRAP,
+ SIGURG, SIGVTALRM, SIGXCPU, SIGXFSZ,
+ 0
+ };
+ struct sigaction def;
+ def.sa_handler = SIG_DFL;
+ for(i = signals; *i; i++) {
+ sigaction(*i, &def, NULL);
+ }
+}
+
/** Execute a command with arguments in a chroot.
* @param handle the context handle
* @param cmd command to execute
@@ -633,6 +652,7 @@ int _alpm_run_chroot(alpm_handle_t *handle, const char *cmd, char *const argv[],
exit(1);
}
umask(0022);
+ _alpm_reset_signals();
execv(cmd, argv);
/* execv only returns if there was an error */
fprintf(stderr, _("call to execv failed (%s)\n"), strerror(errno));
diff --git a/test/pacman/tests/TESTS b/test/pacman/tests/TESTS
index b11cb511..5deb93c4 100644
--- a/test/pacman/tests/TESTS
+++ b/test/pacman/tests/TESTS
@@ -150,6 +150,7 @@ TESTS += test/pacman/tests/replace102.py
TESTS += test/pacman/tests/replace103.py
TESTS += test/pacman/tests/replace104.py
TESTS += test/pacman/tests/replace110.py
+TESTS += test/pacman/tests/scriptlet-signal-reset.py
TESTS += test/pacman/tests/scriptlet001.py
TESTS += test/pacman/tests/scriptlet002.py
TESTS += test/pacman/tests/sign001.py
diff --git a/test/pacman/tests/scriptlet-signal-reset.py b/test/pacman/tests/scriptlet-signal-reset.py
new file mode 100644
index 00000000..27246d12
--- /dev/null
+++ b/test/pacman/tests/scriptlet-signal-reset.py
@@ -0,0 +1,11 @@
+self.description = "Reset signals before running scriptlets/hooks"
+
+p1 = pmpkg("dummy")
+# check if SIGPIPE is ignored, it should be fatal, but GPGME ignores it
+p1.install['post_install'] = "kill -PIPE $$; echo fail > sigpipe_was_ignored"
+self.addpkg(p1)
+
+self.args = "-U %s" % p1.filename()
+
+self.addrule("PACMAN_RETCODE=0")
+self.addrule("!FILE_EXIST=sigpipe_was_ignored")
--
2.19.0
2
1
[pacman-dev] [GIT] The official pacman repository annotated tag, v3.0.0-rc2, updated. v3.0.0-rc2
by Andrew Gregory 20 Oct '18
by Andrew Gregory 20 Oct '18
20 Oct '18
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 annotated tag, v3.0.0-rc2 has been updated
to fc4cd3864aae4edd5835116d9191b48f60ffa4a4 (tag)
from b977b9c030861decd22376e4d2a9147e830ebfae (which is now obsolete)
tagging 9e3a1853451230d887c3c89f49f04e502fb69621 (commit)
replaces v3.0.0-rc1
tagged by Andrew Gregory
on Sat Oct 20 12:53:22 2018 -0700
- Log -----------------------------------------------------------------
replaces broken tag b977b9c030861decd22376e4d2a9147e830ebfae
-----BEGIN PGP SIGNATURE-----
iQEzBAABCAAdFiEEuBUbEXA3eBCVUUynu9/8kjBrESEFAlvLh7IACgkQu9/8kjBr
ESFJ9QgAgulpF3KQDRNRgGIpoIlblE8U0H6AziEr+lG3RRUGZs4gxJybD2aMkcrB
KSQ0L4dTHfcQ1d//d+9N2TnEf60erz+ryC+lBDzNenqZ4ocLQwiYeRCzyc8DqIoU
7Rl8mFgv0IB+4IOh5r9nPFzsGqV1UJkTjOP5guHVsy7U/1ZbXEEjhBUwkhWPfpke
3QV+7T2I2oq8aFMm6Xx30WuOIUeFpjQ+HzyI3evVWQW/B3sL5CsTm/iyav3MaAZs
rtCrGkNpfH1EI2+N8WW/sA6ZON+LpnEoUnovaYD2wU2KRlnZDc5sZt3jXp9ETBvp
poKY0EgIJulQ5US59AdIWg2zWKDfSw==
=oJsw
-----END PGP SIGNATURE-----
Aaron Griffin (7):
* Fixed an issue with globbing the --test argument
Added this test to check the XferCommand functionality
* Fix the double package name URL when using XferCommand
* Bug fix for makepkg dependency testing. This requires that we
* Updated -V output to include the 2007 copyright date.
* Two fixes when running under a new root (-r|--root)
* Fixed an error with 'cascade' removal due to creation of a new pmpkg_t struct
Dan McGee (33):
* rankmirrors updates from Scott Horowitz <stonecrest(a)gmail.com>.
* Removed a mirrorlist that codemac says is quite outdated.
* Failure to #include config.h cost us here, we lost all NLS in alpm.c.
This commit looks much more monumental than it is. Almost all just #include
* Added missing header include guards in md5.h and sha1.h.
Trying to fix up this autotools stuff a bit more.
* Remove sha1 checksums for now from the INTEGRITY_CHECK array.
* Updated Italian translation
* Fix FS #6534- unclear IgnorePkg message. Sorry translators, had to update
* Sorry tranlators, another string update. .pacorig was displayed twice in
* Slight updates of Hungarian translation
* -Qs was returning an error if no package found, which is not the same behavior as -Ss.
* Oops, that last commit had some debug stuff in it. Removed it and added
* Updated Italian translation
* Added a readme file to the contrib/ directory.
* Updated Brazilian Portuguese translation
* Updated German translation
* Updated pot files for hopefully the last time before release.
* Slight updates to NEWS file.
* Mark a function as static that is only used in deptest.c.
* Updated Italian translation
* Added confirmation step to makepkg -C operation to ensure user is deleting
* Another slight update, getting rid of -rf flags and clarifying a message.
* Updated Italian translation
* Added Russian language translation. Thanks!
* Fix group comparison issue and associated compilation warnings by using
* Updated Hungarian translation, thanks!
* Updates to Hungarian translation from Nagy, mostly cleanup stuff.
* Fixed -Qil regression, now both flags are honored. (FS #1355)
* Removed ${CFLAGS} from Makefile.am(s) as it was causing all CFLAGS to be
* Fix an issue where the same dependency was recorded multiple times in the
* Fix wrong filesize being recorded to local DB. Reported by Andreas Radke.
* Noted a misspelling for later (after we are not in string freeze).
Jürgen Hötzel (1):
fixed string comparison callback (patch from Nagy Gabor)
-----------------------------------------------------------------------
hooks/post-receive
--
The official pacman repository
1
0
[pacman-dev] [GIT] The official pacman repository annotated tag, v3.0.0-rc1, updated. v3.0.0-rc1
by Andrew Gregory 20 Oct '18
by Andrew Gregory 20 Oct '18
20 Oct '18
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 annotated tag, v3.0.0-rc1 has been updated
to bdb94daf7256d315c39ce73b78ffcf2c8b5a77cf (tag)
from 59ae306a5453e0113ffba8395db9df1b5507c650 (which is now obsolete)
tagging 11fbc595d48d55be929e259285bb65e53ef33007 (commit)
tagged by Andrew Gregory
on Sat Oct 20 12:47:37 2018 -0700
- Log -----------------------------------------------------------------
replaces broken tag 59ae306a5453e0113ffba8395db9df1b5507c650
-----BEGIN PGP SIGNATURE-----
iQEzBAABCAAdFiEEuBUbEXA3eBCVUUynu9/8kjBrESEFAlvLhlkACgkQu9/8kjBr
ESFf1AgAn3mykXPagGnkXeunD9xjXmzo4Fnx7OLbOCBzBL0nZATLUjAyu0j26HO7
PaScKOuSOc5m9WHYdmbqQy8fIsu1mI9jyNC0q1iTCpX54DCp1RZSmMIHlO7wgHCJ
kMHVHfmnt5Zz7Y9bmYm0MSbLPklbUzcSeOh1DzgIERsJD2aCJ3Dwstfpg9uKTGty
jM2n3ZhB5WSw4Sz6cKt0eH+y64YKkwvQVTNoMS7kgQBXrEHITh4gtmDeEz4FcYAT
OEJc7xXFQFYbblcpAMeYKRfyjN54F5fkXHj7jWijBSa4LBOlwTl6UGDZxKXnjXR1
Z6ZBWoROrhOs3ASDlubfFIGPzC3Bsw==
=z+VF
-----END PGP SIGNATURE-----
Aaron Griffin (313):
Merging Frugalware changes - these need to be checked for instances of "Frugal"
Added pactest to repository, from Aurelien Foret:
Frugalware changes - mainly architecture updates and signed/unsigned changes
Merged frugalware changes (too many to list). Also added some config file
Merged frugalware changes. Added a few other minor things too, but there's alot
Final frugalware changes commit
include changes so that this compiles
Fixed java includes - java bindings now compile
Corrected documentation compilation - succeeds now
Added alpm function docs along
*** empty log message ***
Whoops forgot some .in files
*** empty log message ***
Added po files... not sure if this is the right approach
Added sha1 support (for now?)
Another forgotten file set
Removed convertdb
Whoops, actually remove convertdb this time
Added po files
Applied changes from frugalware:
Frugalware patch for AC_CHECK_PROGS fixups:
*** empty log message ***
Applied Frugalware patch from Christian Hamar alias krix <krics(a)linuxforum.hu>
configure changes for java detection (require swig)
Copyright changes
Adjust progress bar to align with frugalware's progressbar
Removed extra includes
Removed three checks for po4a (patching issue)
Yet another "added three times" issue.
Fixed doxygen comments
Reverted debug parameter to -1
Added copyright holder
Removed old db files (unused)
From VMiklos <vmiklos(a)frugalware.org>
A handful of minor changes:
Whoops, this file got left out
Minor changes:
More extern moving - keep extern decls in the headers makes for easier/better
Fixed this test so that it succeeds - it is probably not 100% appropriate, but
Fixes from frugalware: few 'typos' included while patching
Reverted the "out of memory" error to 1 to prevent API changes.
Added re-pacman
Added PM_DLFNM_LEN define, via VMiklos
Attempted fix for x86_64 - switched some unsigned char variables to ints, and
Fixed library directory for bindings - we need the craptastic .libs libtool dir
Moved downloaded db unpacking to the backend files, to easier allow conversion
Remove generated man pages from CVS
Fri Oct 27 21:54:32 CEST 2006 VMiklos <vmiklos(a)frugalware.org>
Added libfetch linux port + misc changes
Numerous changes:
Numerous changes:
* Makefile changes for libfetch integration
Forgot to cycle to next server on download error - fixed, as well as the
Removed user-CFLAGS during a debug build. Added -Wall to normal build(I like -Wall)
Fixed pacman -U:
Whoops forgot this
Added a newline upong progress completion - this was accidentally left out causing the second progress bar to overwrite the first
* Fixed some alpm_get_option calls (long params were used for C99 compliance,
* Modified some error output and logging
Removed antesis mirror, as it no longer works
Added mcheck support for memory debugging
* Fixed an error message that should be a debug message
* Improved mcheck output
mcheck() seems to cause segfaults. Annoying. Switched back to useing mtrace() - if anything valgrind is superior to mcheck anyway
Whoops - I fail at setenv
Last mtrace/setenv change, I swear
Skip root check on -Sp
*** empty log message ***
* Numerous mini valgrind fixes.
* autotool fixes
* has_archname changes
* has_archname additions
* Initial changes to gensync - makepkg changes were not checked in from another
* Changes to some of the TODOs and a brief glance at the NEWS file...
* integrity check looping - support multiple algorithms at once
* makepkg.conf.in variable changes (missed the checkin)
Minor makepkg changes - mainly from Daniel McGee
* repo-add script - to add entries to a db file directly from package data (no PKGBUILD)
libalpm appends the trailing / to the config root, no need to do it here
* Fixed a double free which happened in 2 cases in --sync
* Fixed an error when trying to download to an unwritable location
Removed global maxcols - it is looked up on the fly now, so the progress bar is
* Completed getinfo api changes (pmmissing_t, pmtrans_t, etc)
* usize -> isize conversion
Added Dan McGee to the Authors file for his contributions on the mailing list
* Whoops util Makefile
*** empty log message ***
-std=c99 seems to undefine PATH_MAX in this case. I don't care enough to fix it
* Move sync *after* transaction init (lock file). We don't want to stomp on the
* Fixed some error output for "-Sd" and "-Rsc" dealing with missing/ignored
* cosmetic: double space in "full system upgrade"
* Cosmetic changes and typo fixes
* Fixed the bug where -R pkgA pkgB failed when pkgA depended on pkgB
Added dbpath validation
Corrected -Rsc operation - dependancy info was not being read from the DB
Changed "Total Uncompressed Size" to "Total Installed Size"
Added 'abs' and configs to CVS
Corrected -Qg description
Check status of final tar/compress package creation for final status (FS#3382)
Changed upgrade message to use the term "installation" to make the meaning more
Removed an extra call to alpm_option_set_root() - it is set by alpm_init()
A few minor updates so --root works again.
Merged some proposed changes from "Dan McGee" <dpmcgee(a)gmail.com>
rankmirrors script from Dan McGee <dpmcgee(a)gmail.com>
Copy/pasta errors from mail client. Fixed.
* Dan McGee's makepkg updates http://www.archlinux.org/pipermail/pacman-dev/2006-December/000792.html
FS #3289 fix from Dan McGee <dpmcgee(a)gmail.com>
Makefile adjustments for installation rules:
* Added etc/abs dir to configure generated makefiles
More abs build fixes
*** empty log message ***
* modeline fixes / reformatting
* Jürgen Hötzel <juergen(a)hoetzel.info>
* Dan McGee <dpmcgee(a)gmail.com>
Added default SRCDST setting to pacman's source cache
Restored NoUpgrade options - see http://www.archlinux.org/pipermail/pacman-dev/2006-December/000838.html for details
*untested* potential fix for the NoUpgrade issues.
Errors with last merge (manual patching)
* Dan McGee <dpmcgee(a)gmail.com>
Jürgen Hötzel <juergen(a)hoetzel.info>
Fixes from Dan McGee <dpmcgee(a)gmail.com> and myself
* FS#5990 fix (trailing slash)
* Unused variable 'path'
* Properly fix the NoUpgrade issues.
Modified front end output routines to accept a "padding' setting, which pads any
Cleanup from Dan McGee <dpmcgee(a)gmail.com> and JÌrgen Hötzel <juergen(a)hoetzel.info>
*** empty log message ***
Configuration changes:
Removed archlinux.de mirror by request
Column fix when stdout is redirected. Default to 80.
* Removed autoconf TODO fixed in last commit
* Removed latest fix from TODO.autoconf
* Fix a missing slash separator in printed uri
* James Rosten <seinfeld90(a)gmail.com>
* Missing error label in sync.c
* Added instructions for patch submission
* James Rosten <seinfeld90(a)gmail.com>
*** empty log message ***
* Bug fix FS#6058
* bug fix FS#6100 - fix --print-uris output
* cosmetic: newline after "local database is up to date"
* James Rosten <seinfeld90(a)gmail.com>
* Dan McGee <dpmcgee(a)gmail.com>
* Dan McGee <dpmcgee(a)gmail.com>
* Jürgen Hötzel <juergen(a)hoetzel.info>
*** empty log message ***
Added Jamie (yankees26)
cvsignore cleanup and additions
James Rosten <seinfeld90(a)gmail.com>
JÌrgen Hötzel <juergen(a)hoetzel.info>
James Rosten <seinfeld90(a)gmail.com>
Roman Kyrylych <Roman.Kyrylych(a)gmail.com>
Dan McGee <dpmcgee(a)gmail.com>
Dan McGee <dpmcgee(a)gmail.com>
* Misc logging changes
Added strerror() output on unlink failure
Dan McGee <dpmcgee(a)gmail.com>
Dan McGee <dpmcgee(a)gmail.com>
Some confusion with variable names in unlink_file caused unlink to try and find the _relative_ file instead of absolute. The absolute path name has also been used in some of the output there too.
* remove static neednl - no accessor functions (yet)
*** empty log message ***
Blah blah commit message for testing cvslog -> email
Preliminary checkin for alpm_list conversion
Added some things I noticed when making alpm_list changes, but didn't want to change too much at once.
Johannes Weiner <hannes(a)saeurebad.de>
Johannes Weiner <hannes(a)saeurebad.de>
Whoops. There's a 0 where there should be a 1.
Moved some decls to make the "pkg_invalid" patch compile again.
makepkg file-type detection changes from James Rosten <seinfeld90(a)gmail.com>
Removed list.h
* Dan McGee <dpmcgee(a)gmail.com>
Introduced an infinite loop during the pmlist -> alpm_list transition, whoops
Changelog support for makepkg - this has been in pacman itself for some time,
* Added a check for .FILELIST for package validity in addition to .PKGINFO
Rename Changelog -> ChangeLog (the standard way of casing a ChangeLog)
Lowercase "changelog" in output message
* Added some calloc calls to replace the malloc-then-set-to-zero functionality
James Rosten <seinfeld90(a)gmail.com>
James Rosten <seinfeld90(a)gmail.com>
Removed some debugging cruft left in in the last commit
This mainly deals with code clarity- removing currently unneeded
* Shuffled some of the alpm_list free funtions - still not perfect, but better
Cleanup 'neednl' usage - make it static
James Rosten <seinfeld90 at gmail.com>
* Fix FS #3107- Use ISO date style
* copy and paste error, "resolving deps" -> "cleaning up"
Forgot this patch from Dan McGee as part of the bug #5409 fixes
Dan McGee <dpmcgee(a)gmail.com>
Missed that 8)
This is a silly script now that a fancy aurbuild is out in the wild (on the AUR,
K. Piche <kpiche(a)rogers.com>
K. Piche <kevin.piche(a)cgi.com>
Turn debug off by default
TODO changes
Well that silly memory clobber was plain old "uninitialized data" - fixed
More uninitialized stuff... I believe these were removed at some point. Should
Debug logging changes:
Fix corrupt DB entry handling when loading package entries.
TODO changes 8)
Switched an int to an enum
* Make -Qo work on multiple files again
* Forgot the int->enum header checkin
Removed the extra newline based on general opinion
* !strcmp reads funny (as "not string compare" - switch those to == 0, which has
Move filelist creation ABOVE the other metafiles to keep them out of the list
install scriptlet is _always_ .INSTALL
-Ql needs the 'root' prepended to each file
Cleaned up some of the metadata control
It appears I misunderstood what this bash-ism did
Loading package data from a file was ALWAYS generating the filelist, instead of
* Minor output fix (move colon so it's not part of the URL)
* unified the progress bars (fill_progress function)
* Added archive verification when loading package metadata for -u and -A
Implemented a crappy version of -Qu (query upgrades). This simply outputs the
Added the --upgrades option for -Qu (--query --upgrades)
Attempt to unify the -S and -Su version comparissons for when a package is newer
Copy-pasta errors. 8)
Swapped out PKGBUILD.8 for PKGBUILD.5 from Dan McGee - original PKGBUILD.8 had too many Frugal specific changes.
Minor fixups for the moment, still partially complete
Attempt #2 at -S/-Su unification: verify that the 'force' option has been read before comparing versions
Minor experimental changes to the download progress bar:
I broke the progress bars earlier. Put that back to normal.
* Fix total transfered size on download bar
Cleanup and more debug info for alpm_pkg_compare_versions
Only honor 'force' if versions are NOT identical
Copy/pasta error in alpm_get_upgrades that caused a segfault
*** empty log message ***
*** empty log message ***
Attempt to NOT remove packages on filesystem errors (like a read-only
* Fixed some missing error values in strerror
* Cleaned up direct pm_fprintf usage (move to MSG/ERR macros for now)
* Remove "RETRIEVE_LOCAL" trans event as libdownload handles local files
* Fix #2982 - use -Rs to remove deps
* I made "alpm_versioncmp" public a while back, without noticing this was already done (alpm_pkg_vercmp). I dropped this change, making versioncmp "private" again. (alpm_versioncmp -> _alpm_versioncmp, hidden symbol)
Cleaned up some more output
* 'add' percentages now cap at 100% (see the comment)
* Package file parsing - fixed size and isize - isize is the "size" variable
*** empty log message ***
This should be an ERROR, not a WARNING
Added 'testpkg' binary to test for validity of a package:
* Updated the README file
Updated gensync to use repo-add
better error message
Rewrote updatesync in terms of repo-add and repo-remove
Wasn't clearing out the 'pkgname' variable, which was causing goofy output
* Removed the 'vercmp' op from pacman. The standalone 'vercmp' binary should be
* Added --cachedir commandline option
Exit status of 2 seems wrong for -V
Added changes from Daniel YC Lin via bug #3266
* Added long options (missing in patch)
Fix some x86_64 configuration handling
Changed "MARCHFLAG" to "ARCHSWITCH" as the name was confusing (it's not a FLAG
These were in the wrong order, so errored for me.
Reverted the exit 2 -> exit 0 change. This was there for a reason (so that
Removed desc_localized for the time being. We don't have localized
* Refactored conflict checking within packages. Profiling from Dan showed an
From Phil Dillon-Thiselton <dibblethewrecker(a)gmail.com>:
TODO update
While trying to change the number of missing deps output by makepkg, I noticed
* Fixed _alpm_pkg_compare_versions so that it does not output warnings if versions match. (reported by Travis Willard)
* Bugfix for FS#6427: Allow -Si to use "repository/package" syntax
* Bugfix FS#6422 - spacing for warning output. Due to the fact that we fixed
Added a 'contrib' directory for other stuff that might be a good idea to maintain here.
* A whole mess of backup changes
Added a config file for the vim-project plugin for kicks. To use:
* Fix version comparisons when one pkgrel doesn't exist (this ony fails on an ==
Added new italian translation from Giovanni Scafora <linuxmania(a)gmail.com>
Moved the update_depends function to trans.c, as it depends on a transaction
* Some cascade removal changes. Mainly code cleanup, but this is an attempt to
* Looks like I left some debugging code in there
* Indentation changes - 4 spaces for python, we standardized this before (and
* Use the libtool'd .la file as a link target so we can run pactest properly
* Re-added a compare function for syncpkg's - it was removed without thinking
TODO updates
* Using positional params (POSIX compliant, not C standard) for printfs that
* Cleaned up some debug output
* Forgot the second printf in the last commit
* debug cleanup (more)
* Prepend all lists with _ for consistency
* Modified the handling and output w.r.t. IgnorePkg entries. -Sy always ignores
Just some changes to my TODO
We don't need this anymore
* Removed a stray print statement left in there
* Fixed globbing for pactest --test argument
*** empty log message ***
Ignore that... wasn't supposed to happen
* conflicts are returned with the full path, so prepending root is redundant
* Too much debugging output in the alpm_pkg_compare_versions function
* The info level for this was wrong, causing replacements to not really work
I had this laying around, figured someone might find it useful
Whoops, added to Makefile.am
Syntax error
else if --> elif (thanks to yankees26 for finding this)
* corrected (IMO) --debug usage with pactest. --debug is now passed straight
* Writing 'replaces' info to both /desc and /depends files for testing - see the
* Enforce const char* params when using strings
* pacman hidden arguments: removed -Y and -D. -T is the only hidden arg now, to
* Added a small note to HACKING
* This test was off. pactest doesn't do all the DB work, so we need to manually
* Fixed a pacman warning when these fake packages didn't create an (empty)
* Just a note for future reference
*** empty log message ***
* REQUIREDBY test was reversed (pkg3 requiredby pkg1, not pkg1 requiredby pkg3)
* Switched some functions to alpm_pkg_get_* usage as I came across them
* Comment clarification
Big commit this time:
Minor changes
Added a test for checking 'requiredby' removal
* libtool fixes for building against the right libs
* handle changes: callbacks should check handle first, as there's a few
* Fixed a whole mess of extra '/' pathing issues when a different root is
* Fixed the handle realroot stuff
* By Roman's request - proactive backup=() entry test case
Aurelien Foret (470):
Fixed a typo in add_loadtarget()
Renamed PM_TRANS_CB_XXX to PM_TRANS_EVT_XXX
Improved error handling in add_loadtarget()
Renamed PACXXX defines to PM_XXX
Added a db_update() function to manage sync databases updates.
Removed a hardcoded reference to the 'local' database in db_create()
Added LOG_STR_LEN define to avoid hardcoded length for log strings
Removed a leftover debug printf
Fixed a typo
Added a missing argument in db_create()
Removed the "__" prefix from __pm_logcb and __pm_logmask
Make sure we generate a UPGRADE_DONE event during upgrades
One more ORE comment
Added DB_TREENAME_LEN define to avoid hardcoded length for database string
New ORE tag
*** empty log message ***
Moved log callback definition to alpm.h
- added PM_EXT_PKG and PM_EXT_DB defines to alpm.h (taken from pacman 2.9.3)
- reworked sync_synctree() to make use of alpm_db_update()
Avoided usage of global variables pmo_root and pmo_dbpath.
Added missing extern declaration
Bring back db_scan() modifications from pacman 2.9.1
Code formatting
Dropped pmo_nosave parameter (now included in pmo_flags)
Code reformatting
Added a missing FtpQuit() call
Code cleanup
Renamed PM_RET_ERR to RET_ERR (no need for a PM_ prefix for internal
Removed hardcoded reference to fields of packages
One more sanity check, and one more ORE tag
Removed unuseful getuid() calls
Fixed some typo...
Avoided extern references to pmo_root.
Relocated log and transaction stuffs from pacman.c to log.c and trans.c
Copyright update
Removed an uneeded global reference
Revert to previous version
Removed an hardcoded string length
Removed an hardcoded string length
pacman_deptest() rework
Rework for fixed length strings
Added support for .lastupdate files (from pacman 2.9.1)
- added HTTP support for .lastupdate files
removed a deprecated placeholder
added support for the XFERCOMMAND option
- added pmo_chomp support (from pacman 2.9.3)
replaced rewinddir() calls by db_rewind()
fetch_pkgurl: do not download a file if it's already in the current dir
added display of backup info in dump_pkg_full()
Let the C preprocessor concatenates CACHEDIR string
- added db_setlastupdate to db.c
moved db_find_conflicts from db.c to conflict.c
removed leftover debug printf
- removed db_find_conflicts() declaration from db.h
uncommented a call to alpm_logaction
reorganization
removed duplicated prototype
cleanup for add_loadtarget() logs
fix: one can't add a package twice in transaction targets list
added a missing goto!
replaced hardcoded references to the cache by CACHEDIR
backported fixes for trim() from pacman 2.9.5
Backport from pacman 2.9.5
Backport from pacman 2.9.5 (code cleanup)
fixed a typo
updated comments
_alpm_runscriplet fixes
Backport from pacman 2.9.5
More backport from pacman 2.9.5 (mainly for resolvedeps)
Backport from pacman 2.9.5 (--ignore in usage)
reworked PM_LOG_XXX messages during install/remove/upgrade operations
backport from pacman 2.9.5 (splitdep returns an int)
backport from pacman 2.9.5 (formatting, commentaries)
rewrote list_free to not be recursive anymore
- fixed a small memory leak
made 'provides' actually work when updating 'requiredby' fields from deps
renamed temp files from pacman_XXXXXX to alpm_XXXXXX
fixed an error message
added a FREELISTPTR macro to free a PMList without freeing its data
improved log message for alpm_db_update
improved logs (use _alpm_log instead of fprintf)
replaced occ of list_free() by FREELIST/FREELISTPTR macros
reworked dbpath handling to make it possible to use databases stored at different locations at the same time
maked use of db->path instead of handle->root+handle->dbpath+db->treename
Replaced snprintf calls by the SNPRINTF macro to avoid buffer overflows when copying strings
clearer string length for a strncpy call
Turned pmdepmissing_t into an opaque structure
turned pmdepmissing_t into an opaque structure
changed alpm_db_register() prototype
put back 5 _alpm_log() calls
put back 3 _alpm_log() calls
changed alpm_db_register() prototype
*** empty log message ***
backport from pacman 2.9.5 - chdir
fixed a log mask
removed an uneeded call to db_scan
checked for db_update() archive existence
started the work on "pacman_sync"
fixed a compilation warning
reworked sync_cleanup
added RESOLVEDEPS to the list of transaction events
reworked resolvedeps:
sync with changes in alpm.h and new RESOLVEDEPS event
added support for PACKAGES field in alpm_trans_getinfo
- updated transaction events
fixed a log level
- added 'lastupdate' field to pmdb_t
more work to backport pacman_sync from pacman 2.9.5
added list_is_ptrin()
reworked a log
- added transaction flags for the removal of a package to be upgrade
fixed a typo
added logs for cache generation
replaced transaction 'packages' field by 2 queues: one for packages to be installed and the other for the ones to be removed
updated structure names (PM_SYNCPKG), and added transaction queues (install & remove)
package 'reason' field should default to 0
reworked MSG and ERR outputs
reverted back to trans->packages instead of install and remove queues
more work to backport the sync features from pacman 2.9.5
synchronization with libalpm for latest sync feature work
fixed a small memory leak
removed a leftover comment
- small bugfixes
fixed a potential segfault
more work in sync_prepare
reworked alpm_db_readpkg
added function pkg_splitname (not used for now)
added option -p in pacman usage screen
backported support for print-uris from pacman 2.9.x
updated a log
- updated sync feature
replaced a call to list_free by the macro FREELIST
-fixed 2 logs
added packages integrity checking
more work for sync_commit()
reworked transaction prototypes
reworked handle structure initialization
- reworked transaction prototypes
- reworked pmsyncpkg_t structure
- general cleanup
cleanup to keep in sync with alpm changes
fixed a user message
more sanity checks for pkg_load()
renamed PM_ERR_INVALID_NAME to PM_ERR_PKG_INVALID_NAME
improved logs for package removal
add_loadtarget: load package info only when needed
fixed a log message
more work for sync_commit()
fixed a segfault
bypass trans_prepare() if there is no target
avoided a call to db_scan()
- fixed args order in list_is_ptrin()
fixed args order in list_is_ptrin()
- fixed args order in list_is_ptrin()
avoided two calls to db_scan() in checkdeps()
display the list of targets to be removed before trans_commit() call
code beautifying
first steps to support REPLACES feature
renamed list_is_ptrin() in list_is_in()
some remork for pacman_deptest()
code cleanup
rework the cache handling to avoid as much as possible calls to db_scan()
fixed some potential resource leaks
outputs cleanup
added transaction events for sync_commit operations
removed deprecated comments in add_commit()
logs cleanup
code cleanup
use the cache instead of calling db_scan()
- fixed a cut'n'paste bug with %REASON% entry
fixed the format of %REASON% entry when writing it
code cleanup
slighlty improved efficiency for dump_pkg_full()
fixed a commented MLK in db_find_conflicts()/CHECK1
some more efficiency in remove_prepare() cascade loop
got ride of an ORE tag in resolvedeps()
added support for the package reason field
avoided to load twice the same target in remove_loadtarget()
added a new ORE tag
fixed potential memory leaks
code cleanup
removed an uneeded check
reimplemented list_free() a safer way
- rework to support pacman_deptest()
reworked pacman_deptest()
*** empty log message ***
removed unused function list_is_ptrin()
removed the extra line feed appended by asctime()
fixed targets display for cascade or recurse commands
added a --debug option to externally set the library log level
updated REASON constants to be consistent with databases from pacman 2.9.x
code cleanup
code cleanup
../../README
get ride of ORE tags
do not register an already registered db
code cleanup
fixed a small memory leak with md5sums handling
moved pkg_cmp() to cache.c
reimplemented list_remove to deal with lists of any kind of data
fixed a small memory leak during the cleanup of config data
added some debug logs
found a possible MLK: to be fixed
make use of the new list_remove implementation
code cleanup
- fixed a small memory leak
fixed a memory leak and avoided to modify a read-only parameter
code cleanup
event transaction callback rework to prepare the introduction of a conversation callback
code cleanup
code cleanup
fixed some small memory leaks
reordered operations in add_commit (as in pacman 2.9.x)
fixed a typo
fixed a pointer error
code cleanup
fixed a memory leak with md5 sums handling
- indented properly sync_cleancache()
fixed cb_trans() prototype
changed license package field to a list
changed license package field to a list
Fixed some typos
Small update
Added a PKG_FULLNAME_LEN macro
Applied reworked patch from VMiklos (vmiklos(a)frugalware.org)
Fixed an error log
Added a CYGWIN define to include header files required to build in a Cygwin environment
Added a missing include for CYGWIN target
Applied patch from Christian Hamar (krics(a)linuxforum.hu)
Moved the REPLACES and FORCE package fields from DESC to DEPENDS db entry
Reworked the cache handling to only load DEPENDS info by default
Code update to make use of PKG_FULLNAME_LEN
Fixed an text formatting issue
update
Added an error string for lock file creation failure
Fixed missing parameter in trans_init() call
Fixed EVENT and QUESTION macros
- more sanity checks
pacman should work without its configuration file!
improved query_fileowner() function
removed a leftover comment
pacman update to cope with the CACHEDIR option from the library
added PM_OPT_CACHEDIR library option
added a missing header file declaration
removed useless getenv() calls
added alpm.h to delivery targets (Jason)
removed an uneeded variable declaration
do not free the cache right before using it!
added a missing line feed in a MSG call
added pmconfig_t structure to hold all the configuration
removed entry dealing with pacman configuration structure
stripped end of lines
renamed pmconfig_t to config_t
added PACCONF, PACDB and PACROOT defines
fixed some compilation warnings
fixed a compilation warning
fixed parseconfig usage
Used the chroot syscall instead of the chroot binary
removed the declaration of an unused variable
added more pm_errnos
fixed compilation warnings
added a FREESYNC macro to release pointers to pmsyncpkg_t structures
fixed wrong prototype usage for trans_new()
cleanup
fixed compilation warnings
fixed a file descriptor leak
Fixed some memory leaks (patch from Essien Ita Essien <essiene(a)datavibe.net>)
Fixed some logging issues (patch from VMiklos <vmiklos(a)frugalware.org>)
Fixed a typo (spelling) fix (patch from VMiklos <vmiklos(a)frugalware.org>)
Allowed C++ usage (patch from VMiklos <vmiklos(a)frugalware.org>)
added a debug log when freeing the package cache
removed an uneeded call to strtrim
used defines from alpm.h instead of local ones (patch from VMiklos <vmiklos(a)frugalware.org>)
do not consider duplicated targets as an error (patch from VMiklos <vmiklos(a)frugalware.org>)
don't complain on PM_ERR_DB_UPTODATE errors (patch from VMiklos <vmiklos(a)frugalware.org>)
added a missing code chunk of the ignore command line option (patch from VMiklos <vmiklos(a)frugalware.org>)
fixed a segfault and added more verbose outputs in group handling (patch from VMiklos <vmiklos(a)frugalware.org>)
*** empty log message ***
renamed error titles from XXX to xxx
- fixed a regression with pacman 2.x (patch from VMiklos <vmiklos(a)frugalware.org>)
removed some overlapping pm_errno assignments
- reworked verbose levels
fixed a possible memory corruption
fixed a possible memory leak
Added Cygwin target defines
code cleanup
fixed a typo
fixed various memory leaks
fixed possible memory corruption
code cleanup
code cleanup
more sanity checks: do not add or remove databases while a trasaction is running
code cleanup
fixed a corrupted argument
code cleanup
fixed a segfault in removdeps
added .lastudate support for HTTP protocol
terminated .lastupdate implementation for HTTP protocol
fixed a regression
- fix for sync conflicts (patch from VMiklos <vmiklos(a)frugalware.org>)
tweaked a log (patch from VMiklos <vmiklos(a)frugalware.org>)
added a missing cachedir registration
various code cleanup
- started to rename list_XXX calls to _alpm_list_XXX
code cleanup
- fixed a regression with pacman 2.x (reworked patch from VMiklos <vmiklos(a)frugalware.org>):
fixed the usage of 4 list_is_in calls (should have been list_is_strin)
moved pacman_deptest function in its own file
removed ORE tags (after tests, no real performance increase by implementing them)
- sync: populates *data when a conflict can't be resolved
pacman_sync: handle trans_prepare error cases (patch from VMiklos <vmiklos(a)frugalware.org>)
removed a misleading PM_ERR_XXX occurrence
code cleanup (mainly removed line spaces at the beginning of lines by tabulations)
- removed uid checks (CYGWIN)
removed handle/uid checks (CYGWIN)
code cleanup
added more debug logs in the sync conflict/replace code
Fixed a regression in the conflict handling code
code cleanup
removed a restriction: the data parameter of XXX_prepare functions can be NULL
sync_commit can now return conflicting files with a trans_prepare like data structure (patch from VMiklos <vmiklos(a)frugalware.org>)
removed all code related to PM_SYNC_TYPE_DEPEND
- merged pkg_new and pkg_dummy functions
code cleanup
added ALLDEPS transaction flag mainly to handle "makepkg -s"
made use of the new ALLDEPS transaction flag to handle "makepkg -s"
fixed a memory leak in the transaction cleanup code
code cleanup
updated README and download comments about mtimes support
fixed an awfull typo
- added 2 more ORE tags (to be reviewed) in the replace/conflict sync code
added more doxygen comments (patch from VMiklos <vmiklos(a)frugalware.org>)
removed "^M" symbols at end of lines
improved log and debug messages
code cleanup
code cleanup
removed unuseful error codes
fixed a possible memory corruption
added a missing commentary from pacman 2.9.x code
code cleanup
maked verbose group listing enabled by -Sgg instead of -Sgv
code cleanup
sysupgrade: skip version cmp for pkg elected for removal (patch from VMiklos <vmiklos(a)frugalware.org>)
checkdeps:
sync_prepare: added a missing chunk of code for dependency checks of packages elected for removal
pulled out conflict checkings from checkdeps() in its own function: checkconflicts()
fixed tabs
more code cleanup
- code cleanup
reworked log messages
even more code cleanup
code cleanup
code cleanup
added the possibility to "-Syy" (can be used to force synctrees update, even if mtimes are ok)
fixed detection for duplicate entries in list of deps/conflicts
more code cleanup yet
added a FAKEROOT define allowing to use pacman in a fakeroot enivronment (for tests purpose)
resolvedeps: return the depmiss info to the frontend in case of failure
fixed a typo
document package, group, sync and transaction functions (patch from VMiklos <vmiklos(a)frugalware.org>)
doxygen comments update (patch from VMiklos <vmiklos(a)frugalware.org>)
- fixed a compilation warning
reordered group entry position in db_write (to be in line with alpm/db_write)
reworked lock handling (patch from VMiklos <vmiklos(a)frugalware.fr>)
reworked lock handling (patch from VMiklos <vmiklos(a)frugalware.org>)
fixed a compilation warning
added missing retval values in trans_release error cases
added a missing error message in case of lock failure
fixed potential file descriptor leaks
cleaned up db_write error cases handling
improved log messages for add_commit
cleanup up error cases handling in pacman_deptest
added a missing trans_release before pacman_sync call
removed unlock code from alpm_release()
Added a missing trans_release call upon lib shutdown (patch from VMiklos <vmiklos(a)frugalware.org>)
doxygen support: added @brief field (patch from VMiklos <vmiklos(a)frugalware.org>)
added libalpm manpage (patch from VMiklos <vmiklos(a)frugalware.org>)
added line feeds when needed (patch from VMiklos <vmiklos(a)frugalware.org>)
fixed typos in 2 debug logs
fixed vprint implementation (patch from VMiklos <vmiklos(a)frugalware.org>)
- moved yesno() from util.c to log.c
fixed a possible memory leak
- sync_prepare: fixed a case where a conflict should be removed from the target list
code cleanup
copyright update
added a pmconflict_t structure to handle file conflicts
added support for the PM_CONFLICT structure to handle file conflicts
added alpm_pkg_checkmd5sum() to check md5sums for package from the cache
added support for alpm_pkg_checkmd5sum()
pacman 2.9.8 synchro
copyright update
copyright update
synchro with pacman 2.9.8
code cleanup
code factorization
code factorization: take 2
error codes cleanup
db_write cleanup: only write non-empty fields
db_write: only write non-empty fields to database
added more logs
- reworked debug messages
reworked debug messages
added a add_faketarget function
reworked logs
added the possibility to force synctree update by using -Syy
better use ERR than fprintf for error messages
fixed a compilation warning
- added a WARN macro to display warnings
used MALLOC macro when possible
fixed a typo
fixed a compilation warning
- merged db_open and db_create into one single function
moved the .lastupdate support from libalpm to pacman
removed a leftover comment
- db_write: add support to write both local and sync entries
- grep is now a static function
fixed directory roots when running scriplets
code cleanup
*** empty log message ***
sync with pacman 2.9.8
code cleanup
*** empty log message ***
doxygen support for autotools (patch from Christian Hamar <krics(a)linuxforum.hu>
partial support for version comparators (patch from VMiklos <vmiklos(a)frugalware.org>)
commented out doxygen support as it produces an error
prepend library function names with _alpm (helped with the patch from VMiklos <vmiklos(a)frugalware.org>)
synchro with pacman 2.9.8
fixed doxygen support (patch from VMiklos <vmiklos(a)frugalware.org>)
dropped the MALLOC macro
checkmd5sums enhancements
the library must provide default values for main options
skipped conflict resolution for targets removed from transaction set
fixed outputs when downloadonly flag is set (patch from VMiklos <vmiklos(a)frugalware.org>)
improved _alpm_list_free handling
fixed indentation
disable progress bar if the output is redirected (patch from VMiklos <vmiklos(a)frugalware.org>)
added ERROR logs in case of malloc failures (patch from VMiklos <vmiklos(a)frugalware.org>)
added a debug log
code cleanup
code cleanup
reworked the db object to prepare future integration with different backends
removed HoldPkg option (frontend only feature)
fixed HoldPkg implementation
make cache works when loading it with DEPENDS info only
added more debug logs
added a FLAG_NOCONFLICT
fixed alpm_db_update extraction path
- changed flags type from char to int
added a NOSCRIPLET flag to transactions (patch from VMiklos <vmiklos(a)frugalware.org>)
fixed reason loading if the pkg cache is loaded with DEPENDS only
prepare code for cache loaded with only DEPENDS
code cleanup
removed an unexpected log
fixed a commentary
removed db_scan calls
removed db_scan calls - take 2
fixed pkgdesc usage
keep gensync and updatesync in sync
db_write: fixed md5sum field
all _alpm_XXX_cmp functions are now public
code cleanup
removed an uneeded error code (DB_UPTODATE)
build be_files.c as a additional object
code cleanup
- removed pacman.h
removed pacman.h
put back treename in db->path
fixed a regression (patch from VMiklos <vmiklos(a)frugalware.org>)
fixed dbpath initialization (found out by VMiklos <vmiklos(a)frugalware.org>)
added .cvsignore files
Dan McGee (119):
Discussed on IRC for a bit, this makes the following changes for clarity:
* Modified info query so it doesn't show more than available when querying a
* Remove -fno-strict-aliasing as it is now unnecessary to compile.
adding my personal TODO file
Fixing line spacings of download/install size messages.
* Updated repo-add script to remove same package, different version when
* Refactored some functions to clean up variable declaration.
slight line spacing/indent updates
just an update
removal of unnecessary '\' in integrity check generation
This removes the warning about skipping dependency checking when the user is
Added mirror in Finland to mirrorlist
* Tried to clean up newline display a bit in the frontend.
Updated news file to be more relevant with previous release of pacman;
Fix problem with PKGDEST variable not being used correctly.
No longer necessary to explicitly specify SRCDEST, leave it up to user to
Add newlines to error messages
* Updated makepkg to use a new form of options. These two arrays now replace
oops, ENVIRONMENT -> BUILDENV in comments
* Added some backwards compatability stuff to makepkg, along with helpful
fix makefiles for PKGBUILD.8 -> PKGBUILD.5
one more change for man page move
I should test code before I check it in. Also a fix for the annoying wget output in PKGBUILD bug.
Cleaning up mistakes. :P
* Makepkg updates, and small bugfix on man page compression.
* Update of all the *.po files and *.pot template files.
Oops. Actuall add two new translation templates as requested on the ML-
* Added a 'translation-help' file for use by our translators.
Spruced up the TODOs a bit, got rid of some of them since a lot of it was
Greatly simplify the way our non-existant translated manpages were being
Forgot to remove a few files from configure.ac
Fix newlines for real, and add a missing _() gettext wrapper.
* Nice overhaul of manpages. It is at least a start.
* Oops. Added some files to make "make update-po" work.
Small changes to README, mostly just to postpone making any real changes. :)
* Hopefully fixed the download progres bar for real. We should no longer
Another round of manpage updates.
Cleaned up the PKGBUILD man a bit.
Man pages, man pages, man pages. Just a few more additions and clarifications,
* Remove "error: " text from ERR() call since it is appended by ERR anyway.
New manpages were going nowhere without an updated makefile
* Fix compile errors/warnings.
A few more slight changes to the pacman man page
Adding repo-remove script, allows for a package to be removed from a repo.
Forgot to update the Makefile with the new script, adding it.
* Implemented FS #5641 as suggested in Aaron's comment- '-S' option now means
* Unified description of arch variable. Recommend using single quotes in
TODO update and .cvsignore addition
* Fixed an i18n bug; length of description string was hardcoded previously;
* Updated translation-help guide with instructions for updating one po file.
Fixed locale setting issues in the frontend, and fixed description of --cachedir.
Adding official translations. Thanks a lot, guys!
Pierre Schmitz <pierre(a)archlinux.de>
Translation Update, pt_BR:
Slightly optimized to remove duplicate strcmp operation.
* Updated a too-verbose message in pacman/add.c. (shouldn't be an issue withi
* Removed needless checking of package infolevel- leave it to the
* Updated makepkg.8 manpage to reflect shift of -S to --usesudo.
* pt_BR translation updates.
* strlen -> mbstowcs (multibyte str to wide char str) conversion where we
* Updated Italian translation
* Updated pt_BR translation (Douglas Soares de Andrade), and merged other
* Updated Italian translation
Updated NEWS file with some of Roman's suggestions.
* Updated German translation
* Removed unnecessary #define
* Adding pacsearch - a script to search both the sync repos and locally
Small updates, read diff for details
* Added some improved debug output to file conflict checking.
* Updated bash_completion script to 3.0 options.
* Updated German translations.
* Updated conflict checking one last time. You can finally have a file move
* Slightly fixed up the check target- we now pass 16 instead of 10 tests in
Thought about adding this a while back, finally remembered it. Basically a copy of the pacman-coding.html document in text form.
* Update Italian Translation
Fixed up the output a bit.
* Slight message change for consistancy- add a ' ' (space char) at the
* Fixed inconsistency of args- _alpm_db_read, _alpm_db_write.
Ignore pactest-created root directory
* Updated Italian translation
* A lot of Makefile.am updates to try to get 'make dist' and 'make distcheck'
* Rewrote pactest with an OptionParser so we can have helpful help text, and
* Updated German translations.
* Update the translation POT files- I don't want to do this daily but the
Big commit here, I'll try to cover all the bases.
* Updated distcheck target- added some flags so pactest is 100% correct.
* Removed man2html stuff from configure. It is now available in the doc/
* Changes to quite a few of the tests, mostly minimal changes (better
* Oops. Messed a few things up, fixing them now.
* added contrib/.cvsignore, and slight change to supfile.testing
* Updated Italian translation
Implementing feature request: <http://bugs.archlinux.org/task/4706>
* Updated Italian translation
* Added some undocumented options to the manpage.
* TODO updates.
* db search optimization- why don't we compile the regex once instead of once
* Added 5 new upgrade tests, which check various things with depends,
* Updated all the supfiles for consistancy, and added a commented out line
* Updated description of test upgrade052.
* Prevent this error when creating empty packages.
* Added another test- I believe it is a possible situation and one we need to
* Some new tests. That bring new failures. :)
* Added another test as suggested by Nagy on the ML- a package both provides
* Implemented Douglas' suggestion from the ML- print all integrity checks
* Unifying placement of REPLACES in desc file, as pacman2 does. We'll worry
* Fix up _alpm_db_free, remove use of void*.
* Silly mistake on making sync895 and sync896- I didn't create the field
* Updated Italian translation
* Modified values of INFRQ_* options so we start at 0x01 and not 0x00. This
* Updated Italian translation
* Slight documentation update.
* Oops- I need to learn to count in hex.
* A little more hacking with wchar_t output, but nothing really changed in
* file utility was updated to version 4.20, removing code that was there to
* Updated Italian translation
* Remove unnecessary call to _alpm_trans_update_depends that was erroring
* Maybe that call to _alpm_trans_update_depends was necessary. Added it back
* Update distcheck flags, we no longer need to pass --disable-fakeroot.
* Hopefully the LAST big update of the language files before release.
Judd Vinet (72):
Initial revision
made makepkg echo the version-release number as well (#2375)
added i18n to TODO
changed license package field to a list
test
test
patch from vmiklos -- properly remove each db entry instead of rmrf'ing the whole thing
Merging in recent fixes/additions from 2.9.7
added more error messages, enabled the db permission check in trans_commit
correct a trans_commit protocol
fixed a segfault w/ the skiplist
added conversation callback support for transactions
started some doxygen comment blocks
removed debug stmt
added first part of the autoconf stuff - patch from Christian Hamar <krics(a)linuxforum.hu>
bumped up PACMAN_VERSION
added idea from christian to TODO
added patch to use the system memcpy for md5 stuff
added INFRQ_DESC back to the package cache so the group cache will work
remove dupes from group lists in sync
removed debug comment
added a default cachedir
Added CacheDir directive
copied up-to-date scripts from pacman 2.9.7
improved the Replace question format a bit
fixed a segfault that occured in special cases when propagating requiredby fields during package replacements
bugfix: before searching databases for a dependency, make sure one of the packages in the final list doesn't already provide that dependency
added patch from VMiklos - fixes ownership problems when building in a chroot w/ fakeroot
added pacman-optimize to Makefile.am
added --no-check-certificate
added Doxyfile
don't die on missing package files, just warn (#3535)
Applied unset_lcall_lang.diff -- unset LANG/LC_ALL before building packages
added Frugalware patch: -Q --foreign to display packages not found in sync repos
typo
added frugalware patch for DistCC support
patch from VMiklos: regarding the documentation, groups have to be renamed from foo to alpm_foo
verbosity fix from VMiklos
VMiklos: --noconfirm fix
VMiklos: add STRNCPY macro from alpm to pacman
applied first try at sync conflict handling (VMiklos) plus a couple changes
renamed rpmvercmp to versioncmp, added some fixes from isteve(a)bofh.cz
Added .tbz2 extension to makepkg
patch from VMiklos - use PACKAGE_VERSION instead of PACMAN_VERSION
renamed configure.in to configure.ac
renamed ChangeLog to NEWS
Added AUTHORS file
added Miklos and Christian
typo fix
In the database-against-targets conflict checks, scan db packages' provides
removed old/disable provides-conflict checking code
cleanup
added new options field to PKGBUILDs for package-by-package overrides
cleaned up format a bit, added global KEEPDOCS and NOSTRIP flags
changed behaviour with original=X,current=Y,new=Z backup scenario -- install new file as .pacnew and keep old one in place
little fix for erroneous output
use sudo for -i if available (fw)
makeworld sudo support
Search through package provides if no literal matches are found when scanning for targets with -S
added a --noprogressbar switch for scripts to use
changes merged from 2.9.8 -- clarified license usage, new options var in PKGBUILDs, --noprogressbar pacman switch...
FW: re-add CacheDir setting
FW: spaces -> tabs cosmetic fix
conflict checks: when doing db-vs-target checks, opt to use the NEWER, to-be-installed package instead of the local db version if there's one available
first stage of i18n stuff from VMiklos
patch: check strlen of str, NOT msg, which is always true
i18n stuff
bugfix: when looking at provides, defer to the new, to-be-installed package's provisios instead of the the existing package's
spelling fix
Patch from FW: Better control over CTRL-C interruptions -- do not leave the DB in an inconsistent state
removed libtar support in favour of libarchive
small typo fix
JÌrgen Hötzel (9):
* Fix building outside $(srcdir).
* fixed path to automake (removed hardcoded version)
* doxygen check cleanup
* removal of swig generated bindings
* removal of swig generated bindings
* fixed clean target: no error if repository files do not exist
* gen-mirrorlist.sh not needed anymore
* fixed dist target
* unset LC_ALL, LANG after sourcing /etc/profile.d/*
-----------------------------------------------------------------------
hooks/post-receive
--
The official pacman repository
1
0
[pacman-dev] [GIT] The official pacman repository annotated tag, v3.0.0, updated. v3.0.0
by Andrew Gregory 20 Oct '18
by Andrew Gregory 20 Oct '18
20 Oct '18
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 annotated tag, v3.0.0 has been updated
to c914ef466fc08048b95f999cb99c4e8431548c18 (tag)
from c6b17b224f264973f32291ec0e4101d1a9fd0af1 (which is now obsolete)
tagging 58fe79eef64fb87b2553e6514a47beaa6d0249c1 (commit)
replaces v3.0.0-rc2
tagged by Andrew Gregory
on Sat Oct 20 12:45:51 2018 -0700
- Log -----------------------------------------------------------------
replaces broken tag c6b17b224f264973f32291ec0e4101d1a9fd0af1
-----BEGIN PGP SIGNATURE-----
iQEzBAABCAAdFiEEuBUbEXA3eBCVUUynu9/8kjBrESEFAlvLhe8ACgkQu9/8kjBr
ESGH8QgArLmBhjuFwAaOc7Sj1THPF5BkwWqDcTQDSqMjmBdv3LskC1/ija/IsV2J
k6e9FGqHZk2H/EsSuxflpDd0M0XpLAxmcHnNe1qTPoqyCBBmNpwNZDeVE6115FBX
GX3q4mHQLmDJduhQJR0hHBvmUGXfKZoxNznHl/0MYZEosl6lAibwLAxdda1ro6RN
XXbAVc/5b8bIsqL2o1Jj66VJnOCarUQ2KoygQ8kMjVyLcxw9g4qsYsLGKzDXgUUm
5dCIskNPDdJDGCtIPNOyPQemS5BJl3e8QFwo6OP9VgeSPhKnSTqnNlxy2mDtcwOP
gPPWAN4Aya5zZa31NzifbV58GyuDhA==
=gB59
-----END PGP SIGNATURE-----
Aaron Griffin (14):
* Missed a path when requiring that all paths end with / - this caused -U not to
* Sebastian Sareyko
* makepkg.conf.in: Added /usr/share/gtk-doc back into default DOC_DIRS
James Rosten <seinfeld90(a)gmail.com>
Nagy Gabor <ngaba(a)petra.hos.u-szeged.hu>
* Fix pacman -Se which installs depends only, as it was broken
* Fix asking the user to upgrade when using -Sp
Giovanni Scafora <linuxmania(a)gmail.com>
* Quick fixup for the translations due to a typo fix committed earlier.
* -Qo now properly resolves paths when finding an owner
* Correct install scriptlet usage (reuse of handle->root when not needed)
I was mistaken, newpkg->data IS useful here, as the scriptlet isn't in the FS at
Quick pactest changes:
* Added a mirror list for [testing] (it appears most mirrors mirror testing)
Dan McGee (29):
* Resizing terminal while progress bars were displayed caused some weird
* Small updates to my TODO file.
* Fixed up broken translation
* Updated Russian translation
* Updated Hungarian translation
* Missing a 'msg' in makepkg- pointed out by wain on Flyspray. Thanks!
* Added quoting on several makepkg paths that were lacking it.
James Rosten <seinfeld90(a)gmail.com>
* Adding new Turkish mirror as posted on the forums.
* Updated Italian translation
* TODO list updates.
* makepkg: fix installation of dependencies with version comparitors.
* makepkg: Fix behavior of -Ssr: deps were not being correctly removed before.
* makepkg: a few more changes to get dependencies working correctly. If a
* NEWS: add quick line about backup files.
* TODO.dan updates.
* pacman.c: Add CacheDir to -v --verbose output.
* Typo fix.
* Updated Italian translation
* Fix conflict checking to ignore symlinks that were in previous version of
Lots of translation updates before we release.
Roman Kyrylych <roman.kyrylych(a)gmail.com>
* Updated Brazilian Portuguese translation
Clarify some English messages as suggested by Nagy Gabor. I even did the hard
Fixed alpm_log call- too many parameters passed. (bardo on #archlinux-pacman)
* Updated German translation
* Removed three dead mirrors (Dale Blount <dale(a)archlinux.org>).
Andrew Fyfe <andrew(a)neptune-one.net>
* Fix bug where 'makepkg -L' doesn't stop on build failure.
Jürgen Hötzel (1):
* dont use XferCommand if retrieving local files, fixes wget error:
-----------------------------------------------------------------------
hooks/post-receive
--
The official pacman repository
1
0
[pacman-dev] [PATCH] pacman: don't error when a group exists but all packages are ignored
by morganamilo 20 Oct '18
by morganamilo 20 Oct '18
20 Oct '18
Currently when attempting to sync a group where all packages are
ignored (either by ignorepkg, ignoregroup or --needed) pacman
will error with "target not found".
Instead, if a group has no packages, check if the group exists
and only throw an error if it does not.
Signed-off-by: morganamilo <morganamilo(a)gmail.com>
diff --git a/lib/libalpm/alpm.h b/lib/libalpm/alpm.h
index 2d3d198a..316853bb 100644
--- a/lib/libalpm/alpm.h
+++ b/lib/libalpm/alpm.h
@@ -1446,6 +1446,8 @@ int alpm_extract_keyid(alpm_handle_t *handle, const char *identifier,
alpm_list_t *alpm_find_group_pkgs(alpm_list_t *dbs, const char *name);
+int alpm_group_exists(alpm_list_t *dbs, const char *name);
+
/*
* Sync
*/
diff --git a/lib/libalpm/sync.c b/lib/libalpm/sync.c
index 05f58fad..57058782 100644
--- a/lib/libalpm/sync.c
+++ b/lib/libalpm/sync.c
@@ -313,6 +313,26 @@ alpm_list_t SYMEXPORT *alpm_find_group_pkgs(alpm_list_t *dbs,
return pkgs;
}
+/** Check if a group exists across a list of databases.
+ * @param dbs the list of alpm_db_t *
+ * @param name the name of the group
+ * @return 1 if the group exists, 0 if it does not
+ */
+int SYMEXPORT alpm_group_exists(alpm_list_t *dbs,
+ const char *name)
+{
+ alpm_list_t *i;
+ for(i = dbs; i; i = i->next) {
+ alpm_db_t *db = i->data;
+
+ if (alpm_db_get_group(db, name)) {
+ return 1;
+ }
+ }
+
+ return 0;
+}
+
/** Compute the size of the files that will be downloaded to install a
* package.
* @param newpkg the new package to upgrade to
diff --git a/src/pacman/sync.c b/src/pacman/sync.c
index ef8faedf..32df6e04 100644
--- a/src/pacman/sync.c
+++ b/src/pacman/sync.c
@@ -543,6 +543,10 @@ static int process_group(alpm_list_t *dbs, const char *group, int error)
int count = alpm_list_count(pkgs);
if(!count) {
+ if(alpm_group_exists(dbs, group)) {
+ return 0;
+ }
+
pm_printf(ALPM_LOG_ERROR, _("target not found: %s\n"), group);
return 1;
}
--
2.19.1
2
3
Use BytesIO instead of StringIO, and ensure that we unicode-encode data
where needed.
---
* Make sure pactest --review is happy
configure.ac | 2 +-
test/pacman/pactest.py | 5 +++--
test/pacman/pmdb.py | 4 ++--
test/pacman/pmpkg.py | 6 +++---
test/pacman/util.py | 2 +-
5 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/configure.ac b/configure.ac
index a569ffeb..c369ca74 100644
--- a/configure.ac
+++ b/configure.ac
@@ -179,7 +179,7 @@ AC_SUBST(LFS_CFLAGS)
AC_PROG_AWK
AC_PROG_CC_C99
AC_PROG_INSTALL
-AC_CHECK_PROGS([PYTHON], [python2.7 python2 python], [false])
+AC_CHECK_PROGS([PYTHON], [python3 python], [false])
AC_PATH_PROGS([BASH_SHELL], [bash bash4], [false])
# check for perl 5.10.1 (needed by makepkg-template)
diff --git a/test/pacman/pactest.py b/test/pacman/pactest.py
index 1f5b8483..85cce6a1 100755
--- a/test/pacman/pactest.py
+++ b/test/pacman/pactest.py
@@ -1,4 +1,4 @@
-#! /usr/bin/python2
+#! /usr/bin/python3
#
# pactest : run automated testing on the pacman binary
#
@@ -45,7 +45,8 @@ def write(self, message):
# duplicate stdout/stderr to a temporary file
class OutputSaver():
def __init__(self):
- self.save_file = tempfile.NamedTemporaryFile(prefix='pactest-output-')
+ self.save_file = tempfile.NamedTemporaryFile(
+ prefix='pactest-output-', mode='w')
def __enter__(self):
sys.stdout = MultiWriter(sys.stdout, self.save_file)
diff --git a/test/pacman/pmdb.py b/test/pacman/pmdb.py
index f7671987..95aa8756 100644
--- a/test/pacman/pmdb.py
+++ b/test/pacman/pmdb.py
@@ -15,9 +15,9 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+from io import BytesIO
import os
import shutil
-from StringIO import StringIO
import tarfile
import pmpkg
@@ -251,7 +251,7 @@ def generate(self):
filename = os.path.join(pkg.fullname(), name)
info = tarfile.TarInfo(filename)
info.size = len(data)
- tar.addfile(info, StringIO(data))
+ tar.addfile(info, BytesIO(data.encode('utf8')))
tar.close()
# TODO: this is a bit unnecessary considering only one test uses it
serverpath = os.path.join(self.root, util.SYNCREPO, self.treename)
diff --git a/test/pacman/pmpkg.py b/test/pacman/pmpkg.py
index 5a32ccd6..4667ebc1 100644
--- a/test/pacman/pmpkg.py
+++ b/test/pacman/pmpkg.py
@@ -14,8 +14,8 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+from io import BytesIO
import os
-from StringIO import StringIO
import tarfile
import util
@@ -146,7 +146,7 @@ def makepkg(self, path):
for name, data in archive_files:
info = tarfile.TarInfo(name)
info.size = len(data)
- tar.addfile(info, StringIO(data))
+ tar.addfile(info, BytesIO(data.encode('utf8')))
# Generate package file system
for name in self.files:
@@ -167,7 +167,7 @@ def makepkg(self, path):
# TODO wow what a hack, adding a newline to match mkfile?
filedata = name + "\n"
info.size = len(filedata)
- tar.addfile(info, StringIO(filedata))
+ tar.addfile(info, BytesIO(filedata.encode('utf8')))
tar.close()
diff --git a/test/pacman/util.py b/test/pacman/util.py
index 5fbe4c35..544bdd8d 100644
--- a/test/pacman/util.py
+++ b/test/pacman/util.py
@@ -152,7 +152,7 @@ def getmd5sum(filename):
def mkmd5sum(data):
checksum = hashlib.md5()
- checksum.update("%s\n" % data)
+ checksum.update(("%s\n" % data).encode('utf8'))
return checksum.hexdigest()
--
2.19.1
1
0
18 Oct '18
When --needed is used, up to date packages are now filtered out
before showing the group select.
Signed-off-by: morganamilo <morganamilo(a)gmail.com>
---
This patch set is currently incomplete. There is a problem where if every
package in the group is already installed you end up with the eror.
"error: target not found: groupname". Instead "there is nothing to do" should
be produced instead.
I'm unsure of how to solve this so I am submitting this for discussion.
Currently my idea is to have alpm_find_group_pkgs gain a new param `int *exists`
which the front end can then check instead of the length of the return. Or
instead the needed check could just be moved to the front end. Let me know
if theres a better way.
diff --git a/lib/libalpm/sync.c b/lib/libalpm/sync.c
index b6ae7b72..f1c02417 100644
--- a/lib/libalpm/sync.c
+++ b/lib/libalpm/sync.c
@@ -270,6 +270,8 @@ alpm_list_t SYMEXPORT *alpm_find_group_pkgs(alpm_list_t *dbs,
for(i = dbs; i; i = i->next) {
alpm_db_t *db = i->data;
alpm_group_t *grp = alpm_db_get_group(db, name);
+ alpm_handle_t *handle = db->handle;
+ alpm_trans_t *trans = handle->trans;
if(!grp) {
continue;
@@ -277,10 +279,26 @@ alpm_list_t SYMEXPORT *alpm_find_group_pkgs(alpm_list_t *dbs,
for(j = grp->packages; j; j = j->next) {
alpm_pkg_t *pkg = j->data;
+ alpm_pkg_t *local = _alpm_db_get_pkgfromcache(handle->db_local, pkg->name);
if(alpm_pkg_find(ignorelist, pkg->name)) {
continue;
}
+ if(local) {
+ const char *localpkgname = local->name;
+ const char *localpkgver = local->version;
+ int cmp = _alpm_pkg_compare_versions(pkg, local);
+
+ if(cmp == 0) {
+ if(trans != NULL && trans->flags & ALPM_TRANS_FLAG_NEEDED) {
+ /* with the NEEDED flag, packages up to date are not reinstalled */
+ _alpm_log(handle, ALPM_LOG_WARNING, _("%s-%s is up to date -- skipping\n"),
+ localpkgname, localpkgver);
+ ignorelist = alpm_list_add(ignorelist, pkg);
+ continue;
+ }
+ }
+ }
if(alpm_pkg_should_ignore(db->handle, pkg)) {
alpm_question_install_ignorepkg_t question = {
.type = ALPM_QUESTION_INSTALL_IGNOREPKG,
--
2.19.0
3
4