Commit Graph

484 Commits

Author SHA1 Message Date
Juan RP
974b2fe8ad libxbps: simplify pkgdb_get_pkgd and find_pkg_dict_installed internals.
There's no need to prop_dictionary_copy the returned dictionary to
later have to free it again, just return directly the dictionary and
avoid the free(3)s.
2012-06-16 09:02:07 +02:00
Juan RP
068cab8d20 libxbps: performance improvements by caching the most accessed paths.
1- We can cache the result of the first xbps_pkgdb_init() when it fails
   and avoid the malloc/free/access from it.
2- We cache the uname(2) result into a private var in xbps_handle and
   use it in xbps_pkg_arch_match().

This improves performance by ~5% approx and it's close as it was before
introducing the repository index format 1.5.
2012-06-15 15:33:11 +02:00
Juan RP
29871b2120 xbps-bin: re-add libxbps cleanup to the sighandler, also handle SIGHUP. 2012-06-14 10:11:50 +02:00
Juan RP
3e9e87fc2a libxbps: require a pointer to xbps_handle in functions that need it.
This removes 2 global vars from lib/initend.c and easier to know
what functions require access to xbps_handle.
2012-06-14 08:22:11 +02:00
Juan RP
c61ba8dfcc Added support for package conflicts. 2012-06-11 16:14:03 +02:00
Juan RP
efefa000b2 xbps_dictionary_metadata_plist_by_url: only accept exact matches. 2012-06-05 20:53:15 +02:00
Juan RP
1244d663d8 xbps-repo.8: rewording. 2012-06-05 14:42:03 +02:00
Juan RP
c37026d4c6 libxbps: require an underscore in strings to detect correctly pkgname/version. 2012-06-05 10:58:39 +02:00
Juan RP
61e8daea88 xbps-bin.8: document the 3 ways to install pkgs, with grammar help by xdave. 2012-06-03 08:08:29 +02:00
Juan RP
21060384d3 xbps-repo/index.c: misc cosmetic change. 2012-06-02 16:51:22 +02:00
Juan RP
06034ea928 xbps-repo: index: don't write plist if no changes were made. 2012-06-01 17:03:05 +02:00
Juan RP
3399184511 xbps-repo: genindex target now removes any obsolete binpkg not registered in index. 2012-06-01 16:37:44 +02:00
Juan RP
0c52f3cce6 xbps-repo.8: improve description of 'genindex' target. 2012-06-01 15:45:23 +02:00
Juan RP
992aeeee4a xbps-repo: typo build fix. 2012-06-01 15:04:29 +02:00
Juan RP
981b13bd5a xbps-repo: 'sync' and 'pkg-list' target now accept a repository URI argument.
If set, only the matching repository will be used for the task.
2012-06-01 15:02:06 +02:00
Juan RP
ba84f82e66 xbps-repo.8: update. 2012-06-01 14:23:23 +02:00
Juan RP
da75866a63 xbps-bin: -n now also prints pkg arch. 2012-06-01 11:28:30 +02:00
Juan RP
b20dffd2c0 xbps-repo: misc fixes/improvements to index{,-files}.c code. 2012-06-01 10:57:58 +02:00
Juan RP
65b5e328d8 xbps-repo: fixed index-files generation, this time for real! 2012-06-01 00:31:18 +02:00
Juan RP
ff2e434b56 xbps-repo: properly fix index-files update. 2012-05-31 23:48:58 +02:00
Juan RP
356bd655cf xbps-repo: fixed 'genindex' target when removing obsoletes in index-files. 2012-05-31 17:34:17 +02:00
Juan RP
7289547432 Welcome "repository index format 1.5". See NEWS for information. 2012-05-31 16:29:56 +02:00
Juan RP
a58df97c75 xbps-bin: new flag -S to sync rpool indexes before the target. 2012-05-31 08:08:32 +02:00
Juan RP
6228204a14 xbps-bin: change yesno() in targets that use a transaction. 2012-05-31 08:03:54 +02:00
Juan RP
3244ec935d bin/xbps-bin/check.c: remove a dead assignment found by clang-analyzer. 2012-05-30 14:21:34 +02:00
Juan RP
922ee1f1b6 libxbps: rename xbps_repository_pool_xxx to xbps_rpool_xxx. 2012-05-30 10:56:32 +02:00
Juan RP
fa7bee1164 xbps-repo: [pkg-list] do not print repo url if index is specified. 2012-05-29 16:17:48 +02:00
Juan RP
a14886ab48 xbps-bin: fix swapped args in check_pkg_symlinks. 2012-05-25 14:28:12 +02:00
Juan RP
30932b3c55 xbps-uhelper: fixed 'register' target (regression added in recent commits). 2012-05-15 08:56:30 +02:00
Juan RP
5fabb34a1f xbps-bin(8): keep auto{remove,update} targets for compatibility. 2012-05-08 10:09:01 +02:00
Juan RP
e0fc55c389 xbps-bin(8): renamed autoremove target to remove-orphans. 2012-05-08 09:58:56 +02:00
Juan RP
758cd4fd11 xbps-bin(8): renamed autoupdate target to dist-upgrade. 2012-05-08 09:54:06 +02:00
Juan RP
b7961ae611 xbps-bin: print current/total pkgs counter in 'check all' target. 2012-05-07 12:33:50 +02:00
Juan RP
5e0b06dc00 xbps-bin: improve def unpack cb to print more meaningful messages. 2012-05-06 16:48:47 +02:00
Juan RP
b4f202f89f xbps-bin/util.c: find out terminal columns and use it to print transaction. 2012-05-06 16:47:30 +02:00
Juan RP
b53795e095 fetch_cb: clear until EOL when displaying final stats. 2012-05-06 10:09:23 +02:00
Juan RP
391bb3daf2 fetch_cb: simplify and improve output. 2012-05-06 10:05:35 +02:00
Juan RP
f7c49a706c xbps-repo(8): new target 'clean': removes obsolete binpkgs from cachedir. 2012-05-05 10:07:47 +02:00
Juan RP
53c7f9effe xbps-bin: fixed regression in 'show-deps' target. 2012-04-16 16:42:03 +02:00
Juan RP
93c5536e36 xbps-{bin,repo}: remove dead code. 2012-04-12 13:05:13 +02:00
Juan RP
bfe7ab1c5a xbps_configure_pkg: simplify and remove "version" arg (API change).
The "version" argument (being optional) clearly is not needed and it
can be fully removed. This simplifies the internal implementation as well
as the API.
2012-04-10 10:02:27 +02:00
Juan RP
ef6d1adf91 xbps_set_pkg_state_installed: simplify (API change).
The third optional argument "pkgver" clearly is useless because we can
create it internally with "pkgname" and "version" arguments instead.

Also make the "version" argument mandatory.
2012-04-10 09:43:59 +02:00
Juan RP
00148c40b0 xbps-bin(8): extended 'requiredby' check to find and remove stale entries. 2012-04-05 10:58:52 +02:00
Juan RP
9bada162a1 New "metadir" member in xbps_handle to override default metadata dir. 2012-03-13 10:22:35 +01:00
Juan RP
d4f623e7e7 Commit Kyua/ATF test suite for libxbps. 2012-03-12 15:23:04 +01:00
Juan RP
8c6b335ca8 xbps-{bin,repo}: redirect error messages to stderr. 2012-02-25 10:30:15 +01:00
Juan RP
fd5d8b9f51 xbps-repo.8: sync with reality. 2012-02-20 16:02:42 +01:00
Juan RP
7fc8ee8231 xbps-bin: check for EEXIST when installing a pkg. 2012-02-18 16:15:54 +01:00
Juan RP
7a9d47c133 xbps-repo: show, show-deps and show-files targets accepts pkgpatterns. 2012-02-16 08:55:41 +01:00
Juan RP
7628561518 xbps-repo: added -h to print usage(), print detailed info for usage(). 2012-02-14 10:49:41 +01:00
Juan RP
052a266b76 xbps-bin: added -h to print usage(), print detailed info for usage(). 2012-02-14 10:35:33 +01:00
Juan RP
cbfc8868a6 xbps-repo.8: sync with reality. 2012-02-06 13:32:31 +01:00
Juan RP
36ae5709e4 xbps-bin: dry-run: add binary pkg filename prop to the output. 2012-02-05 14:56:18 +01:00
Juan RP
3afa3ba93b xbps-bin: new dry-run mode (-n) for (auto)update, (auto)remove and install targets. 2012-02-03 14:53:28 +01:00
Juan RP
7fd4b16156 xbps-bin: fetch_cb.c: avoid ANSI escape sequencies and use \r. 2012-02-03 06:43:00 +01:00
Juan RP
1acf933f5a xbps-repo: make show* targets do not follow virtualpkgs from xbps.conf.
The reason for that is that you should be able to show information from
any package, and by enabling virtual packages you cannot do that.
2012-01-27 15:24:24 +01:00
Juan RP
164a928e5a xbps-bin: do not syslog msgs if disabled due to uninitialized bool. 2012-01-26 11:46:01 +01:00
Juan RP
1a73b93d63 Calculate properly required/freed size in transactions. 2012-01-25 04:56:54 +01:00
Juan RP
abb0d260b9 xbps-bin: the install target gains suppor for installing best pkg available. 2012-01-25 02:14:04 +01:00
Juan RP
11f94a4f46 xbps-bin: pretty output for 'check all'. 2012-01-25 01:17:18 +01:00
Juan RP
9becfc29d2 xbps-bin: fix pkgpattern to install new pkgs. 2012-01-24 20:48:54 +01:00
Juan RP
9a1f05ee89 xbps-bin: use "mutable" bool object to check for mutable files in pkg file list. 2012-01-24 18:47:43 +01:00
Juan RP
fe1e8d14c8 xbps-repo: [genindex] print to stdout when obsolete entry is removed. 2012-01-24 09:47:40 +01:00
Juan RP
791f1d40b2 xbps_handle: remove debug, install_*, syslog_enabled members.
Replaced by definitions that can be set to xbps_handle::flags.
2012-01-22 10:52:35 +01:00
Juan RP
a166d6a2a3 Simplify xbps_transaction_prepare()/commit() and related API changes.
- xbps_handle::transd -> new member with transaction dictionary.
- xbps_transaction_prepare: returns an int.
- xbps_transaction_commit: doesn't need any arg now.
- xbps_repository_pool_sync: doesn't need any arg now.
- xbps_pkgdb_update: removed xbps_handle * arg.
- xbps_transaction_missingdeps_get: removed, missing_deps array is in
  xbps_handle::transd("missing_deps") array object.
2012-01-22 10:00:46 +01:00
Juan RP
38db570c19 pkgdb: foreach_xxx_pkg_cb -> foreach_xxx_cb. 2012-01-21 10:30:20 +01:00
Juan RP
0561d068d5 xbps-uhelper: new target 'updatepkgdb' to migrate to 0.12 pkgdb format. 2012-01-20 18:42:00 +01:00
Juan RP
6940505de9 regpkgdb rototill: renamed to pkgdb, improve the public API. 2012-01-20 11:10:52 +01:00
Juan RP
9a088937b5 Repository index 1.4 -- see NEWS file for info. 2012-01-19 12:26:40 +01:00
Juan RP
dfc7ff4232 API break: simplify xbps_repository_pool_find_virtualpkg(). 2012-01-18 08:25:28 +01:00
Juan RP
d0e1477eeb Simplify xbps_end() and don't continue if xbps_init() did not succeed. 2012-01-17 16:56:17 +01:00
Juan RP
f2b05d6438 Improved pkg best matching in rpool, and support for exact pkgver matches.
- xbps_repository_pool_find_pkg in best match case, now returns the
  newest package version available in rpool.
- Added xbps_repository_pool_find_pkg_exact that returns a package
  by exact matching a pkgver.
- Removed xbps_handle_alloc(), the user is free to use memory
  allocated from heap or stack.
- Improved API documentation in preparation for 0.12.

Bumped XBPS_API_VERSION again.
2012-01-17 16:17:03 +01:00
Juan RP
da5e9f841f xbps-repo: fixed removing multiple entries from index-files.plist. 2012-01-17 12:16:54 +01:00
Juan RP
4fdf675249 xbps-repo: index.c: oldpkgver might be undefined if entry is removed from index. 2012-01-17 11:25:45 +01:00
Juan RP
9906aa7029 xbps-repo: index-files.c: warning due to uninitialized var. 2012-01-17 10:55:28 +01:00
Juan RP
beb7284681 xbps-repo: faster 'genindex' target implementation for index-files.plist. 2012-01-17 10:50:35 +01:00
Juan RP
4164573b35 Added xbps_match_pkgdep_in_array() to match a pkgdep against pkgpatterns.
This fixes xbps_match_pkgpattern_in_array() which had the args swapped
in xbps_pkgpattern_match() resulting in inverted results while resolving
virtual packages in a transaction.
2012-01-16 15:50:06 +01:00
Juan RP
95804bdb77 xbps-repo: simplify 'index-files.plist', externalized as an array. 2012-01-15 16:33:44 +01:00
Juan RP
2186e16a5e Fixed issue 21 "xbps-repo find-files is awfully slow" reported by ojab. 2012-01-15 14:24:44 +01:00
Juan RP
8780e15635 xbps-bin.8: typo, remove refs to purge flag. 2012-01-05 21:19:29 +01:00
Juan RP
0356afba6d Bump copyright year for latest changes. 2012-01-05 16:17:37 +01:00
Juan RP
c83a77c1b5 Fixed issue 19 "xbps-src cannot fetch source with unknown Content-Length". 2012-01-05 12:26:57 +01:00
Juan RP
7d631c5d11 xbps-bin: fix check_pkg_integrity() pkg dictionary confusion. 2012-01-05 11:53:14 +01:00
Juan RP
a7ef059673 Bump copyright year for changed files. 2012-01-04 17:56:52 +01:00
Juan RP
a31c20e52a Make xbps_configure_pkg/packages accept a flush bool arg for frontends. 2012-01-04 17:41:36 +01:00
Juan RP
e22ba9a972 xbps-bin: simplify and make 'check' target work after regpkgdb flush changes. 2011-12-29 16:43:52 +01:00
Juan RP
c0f81bd482 xbps-uhelper: use xbps_(un)register_pkg() again. 2011-12-28 05:58:03 +01:00
Juan RP
11ca929985 xbps-uhelper: fix 'fetch' target exiting with error value. 2011-12-24 16:56:45 +01:00
Juan RP
9fa2804763 xbps-uhelper: really fix this time after regpkgdb rototill. 2011-12-24 16:37:42 +01:00
Juan RP
5a1ab26972 Introduce xbps_regpkgdb_remove_pkgd, and use regpkgdb funcs to make xbps-uhelper work. 2011-12-24 16:09:30 +01:00
Juan RP
3b7491d29b Merged purge code in remove, configurable transaction regpkgdb flushing.
See the NEWS file for info.
2011-12-24 01:05:26 +01:00
Juan RP
32597d85c1 Use xbps_regpkgdb_foreach_pkg_cb() where needed. 2011-12-22 14:41:40 +01:00
Juan RP
7bfcdee791 Introduce xbps_regpkgdb_foreach_pkg_cb() and use it in xbps-bin check. 2011-12-22 14:25:27 +01:00
Juan RP
939e2c2417 xbps-bin(8): fix 'find-files' syntax in manpage. 2011-12-22 11:07:54 +01:00
Juan RP
47237846ae xbps-repo(8): the 'find-files' target now accepts multiple patterns. 2011-12-22 11:01:28 +01:00
Juan RP
d4278be914 xbps-bin(8): the 'find-files' target now accepts multiple patterns. 2011-12-22 10:45:13 +01:00
Juan RP
13331f801c xbps-repo: the 'search' target now accepts multiple patterns as arguments. 2011-12-22 09:33:54 +01:00
Juan RP
a5d9eb9853 xbps-bin: it's possible to reinstall any pkg with '-f' option. 2011-12-20 16:08:23 +01:00
Juan RP
6ad7289d68 Detect clock_gettime(2) and use (if available) for the fetch cb. 2011-12-19 16:41:57 +01:00
Juan RP
79fd316f8e xbps-bin: formatting fixes for transaction printfs. 2011-12-18 01:10:24 +01:00