
  Deepsolver changes log

0.3.3 (2013-05-15)

Minor fixes:
- ds-repo, ds-patch and ds-provides utilities now have --quiet(-q) command line option 
  suppressing any output except of warnings and errors;
- ds-patch utility gets provides filtering feature 
  (can be enabled with --provides(-p) command line key).

0.3.2 (2013-05-13)

Repository index building fixes:
- External provides references can be specified explicitly 
  (key "--external-provides" for ds-repo and ds-provides);
- Sources packages file is now also read during external provides references collecting.

0.3.1 (2013-03-22)

Minor fixes:
- repo index directory is changed from base.component to base/ds.component;
- default repository in config files is changed to ALT Linux Sisyphus;
- --nothing command line key is changed to --dry-run.

0.3.0 (2013-03-04)

General:
- RPM transaction code is added;
- package fetching is added;
- command line interface is improve to reflect changes above.

0.2.11 (2013-02-22)

General:
- package lists printing code goes from lib/ to programs/;
- added configuration parameters for packages cache directory and lists printing;
- OperationCore::transaction() now returns TransactionIterator object;
- package fetching implemented;
- INdexFetch class renamed to FilesFetch (since it is also used for package fetching).

	0.2.10 (2013-02-17)

General:
- significantly improved solver (details below);
- ds-require utility for requires processing is added.

Transaction processing:
- GeneralSolver class is removed;
- TaskTranslator class is added partially replacing GeneralSolver;
- AbstractTaskTranslatorOutput with its descendants
  (TaskSolver, SatWriter and TaskTranslatorOutputOptimizer) is added;
- postponed require processing technique is added (PostponedRequire class).

Other:
- technical assignment document is removed from source code tree.

0.2.5 (2012-12-26)

Applications:
- ds-remove utility added;
- ds-conf utility added;
- ds-install deeply improved;
- ds-update deeply improved;
- TransactionProgress class added.

Configuration:
- "repo" section processing deeply improved;
- "provide" section support added.

GeneralSolver:
- a lot of bugfixes;
- Provide priority information is now takes through new TaskSolverData struct.

Other:
- AbstractPackageScope class added;
- all version operations is now go through AbstractPackageBackEnd class;
- rpm interaction code is deeply restructured and cleaned up.

0.2.0 (2012-11-15, my mother birthday release!)

Transaction processing:
- libminisat interface added;
- partially functioning GeneralSolver for SAT construction added;
- StrictSolver previously used for 2-SAT construction removed;
- previously used code for 2-SAT managing removed.

Interfaces:
- PackageInfoProcessor interface added;
- AbstractSatSolver interface added.

Documentation:
- New text for Russian user manual.

Programs:
- ds-install utility added;
- ds-update utility added.
- obsolete ds utility removed.

Other:
- Major edit of ConfigCenter;
- obsolete class TextFormatReader removed;
- obsolete class CmdLineParser removed.

0.1.1 (2012-10-16)

ds-patch utility:
- --add-list and --del-list command line options support added.

0.1.0 (2012-10-11)

IndexCore changes:
- IndexCore::fixReferences() method renamed to refilterProvides();;
- Regular expressions support added for requires filtering.

Utilities:
- ds-references utility renamed to ds-provides.

General:
- Info file error messages fixed;
- Initial template for Russian user manual added;
- Large number of various bug fixes during testing process.

0.0.9 (2012-09-20)

New utilities in programs/ directory:
- ds-patch for adding/removing packages in index;
- ds-references - for provides references fixing.

IndexCore changes:
- External references collecting can be made from index files
in addition to package files reading;
- Index patching algorithm implemented;
- Provide reference fixing algorithm implemented;
- Various improvements in text format index processing reflecting changes mentioned above.

Utilities:
- New command line parser with arguments clustering support;
- Md5-files processing improvements;
- Gzip interface naming fixing.

(2012-08-20)

Implementation of repo index patching in progress

Obsolete classes removed:
- AbstractWarningHandler;
- RepoIndexTextFormatWriter;
- TaskPreprocessor.

New classes added:
- PkgSection;
- TextFormatSectionReader.

New values in repository info file:
- filter_provides_by_dirs;
- filter_provides_by_refs;
- exclude_requires;
- changelog_binary;
- changelog_sources.

General:
- General reorganization of IndexCore;
- genbasedir utility renamed to ds-repo;
- RepoIndexParams renamed to RepoParams;
- Text files interface removed.

(2012-06-26)

StrictSolver:
- cascade package removing implemented;
- conflicts processing for packages in repo implemented;
- search for conflicts among installed packages implemented;
- first stage task checking implemented.

OperationCore:
- building the structures for search dependent and conflicted packages among installed.

PackageScope:
- new methods to provide required data for new StrictSolver code;
- clean up.

General:
- IdPkgRel class added.

(2012-06-14)

New components:
- first configuration file parser;
- configuration information center;
- repository index fetching.

Transaction processing:
- package scope content optimized to increase search speed;
- the algorithm for adding list of installed packages to list of available packages;
- optimized structure for searching dependent and conflicted packages among installed;
- rpmdb reading code;
- first code for strict solver based on previous dependencies closure processor.

Information utilities and user interface:
- initial information core added;
- function to get list of installed and available by repo packages;
- classes for user messages construction;
- command line parser.

Behaviour changes:
- repository index reading code now handles repository components;
- 'ds update' command now reads configuration file and fetches files by their URL.

Auxiliary components:
- directory erasing implementation;
- readahead() interface;
- libcurl support added.

General:
- libtool support added;
- source files inside of lib/ moved to several directories: repo/, io/, transact/, utils/;
- regressions tests temporarily disabled.

Compilation scripts changes:
- depcomp, install-sh, missing removed;
- autogen.sh added.

0.0.1 (2012-03-11)

First alpha release
