Differences between revisions 21 and 22
Revision 21 as of 2011-04-10 19:56:19
Size: 2635
Editor: ?EugeneVLyubimkin
Comment: added a link to the tutorial
Revision 22 as of 2011-04-16 15:29:56
Size: 2233
Editor: ?EugeneVLyubimkin
Comment: status update
Deletions are marked like this. Additions are marked like this.
Line 32: Line 32:
 * source versions synchronization;  * synchronization by source versions;
Line 40: Line 40:

'''Why Perl was chosen?'''

 * I like Perl
 * code conciseness
 * code extensibility
 * several useful libraries available
Line 66: Line 59:
The stable branch is `1.5.x` (`master` in the Git repository).
Implemented in Perl, consists of Perl modules and a console front-end to them. This is the branch which went to Debian Squeeze.

=== Development branch ===

The `2.0.x` branch (`develop` in the Git repository) is currently in the "release candidates" stage. Both the library and the front-end were rewritten in C++(0x).
Last sources and binary packages are available in Debian experimental.
The stable branch is `2.x` (`master` in the Git repository).
Implemented in C++0x, consists of a runtime library, download method plugins and a console front-end to them. This is the branch which will probably go to Debian Wheezy.
Line 76: Line 64:
'''Why the language was changed to C++?''' === Old stable branch ===
Line 78: Line 66:
I want Cupt to be also fast and not RAM-hungry. Perl intepreter limits an achievement of these goals significantly. The `1.x` branch was written in Perl. This is the branch which went to Debian Squeeze.

Cupt

What is it?

Cupt is a partial re-implementation of APT suite from scratch.

FAQ

Why?

  • to finally avoid some bugs in APT design;
  • to introduce some useful features;
  • to make an extensible and readable codebase;

The first announcement is here. Also, on debian-devel-announce.

What infrastructure does Cupt use?

It uses the same APT infrastructure, e.g. index files, deb cache archive files, configuration files. It understands some of widely used APT options.

What features has Cupt already?

  • full-case strict dependency problem resolver;
  • command-line and APT-like option name checker;
  • case-sensitive search;
  • pinning by source package name;
  • pinning by package groups using shell-like patterns;
  • configurable 'depends' and 'rdepends' subcommands;
  • support of LZMA-compressed indexes;
  • 'satisfy' subcommand;
  • synchronization by source versions;
  • 'shell' subcommand;
  • debdelta integration.

What important features Cupt doesn't have?

  • handling of cdrom:// URIs;
  • PDiffs support.

Can I use Cupt along with libapt-based package managers?

Yes, you can mix apt-get/apt-cache/aptitude/etc. with cupt without bad consequences.

How to feedback?

  • file bugs against 'cupt' package in Debian
  • join #cupt on irc.debian.org
  • mail me directly

Development

Repository

Cupt uses Git. URIs: browse, clone: git://github.com/jackyf/cupt.git.

Current/stable branch

The stable branch is 2.x (master in the Git repository). Implemented in C++0x, consists of a runtime library, download method plugins and a console front-end to them. This is the branch which will probably go to Debian Wheezy.

The HTML version of the latest tutorial may be found, apart from the binary packages, here.

Old stable branch

The 1.x branch was written in Perl. This is the branch which went to Debian Squeeze.


CategorySoftware