Checkout Tools
  • last updated a few seconds ago
Constraints: committers
Constraints: files
Constraints: dates
fix some potential thread safety issues with sqlite access

  1. … 1 more file in changeset.
move installed event back where it goes. there is a postexec event anyway., migrate to a serial queue for asset list

  1. … 1 more file in changeset.
switch to wal mode by default. This is noticably faster for install operations.

merge changes from 0.8

  1. … 5 more files in changeset.
fix upgrades so that we do not continuously try to recreate tables during mport operations. This fixes some errors as well as speeds up some operations

  1. … 1 more file in changeset.
fix several dispatch queues

  1. … 2 more files in changeset.
add some libdispatch love

  1. … 9 more files in changeset.
add an initial statistics api

  1. … 2 more files in changeset.
Create os_release in packages of the master database to indicate what os_release the installed package is for.

This is important because we may be upgrading from 0.4 to 0.5. We want to be able to indicate to the user that we have old packages or force upgrade functionality on them.

  1. … 3 more files in changeset.
don't use old style declarations

  1. … 7 more files in changeset.
Add new mport_setting_get and mport_setting_set functions to allow users to customize settings. The sqlite3 master database now contains a settings table with name and val fields.

There are two obvious uses for this:

1. defining the country the user is in to pick the nearest mirror list.

2. storing the last time we fetched an index so it doesn't try to do it all the time when it's out of date and we haven't generated one on stargazer yet.

  1. … 24 more files in changeset.
Fix a bug in update_primitive where a free'd var was strdup'd.

Assign NULL to several pointers. While it shouldn't matter, if something weird happens it will make it easier to track down.

  1. … 4 more files in changeset.
While this is mostly unnecessary, let's allocate memory in many cases with calloc for now. It will make finding bugs that much easier since we're guaranteed to have the memory zerod.

  1. … 8 more files in changeset.
Upgrade to latest snap from github.

  1. … 23 more files in changeset.
Sync with the current devel version of libmport.

  1. … 20 more files in changeset.
Next developement snapshot.

Many bug fixes: hardlinks work correctly, exec/unxec parsing, etc...

Packages now have a status, on install it starts as 'dirty', and is set to

'clean' if the install succeeds. Similar logic is used in package deletion,

which now tries harder to keep going after errors.

  1. … 11 more files in changeset.
Latest developement version of libmport.


It is now possible to create, install, and delete packages from a system

with the library.

The install primative now uses the progress callback system to give the user

feedback during the install.

Support for installing into a chroot envirement is included at the library

level. This is useful if you have a GUI app and you don't want your entire

process stuck in the chroot.

Many function names have been changed in an effort to improve the library's


Many bug fixes and subtle changes.



library overview.

function reference.

mport bundle specification.

The merge primative.

The fetch primative.

The update primative.

Top level functions to do things like "fetch this bundle, its depends, and

then install them all."

Some of the sematics are still up in the air. For example, gtk12 and

gtk2 both have a pkgname of gtk. libmport doesn't allow two package with

the same name to be installed.

Hard links are not implemented in a mport bundle.

Much more testing and bug fixing is needed.

  1. … 16 more files in changeset.