295 Commits (4140f08d9c48e80b95c0dcc6121c65aa25ed0ba4)

Author SHA1 Message Date
Ryan Weaver b1fcbe9dde Simplifying how composer initializes its commands 13 years ago
Jordi Boggiano 07e181c6eb Fix lowercase behavior 13 years ago
pborreli f7735c396f [Composer] Fixed typos 13 years ago
Ryan Weaver cf11b48306 Making several tweaks per @stof 13 years ago
Nils Adermann b6ec172997 Merge pull request #13 from igorw/case-insensitive-package
Make package names and downloader/installer/repository types case insensitive
13 years ago
Igor Wiedler 9e8fc71870 Make package names and downloader/installer/repository types case insensitive 13 years ago
Ryan Weaver f5b054985a Integrating the command system with Symfony's command system
Parts are still a WIP, as there are some embedded echo statements that should eventually be run through some sort of output interface.
13 years ago
Ryan Weaver 61917cb7f7 Adding Symfony's Console component as a submodule 13 years ago
Ryan Weaver 96b51c59d8 Adding some basic PHPDoc 13 years ago
Ryan Weaver d13a2e928e Removing reference to Silex, replacing with Composer 13 years ago
Jordi Boggiano 900bed1c32 Normalize package names 13 years ago
Igor Wiedler 1e5aaefaf5 Force empty lock files to contain a JSON object
By default it will make it an array, since PHP does not distinguish between
arrays and hash(map)s.
13 years ago
Jordi Boggiano 2b77710515 RC versions don't need a number 13 years ago
Jordi Boggiano 071fa7a4d7 Merge Solver logic into the install command 13 years ago
Jordi Boggiano ba9f12a517 Add extra and type info to packages 13 years ago
Nils Adermann 4dbb73daba Use an SplFixedArray for the solver's decision map 13 years ago
Nils Adermann b1d16a88b7 Test a replace link with a null constraint between packages 13 years ago
Nils Adermann 69ebbf0eac Correct handling of rules with more than 2 literals. 13 years ago
Nils Adermann 6cf8d3888c Use version contraints in the default policy rather than hardcoded version_compare 13 years ago
Nils Adermann 03642a40b4 Handle the = comparison operator for versions the same as == 13 years ago
Nils Adermann 6118c00086 Implement minimization of branches 13 years ago
Nils Adermann 0f6fb9b692 Separate transaction generation from solving and properly identify updates 13 years ago
Nils Adermann f46aa495da Turn obsolete relationships and replaced packages into conflict rules 13 years ago
Nils Adermann 52565a5935 Implement handling of conflicts with learned rules 13 years ago
Nils Adermann b0c685176b Correct branch handling and implement reverting of decisions at a particular level 13 years ago
Nils Adermann 37e676cedd Implement analysis of conflicting rules 13 years ago
Nils Adermann 6d157b325d Package ids are always positive, so use absolute literal value for package id 13 years ago
Nils Adermann ad25618bdd Add install job and update rule conflict handling and reenable installation 13 years ago
Nils Adermann 1125de6bf2 Added disablePolicyRules to solve conflicts between remove jobs & update rules
This temporarily breaks installation of packages
13 years ago
Nils Adermann 0d30bc469b In the default policy compare object ids to avoid recursion. 13 years ago
Nils Adermann 61ad71b624 Reverse the transaction instruction order.
Early decisions cause later ones through dependencies. So in order to
perform the earlier decisions the later ones must be fulfilled first.
13 years ago
Jordi Boggiano 6fc243cbd6 Remove useless file 13 years ago
xaav 1607ac2404 Added phar compiler 13 years ago
Jordi Boggiano 256955f0f7 Minor code cleanup 13 years ago
Nils Adermann 825deff09f Completed analysis of unsolvable situations and main decision process 13 years ago
Jordi Boggiano 49c3446ac1 Make use of new dist properties, refactored ZipDownloader 13 years ago
Jordi Boggiano 64978d40ba Add dist properties to the Packages 13 years ago
Jordi Boggiano d6ae5ddf35 Add 'dev' flag to version parser 13 years ago
Jordi Boggiano 10486d8505 Better error reporting for incorrect repo specs 13 years ago
Jordi Boggiano f272f66324 Fixes and improvements to the PEAR implementation 13 years ago
Jordi Boggiano 75428d9ad1 Slightly improve reporting when json config files can't be parsed 13 years ago
Jordi Boggiano 75410d13b7 Bugfix 13 years ago
Jordi Boggiano 5b061b8ddb Remove TODO 13 years ago
xaav 74332da349 Using copy function. 13 years ago
Benjamin Eberlei fa613cad19 Rewrite PearRepository to implement PEAR Client/Server protocol itself, taking longer then pear remote-list, but at least showing ALL available versions, making arbitrary dependencies possible. 13 years ago
Benjamin Eberlei 8afc2ca694 Add support for PEAR repository and downloading, example composer.json would look like {"repositories":{"doctrine": {"pear":"http://pear.doctrine-project.org"},"requires":{"DoctrineORM":"2.0.5"}}. You can use pear repositories this way for now. PEAR packages are not downloaded via pear, only via their .tgz packages in the PEAR repository. Automatically detecting dependencies will require reverse-engineering the PEAR protocol a little bit more, however from looking at a pirum output it looks simple. 13 years ago
Nils Adermann c225b4c689 Correctly match platform specific PHP version numbers 13 years ago
Nils Adermann bc672deb32 Moving rule iteration logic to a separate RuleSet and RuleSetIterator class 13 years ago
xaav e1e7bb03be Edited src/Composer/Downloader/ZipDownloader.php via GitHub 13 years ago
Jordi Boggiano 52888f193d Fix version parsing of PHP on some linux distros 13 years ago
Jordi Boggiano ae922eaf4c Use ReflectionExtension to read ext versions 13 years ago
Jordi Boggiano 3524d0388a Fixed use statement 13 years ago
Nils Adermann 498125adbe Assertions are now properly decided before running the main solver.
Updating does not work yet. The test case works fine for installing/removing
the correct packages however. Weak (update/feature) rules are entirely ignored
so far.

Watches are on literal ids rather than literals to save on function calls
and memory usage. So a few methods for literals now have an id counter part.
This should probably be refactored to have the literal versions call the
id ones instead.
13 years ago
Jordi Boggiano bb52105c37 Add GitRepository class 13 years ago
Jordi Boggiano 1eb2a46308 Don't chdir() while cloning git repos 13 years ago
Jordi Boggiano 14fdd4384a Better reporting during installation 13 years ago
Jordi Boggiano 04783d5c30 CI match on package names 13 years ago
Nils Adermann 2e41993822 Update solver to use PackageInterface and store pool package ids inside of packages 13 years ago
Nils Adermann 8cbf3f4d75 No need to unify rules, we already check for duplication on insertion 13 years ago
Jordi Boggiano 92d443d07e Fix arg order 13 years ago
Jordi Boggiano 48774ee6ca Fix Literal id generation 13 years ago
Jordi Boggiano 56da52d38f PlatformRepository now adds packages for every loaded php extension as well 13 years ago
Jordi Boggiano 05d527446b addPackage needs to trigger initialization too 13 years ago
Jordi Boggiano 575e520931 Fix MultiConstraint::__toString 13 years ago
Jordi Boggiano 1edb22034d Fix CS 13 years ago
Jordi Boggiano b620405ab0 Adjusted BasePackage::__toString() 13 years ago
Jordi Boggiano 27f02aba7d Fix version check in BasePackage 13 years ago
Jordi Boggiano a67a1637e1 Print more human-readable info 13 years ago
Jordi Boggiano 831f5219b6 Use spl_object_hash() instead of the package id which doesn't exist anymore 13 years ago
Jordi Boggiano b85c1a2780 Fix interfaces use statements/use interfaces for type hints 13 years ago
Nils Adermann 4dad9fa6ef Adding support for LinkConstraints to the solver requests.
Constraints are directly passed on to the pool's whatProvides method
which returns a set of packages that satisfy name and constraint conditions.
13 years ago
Nils Adermann 273e12e386 Rule unification 13 years ago
Nils Adermann f3d9c8701a Generate transaction from solver's final decision queue. 13 years ago
Jordi Boggiano ea71abb3fd Fixed line endings 13 years ago
Jordi Boggiano e43060eb72 Added exceptions and fixed CS of the ZipDownloader 13 years ago
Geoff 99d55792f6 Added ZipDownloader. 13 years ago
Jordi Boggiano 14b3325347 Fix version parsing 13 years ago
Jordi Boggiano d185194d1a Create links/constraints between packages 13 years ago
Jordi Boggiano b53a3086b6 Minor refactorings and changes 13 years ago
Nils Adermann f0af6b7d57 It's called a repository, not a registry 13 years ago
Nils Adermann 9b8ab7d710 Fix SpecificConstraint which only handles matching of instances of same constraint 13 years ago
Nils Adermann d5dd86cd75 Correct version contraint matching and add tests for various cases 13 years ago
Nils Adermann 8c9f8fb86f Rename RelationConstraints to Links in the Package namespace.
Constraints have been generalised to allow matching requiring and providing
constraints against each other.
13 years ago
Jordi Boggiano e03983697a Add base installer/downloader and ComposerRepository 13 years ago
Jordi Boggiano 2475ce47e4 Make ArrayRepository more extensible 13 years ago
Jordi Boggiano c6321e7277 Fix tests and invalid use statements 13 years ago
Jordi Boggiano 3da43e751d Update naming of repositories 13 years ago
Jordi Boggiano 6dbec8718d Remove contains() from RepositoryInterface 13 years ago
Jordi Boggiano f0e709ad09 Minor cleanups, add license property to the PackageInterface 13 years ago
Jordi Boggiano 8ab98a8b5d Fix class name 13 years ago
Jordi Boggiano bb5e59e30f Add type/repositoryType and repositoryUrl package properties 13 years ago
Jordi Boggiano 1d5f5885bc Remove useless abstract methods, interface is enough 13 years ago
Jordi Boggiano 7ea2fd6c93 Fix author/copyright 13 years ago
Nils Adermann 3a851b4059 Define an interface for packages and move package code to separate namespace.
Ids are no longer needed, they are internal to the solver and not a part of
packages.
13 years ago
Nils Adermann 933cc6179b Import initial partial port of the libzypp satsolver. 13 years ago