1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-11-10 03:25:01 -05:00
Commit Graph

2018 Commits

Author SHA1 Message Date
Chantry Xavier
3fe43ffa04 Duplicate the result of archive_entry_pathname.
After the libarchive upgrade from 2.4.12 to 2.4.14, our usage of
archive_entry_pathname became dangerous. We were using the result of that
function even after calls to archive_entry_set_pathname.
With 2.4.14, the entryname becomes wrong after these calls, and so all the
future use of entryname are bogus. entryname is used quite a lot for
logging, so that's not so bad. But it's also used for the backup handling,
so that's not very cool. For example, reinstalling a package with backup
entries will erase all the md5 entries from the DB, because they won't be
found back.

entryname is now a static string so that we can easily keep the result of
archive_entry_pathname.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
[Dan: fixed version numbers in commit message]
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-28 18:32:04 -05:00
Nagy Gabor
562442633a Use pkgcache instead of db_scan in remove.c
This should be a notable speed-up (apart from kernel cache).

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-28 17:53:04 -05:00
Dan McGee
1086950c82 memleak fix: ensure backup fname isn't lost if unused
The _alpm_backup_split function always alloced memory for the fname, and we
let it disappear in a specific case (upgrade026.py). Fix the issue.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-23 16:55:52 -05:00
Dan McGee
7995a25d0e strsplit(): memleak fix
We dup-ed the string but then duped it again. Fix it.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-23 16:55:03 -05:00
Chantry Xavier
7d451b6e6b PKGBUILD.vim: add keepend keyword for sha1/md5 fields
in PKGBUILD.proto, we have the following line
md5sums=() #generate with 'makepkg -g'

if we add a md5sum inside quotes, or even just the quotes :
md5sums=('') #generate with 'makepkg -g'
the highlighting will be totally messed up.

Adding the keepend keyword fixes this.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-22 11:08:23 -05:00
甘露(Lu.Gan)
d07001f3ab Updates to Simplified Chinese translation
A little fine tuning, delete some unnecessary space before or after
English word.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-22 11:07:14 -05:00
Nagy Gabor
1f30845e41 Show options in pacman.conf (commented out)
Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
2008-03-10 19:39:48 -05:00
甘露(Lu.Gan)
6e4b020654 po/zh_CN.po: Chinese Simplified translation update
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-10 19:13:13 -05:00
Chantry Xavier
6820be9ba1 PKGBUILD.vim: improve invalid arch/license detection.
If we had :
arch=(fake)
The fake string would be highlighted because it's invalid.
But if we had :
arch=('fake')
it didn't work.

Fix this for both arch and license arrays.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-03-10 19:12:20 -05:00
Chantry Xavier
804ab37ea6 Clarify the NoUpgrade and NoExtract behavior.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-03-10 19:11:38 -05:00
Chantry Xavier
51e0303e84 Use sigaction instead of signal.
From signal man page :
"The behavior of signal() varies across Unix versions, and has also varied
historically across different versions of Linux. Avoid its use: use
sigaction(2) instead. See Portability below."

The code was taken from there :
http://www.gnu.org/software/libtool/manual/libc/Sigaction-Function-Example.html

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-09 11:35:01 -05:00
Chantry Xavier
2f9f48eddd src/pacman/pacman.c : split cleanup function.
This function was used in two different ways :
- as a signal handler : the argument was the signal number
- called manually for freeing the resources : the argument was the return
  value
So the first part is now handler(int), and the second cleanup(int).
Ref: http://www.archlinux.org/pipermail/pacman-dev/2008-March/011388.html

Remaining problems :
- the return values are messy. for example, 2 can mean both that it was
  interrupted (SIGINT == 2), or that --help or -V was used (returned by
  parseargs).
- apparently signal is not portable and sigaction should be used instead

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-03-09 11:30:59 -05:00
Nagy Gabor
1dfcf1495b Remove a bogus comment from libalpm/remove.c
We do the opposite.

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
2008-03-09 11:30:01 -05:00
Chantry Xavier
724ed34ac5 rename vimproject to vimprojects and update it.
There is no need to put the list of files in there, which will get outdated
sooner or later. It's possible to generate the filelist in the plugin itself
using \r.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
[Dan: add scripts/ directory]
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-08 21:00:56 -06:00
Sergey Tereschenko
69eb0c8014 Updates to Russian translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-08 10:40:04 -06:00
Dan McGee
5a48771126 Updates before 3.1.3 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-06 20:47:00 -06:00
Nagy Gabor
54af52f87d New alpm_version function
Now pacman frontend uses this function instead of the compile-time libalpm
version number.

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
[Dan: fix one more spot where LIB_VERSION was used]
Signed-off-by: Dan McGee <dan@archlinux.org>
(cherry picked from commit 49197b7492)
2008-03-06 19:05:14 -06:00
Vojtěch Gondžala
7c3f6feb41 Update Czech translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-04 23:05:43 -06:00
Chantry Xavier
6ad4ba272d Update TRANSLATORS file.
* Vojtěch has a new email address
* New pt_BR translator needed :
http://www.archlinux.org/pipermail/pacman-dev/2008-March/011313.html

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-03-04 23:02:27 -06:00
Nagy Gabor
4a0498bd29 Remove a bogus comment
This comment was created for the old provision version format and needless.

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-04 06:40:32 -06:00
Dan McGee
190d17c0e8 Kill all of the line numbers from the translations
Hopefully the last of the huge commits ever. This also adds the c-format tag
to all of the translated messages.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-03 20:14:37 -06:00
Chantry Xavier
8725dce294 Disable the line number in .po files.
Add the --no-location xgettext option to disable the line numbers. They are
not very useful, and generate a huge number of pointless line changes on
every update.

Ref: http://www.archlinux.org/pipermail/pacman-dev/2008-March/011332.html

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-03-03 19:59:36 -06:00
Chantry Xavier
1bbc00cd9d Update manually the only newline change for 3.1.3.
We only had one string change, and just a newline, so we can actually make
this update in its own commit rather than updating pacman.pot and making a
huge number of line changes, and then letting every translator do this
newline fix separately.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-03 19:59:35 -06:00
Dan McGee
8a24ad3754 Convert Hungarian translation translation to UTF-8
The issue was discussed in this thread on the mailing list:
http://archlinux.org/pipermail/pacman-dev/2008-March/011324.html

In addition, the GNU gettext manual states that translation encoding is
completely separate from the encoding used by the users of the translation.
It makes sense for our project to use UTF-8 for all translations, regardless
of the preferred encoding used by users of a certain language. This allows
all contributors to more easily edit a translation file if necessary and not
have to worry about codepage issues.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-03 19:59:25 -06:00
Matthias Gorissen
816b080579 Small update to German translation
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-03 19:41:18 -06:00
Chantry Xavier
4c465ef0ad contrib/PKGBUILD.vim: add optdepends + other fixes
* Add optdepends keyword

* license, backup and arch keywords should be arrays

* Remove the little hack to color conflicts/provides/replaces keyword even
  without =(). These should be arrays too.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-03-02 11:40:07 +01:00
Dan McGee
11bdab171e NEWS updates for 3.1.3
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-01 16:41:31 -06:00
Nagy Gabor
17eca54b32 testpkg rework
* mainly code cosmetics (indent fixes)
* remove debug message "spam"
* print also user friendly result

Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
[Dan: a few more whitespace/linebreak cleanups added]
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-01 16:32:06 -06:00
Nagy Gabor
aecc2fd190 Set a missing pm_errno in _alpm_pkg_load()
Signed-off-by: Nagy Gabor <ngaba@bibl.u-szeged.hu>
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-03-01 15:57:59 -06:00
Dan McGee
7613f2e21a contrib: add 'groups' keyword to PKGBUILD.vim
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-28 22:10:28 -06:00
Dan McGee
d49f42ba75 Remove small remnant of old force=y option
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-27 13:14:05 -06:00
Dan McGee
8efe0ecb25 Bump pacman version to a devel release and next version number
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-25 20:35:25 -06:00
甘露(Lu.Gan)
7a9d444de8 Update simplified chinese (zh_CN) translation.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-25 20:31:23 -06:00
Chantry Xavier
66591e8284 fix two broken translated strings.
Using c-format on every strings allowed me two found two broken ones.
One was harmless, but the other caused a segfault, as reported in FS#9658.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-25 20:26:04 -06:00
Chantry Xavier
7eaad2f2a9 xgettext : change pass-c-format flag to c-format.
Currently xgettext apparently attempts to autodetect c format strings (eg a
string with a %s) to decide whether to use c-format flag or not.

If we use --flag=_:1:c-format instead of --flag=_:1:pass-c-format, the
c-format will be applied everywhere.
I couldn't find this documented anywhere though. But the pass prefix is
mentioned here :
http://www.gnu.org/software/gettext/manual/html_node/xgettext-Invocation.html#xgettext-Invocation
"Specifies additional flags for strings occurring as part of the argth
argument of the function word. The possible flags are the possible format
string indicators, such as ‘c-format’, and their negations, such as
‘no-c-format’, possibly prefixed with ‘pass-’."

And c-format is documented there :
http://www.gnu.org/software/gettext/manual/html_node/c_002dformat-Flag.html#c_002dformat-Flag
"This situation happens quite often. The printf function is often called
with strings which do not contain a format specifier. Of course one would
normally use fputs but it does happen. In this case xgettext does not
recognize this as a format string but what happens if the translation
introduces a valid format specifier? The printf function will try to access
one of the parameters but none exists because the original code does not
pass any parameters."

And that's exactly what happened with FS#9658.
So using c-format for every string will prevent this issue from happening
again.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-25 20:25:57 -06:00
Chantry Xavier
c23ecc6160 Remove done and failed msg when loading targets.
This change is similar to the one made in
3017b71cb5.

We had a "loading package data..." message, followed by either "failed" or
"done", but it didn't take into account that other warnings / questions
could be displayed between.

Ref: http://archlinux.org/pipermail/pacman-dev/2008-January/010971.html

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-25 12:10:34 +01:00
Chantry Xavier
d5857ee15b libalpm/sync.c : fix poorly worded debug message.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-25 00:30:21 +01:00
Chantry Xavier
271ecb8bfc Update TRANSLATORS file.
The header of that file already stated that only current translators were
listed in that file. So there is no need to mark the current translators
with a star, I just removed the old ones instead (all history of that file
is kept in git anyway).

Current translators = all translators who contributed to 3.1.x translations.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-25 00:24:01 +01:00
Dan McGee
96f7613d15 Add some NULL checks into recently modified output functions
After a merge with master where some strings we print (such as descriptions)
could be NULL, a few segfaults popped up due to strlen() calls on null
pointers. Fix this by doing some preemptive checks and returning from
functions early if the string was null.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-24 01:17:17 -06:00
Sergey Tereschenko
105e01c8ef Update Russian translation
Some corrections from the previous translation.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-24 00:44:35 -06:00
Dan McGee
4c14dcc580 A few more wide character output fixes
Fix up the indentprint and list printing functions so they work properly.
This output can be seen in places such as -Ss, -Si, -Qs, and -Qi.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-22 23:47:03 -06:00
Dan McGee
a6470956bc Fix wide character output for add/remove/upgrade/conflict progress
Due to the addition of the Chinese translation, our column widths were all
messed up as mentioned in the download progress commit fixing this same
problem there. This is a port of the code and ideas from that fix to the
installation progress bars. Once again, a handful of examples were tested to
ensure we work in all locales and with varying byte and char widths.

English (before & after):
(1/1) checking for file conflicts                   [-----------------] 100%
(1/1) upgrading man-pages                           [-----------------] 100%

German (before & after):
(1/1) Prüfe auf Dateikonflikte                      [-----------------] 100%
(1/1) Aktualisiere man-pages                        [-----------------] 100%

Chinese (before):
(1/1) 正在检查文件冲突                                      [-----------------] 100%
(1/1) 生在升级 man-pages                                [c  o  o  o  o  o ] (1/1) 生在升级 man-pages                                [----------C o  o ] (1/1) 生在升级 man-pages                                [-----------------] 100%

Chinese (after):
(1/1) 正在检查文件冲突                              [-----------------] 100%
(1/1) 生在升级 man-pages                            [-----------------] 100%

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-22 22:00:15 -06:00
Dan McGee
29f55fb7c9 Fix wide character output for download progress
Now that we have a Chinese translation, all of the problems with new
character sets crop up. Assumptions were made in the past that all
characters occupied one column, which is not true with a Chinese character
set. In addition, the download code even failed on such things as 'ö', which
is two bytes wide but only 1 column.

This code will need to also be ported to the add/remove/upgrade/conflicts
progress printouts.

Note that the tests below try to incorporate a number of things:
1. download filenames too long to fit
2. download filenames cut off in the middle of a multibyte sequence
3. download filenames incorporating multicolumn chars
4. download filenames incorporating multibyte, single-column chars
5. 'plain' download filenames that have always worked

Before:
:: 正在同步软件包数据库……
 正在解决倚赖��...    0.0K  199.8K/s 00:00:00 [-----------------] 100%
错误:无法升级正在解决倚赖关系junköëjunköëjunköëäää (未预计的系统错误)
 正在解决倚赖��...    0.0K  308.4K/s 00:00:00 [-----------------] 100%
错误:无法升级正在解决倚赖关系 (未预计的系统错误)
 junköëä                 0.0K  390.6K/s 00:00:00 [-----------------] 100%
错误:无法升级junköëä (未预计的系统错误)
 pacman-git                 0.5K    4.3M/s 00:00:00 [-----------------] 100%
本地数据库已是最新的

After:
:: 正在同步软件包数据库……
 正在解决倚赖关系jun...     0.0K   89.7K/s 00:00:00 [-----------------] 100%
错误:无法升级正在解决倚赖关系junköëjunköëjunköëäää (未预计的系统错误)
 正在解决倚赖关系           0.0K  147.7K/s 00:00:00 [-----------------] 100%
错误:无法升级正在解决倚赖关系 (未预计的系统错误)
 junköëä                    0.0K  156.9K/s 00:00:00 [-----------------] 100%
错误:无法升级junköëä (未预计的系统错误)
 pacman-git                 0.5K 1515.9K/s 00:00:00 [-----------------] 100%
本地数据库已是最新的

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-22 21:59:11 -06:00
甘露(Lu.Gan)
731a774319 Add new Simplified Chinese translation
Thanks a lot! Now we get to fix the breakage this causes in output messages.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-22 08:24:08 -06:00
Dan McGee
8ded60326a Updates before 3.1.2 release
Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-20 19:02:51 -06:00
Mark Constable
420c8846b9 Fix two missing BUILDSCRIPT variables in makepkg.
Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-20 18:50:56 -06:00
Chantry Xavier
7879e4bef7 Lock the database on -Sc operation.
This partly fixes FS#9609.

Weird things could happen when running -Sc while another instance was
already running. The cleancache function could delete packages that were
just being downloaded.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-19 22:08:06 -06:00
Chantry Xavier
6f3949e3da Add new sync_trans_init and sync_trans_release.
Factorize these two functions to avoid code duplication, especially since
they could be used for locking the database during -Sc and -Sy operation
too.

Signed-off-by: Chantry Xavier <shiningxc@gmail.com>
2008-02-19 22:07:44 -06:00
Fernando Lagos
2b3a85dc4a More small updates to Spanish translation
Signed-off-by: Giovanni Scafora <linuxmania@gmail.com>
2008-02-19 22:05:37 -06:00
Dan McGee
fc9d12bef0 When cleaning DBs, only look at directories
FS#9609 brought up an interesting issue where a user was prompted to remove
db.lck when running a -Sc operation concurrently with an -Syu operation
during a long download. Although there are other problems here, this fixes
the issue where files other than directories could be considered to be
databases. Fix this.

Signed-off-by: Dan McGee <dan@archlinux.org>
2008-02-19 08:47:05 -06:00