summaryrefslogtreecommitdiff
path: root/lib/libalpm/package.c
Commit message (Collapse)AuthorAge
* * Refactored conflict checking within packages. Profiling from Dan showed anAaron Griffin2007-02-13
| | | | | | | | unbelievable amount of strcmp() calls (25 million) due to the list searching. This has been reimplemented with a set-intersection scheme, due to the fact that file lists are always ordered. - NEEDS TESTING * Minor clean up, "globalized" the str_cmp helper to match the alpm comparison signature, so we can use it elsewhere.
* Removed desc_localized for the time being. We don't have localizedAaron Griffin2007-02-13
| | | | | | descriptions, nor do we actually build them with the newest makepkg. The actual implementation in here seems like it could be done better, and it soaks a large amount of CPU time according to profilers.
* * Package file parsing - fixed size and isize - isize is the "size" variableAaron Griffin2007-02-10
| | | | | | | | | | | | from the PKGINFO, and size is the stat() size of the archive * Removed the useless 'output' param from package.c:parse_descfile * Installation progress - Call progress callback once at 0% for initialization - 'needdisp' was useless - alpm_list_count is called an excessive amount in these nested loops. Now we only call it once per iteration - Use the compressed sizes for PROGRESS calcs as uncompressed (isize) is not exact (it is missing metadata sizes), and thus produces > 100% numbers
* * Fix compile errors/warnings.Dan McGee2007-02-09
| | | | * Update .cvsignore files a bit.
* * I made "alpm_versioncmp" public a while back, without noticing this was ↵Aaron Griffin2007-02-09
| | | | | | already done (alpm_pkg_vercmp). I dropped this change, making versioncmp "private" again. (alpm_versioncmp -> _alpm_versioncmp, hidden symbol) * Make alpm_get_upgrades use the same version check that -Su and -S use.
* Only honor 'force' if versions are NOT identicalAaron Griffin2007-02-07
|
* Cleanup and more debug info for alpm_pkg_compare_versionsAaron Griffin2007-02-07
|
* Cleaning up mistakes. :PDan McGee2007-02-06
|
* Attempt #2 at -S/-Su unification: verify that the 'force' option has been ↵Aaron Griffin2007-02-06
| | | | read before comparing versions
* Copy-pasta errors. 8)Aaron Griffin2007-02-06
|
* Attempt to unify the -S and -Su version comparissons for when a package is newerAaron Griffin2007-02-06
| | | | See FS#5388
* Implemented a crappy version of -Qu (query upgrades). This simply outputs theAaron Griffin2007-02-04
| | | | | | | | packages to be upgraded in a -Su operation. Much of the code is duplicated from sync.c. TODO: move the implementation to upgrades.c, and reimplement the sync_sysupgrade function in terms of this: trans->packages = alpm_get_upgrades();
* * Added archive verification when loading package metadata for -u and -AAaron Griffin2007-02-04
| | | | | | | operations (now aborts on a corrupt archive) * Fixed the pm_fprintf newline error that was plaguing us. It seems a line resetting 'neednl' was removed a while back (by me). This causes all the output errors we've been seeing
* Loading package data from a file was ALWAYS generating the filelist, instead ofAaron Griffin2007-02-01
| | | | | | | using the in-package one. This is now fixed, and an autogenerated one is used as a last resort. This fixes the bug where /.CHANGELOG showed up in -Ql.
* * !strcmp reads funny (as "not string compare" - switch those to == 0, which hasAaron Griffin2007-02-01
| | | | | a positive connotation. * Added a nice TODO
* K. Piche <kevin.piche@cgi.com>Aaron Griffin2007-01-30
| | | | * ALPM_LOG_FUNCTION macro and all the great work to add this macro everywhere
* K. Piche <kpiche@rogers.com>Aaron Griffin2007-01-30
| | | | | | | * gcc visiblity changes Also modified _alpm_versioncmp -> alpm_versioncmp (public function) as per K. Piche's suggestions
* * Shuffled some of the alpm_list free funtions - still not perfect, but betterAaron Griffin2007-01-24
| | | | | | | | | | * Added alpm_list_remove_node for single list node removal * Proper error checking/output for failed db_read/db_write (missing files) * Invalid packages (missing files) are now removed from the package cache * -Qs and -Ss output now look the same * config.rpath causes errors on one machine I had, so I added it to CVS * Fixed a "clobbered memory" issue when installing groups - only the outer list should be free'd, not the contained data
* This mainly deals with code clarity- removing currently unneededAaron Griffin2007-01-24
| | | | | | | | | | optimizations in order to make the code much more readable and type-checkable. Every enum in the library now has it's own type that should be used instead of the generic 'unsigned char'. In addition, several #define statements dealing with constants were converted to enums. Signed-off-by: Dan McGee <dpmcgee@gmail.com>
* * Added a check for .FILELIST for package validity in addition to .PKGINFOAaron Griffin2007-01-22
|
* Moved some decls to make the "pkg_invalid" patch compile again.Aaron Griffin2007-01-19
|
* Whoops. There's a 0 where there should be a 1.Aaron Griffin2007-01-19
|
* Johannes Weiner <hannes@saeurebad.de>Aaron Griffin2007-01-19
| | | | * package cleanup (pkg_invalid) refactoring
* Johannes Weiner <hannes@saeurebad.de>Aaron Griffin2007-01-19
| | | | | * use calloc to zero-out new packages (far more ideal) * use memcpy to copy primatives when copying package structures
* Preliminary checkin for alpm_list conversionAaron Griffin2007-01-19
| | | | | | | | | * renamed pmlist_t -> alpm_list_t * made alpm_list_t a public type (alpm_list.h header) * removed additional storage for registered DBs in pacman source * some code cleanup * removed duplicate (pm)list_display functions from pacman source * misc code cleanup
* Dan McGee <dpmcgee@gmail.com>Aaron Griffin2007-01-18
| | | | | | | | | | | | | | * Removed some unnecessary headers and library links * Made things static if possible * Cleaned up makefiles a bit * Fixed some old comments in the code * Fixed some errors the static code checker splint pointed out * Backwards arguments in a memset call in _alpm_db_read (could have been worse) * Other various small fixes Other: * Default to 80 columns when getcols cannot determine display width * Removal of ._install as a valid install file in packages
* * Completed getinfo api changes (pmmissing_t, pmtrans_t, etc)Aaron Griffin2006-11-22
| | | | | | | | * Modified some dependancy checking * Changed "performing local database upgrade" message to be more clear * Change 'usize' to 'isize' in database files * Scriptlet output is now sent to pacman's log file * Limited some debugging output to be more clear
* * repo-add script - to add entries to a db file directly from package data ↵Aaron Griffin2006-11-20
| | | | | | | | | | (no PKGBUILD) * libalpm api changes - move from a _getinfo(p, WHAT_WE_WANT) scheme to a typesafe _get_what_we_want(p) scheme [not 100% complete yet] * some const correctness changes * removal of PM_* types in alpm.h in favor of the pm*_t types used throughout libalpm
* * Initial changes to gensync - makepkg changes were not checked in from anotherAaron Griffin2006-11-15
| | | | | | machine - still pending * Addition of _alpm_pkg_makefilename to simplify the with/without -ARCH prefix scheme we're going with for the interim
* * has_archname changesAaron Griffin2006-11-14
| | | | | * makepkg attempt at multiple file integrity checks * honor "force" option on -S packages (not just -Su)
* * Numerous mini valgrind fixes.Aaron Griffin2006-11-14
| | | | | | | | | | * Addition of hacky architecture check in the _splitname function * Removal of libfetch from the archlinux proper - it has been renamed to libdownload and can be found at http://phraktured.net/libdownload * Merge of _some_ of the Frugalware makepkg change - this may still be incomplete * Removal of libftp from cvs proper * PKGBUILD manpage now says 'PKGBUILD' instead of FrugalBuild (he he)
* Numerous changes:Aaron Griffin2006-10-31
| | | | | | | | | | | | * Furthered the "lazy caching" to force the pkgcache to read nothing (INFRQ_NONE) by default. Anything requiring package data should now check the infolevel of each package and attempt to update it. This could be ironed out a bit more later (by using the front-end get_info function * Switched to libfetch. Drastic changes to the download code and the callback progress bar functions. Also fixed the return value of _alpm_downloadfiles_forreal. Downloading now supports http, ftp, https, and files urls, along with 'mtime's and numerous other fancy features from libfetch.
* A handful of minor changes:Aaron Griffin2006-10-20
| | | | | | | | * Removed the PMList typedef, in favor of the same naming scheme other structs use 'pmlist_t' * Added a time stamp on debug output, to make it more informational * Moved alpm_db_register to _alpm_db_register, making the public function not take a callback parameter
* Merged frugalware changes (too many to list). Also added some config fileAaron Griffin2006-10-15
| | | | | handling changes (support [sections] to carry over to included files - this helps with backwards compatibility with existing pacman config files)
* removed libtar support in favour of libarchiveJudd Vinet2006-09-28
|
* first stage of i18n stuff from VMiklosJudd Vinet2006-05-15
|
* code cleanupAurelien Foret2006-03-08
|
* all _alpm_XXX_cmp functions are now publicAurelien Foret2006-03-08
|
* code cleanupAurelien Foret2006-03-07
|
* added ERROR logs in case of malloc failures (patch from VMiklos ↵Aurelien Foret2006-03-01
| | | | <vmiklos@frugalware.org>)
* improved _alpm_list_free handlingAurelien Foret2006-02-22
|
* dropped the MALLOC macroAurelien Foret2006-02-20
|
* prepend library function names with _alpm (helped with the patch from ↵Aurelien Foret2006-02-17
| | | | | | VMiklos <vmiklos@frugalware.org>) added log and event callbacks to sync_commit internal transactions
* - db_write: add support to write both local and sync entriesAurelien Foret2006-02-16
| | | | - code cleanup
* more code cleanup yetAurelien Foret2006-01-18
|
* added ALLDEPS transaction flag mainly to handle "makepkg -s"Aurelien Foret2006-01-10
|
* - merged pkg_new and pkg_dummy functionsAurelien Foret2006-01-09
| | | | - renamed _alpm_log_action to _alpm_logaction
* patch from VMiklos - use PACKAGE_VERSION instead of PACMAN_VERSIONJudd Vinet2006-01-02
|
* Fixed some memory leaks (patch from Essien Ita Essien <essiene@datavibe.net>)Aurelien Foret2005-12-28
|
* fixed a file descriptor leakAurelien Foret2005-11-09
|