summaryrefslogtreecommitdiff
path: root/src/pacman/query.c
Commit message (Collapse)AuthorAge
* Clean up pacman/sync.c and organize it a bitDan McGee2007-06-13
| | | | | | | | Re-add some checks for a valid target list. In addition, move variable declarations to the most local scope possible, which should help in finding errors that were previously uncaught. Signed-off-by: Dan McGee <dan@archlinux.org>
* Functionalize query.c and pacman_queryDan McGee2007-06-12
| | | | | | | | | | | | Move a lot of the operations that pacman query performs into their own functions for ease of following the flow and for possible later merges with their sync counterparts. We need to think less in terms of operations and more in term of overall concepts. Also (re)introduced checks for the target list on a -Q operation, ensuring that we only call certain query operations when it is sane to do so. Signed-off-by: Dan McGee <dan@archlinux.org>
* Implement a -Qt operation in frontend to test the databaseDan McGee2007-06-09
| | | | | | | | After adding a alpm_db_check() operation in the back end, we can call it in the front end and present a user-friendly interface to it. Inspired-by: VMiklos <vmiklos@frugalware.org> Signed-off-by: Dan McGee <dan@archlinux.org>
* Const correctness!Dan McGee2007-06-05
| | | | | | | | | Add some 'const' keywords all over the code to make it a bit more strict on what you can and can't do with data. This is especially important when we return pointers to the pacman frontend- ideally this would always be untouchable data. Signed-off-by: Dan McGee <dan@archlinux.org>
* Merge branch 'alpm.c_cleanup' into frontend_configDan McGee2007-06-04
|\ | | | | | | | | | | Conflicts: lib/libalpm/alpm.c
| * Move functions out of alpm.c to where they belongDan McGee2007-06-04
| | | | | | | | | | | | | | | | alpm.h is the only "publically viewable" file, so there is no reason to have functions in alpm.c that belong in package.c, db.c, etc. Move the functions where they belong and leave only the library init functions in alpm.c. Signed-off-by: Dan McGee <dan@archlinux.org>
* | Rip alpm_parse_config out of libalpmDan McGee2007-06-04
|/ | | | | | | | | | Switch over to the new frontend parseconfig. * Fix a few issues in parseconfig * Remove unused callback upon database registration * Remove conf file related errors from error.c/alpm.h Signed-off-by: Dan McGee <dan@archlinux.org>
* Move parts of pacman_query into subfunctions (query_search, query_group, ↵Chantry Xavier2007-06-02
| | | | | | | | | | | query_isfile) Clean up pacman_query so functionality is actually in functions, similar to how sync.c is organized. After doing this, it is easy to see similarity in the code between sync.c and query.c, so we should be able to consolidate some of this. Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* Change -z|--showsize flag to ShowSize pacman.conf optionNathan Jones2007-06-01
| | | | | | | Also cleaned up some duplicate printf lines related to the ShowSize option. Signed-off-by: Nathan Jones <nathanj@insightbb.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* Move DB and cache dirs away from there dependence on ROOTDIRDan McGee2007-05-31
| | | | | | | | | | | | | | | | | | | This change allows us to use all autoconf specified paths, most notably $(localstatedir). It is quite a change and touches a lot of files, as all references to the DB and cache were done with the ROOTDIR as a prefix. * add --lock command-line option to pacman to specify the location of the lockfile (this can now be specified at configure time by setting the $localstatedir path). * Rip quite a few settings out of configure.ac as they are now picked by setting the paths during configure or make. * Fix bug with /tmp fallback for sync downloads not working correctly (related to root location, now the system tmp dir is used). * Simplified the parameters to some libalpm functions, and added get/set for the new lockfile option. * Renamed several of the DEFS to names without the PM_ prefix. Signed-off-by: Dan McGee <dan@archlinux.org>
* Set an error exit status on -Qi or -Si failureDan McGee2007-05-31
| | | | | | | Regression from 2.9.8 where a failed -Qi lookup did not return an error on exit. The exit status is now incremented for each error encountered. Signed-off-by: Dan McGee <dan@archlinux.org>
* Add -Qee option for the original behavior of -QeChantry Xavier2007-05-20
| | | | | | | | | | | -Qee now lists "orphans" the way pacman used to - that is, -Qe lists packages required by nothing that were installed as a dependency, but -Qee lists all packages not required by something else. Also, I snuck in a compile fix for my real_path cleanup earlier, heh Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Fix broken resolve_path functionAaron Griffin2007-05-18
| | | | | | | Removed some unneeded path munging so that our relative paths resolve properly. This closes FS#7068 Signed-off-by: Aaron Griffin <aaronmgriffin@gmail.com>
* Display size for packagesNathan Jones2007-05-14
| | | | | | | | | This patch adds a -z|--showsize option to the -Q and -S commands. The option displays the size of individual packages. This is something that I have wanted for a while, and there is a feature request for it. Signed-off-by: Nathan Jones <nathanj@insightbb.com> Signed-off-by: Dan McGee <dan@archlinux.org>
* Clean up query_fileownerDan McGee2007-05-07
| | | | | | | * gotcha -> found * line wrap changes Signed-off-by: Dan McGee <dan@archlinux.org>
* Remove output.c and output.hDan McGee2007-04-26
| | | | | | | One function was left in this set of files after the earlier cleansing, so I moved yesno to util.c. Signed-off-by: Dan McGee <dan@archlinux.org>
* Remove ERR calls from the codeDan McGee2007-04-26
| | | | | | | | All ERR() calls have been replaced with fprintf(stderr, ...). Still to be done- fix all the newline issues that are sure to pop up. What fun! Signed-off-by: Dan McGee <dan@archlinux.org>
* Remove MSG output macro (#define and in code)Dan McGee2007-04-26
| | | | | | | | This is the first step of converting output to standard functions such as printf, and eventually allowing compiliation with the -pedantic flag as is done on the libalpm side. Signed-off-by: Dan McGee <dan@archlinux.org>
* Move log.c/h -> output.c/h to properly reflect what is containedDan McGee2007-04-26
| | | | Signed-off-by: Dan McGee <dan@archlinux.org>
* More pacman side cleanupDan McGee2007-04-26
| | | | | | | | | | | * Cleaned up more of the header #includes, and got rid of a lot of stuff that was due to trying to make it compile on BSD/Darwin/CYGWIN. We can add it later but lets keep it simple for now and do it in seperate files if possible later. * Removed a lot of #define MACROS. Some were not even used, and others were only used a few times. Signed-off-by: Dan McGee <dan@archlinux.org>
* Remove more unnecessary stuffDan McGee2007-04-25
| | | | | | | | | * Remove libintl.h from most files, as we only need to include it once in util.h where _() is defined. * Remove other unnecessary header inclusions. * Remove a macro that was only used once and replaced it with actual code. Signed-off-by: Dan McGee <dan@archlinux.org>
* Merge single-function header files on pacman sideDan McGee2007-04-25
| | | | | | | Having a seperate header file for add, remove, query, etc. seemed overkill. Merge them all into a common pacman.h and fix the necessary #includes. Signed-off-by: Dan McGee <dan@archlinux.org>
* * -Qo now properly resolves paths when finding an ownerAaron Griffin2007-03-22
| | | | | NOTE that we do NOT want symlinked *files* resolved, only paths (i.e. /usr/lib/perl5/site_perl/*)
* * Typo fix.Dan McGee2007-03-21
|
* * Fix asking the user to upgrade when using -SpAaron Griffin2007-03-21
| | | | | | * More significant error messages when -Qo fails * Potential fix for reported error that pacman indicates corrupt packages when space is full on the cache dir
* * Fixed -Qil regression, now both flags are honored. (FS #1355)Dan McGee2007-03-12
|
* * -Qs was returning an error if no package found, which is not the same ↵Dan McGee2007-03-06
| | | | behavior as -Ss.
* This commit looks much more monumental than it is. Almost all just #includeDan McGee2007-03-05
| | | | | | | | reordering and adding ones that were forgotten (noticed when trying to compile after reordering). * Updated the HACKING file to include information on #include usage. * print -> vprint in "making dir" function in pactest.
* * pacman hidden arguments: removed -Y and -D. -T is the only hidden arg now, toAaron Griffin2007-02-26
| | | | | | | | be used in place of -Y. Also, -D was rather silly, as it does mostly what -S does. * Cleaned up pacman_deptest - removed the goofy faketarget stuff (NEEDS testing still) * libalpm function renames
* * Updated the README fileAaron Griffin2007-02-12
| | | | | * Removed the handle->needles param. It's not needed not that alpm_list_t is public
* * Fix total transfered size on download barAaron Griffin2007-02-07
| | | | | * Fix -Qm segfault * Minor query cleanup
* * Makepkg updates, and small bugfix on man page compression.Dan McGee2007-02-06
| | | | | * Change libtool default to makepkg2 behavior. * Other small changes.
* 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();
* * Make -Qo work on multiple files againAaron Griffin2007-01-31
| | | | * no real sense in query_fileowner returning an int
* Debug logging changes:Aaron Griffin2007-01-31
| | | | | | | | | | | | | | | | * The --debug params were goofy. New setup allows --debug without params, --debug=<level> where level 1=debug output, 2=debug and download output, 3=debug, download, and function tracing output. This seems more sane to me. * Removed PM_LOG_FLOW1 and PM_LOG_FLOW2. They were just confusing. When adding new functions, it is near impossible to determin if your output should be "flow1" or "flow2" without tracking all the way up the call chain. Rarely would one ever say "ok, lets just show "flow2" output. These have both been replaced with PM_LOG_DEBUG * Removed the need for the root parameter on alpm_initialize. it is now defaulted to PM_ROOT just like dbpath and cachedir. This allows alpm to be initialized BEFORE option parsing in the front end, saving us some duplicate variables in the frontend. * Cleaned up front end variables due to early alpm_initialize call.
* * 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
* 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
* * 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
* * 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)
* * Fixed some alpm_get_option calls (long params were used for C99 compliance,Aaron Griffin2006-11-02
| | | | | | but were used in error) * Cleaned up some output newlines * Added "local database is up to date" when no packages are upgraded
* Numerous changes:Aaron Griffin2006-10-31
| | | | | | | * Added 'ILoveCandy' support to all progress bars * Changed download callback with regards to libfetch libalpm changes * libfetch error output on failed sync * Misc others I may have forgot to name (check the diff, heh)
* Merged frugalware changes. Added a few other minor things too, but there's alotAaron Griffin2006-10-15
| | | | to list. The diff should show you 8)
* first stage of i18n stuff from VMiklosJudd Vinet2006-05-15
|
* patch from VMiklos - use PACKAGE_VERSION instead of PACMAN_VERSIONJudd Vinet2006-01-02
|
* added Frugalware patch: -Q --foreign to display packages not found in sync reposJudd Vinet2005-12-14
|
* renamed pmconfig_t to config_tAurelien Foret2005-10-29
|
* added pmconfig_t structure to hold all the configurationAurelien Foret2005-10-28
| | | | (patch from VMiklos <vmiklos@frugalware.org>)
* improved query_fileowner() functionAurelien Foret2005-10-10
|
* Merging in recent fixes/additions from 2.9.7Judd Vinet2005-10-07
|