Jordi Boggiano
|
9b24734c9d
|
Add parsing and on-the-fly loading of repositories defined in packages
|
13 years ago |
Jordi Boggiano
|
17286e993c
|
Add exception when json files can not be read
|
13 years ago |
Jordi Boggiano
|
450095e61d
|
Adjust RepositoryManager to handle multiple repositories of one type
|
13 years ago |
Jordi Boggiano
|
33e7001d7e
|
Fix typo
|
13 years ago |
Jordi Boggiano
|
c33fc80d23
|
Add supports() to the InstallerInterface
|
13 years ago |
Jordi Boggiano
|
8a571c05db
|
Fix issues in new autoloader code
|
13 years ago |
Jordi Boggiano
|
c8cfa15f52
|
Use wrapped PlatformRepository only in the Solver
|
13 years ago |
Jordi Boggiano
|
28369ea623
|
Add missing docblock
|
13 years ago |
Igor Wiedler
|
808a2c9448
|
[composer] wrap UniversalClassLoader require in if class_exists
|
13 years ago |
Igor Wiedler
|
aa7c4b8ef7
|
[autoload] refactor getFullPackage into populateAutoloadInformation
|
13 years ago |
Igor Wiedler
|
9d238330b3
|
[autoload] refactor autoload generation code into a AutoloadGenerator
|
13 years ago |
Igor Wiedler
|
72a1f66b7a
|
rename installAs to target-dir
|
13 years ago |
Igor Wiedler
|
409b2e47ae
|
return early (this is very important)
|
13 years ago |
Igor Wiedler
|
ea31039556
|
[autoload] autoloading prototype
|
13 years ago |
Nils Adermann
|
571c14adf9
|
Prefer original packages over replaced packages of same repository priority
|
13 years ago |
Nils Adermann
|
44369472be
|
Define the calculation of package priorities in a single method
|
13 years ago |
Nils Adermann
|
1b6f57e651
|
Correctly implement priorities and version numbers in the default policy
|
13 years ago |
Nils Adermann
|
b52d6d881a
|
Pool repository index represents priority, highest index = highest priority
|
13 years ago |
Nils Adermann
|
e4c94dd415
|
Adding tests for the default policy specifying its desired behaviour
|
13 years ago |
Jordi Boggiano
|
e09f6900da
|
Fix up version parsing
|
13 years ago |
Jordi Boggiano
|
19f89069a4
|
Add some more version normalization and support for branch names
|
13 years ago |
Jordi Boggiano
|
b3fe30200b
|
Remove validation for now since it's doing more harm than good
|
13 years ago |
Jordi Boggiano
|
7d4e67b335
|
Fix phar compiler
|
13 years ago |
Jordi Boggiano
|
be769ea1ac
|
Add user-agent header to json fetches, fixes #39
|
13 years ago |
Jordi Boggiano
|
2ebc795754
|
Error out when a package can not be found, refs #30
|
13 years ago |
Jordi Boggiano
|
1a9de17a88
|
Detect and report common mistakes in json syntax, refs #36
|
13 years ago |
Jordi Boggiano
|
cad0967788
|
json_decode returns null on error, not false
|
13 years ago |
Jordi Boggiano
|
9210500714
|
Handle false and empty decoded json values as valid
|
13 years ago |
Jordi Boggiano
|
18e28a2a9f
|
Make sure .composer dir is created before writing in it
|
13 years ago |
Jordi Boggiano
|
806c5f200a
|
Fix var name
|
13 years ago |
Jordi Boggiano
|
e109213dfa
|
Merge remote-tracking branch 'everzet/json-abstraction'
|
13 years ago |
Jordi Boggiano
|
9e3c2a7e22
|
Skip platform packages from the lock file
This should maybe be done in a better way, but it'll do for now.
|
13 years ago |
Jordi Boggiano
|
cc769af923
|
Reuse normal installer logic for locked installs
|
13 years ago |
everzet
|
d5ba884f8b
|
fixed potential error
|
13 years ago |
everzet
|
1cca62dc97
|
move json parsing instructions into single class object
|
13 years ago |
everzet
|
96122aada8
|
refactored install command to use new Locker
|
13 years ago |
everzet
|
cc2f2b79ca
|
added findPackage() method to the RepositoryManager and RepositoryInterface
|
13 years ago |
everzet
|
21191ffa00
|
refactored PackageLock to Locker and stabilized it
|
13 years ago |
everzet
|
1fcb833902
|
added Json parsing abstraction
|
13 years ago |
Kirill chEbba Chebunin
|
6c4440d0e9
|
Add todo for signed phars
|
13 years ago |
Kirill chEbba Chebunin
|
7527d0af43
|
Add throws declaration for FileDownloader::extract()
|
13 years ago |
Igor Wiedler
|
2c1605925b
|
ArrayLoader should not use require content for all other properties
|
13 years ago |
Kirill chEbba Chebunin
|
43631ccd5b
|
Add Tar and Phar downloaders
|
13 years ago |
Jordi Boggiano
|
9cbd74bf90
|
Merge remote-tracking branch 'everzet/downloader-interface-refactoring'
|
13 years ago |
everzet
|
195272da09
|
refactored DownloaderInterface to be mono-installation-type
|
13 years ago |
everzet
|
cc740249ff
|
don't return useless info
|
13 years ago |
Jordi Boggiano
|
ebe2a25ec6
|
Merge remote-tracking branch 'wilmoore/feature/memory-package-test-refactor'
Conflicts:
src/Composer/Package/MemoryPackage.php
|
13 years ago |
Jordi Boggiano
|
fda206400a
|
Fix constraint parsing
|
13 years ago |
Jordi Boggiano
|
f48634d074
|
Add source/dist reference information to package
|
13 years ago |
Jordi Boggiano
|
00a4fe2a14
|
Refactor downloaders, git installs actually work well now
|
13 years ago |
Wil Moore III
|
b70bb1a9bc
|
memory-package-test-refactor: refactored the memory package test to be a bit more DRY and "hopefully" re-usable in anticipation of more package types being adding in the future.
|
13 years ago |
Jordi Boggiano
|
c863c31881
|
Rename platform packages so they avoid conflicts with any vendor
|
13 years ago |
Jordi Boggiano
|
da6566b343
|
Minor improvements to VersionParser
|
13 years ago |
Jordi Boggiano
|
2e10b5c17e
|
Expand normalization feature and adjust tests
|
13 years ago |
Jordi Boggiano
|
46a67733f8
|
Adjust codebase to the new VersionParser
|
13 years ago |
Jordi Boggiano
|
f761cfe525
|
Refactored VersionParser
|
13 years ago |
Jordi Boggiano
|
d455eef82c
|
Fix pear & zip downloaders
|
13 years ago |
Jordi Boggiano
|
544067ced9
|
Packages can't be added to two repos at once
|
13 years ago |
Jordi Boggiano
|
e5907a3431
|
Remove WrapperRepository in favor of PlatformRepository wrapping the local repo
|
13 years ago |
Jordi Boggiano
|
b9114e16be
|
Fix typos, short var names etc
|
13 years ago |
Jordi Boggiano
|
c6d7760145
|
Merge branch 'refactoring'
|
13 years ago |
Jordi Boggiano
|
5623f3e69c
|
Fix refactoring bugs
|
13 years ago |
Jordi Boggiano
|
4fe80d7abb
|
Add WrapperRepository class
|
13 years ago |
Jordi Boggiano
|
c7af918caa
|
Fix git downloader
|
13 years ago |
everzet
|
c9ecb0d1ad
|
Remove unused methods from downloaders
|
13 years ago |
everzet
|
05ddfde868
|
Reflect latest refactoring changes in commands
|
13 years ago |
everzet
|
ef71836f30
|
Refactored Composer class to be service container
|
13 years ago |
everzet
|
0694f5217a
|
Implemented RepositoryManager
|
13 years ago |
everzet
|
3c439ce41c
|
Added "type" field validator to ArrayLoader
|
13 years ago |
everzet
|
5890b05eb0
|
Implemented ArrayDumper
|
13 years ago |
everzet
|
20318f77a0
|
Refactored FilesystemRegistry to FilesystemRepository
|
13 years ago |
everzet
|
5c841187fd
|
Fixed RepositoryInterface
|
13 years ago |
everzet
|
28d9df7da6
|
Added hasPackage and removePackage methods to the ArrayRepository
|
13 years ago |
everzet
|
2fc0699492
|
Moved operations evaluation into new InstallationManager class
|
13 years ago |
everzet
|
50aa7ac607
|
Provide $useSource argument to the DownloaderInterface methods
|
13 years ago |
everzet
|
17d1abcec0
|
Refactored DownloadManager
|
13 years ago |
everzet
|
6133108710
|
Refactored LibraryInstaller to use WritableRepository instead of Registry
|
13 years ago |
everzet
|
9f98ee25ea
|
Enhanced repository interface
|
13 years ago |
everzet
|
123f5fef77
|
Refactored Operations in order to fulfill naderman requests
|
13 years ago |
Jordi Boggiano
|
751f506080
|
Add info to docblocks
|
13 years ago |
Jordi Boggiano
|
8533a65061
|
Remove unused methods from RepositoryInterface
|
13 years ago |
Jordi Boggiano
|
e700e6fcd9
|
Use new version parser in PlatformRepository
|
13 years ago |
Jordi Boggiano
|
cd80f22781
|
Type is not mandatory
|
13 years ago |
Jordi Boggiano
|
d27691a67f
|
Fix namespace/use/typo issues
|
13 years ago |
everzet
|
0a1e7320b0
|
Refactored solver result array. Now it returns array of operation objects which are much nicer to work with
|
13 years ago |
everzet
|
5b0d17cc13
|
DownloaderInterface refactored
|
13 years ago |
everzet
|
69f1de9986
|
Enhanced PackageInterface and BasePackage with getUniqueName() method, which provides name-version-releaseType string (used in installer registry)
|
13 years ago |
everzet
|
cde9531e4d
|
DownloadManager implemented
|
13 years ago |
everzet
|
0a2f4e7e32
|
Installer now provides full download path to the downloader
|
13 years ago |
everzet
|
45cab9fe8c
|
Installers FilesystemRegistry implemented
|
13 years ago |
everzet
|
067007656b
|
LibraryInstaller refactored and tested
|
13 years ago |
everzet
|
6ce0132259
|
fixed installer interface
|
13 years ago |
everzet
|
9deb10361f
|
second batch of refactoring
|
13 years ago |
everzet
|
d2150a3c2e
|
installer and downloaders update
|
13 years ago |
everzet
|
d7fe0dfda4
|
added missing interfaces
|
13 years ago |
everzet
|
6caa77fbbf
|
installer refactoring
|
13 years ago |
everzet
|
5f4d46f7ae
|
repository factoring refactoring
|
13 years ago |
everzet
|
1e1ecb80b7
|
initial refactoring
|
13 years ago |
Joseph Bielawski
|
62bce6b9ed
|
[Request] Be more DRY
|
13 years ago |
Jordi Boggiano
|
6b5f61943a
|
Lowercase package names in Request (fixes tests)
|
13 years ago |
Jordi Boggiano
|
aeebd02ee5
|
Cleanup for last merged commit
|
13 years ago |
Jordi Boggiano
|
89f49e0e14
|
Merge pull request #17 from chEbba/interfaces
Add Dowloader and Installer interfaces
|
13 years ago |
Jordi Boggiano
|
9b70b06bc8
|
Merge remote-tracking branch 'ryan/use_symfony_command'
Conflicts:
bin/composer
src/Composer/Command/InstallCommand.php
|
13 years ago |
Kirill chEbba Chebunin
|
74a45cfb8c
|
Remove public keyword from Downloader and Installer interface methods
|
13 years ago |
Kirill chEbba Chebunin
|
e317b4f8ef
|
Add Dowloader and Installer interfaces
|
13 years ago |
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
|
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 |