454 Commits (d77400ade29b087e4d0a726859d7760fd3c971c8)

Author SHA1 Message Date
Sam Minnee 95b4348afa Fixed lower bound of tilde and wildcard matches.
The lower bound of ~1.2 and 1.2.* style version requirements now uses >= 1.2.0.0-dev instead of
> 1.1.9999999.9999999.  This is more straightforward to read, and behaves equivalently.
11 years ago
Sam Minnee be9aae5bab Formatting updates for PSR-2 compliance. 11 years ago
Sam Minnee b25457a8c1 Refactor wildcard matching to use manipulateVersionString 11 years ago
Sam Minnee 34a21516c8 Fix tilde constraints without a stability suffix to work like wildcard constraints.
With this fix, a tilde constraint such as ~3.1 won't match unstable versions of 3.1,
but a wildcard constraint such as 3.1.* would.  This seems like a confusing
inconsistency, and so I have corrected it.
11 years ago
Jordi Boggiano 9d948eb795 Merge branch 'disjunctive' 11 years ago
Jordi Boggiano b9a44a0057 Add RootAliasPackage, fixes #1842 11 years ago
Jordi Boggiano 606f5839f1 Unfold aliased root packages, refs #1573 11 years ago
Jordi Boggiano faa419cc0e Merge remote-tracking branch 'hason/alias' 11 years ago
Jordi Boggiano 0cccafbe81 Add disjunctive multi-constraints with |, refs #643, fixes #1342 11 years ago
Jordi Boggiano e16caa9bd7 Add EmptyConstraint 11 years ago
Beau Simensen ffd45b7678 Validate autoload options are of a supported type
Checks to ensure that the autoload options are one of the three supported
autoload types.

closes #952
11 years ago
Martin Hasoň fa0d62ab6a Settings of the same repository for a package is allowed. 11 years ago
Martin Hasoň 753a8345cb Added support for the alias of an aliased package 11 years ago
Jordi Boggiano 069109e0f0 Add readme entry to lock file to explain what it is 11 years ago
Nils Adermann 57c34033ff Merge pull request #1754 from njam/issue-1754
Fix file pattern start matching if no slash
11 years ago
Jordi Boggiano b0297ef67a Add prefer-stable flag to pick stable package over unstable ones when possible 11 years ago
Jordi Boggiano fc54a48b52 Fix archiver tests on windows 11 years ago
Reto Kaiser 6f72e9570c Add a / to the beginning of a file matchin pattern if no / in rule.
See https://www.kernel.org/pub/software/scm/git/docs/gitignore.html
11 years ago
Jordi Boggiano 6c9bc2824e Fix handling of branches with slashes, fixes #1748 11 years ago
Jordi Boggiano f5fececf53 Merge branch 'deprecatedlock' 11 years ago
Nils Adermann 8803281648 Make sure Phar overwrites files and doesn't load them 11 years ago
Nils Adermann 22044121ce Callbacks must be accessible publically on PHP 5.3 11 years ago
Nils Adermann 43be72acb4 Follow PSR-2 for method modifier ordering 11 years ago
Nils Adermann 1af2be9d6d Rename ExcludeFilterBase to BaseExcludeFilter 11 years ago
Nils Adermann ecf4f42885 Use a FilterIterator rather than a modified IteratorIterator, simpler 11 years ago
Nils Adermann 75d1759e77 Replace DIRECTORY_SEPARATOR in paths, not PATH_SEPARATOR 11 years ago
Nils Adermann 6066359944 Skip directories in zip generation, empty dirs won't get archived
This seems ok as we currently rely on git generating archives which does
not archive empty directories either.
11 years ago
Nils Adermann deae50392f Respect gitignore, gitattributes and hgignore files in archiving 11 years ago
Nils Adermann 64941b0a64 Make overwriting files an ArchiveManager option, use sourceRef in names 11 years ago
Nils Adermann 6ee08a2046 Remove unecessary unlink before writing archive 11 years ago
Nils Adermann 074af5dc54 Remove unnecessary dist type information from archive files 11 years ago
Nils Adermann 935f7271f8 The ArchiveManager should return the written path for library usage 11 years ago
Nils Adermann 48dd55b759 Generate a properly unique archive filename for dev revisions 11 years ago
Nils Adermann 285603359c Add a missing array typehint 11 years ago
Nils Adermann ba375b6867 Allow archiving the current project with composer archive 11 years ago
Nils Adermann afcdad4b23 Define an option to exclude files in the archive command 11 years ago
Nils Adermann 3e26502561 Remove Mercurial and Git Archivers as they cannot implement exclude rules 11 years ago
Nils Adermann 33828b38df Use a saner file name for package archives 11 years ago
Nils Adermann bcbc50c0d6 Git can handle commit references in git archive just fine so use them 11 years ago
Matthieu Moquet 9d24e17003 Fix workflow & typos 11 years ago
Matthieu Moquet c248115e04 Fix how download manager is constructed
This fixes tests due to upstream changes.
The createDownloadManager in the Factory now takes the config as extra
parameter.
11 years ago
Matthieu Moquet 60b1cc7d24 Create ArchiveManager with the Factory 11 years ago
Matthieu Moquet d1d77dd13d Fixed several typos
- break at first archiver supports
- use standard directory separator
- change exception message
- remove the BaseArchiver since tar & zip archivers have been merged
- plus coding style
11 years ago
Matthieu Moquet a733d76b33 Merged zip & tar archivers 11 years ago
Matthieu Moquet b21bb1dcc5 Checks support before downloading the package 11 years ago
Matthieu Moquet bfd2275cb0 Update interface to merge vcs with basic archivers 11 years ago
Matthieu Moquet 3b22791059 Checks process execution 11 years ago
Matthieu Moquet 20e717f975 Refactored the archiver package 11 years ago
Matthieu Moquet 3d0ce85db2 Moved archive Dumpers into its own Archiver package 11 years ago
Till Klampaeckel 2acb033057 Initial feature-dist
* extends BaseDumper, implements interface
 * put $keys into BaseDumper

 * WIP WIP WIP WIP
 * BaseDumper for utilities
 * interface to enforce 'dump()'
 * feature:
   * supports git
   * supports zip output
   * basic test to cover feature

 * add @todo for later
 * add vendor namespace to package name

 * add extension to getFilename() so we don't need to switch in there (HT, @naderman)

 * add extension (obviously 'zip' in ZipDumper)

 * create archive in destination dir (provided by __construct())

 * condensed ZipDumper
 * moved code to BaseDumper (hopefully easier re-use)

 * use ProcessExecutor from BaseDumper

 * fix assignments in __construct()
 * allow injection of ProcessExecutor

 * fix parameters

 * fix regex

 * write in 'system temp dir'
 * update test case (oh look, a duplicate regex)

 * move working directory related to BaseDumper

 * add quotes

 * place holder for these methods

 * use PharData to create zip/tar when necessary

 * add placeholder calls
 * add call to package() using PharData

 * finish downloadHg(), downloadSvn()

 * put to use

 * make BaseDumper abstract (to force extension)
 * make BaseDumper implement Interface (makes for less code in the implementation)

new functionality for dumping as .tar.gz

tar instead of tar.gz, new abstract dumpertest class

creates a local git repo instead of fetching a remote one

more oo-ish version of it

no constructor

 * refactor tests to be less linux-specific (used Composer\Util to wrap calls)

 * make filename only the version

 * various cs fixes (idention, tabs/spaces, doc blocks, etc.)
 * fixed a typo'd exception name

 * refactored downloading:
   * removed download*() methods
   * added dep on Composer\Factory to setup a DownloadManager instance

 * update CS with feedback from @stof

 * ArrayDumper doesn't extend BaseDumper anymore (hence no conflict on the interface)
 * move keys from BaseDumper back to ArrayDumper
 * interface now declares dump() to always return void

Apparently I had to update the lock.

CS fixes (tabs for spaces)
Bugfix: sprintf() was missing.

Fix docblock for @stof. ;)

Pull in lock from master.

Update lock one more time (hope it still merges).

whitespace

Revert ArrayDumper static keys
11 years ago
Jordi Boggiano 7e4ca7638c Remove support for deprecated lock format 11 years ago
deguif 655dc5f2e8 Fixed CS 11 years ago
thomas-gay 8534ab1dad Fixed potential undefined index in ArrayLoader.php
A source without a reference is invalid.
11 years ago
deguif 834f0b49e5 Improved error messages in ArrayLoader
Added package name to exception message when an error occurred in source or dist keys
11 years ago
Jordi Boggiano ea7d79ab03 Make sure platform requirements of the root package are enforced when installing from lock, fixes #1611 11 years ago
Jordi Boggiano 4207fc3b19 Refactor require-dev handling to use one single repository and a one pass solving, fixes #719, fixes #1185, fixes #1330, fixes #789, fixes #640 11 years ago
Jordi Boggiano c29f3c698e Fix support of aliases combined with reference locked packages, fixes #1631 12 years ago
Shane Auckland c6c521bfae optimizing loops 12 years ago
Jordi Boggiano 0525297ff5 Always move time to the end of the package spec in the lock file, fixes #1498 12 years ago
Jordi Boggiano b7cd971b06 Merge pull request #1598 from fabpot/package-time-fix
fixed time parsing when the composer.lock file has an old time format
12 years ago
Fabien Potencier ab4e3fbf86 fixed time parsing when the composer.lock file has an old time format 12 years ago
Jordi Boggiano 97dfbefa72 Add support for arbitrary values for the references in version constraints 12 years ago
Jordi Boggiano 908d2d91da Fix case insensitive matching 12 years ago
perprogramming 9219e1ab0a Simplify ordering of links (there cannot be multiple links to the same target) 12 years ago
perprogramming 704837c574 - Sort links and keywords in ArrayDumper result (fixes issue #1499)
- Adapt ArrayDumperTest
12 years ago
Jordi Boggiano 5a4c720535 Add another missing use statement, fixes #1521 12 years ago
Jordi Boggiano 1539c54a1d Merge pull request #1523 from deguif/master
Moved setter for repository before getter in BasePackage class
12 years ago
Jordi Boggiano 958ffd8e8b Add missing use statement, fixes #1521 12 years ago
deguif 3c21dc1499 Moved setter before getter and added @inheritDoc 12 years ago
Christoph c84d3d5937 replicate the git behvaiour to resolve a feature's version for mercurial 12 years ago
Christoph d84484b49d added hg support for Package\Locker 12 years ago
Jordi Boggiano cea4c05021 Fix parsing of ~ version constraint with unstable versions, fixes #1476 12 years ago
Jordi Boggiano 1356021cb9 Remove installation-source from lock file, fixes #1464 12 years ago
Jordi Boggiano 514a3cde77 CS fixes 12 years ago
Jordi Boggiano 8af6581bdf Make sure only proper timestamps are used for the lock, refs #1390 12 years ago
Daniel Bojdo 11880f016f Update src/Composer/Package/Locker.php
There were some cases when result of execute was 0 but output was empty string. 
It causes an exception in line 295 (create DateTime object from "@" string).
12 years ago
Jordi Boggiano 977fc3241c Clarify exception messages when invalid versions are detected in aliases 12 years ago
Jordi Boggiano a8f74a0983 Allow notification from locked installs, fixes #1368, fixes #1372, fixes #1369 12 years ago
Jordi Boggiano dee9bcb9f1 Add --stability and support for package:version and package=version to create-project, fixes #957 12 years ago
Jordi Boggiano da5ee6e2d7 Add warning for invalid chars in package names 12 years ago
Jordi Boggiano 326fcbcab7 Enforce UTC on all datetime instances, set lock release date to datetime always, refs #923 12 years ago
Jordi Boggiano 03b9d73af5 Fix proc_open failure, fixes #1346 12 years ago
Benjamin Eberlei 5e12da0203 Skip locking dev package to time when proc_open does not exist on system. 12 years ago
Jordi Boggiano ec7088aba5 Downgrade severity of branch-alias validation failure to warning 12 years ago
Jordi Boggiano 4f5d08e2ad Add InvalidRepositoryException 12 years ago
Jordi Boggiano bb685d9c7f Fix license validation and add feedback of values to ease reading 12 years ago
Jordi Boggiano cbd91b5952 Fix FILTER_VALIDATE_URL not supporting IDNs 12 years ago
Jordi Boggiano e05391dc44 Improve validating array loader to avoid false positives 12 years ago
Jordi Boggiano 967c771b26 Add warnings to ValidatingArrayLoader that are simply stripped by default, add reporting of warnings when loading branches 12 years ago
Jordi Boggiano a80001ad97 Allow running the validating array loader with multiple packages 12 years ago
Jordi Boggiano 4b531771bd Add validators for package links and minimum-stability 12 years ago
Pascal Borreli 83fd3967f0 Fixed PHPDoc 12 years ago
Jordi Boggiano 85671021c3 Clear id when cloning 12 years ago
Jordi Boggiano 233bdb3863 Use proper pretty string for the aliased constraint 12 years ago
Jordi Boggiano 573e4b2a7c Merge branch 'newrepo' 12 years ago
Jordi Boggiano a59a5c4581 Merge remote-tracking branch 'simensen/sem-version-support' 12 years ago
Jordi Boggiano 44c271a477 Merge remote-tracking branch 'simensen/less-than-dev' 12 years ago
Jordi Boggiano 3742459a41 Infer stability flags and parse references for aliased packages as well 12 years ago
Jordi Boggiano ee0cd07468 CS fixes 12 years ago
Jordi Boggiano 61a3c50436 Fix version guessing when used on feature branches 12 years ago
Jordi Boggiano beb9a5bd72 Code optimizations: avoid loops in match() 12 years ago
Beau Simensen 081ead1635 Version Parsing: Consider <x.y.z to be <x.y.z-dev
> Consider `<x.y.z` to be `<x.y.z-dev.` Because in 99%
> of the cases that's what the intent is. Could be
> overriden with `<x.y.z-stable`.

- @Seldaek

refs #643
12 years ago
Beau Simensen 96a76eeffc Semantic Version Parsing: ~version
Implemented `~` according to #643 and used the following versions
as a test case as defined by @Seldaek:

 * "~1.2.3.4" = ">=1.2.3.4 <1.2.4.0-dev"
 * "~1.2.3" = ">=1.2.3 <1.3.0-dev"
 * "~1.2" = ">=1.2.0 <2.0.0-dev"
 * "~1" = ">=1.0.0 <2.0.0-dev"

Refs #643
12 years ago
Jordi Boggiano 62bb5b339b Allow parsing of stability modifiers combined with multi-constraints 12 years ago
Jordi Boggiano ce31449b2d Fix calls to non existing method, fixes #1154 12 years ago
Jordi Boggiano ba2d7081bc Merge remote-tracking branch 'origin/master' 12 years ago
Jordi Boggiano beb8e0ab97 Update dist reference as well as source ref 12 years ago
Jordi Boggiano a9afa8bc1f Merge remote-tracking branch 'mheleniak/prefer_dist' and fix dists
Conflicts:
	src/Composer/Installer.php
	src/Composer/Package/Locker.php
12 years ago
Chris Smith 8961c687ee Fix unintentional manipulation of release dates 12 years ago
Martin Hasoň 29034ea3e0 Added support for the root package in the array dumper 12 years ago
Jordi Boggiano 8d7e5cdda5 Fix target-dir with multiple slashes too 12 years ago
Jordi Boggiano f377e9ca87 Fix possible vendor-dir "evasion" via target-dir 12 years ago
Jordi Boggiano 536563dc2a Rename method 12 years ago
Jordi Boggiano 418e876e8a Use only the locked repository when possible for better performance 12 years ago
Jordi Boggiano 83239aa338 Update lock file to contain the complete package info, fixes #890 12 years ago
Jordi Boggiano 5b9f190bcd Make sure invalid authors are purged 12 years ago
Jordi Boggiano 10d1a4382f Only generate lock file when actually necessary, fixes #1064 12 years ago
Jordi Boggiano 0932f65a17 Return 7 chars and not 6 for short git hashes, formatting fixes 12 years ago
Jordi Boggiano 338730b19b Merge remote-tracking branch 'zczapran/issue/1043_wrong_output_for_versions_when_updating' 12 years ago
Jordi Boggiano e01a9c564d Fix parsing of stability for lowercased RC versions 12 years ago
Mateusz Heleniak 6489487245 compare references when using dists 12 years ago
Zbigniew Czapran 8d966547a2 removed overkill function isHash as suggested by @stloyd 12 years ago
Zbigniew Czapran c0c23033d5 simplified if statement 12 years ago
Zbigniew Czapran 730f206cea removed unneccesary PackageMock and trailing whitespaces 12 years ago
Zbigniew Czapran 80c2736021 in VersionParser only truncate the version if hash 12 years ago
Jordi Boggiano 9965f02951 Clean up link creation 12 years ago
Jordi Boggiano d6de4a0036 Rename Package interfaces to reduce BC issues 12 years ago
Jordi Boggiano 8a275336a1 CS cleanups 12 years ago
Jordi Boggiano 26e8217db7 Remove duplication of branch alias parsing code 12 years ago
Jordi Boggiano 2d4076e9b2 Add support for aliases in streamed repos 12 years ago
Jordi Boggiano c8a685be6b Reduce memory usage by only loading packages that are actually needed, fixes #456 12 years ago
Jordi Boggiano ef637c8f1a CS fixes 12 years ago
Jordi Boggiano fe15c6a827 Make dev version matches preserve the proper case, fixes #935 12 years ago
Jordi Boggiano 198a40fc63 Quote version in output to highlight empty versions 12 years ago
Jordi Boggiano e618648f62 Define property before use 12 years ago
Jordi Boggiano 520d915860 Merge pull request #917 from simensen/package-links
Get links from the pacakge
12 years ago
Jordi Boggiano c65af3e3a1 Add ValidatingArrayLoader and more validation for the validate command 12 years ago
Nils Adermann 84dd1fc1bf Merge pull request #898 from Seldaek/providefix
Fix hijacking possibility via provide bug
12 years ago
Beau Simensen 2e9f57b6dd Get links from the pacakge 12 years ago
Kirill chEbba Chebunin 75d756f665 Add getSupport method to the PackageInterface. 12 years ago
Jordi Boggiano d87b8d3493 Merge pull request #886 from palex-fpt/pear-binaries
Pear binaries
12 years ago
Nils Adermann 560c3254d4 Correctly treat dev versions for other types of comparisons and add tests 12 years ago
Nils Adermann bbdbfc97ea Remove useless ternary operator 12 years ago
Jordi Boggiano 2f7130200a Prevent seeing dev versions as equal when they are not, fixes #848 12 years ago
Jordi Boggiano 2d19cf2a00 Fix hijacking possibility via provide bug 12 years ago
Alexey Prilipko 75d3d57117 Version parser stability regexp update 12 years ago
Jordi Boggiano e6f7150196 Change default minimum-stability to "stable", fixes #744 12 years ago
Robert Schönthal c517ac6404 fixed issue #347 added file to json validation exception 12 years ago
Alexey Prilipko 22aef0124e Revert Locker change, ignore PEAR packages whose version cannot be parsed. 12 years ago
Alexey Prilipko 0117108efb Fix Locker to store exact package version. 12 years ago