[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Roadmap for the 1.15.x series


Now again with time on my hands, and with the excuse of the release team
asking for our plans, I'm sending (after having it been sitting on my
computer for some time already) what I'm planning to work on or
what I'd like to see done in the near future, ideally during the 1.15.x
series which will match the squeeze release cycle.

Some of those items should be done for squeeze or we'll need to wait for
a new release cycle before being able to use them fully (like multiarch
and the conffile support), others could get postponed if squeeze gets an
early freeze. So please do share yours as well, so that we can send a
mail afterwards to the relese team, with the items that we'd really
want to get done for squeeze.

For some of these I already have code in my repo on git.hadrons.org which
needs final testing and polishing, or have ideas how to do it, so if
interested please post on the list first to not overlap on the work.

The main trend in my mind is to merge back functionality implemented
elsewhere, and ideally an eventual deprecation of some of those other

I'll be sending more detailed mails for some of these items to the list
in the following weeks.

The stuff inside [] denotes a tag, and the ones inside (= ) are

The “merge back” development series 1.15.x

* Multiarch support [multiarch].

* Optimization work [optimize].

  - Faster and smaller!

* Make dpkg.deb contain only sh and C programs (to help embedded distros,
  to make it possible to remove perl-base from essential) [c-rewrite]:

  - Move install-info to its own package built from src:info (done).
  - Rewrite mksplit in C (or merge it into dpkg-split). (= refactor-deb)
  - Rewrite u-a in C.
  - Rewrite dpkg-divert and dpkg-statoverride in C.

* New dpkg shared library [libdpkg]:

  - Library API cleanup and general code refactoring.
  - Try not to inflict setjmp on users by default (provide callbacks).
  - Provide pluggable allocators to avoid leaking through nfmalloc.
  - No printing from the library for non-fatal errors, will have to
    change to return error codes.
  - Try to make as much as possible reentrant.
  - Switch to link with shared libraries instead of statically.
  - New libdpkg0, libdpkg0-dbg and libdpkg-dev packages.

* New perl modules package [libdpkg-perl]:

  - Move Dpkg.pm to libdpkg-perl (= c-rewrite).
  - Review of all APIs, cleanup, etc.
  - Document perl modules.
  - New libdpkg-perl package.

* Merge back apt's apt-deb/deb/ and apt-inst/deb/:

  - Refactor .deb generation. [refactor-deb]
  - Provide a public interface to access .deb files. (= libdpkg)
  - Switch apt to use libdpkg.

* Merge back debconf support:

  - Merge back apt-exttracttemplates.
  - Finish to draft the spec for the debconf integration:
  - Implement invoke hooks.
  - Implement db control-path printing.
  - Implement --reconfigure??

* Extend conffile support, merge back ucf:

  - Store conffiles at install time.
  - Support registering configuration files.
  - Add a new dpkg-conffile to handle conffiles (view, diff, rm,
    restore, etc).

* Merge back debsums:

  - Generate checksums at build and install time.
  - Store metadata from .deb at install time.
  - Add a new dpkg-foo to verify, restore, etc metadata.

* Merge back dlocate:

  - Speed up file searches «dpkg-query -S» (= optimize).

* Merge back functionality from dpkg-sig, debsigs-verify, etc:

  - Refactor .deb generation. [refactor-deb]
  - Draft a new spec for the signature support inside .deb.
  - Write a dpkg-sig (or similarly named program) in C.

* Merge back dpkg-cross (= mulitarch):

  - Need a spec for cross multiarch support.
  - Implement cross multiarch support (if needed).

* Move back relevant documentation from policy into dpkg.
  Russ has mentioned this at some points, should discuss with the
  policy team.


Reply to: