platform/upstream/rpm.git
13 years agoOops, missing include in previous commit
Panu Matilainen [Tue, 23 Nov 2010 15:42:57 +0000 (17:42 +0200)]
Oops, missing include in previous commit

13 years agoPermit unicode paths in rpm.fd() (RhBug:654145)
Panu Matilainen [Tue, 23 Nov 2010 10:30:38 +0000 (12:30 +0200)]
Permit unicode paths in rpm.fd() (RhBug:654145)
- Python 3 has fs-specific converter function, for Python 2 just
  assume utf-8 and hope the best.

14 years agoAdd bunch of rpmvercmp() algorithm tests to the test-suite
Panu Matilainen [Mon, 22 Nov 2010 09:40:44 +0000 (11:40 +0200)]
Add bunch of rpmvercmp() algorithm tests to the test-suite

14 years agoMove the current "version compare" tests to rpm install tests
Panu Matilainen [Mon, 22 Nov 2010 08:36:54 +0000 (10:36 +0200)]
Move the current "version compare" tests to rpm install tests
- These are more about rpm install/upgrade behavior than pure
  version comparison, although obviously version comparison is involved

14 years agol10n: Updated Ukrainian (uk) translation to 100%
Yuri Chornoivan [Sun, 21 Nov 2010 14:43:11 +0000 (14:43 +0000)]
l10n: Updated Ukrainian (uk) translation to 100%

New status: 746 messages complete with 0 fuzzies and 0 untranslated.

Transmitted-via: Transifex (www.transifex.net).

14 years agol10n: Updated Polish (pl) translation to 100%
Piotr Drąg [Fri, 19 Nov 2010 08:13:59 +0000 (08:13 +0000)]
l10n: Updated Polish (pl) translation to 100%

New status: 746 messages complete with 0 fuzzies and 0 untranslated.

Transmitted-via: Transifex (www.transifex.net).

14 years agoUpdate translations to pick up recent changes
Panu Matilainen [Thu, 18 Nov 2010 11:20:42 +0000 (13:20 +0200)]
Update translations to pick up recent changes

14 years agoOnly force default umask during transaction (RhBug:494440)
Panu Matilainen [Thu, 18 Nov 2010 10:50:55 +0000 (12:50 +0200)]
Only force default umask during transaction (RhBug:494440)
- For rpm itself forging global umask on init is kinda convenient, but can
  be troublesome for API users. This is especially bad in python bindings
  where just importing the rpm module silently changes process umask with
  no good reason.
- Instead of global setting on init, only change the umask to 022 default
  for the duration of rpmtsRun() where it's necessary for consistent
  transaction results on implicitly created directories and files created
  by scriptlets. This way we dont affect callers and provide better
  "protection" for ourselves too - we don't know if API users change
  umask again behind our back if we just set it on initialization.
- To make matters more fun, Lua scripts can change our umask. Save
  and restore umask when running Lua scriptlets.

14 years agoAlways exit rpmtsRun() via rpmtsFinish()
Panu Matilainen [Wed, 17 Nov 2010 14:27:10 +0000 (16:27 +0200)]
Always exit rpmtsRun() via rpmtsFinish()
- Fixes a memory leak from rpmtsSELabelInit()
- Ensures we get out of chroot() on the way out

14 years agoPlug a minor memory leak in librpmbuild doPatch()
Panu Matilainen [Wed, 17 Nov 2010 13:54:38 +0000 (15:54 +0200)]
Plug a minor memory leak in librpmbuild doPatch()

14 years agoRevert rpmquery/rpmverify split, ain't gonna happen this time around
Panu Matilainen [Wed, 17 Nov 2010 13:33:30 +0000 (15:33 +0200)]
Revert rpmquery/rpmverify split, ain't gonna happen this time around
- Dealing with the inevitable fallout and popt-foo needs more time
  to handle, revert to the rpm 4.6-4.8 setup where rpmquery and rpmverify
  are just symlinks to /bin/rpm, allowing especially query aliases
  to work. Releasing an intermediate version where 'rpmquery --requires'
  and the like dont work would do nothing but hurt the future intention
  of splitting these things up for real.
- This effectively reverts commit 26125015e4321765582dce0b76f83530e7604d4e

14 years agoYet another round of enum-as-function-argument elimination
Panu Matilainen [Wed, 17 Nov 2010 06:52:18 +0000 (08:52 +0200)]
Yet another round of enum-as-function-argument elimination
- Pass the yes/no magic argument to headerRead(), headerWrite() and
  headerSizeof() as int instead of enum.

14 years agoAvoid enum as function argument for headerConvert()
Panu Matilainen [Wed, 17 Nov 2010 06:46:21 +0000 (08:46 +0200)]
Avoid enum as function argument for headerConvert()
- While this /nearly/ qualifies for enum, places like python
  argument converting will not be able to produce "true enum" values.
  So dont even try.

14 years agoRemove RPMTAG_FILESTATUS tag extension
Panu Matilainen [Mon, 15 Nov 2010 09:06:44 +0000 (11:06 +0200)]
Remove RPMTAG_FILESTATUS tag extension
- This is a bad "API" for verification, it can't be controlled and
  causes heavy IO where one would not expect it. Getting rid of it now
  before anybody starts relying on it...
- Leaving :fstatus format extension alone however, it's at least harmless
  and produces a more predictable output than :vflags extension so it
  might be actually useful in scripts.

14 years agoRemove no longer relevant references to build from arg sanity checks
Panu Matilainen [Mon, 15 Nov 2010 08:48:33 +0000 (10:48 +0200)]
Remove no longer relevant references to build from arg sanity checks

14 years agoRemove absolute paths from our popt exec aliases now that we can
Panu Matilainen [Mon, 15 Nov 2010 08:21:23 +0000 (10:21 +0200)]
Remove absolute paths from our popt exec aliases now that we can
- poptExecPath() pointing to meaningful place allows removal of these.
- Make test-suite rely on the --initdb exec alias so we catch out
 if anything here breaks

14 years agoMake our popt exec path more useful, permit environment override
Panu Matilainen [Mon, 15 Nov 2010 08:18:49 +0000 (10:18 +0200)]
Make our popt exec path more useful, permit environment override
- In 4.4.x days, we used to have bunch of helper binaries in /usr/lib/rpm
  executed through popt ping-pong, but there's nothing now that we'd
  want to execute through aliases. Instead use bindir for the
  default path, and additionally permit overriding through
  RPM_POPTEXEC_PATH environment variable (mostly probably useful for
  the testsuite)

14 years agoEliminate pointless argument sanity check
Panu Matilainen [Mon, 15 Nov 2010 08:05:18 +0000 (10:05 +0200)]
Eliminate pointless argument sanity check
- --root is valid for all the remaining modes, no point checking for it
- MODES_FOR_DBPATH is completely unused (and dbpath is a common option
  to all anyway)

14 years agoHide obsolete --nomd5 switches from help output
Panu Matilainen [Mon, 15 Nov 2010 07:56:57 +0000 (09:56 +0200)]
Hide obsolete --nomd5 switches from help output
- We dont want new users to pick up using these old switches but
  preserving functionality for backwards compatibility for now

14 years agoBasic protection against Lua os.exit() and posix.exec() (ticket #167)
Panu Matilainen [Mon, 15 Nov 2010 07:36:17 +0000 (09:36 +0200)]
Basic protection against Lua os.exit() and posix.exec() (ticket #167)
- Track posix.fork() and only allow exit() and exec() if the script
  has forked. There are other questionable items in posix extensions
  too but these are the worst offenders.
- Using Lua registry for tracking forked status might be more Lua-way
  option but this'll do for now.

14 years agoRemove unnecessary includes
Panu Matilainen [Mon, 15 Nov 2010 07:17:25 +0000 (09:17 +0200)]
Remove unnecessary includes

14 years agoRearrange new cli utilities' popt tables for nicer output
Panu Matilainen [Mon, 15 Nov 2010 07:07:10 +0000 (09:07 +0200)]
Rearrange new cli utilities' popt tables for nicer output
- Use a separate table for the tool-specific options, include that from
  the "master" option table to get option group summary in --help.

14 years agoOops, rpmspec.c missing from POTFILES.in
Panu Matilainen [Mon, 15 Nov 2010 06:55:56 +0000 (08:55 +0200)]
Oops, rpmspec.c missing from POTFILES.in

14 years agoGet rid of 'rpminstall' binary & manual afterall, flip flop
Panu Matilainen [Fri, 12 Nov 2010 09:59:17 +0000 (11:59 +0200)]
Get rid of 'rpminstall' binary & manual afterall, flip flop
- It's a bad name for something that can also erase packages, leave
  the install/upgrade/erase modes for /bin/rpm instead.

14 years agoRemove superfluous dbiSync() call (refactoring thinko or such)
Panu Matilainen [Thu, 11 Nov 2010 12:33:01 +0000 (14:33 +0200)]
Remove superfluous dbiSync() call (refactoring thinko or such)

14 years agoSwitch fsync off while building indexes
Florian Festi [Wed, 10 Nov 2010 12:59:53 +0000 (13:59 +0100)]
Switch fsync off while building indexes

14 years agoFix index auto creation
Florian Festi [Wed, 10 Nov 2010 12:16:10 +0000 (13:16 +0100)]
Fix index auto creation

14 years agoRename rpm.ii.offsets() to .instances() to match name of mi.instance()
Florian Festi [Tue, 9 Nov 2010 10:59:34 +0000 (11:59 +0100)]
Rename rpm.ii.offsets() to .instances() to match name of mi.instance()

14 years agol10n: Updated Italian (it) translation to 100%
Guido Grazioli [Wed, 10 Nov 2010 15:21:02 +0000 (15:21 +0000)]
l10n: Updated Italian (it) translation to 100%

New status: 741 messages complete with 0 fuzzies and 0 untranslated.

Transmitted-via: Transifex (www.transifex.net).

14 years agoDon't restore db file atime/mtime after rebuild
Panu Matilainen [Wed, 10 Nov 2010 11:44:02 +0000 (13:44 +0200)]
Don't restore db file atime/mtime after rebuild
- The files are regenerated from scratch, involving header record
  numbers moving around, possibly removing broken headers and all.
  Don't pretend nothing changed when some changes almost certainly,
  occurred, various API users rely on rpmdb mtime for determining
  whether the db has changed since they last accessed it.

14 years agoKill broken --rebuilddbpath popt alias
Panu Matilainen [Tue, 9 Nov 2010 13:56:12 +0000 (15:56 +0200)]
Kill broken --rebuilddbpath popt alias
- It's been broken because of a typo for the last ten years and nobody
  noticed, doesn't seem like a particularly useful switch...

14 years agoEliminate silly "I am about to create a directory now" debug logging
Panu Matilainen [Tue, 9 Nov 2010 10:04:06 +0000 (12:04 +0200)]
Eliminate silly "I am about to create a directory now" debug logging

14 years agoSimplify the dbpath shuffle in db rebuilds a bit
Panu Matilainen [Tue, 9 Nov 2010 09:59:17 +0000 (11:59 +0200)]
Simplify the dbpath shuffle in db rebuilds a bit
- We already have the non-prefixed dbpath at hand, use that instead
  of recalculating the path from the prefixed version

14 years agoDont bother NULL'ing local variables on exit
Panu Matilainen [Tue, 9 Nov 2010 09:45:31 +0000 (11:45 +0200)]
Dont bother NULL'ing local variables on exit

14 years agoEliminate pointless (and racy) test for rebuilddb directory existence
Panu Matilainen [Tue, 9 Nov 2010 07:54:31 +0000 (09:54 +0200)]
Eliminate pointless (and racy) test for rebuilddb directory existence
- mkdir() will error out with a reasonable error message of its
  own, no point doing separate, buggy test with access()

14 years agoRemove unused local variable
Florian Festi [Tue, 9 Nov 2010 08:52:33 +0000 (09:52 +0100)]
Remove unused local variable

14 years agoHide --aid and --nosuggest switches for now
Panu Matilainen [Tue, 9 Nov 2010 07:30:47 +0000 (09:30 +0200)]
Hide --aid and --nosuggest switches for now
- These have been no-ops since rpm 4.6, but might resurface one day so
  leaving them around but out of sight...

14 years agoLose useless --fileconflicts cli-switch
Panu Matilainen [Tue, 9 Nov 2010 07:27:55 +0000 (09:27 +0200)]
Lose useless --fileconflicts cli-switch
- We always detect file conflicts (duh!) unless forced, no need for this

14 years agoMove --dbpath into common rpm popt options table
Panu Matilainen [Tue, 9 Nov 2010 07:18:10 +0000 (09:18 +0200)]
Move --dbpath into common rpm popt options table
- This ensures its available in all our executables without adding
  umphteen copies into rpmpopt (after the cli splits, this was missing
  in eg rpmdb executable...)

14 years agoEliminate stillborn code
Panu Matilainen [Tue, 9 Nov 2010 07:02:21 +0000 (09:02 +0200)]
Eliminate stillborn code

14 years agoFix IndexIterator to not open an private dbi that never gets closed
Florian Festi [Fri, 5 Nov 2010 08:27:21 +0000 (09:27 +0100)]
Fix IndexIterator to not open an private dbi that never gets closed

14 years agoConst-correctness: rpmdsRpmlib() doesn't (and must not) modify tblp
Panu Matilainen [Fri, 5 Nov 2010 08:18:41 +0000 (10:18 +0200)]
Const-correctness: rpmdsRpmlib() doesn't (and must not) modify tblp

14 years agoLose the remaining dbapi references in code + configuration
Panu Matilainen [Thu, 4 Nov 2010 13:55:19 +0000 (15:55 +0200)]
Lose the remaining dbapi references in code + configuration
- Changing db_api to db_ver to force breakage on anything using the
  value, db_ver containing the BDB major version just to put something
  in the error messages where the dbapi version used to be.

14 years agoEliminate useless dbapi version to internal openDatabase()
Panu Matilainen [Thu, 4 Nov 2010 13:45:27 +0000 (15:45 +0200)]
Eliminate useless dbapi version to internal openDatabase()

14 years agoEliminate useless dbapi argument to rpmdbRemoveDatabase()
Panu Matilainen [Thu, 4 Nov 2010 13:38:25 +0000 (15:38 +0200)]
Eliminate useless dbapi argument to rpmdbRemoveDatabase()

14 years agoStart eliminating dbapi leftovers
Panu Matilainen [Thu, 4 Nov 2010 13:34:59 +0000 (15:34 +0200)]
Start eliminating dbapi leftovers
- We've only one dbapi and new ones are not around the corner. It
  doesn't get tested and is likely broken at this point anyway,
  better just kill it completely. We'll need a new mechanism
  one day but lets worry about it when the day actually comes.
- Starting with eliminating dbapi arguments to the internal database
  move helper

14 years agoEliminate unused strlen() calls 'n stuff from skipInstallFiles()
Panu Matilainen [Thu, 4 Nov 2010 12:09:33 +0000 (14:09 +0200)]
Eliminate unused strlen() calls 'n stuff from skipInstallFiles()
- These were used by the netsharedpath calculations which used
  to be inline here, but that's now in a function of their own. Also
  move the temporary variables to the scope where they're actually used.

14 years agoRemove nicely misleading #ifndef NOTYET case from skipInstallFiles()
Panu Matilainen [Thu, 4 Nov 2010 11:49:07 +0000 (13:49 +0200)]
Remove nicely misleading #ifndef NOTYET case from skipInstallFiles()
- No point "documenting" with reverse ifdef's what somebody was
  considering to implement eight years ago, as it is directory and
  file iterations can't be mixed as they both mess with fi->j.
- Also eliminate pointless "can't happen" check - this never gets
  called with NULL fi in an element (which is already a cant happen)

14 years agol10n: Updated Ukrainian (uk) translation to 100%
Yuri Chornoivan [Wed, 3 Nov 2010 20:41:24 +0000 (20:41 +0000)]
l10n: Updated Ukrainian (uk) translation to 100%

New status: 741 messages complete with 0 fuzzies and 0 untranslated.

Transmitted-via: Transifex (www.transifex.net).

14 years agoMerge rpmdbIndexIteratorKey and rpmdbIndexIteratorKeySize into rpmdbIndexIteratorNext
Florian Festi [Wed, 3 Nov 2010 09:58:41 +0000 (10:58 +0100)]
Merge rpmdbIndexIteratorKey and rpmdbIndexIteratorKeySize into rpmdbIndexIteratorNext

14 years agoMake ints in IndexIterator API unsigned as the interal types are
Florian Festi [Wed, 3 Nov 2010 09:35:42 +0000 (10:35 +0100)]
Make ints in IndexIterator API unsigned as the interal types are

14 years agoRename rpmdbKeyIterator to rpmdbIndexIterator
Florian Festi [Sun, 24 Oct 2010 17:39:42 +0000 (19:39 +0200)]
Rename rpmdbKeyIterator to rpmdbIndexIterator

14 years agoGive access to the pkg offset and tag num of the index entry the key iterator is...
Florian Festi [Sun, 24 Oct 2010 17:10:35 +0000 (19:10 +0200)]
Give access to the pkg offset and tag num of the index entry the key iterator is pointing to

14 years agoConst-correctness: source is a pointer to fullSource and must not be freed
Panu Matilainen [Sat, 30 Oct 2010 08:37:06 +0000 (11:37 +0300)]
Const-correctness: source is a pointer to fullSource and must not be freed

14 years agoConst-correctness: rpmCharCheck() doesn't modify field, make it const
Panu Matilainen [Fri, 29 Oct 2010 17:30:07 +0000 (20:30 +0300)]
Const-correctness: rpmCharCheck() doesn't modify field, make it const

14 years agoAdd rough-cut man-pages for our new executables
Panu Matilainen [Fri, 29 Oct 2010 12:14:01 +0000 (15:14 +0300)]
Add rough-cut man-pages for our new executables
- Chainsaw relevant information out of rpm.8 and tweak a little bit,
  adding cross-references etc. These will need a lot more love though...

14 years agoMore ancient cruft removal from the repository
Panu Matilainen [Fri, 29 Oct 2010 10:55:22 +0000 (13:55 +0300)]
More ancient cruft removal from the repository

14 years agoLose ancient lclint remnants from the repository
Panu Matilainen [Fri, 29 Oct 2010 07:40:25 +0000 (10:40 +0300)]
Lose ancient lclint remnants from the repository

14 years agoEliminate unused truncStringBuf() function
Panu Matilainen [Fri, 29 Oct 2010 07:21:45 +0000 (10:21 +0300)]
Eliminate unused truncStringBuf() function
- This has been unused at least as far back as rpm 4.4 actually...

14 years agoEliminate unused spectag and speclines goo from spec
Panu Matilainen [Fri, 29 Oct 2010 07:12:53 +0000 (10:12 +0300)]
Eliminate unused spectag and speclines goo from spec
- These were used, back in the day, to implement a hidden --specedit
  switch, which in all its glory did: print a copy of a spec file,
  with group, summary and description looked up from specspo.
  This huge pile of junk was left behind from kicking out the
  useless "feature" in commits 7b95061d3b77d8e6b3c80e856b66f49b393511ba and
  0f991a14209054da7c45c46e96750738fc62874d.

14 years agoelfdeps: Fix version definitions processing
Alexey Gladkov [Wed, 27 Oct 2010 21:11:38 +0000 (01:11 +0400)]
elfdeps: Fix version definitions processing

The elfdeps doesn't parse the whole .gnu.version_d section.
For example:

$ readelf -V /lib/libbz2.so.1 | grep -A3 .gnu.version_d
Version definition section '.gnu.version_d' contains 2 entries:
  Addr: 0x0000000000000884  Offset: 0x000884  Link: 4 (.dynstr)
  000000: Rev: 1  Flags: BASE   Index: 1  Cnt: 1  Name: libbz2.so.1
  0x001c: Rev: 1  Flags: none  Index: 2  Cnt: 1  Name: BZLIB_1.0

Before changes:

$ echo /lib/libbz2.so.1.0.6 | /usr/lib/rpm/elfdeps -P
libbz2.so.1

After changes:

$ echo /lib/libbz2.so.1.0.6 | /usr/lib/rpm/elfdeps -P
libbz2.so.1(BZLIB_1.0)
libbz2.so.1

Signed-off-by: Alexey Gladkov <gladkov.alexey@gmail.com>
14 years agoFix the remaining enum abuse over rpmParseState in librpmbuild
Panu Matilainen [Thu, 28 Oct 2010 09:01:42 +0000 (12:01 +0300)]
Fix the remaining enum abuse over rpmParseState in librpmbuild
- rpmParseState uses might actually qualify for a true enum here
  but changing it would require changing half of librpmbuild and
  many of them mix the parse states, other error codes and whatnot
  in their types... just not worth the trouble, so use an int.

14 years agoNow, make getStringBuf() return const char * for correctness sake
Panu Matilainen [Thu, 28 Oct 2010 08:48:49 +0000 (11:48 +0300)]
Now, make getStringBuf() return const char * for correctness sake

14 years agoparseScript() const pedantry
Panu Matilainen [Thu, 28 Oct 2010 08:47:29 +0000 (11:47 +0300)]
parseScript() const pedantry
- The string from getStringBuf() is not modified, so use a const
  variable for it, and a separate variable for the temporary
  line splitting for triggers

14 years agoUse ARGV_t instead of stringbuf in changelog parsing
Panu Matilainen [Thu, 28 Oct 2010 08:39:28 +0000 (11:39 +0300)]
Use ARGV_t instead of stringbuf in changelog parsing
- addChangelog() is a bad boy and modifies the string it grabs
  from getStringBuf(), be clean about it and grab a copy through
  argvJoin() instead
- addChangelog() would be better off walking and parsing over the
  argv directly instead of a joined string of it all, but leaving
  that exercise for some other rainy day

14 years agoUse ARGV_t for temporary line storage directly
Panu Matilainen [Thu, 28 Oct 2010 08:01:39 +0000 (11:01 +0300)]
Use ARGV_t for temporary line storage directly
- Similar to commit 1e3db59b568b1ff7f7e1f3285fc9b18567f2f2d6,
  no point using temporary string buffer when only end up splitting
  it into an argv for processing. Incidently this would've been
  a much less intrusive fix to RhBug:573339 than introducing
  a whole new argvSplitString() function... oh well. Take care not
  to introduce extra newlines in the process as argvSplitString() was
  eating them before - need to use appendStringBuf() for spec->prep now.

14 years agoPass the script to doScript() as const char *
Panu Matilainen [Thu, 28 Oct 2010 07:51:00 +0000 (10:51 +0300)]
Pass the script to doScript() as const char *
- doScript() doesn't do anything special with the script buffer,
  this lets us use const for the argument.

14 years agoArgument passing hysteria in doScript()
Panu Matilainen [Thu, 28 Oct 2010 07:45:35 +0000 (10:45 +0300)]
Argument passing hysteria in doScript()
- Callers know perfectly well which part they're passing to doScript()
  so they can just as well pass in the name and the scriptlet to run,
  avoiding silly stuff in the switch-case

14 years agoHandle NULL sb in getStringBuf() cleanly
Panu Matilainen [Thu, 28 Oct 2010 07:38:40 +0000 (10:38 +0300)]
Handle NULL sb in getStringBuf() cleanly

14 years agoUse ARGV_t for package fileFile, fileList and policyList
Panu Matilainen [Thu, 28 Oct 2010 07:24:20 +0000 (10:24 +0300)]
Use ARGV_t for package fileFile, fileList and policyList
- Similar to commit 1e3db59b568b1ff7f7e1f3285fc9b18567f2f2d6,
  all these end up being passed to argvSplit() to process them line
  by line in the end, collect them in the argv to start with saving
  a whole lotta huffing and puffing in the process

14 years agoEliminate splitString() leftover braindamage in processSourceFiles()
Panu Matilainen [Thu, 28 Oct 2010 06:54:53 +0000 (09:54 +0300)]
Eliminate splitString() leftover braindamage in processSourceFiles()
- Collect the filenames directly into the ARGV_t files instead of
  putting them to a StringBuf first and then argvSplit()'ing the
  result, doh. Leftover stupidity from eliminating splitString()
  usage in commit 94ff22b129aeb31c38848231e40f87aa4a5613a1

14 years agoBury stripTrailingChar() inside the only remaining user
Panu Matilainen [Tue, 26 Oct 2010 20:39:14 +0000 (23:39 +0300)]
Bury stripTrailingChar() inside the only remaining user
- There used to be some other callers too but seems they've passed
  away, leaving just the relocation code in rpmte.c. Which  means we
  can get this ugly bit out of the API.

14 years agoBury StringBuf inside librpmbuild internals
Panu Matilainen [Tue, 26 Oct 2010 20:36:46 +0000 (23:36 +0300)]
Bury StringBuf inside librpmbuild internals

14 years agoMake rpmfcExec() internal
Panu Matilainen [Tue, 26 Oct 2010 20:28:39 +0000 (23:28 +0300)]
Make rpmfcExec() internal
- Nobody in their right mind is likely to be calling what's really
  an internal helper function in the build code. Simply missed in
  the first round of librpmbuild API butchery.
- This eliminates the last remaining exposure of StringBuf in the API

14 years agoEliminate the sole StringBuf user in librpm side
Panu Matilainen [Tue, 26 Oct 2010 20:20:58 +0000 (23:20 +0300)]
Eliminate the sole StringBuf user in librpm side
- Using ARGV_t here might not be exactly optimal but then manifest
  parsing isn't exactly performance critical either.

14 years agoFix BDB version check in configure to work with >= 5 too
Panu Matilainen [Tue, 26 Oct 2010 08:29:17 +0000 (11:29 +0300)]
Fix BDB version check in configure to work with >= 5 too

14 years agoSeparate match iterator allocation vs initialization
Panu Matilainen [Tue, 26 Oct 2010 06:54:55 +0000 (09:54 +0300)]
Separate match iterator allocation vs initialization
- There's exactly one spot within rpm which needs the former behavior
  of rpmdbInitIterator() on a secondary index with keyp of NULL:
  rpmFindBaseNamesInDB(): it wants an empty iterator on RPMDBI_BASENAMES,
  which is then extended as it progresses. Starting with commit
  c70e076e088589f65160c05ee7cc8db0b3db6d7e, rpmdbInitIterator()
  however returns the actual index in that case, which is not
  optimal for rpmFindBaseNamesInDB(). Handle the basenames in db
  as the special case it is, and have it explicitly create an
  empty iterator with the new call.

14 years agoCreate less draconian loops for grouped collections
Panu Matilainen [Mon, 25 Oct 2010 12:03:56 +0000 (15:03 +0300)]
Create less draconian loops for grouped collections
- Instead of creating a completely unresolvable tangle of pre-requisites
  between all collection members and their requirements, just add
  a single relation loop of all the packages in a (grouped) collection,
  effectively turning it into a strongly connected component. The
  loop-cutting algorithm has slightly better chances of surviving this
  while still enforcing the collection members to be installed in one
  lump. Also only process each collection just once.

14 years agoOnly specific cases of collections need extra ordering
Panu Matilainen [Mon, 25 Oct 2010 09:44:34 +0000 (12:44 +0300)]
Only specific cases of collections need extra ordering
- Add a crude flags system to allow selectively enabling the extra
  grouping during ordering: currently only sepolicy collection needs
  this, and its very harmful when applied to more regular collections
  as it creates truly gigantic dependency loops that rpm has no chance
  of sorting out sanely.

14 years agol10n: Updated Polish (pl) translation to 100%
Piotr Drąg [Sat, 23 Oct 2010 10:07:31 +0000 (10:07 +0000)]
l10n: Updated Polish (pl) translation to 100%

New status: 741 messages complete with 0 fuzzies and 0 untranslated.

Transmitted-via: Transifex (www.transifex.net).

14 years agoEek.. librpmsign sources went missing in the move
Panu Matilainen [Fri, 22 Oct 2010 15:28:08 +0000 (18:28 +0300)]
Eek.. librpmsign sources went missing in the move
- Re-adding the files that should've gotten moved (not removed) in
  commit 9f2c1bd9096cbf382c864737a6565e5487767ce2
- Mild wtf ... probably user (not git) error though. Too bad the
  broken state got pushed already :-/

14 years agoBah, couple of missed places for librpmsign moving
Panu Matilainen [Fri, 22 Oct 2010 12:51:36 +0000 (15:51 +0300)]
Bah, couple of missed places for librpmsign moving

14 years agoTeach python about the new RPMDBI_* tags
Panu Matilainen [Fri, 22 Oct 2010 12:45:58 +0000 (15:45 +0300)]
Teach python about the new RPMDBI_* tags

14 years agoUpdate translations to pick recent changes + files moving about
Panu Matilainen [Fri, 22 Oct 2010 12:02:14 +0000 (15:02 +0300)]
Update translations to pick recent changes + files moving about

14 years agoMove librpmsign to its own subdirectory in the sources
Panu Matilainen [Fri, 22 Oct 2010 12:00:49 +0000 (15:00 +0300)]
Move librpmsign to its own subdirectory in the sources

14 years agoBrute-force s/rpmTag/rpmTagVal/ in entire librpmbuild
Panu Matilainen [Fri, 22 Oct 2010 10:46:14 +0000 (13:46 +0300)]
Brute-force s/rpmTag/rpmTagVal/ in entire librpmbuild
- Many of these cases would be true enums from preambleList & similar,
  except for the list terminating sentinel. Just switch all the
  remaining rpmTag's to rpmTagVals to bring our enum-whacking to
  a grande finale.

14 years agoFix invalid uses of rpmTag/rpmSigTag in pack.c
Panu Matilainen [Fri, 22 Oct 2010 10:31:34 +0000 (13:31 +0300)]
Fix invalid uses of rpmTag/rpmSigTag in pack.c

14 years agoReplace remaing rpmSigTag uses with rpmTagVal
Panu Matilainen [Fri, 22 Oct 2010 10:23:09 +0000 (13:23 +0300)]
Replace remaing rpmSigTag uses with rpmTagVal
- Some of these might actually be "correct" but about one case from
  librpmbuild cascades down here ... just not worth the trouble to
  keep the as rpmSigTags.

14 years agoUse header datatype for hash algo instead of pgpHashAlgo enum
Panu Matilainen [Fri, 22 Oct 2010 09:59:53 +0000 (12:59 +0300)]
Use header datatype for hash algo instead of pgpHashAlgo enum
- The digest algo can come from macro numeric expansion which is
  not an enum. Just use uint32_t which is how it'll end up in the header

14 years agoEliminate pgpHashAlgo uses in librpm side
Panu Matilainen [Fri, 22 Oct 2010 09:58:09 +0000 (12:58 +0300)]
Eliminate pgpHashAlgo uses in librpm side
- In all these cases the value comes from a non-enum source so
  just use an int instead

14 years agoFix (ie eliminate) rpmSigTag uses in rpmchecksig
Panu Matilainen [Fri, 22 Oct 2010 09:39:04 +0000 (12:39 +0300)]
Fix (ie eliminate) rpmSigTag uses in rpmchecksig
- The sigtags originating from headers are not enums but integers
- 0 is not a valid rpmSigTag value while the other cases would be in
  bestSig() and friends

14 years agoMeh, one missed rpmTag -> rpmTagVal change in query
Panu Matilainen [Fri, 22 Oct 2010 09:35:56 +0000 (12:35 +0300)]
Meh, one missed rpmTag -> rpmTagVal change in query
- While the initial assignment is to true rpmTag, rpmTagGetValue()
  returns rpmTagVal, not rpmTag.

14 years agoCouple of enum craziness fixes to package.c
Panu Matilainen [Fri, 22 Oct 2010 09:31:08 +0000 (12:31 +0300)]
Couple of enum craziness fixes to package.c
- 0 is not a valid rpmSigTag, just use rpmTagVal instead
- use int instead of pgpHashAlgo for temporary variables, the
  originating data is not "pure" enum

14 years agoEliminate use of pgpHashAlgo in rpmio interface arguments
Panu Matilainen [Fri, 22 Oct 2010 09:22:44 +0000 (12:22 +0300)]
Eliminate use of pgpHashAlgo in rpmio interface arguments
- While its use would seem kinda obvious here, in rpm context this
  information often comes from header tags which are plain integers
  and would require conversion/casting to the enum. What matters is
  the integral value, not it being actual enum.

14 years agoCouple of previously missed type changes in rpmdb code
Panu Matilainen [Fri, 22 Oct 2010 09:13:49 +0000 (12:13 +0300)]
Couple of previously missed type changes in rpmdb code

14 years agoSwitch lowelevel header internals to use rpm_tagtype_t for tag type data
Panu Matilainen [Fri, 22 Oct 2010 09:07:57 +0000 (12:07 +0300)]
Switch lowelevel header internals to use rpm_tagtype_t for tag type data

14 years agoSwitch python bindings to use rpm(Dbi)TagVal as appropriate
Panu Matilainen [Fri, 22 Oct 2010 08:57:38 +0000 (11:57 +0300)]
Switch python bindings to use rpm(Dbi)TagVal as appropriate
- None of these are true enum uses as the value typically originates
  from python integers etc.

14 years agoChange all internal uses of rpmtsInitIterator() to use DBI tags
Panu Matilainen [Fri, 22 Oct 2010 08:49:52 +0000 (11:49 +0300)]
Change all internal uses of rpmtsInitIterator() to use DBI tags

14 years agoSwitch lone rpmTag use in query to rpmTagVal
Panu Matilainen [Fri, 22 Oct 2010 08:43:10 +0000 (11:43 +0300)]
Switch lone rpmTag use in query to rpmTagVal

14 years agoSwitch psm and rpmscript to use rpmTagVal where appropriate
Panu Matilainen [Fri, 22 Oct 2010 08:39:53 +0000 (11:39 +0300)]
Switch psm and rpmscript to use rpmTagVal where appropriate
- There are a few true rpmTag uses though, leaving them as they are...