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.
2013-05-20 19:03:21 +12:00
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.
2013-05-13 11:04:15 +12:00
Jordi Boggiano
9d948eb795
Merge branch 'disjunctive'
2013-05-04 10:48:14 +02:00
Jordi Boggiano
faa419cc0e
Merge remote-tracking branch 'hason/alias'
2013-04-28 12:54:59 +02:00
Jordi Boggiano
0cccafbe81
Add disjunctive multi-constraints with |, refs #643 , fixes #1342
2013-04-27 15:20:35 +02:00
Jordi Boggiano
e16caa9bd7
Add EmptyConstraint
2013-04-27 14:32:22 +02:00
Jordi Boggiano
3aa7843146
Use ExecutableFinder instead of relying on exit codes, refs #1829
2013-04-26 11:02:53 +02:00
Jordi Boggiano
91db9d920b
Merge remote-tracking branch 'RobLoach/versioncontrolnotfound'
2013-04-26 10:59:25 +02:00
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
2013-04-25 14:02:15 -05:00
Rob Loach
692c63cdd2
Fix for tests when Mercurial or git are not available
2013-04-25 14:57:58 -04:00
Martin Hasoň
fa0d62ab6a
Settings of the same repository for a package is allowed.
2013-04-11 13:25:04 +02:00
Martin Hasoň
753a8345cb
Added support for the alias of an aliased package
2013-04-11 13:20:34 +02:00
Jordi Boggiano
069109e0f0
Add readme entry to lock file to explain what it is
2013-04-08 18:15:08 +02:00
Jordi Boggiano
1f79f36227
Add a couple version parser tests
2013-04-04 17:35:55 +02:00
Nils Adermann
57c34033ff
Merge pull request #1754 from njam/issue-1754
...
Fix file pattern start matching if no slash
2013-04-03 05:45:50 -07:00
Jordi Boggiano
fc54a48b52
Fix archiver tests on windows
2013-04-02 11:32:11 +02:00
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
2013-04-01 23:04:00 +02:00
Reto Kaiser
918a55659e
Call realpath() on result of sys_get_temp_dir()
...
On OSX the temp dir is within /var, which is a symlink to /private/var.
If this is not resolved, the comparison will fail when comparing to the result of `git archive` in testGitExcludes().
2013-04-01 21:37:47 +02:00
Jordi Boggiano
bf307de1d6
Fix tests
2013-03-28 20:42:25 +01:00
Nils Adermann
4af69c85ca
Fix tests by passing proper working directory to processes
2013-03-28 13:33:40 +01:00
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.
2013-03-28 12:49:53 +01:00
Nils Adermann
deae50392f
Respect gitignore, gitattributes and hgignore files in archiving
2013-03-28 12:49:53 +01:00
Nils Adermann
afcdad4b23
Define an option to exclude files in the archive command
2013-03-28 12:49:52 +01:00
Nils Adermann
3e26502561
Remove Mercurial and Git Archivers as they cannot implement exclude rules
2013-03-28 12:49:52 +01:00
Nils Adermann
33828b38df
Use a saner file name for package archives
2013-03-28 12:49:52 +01:00
Nils Adermann
bcbc50c0d6
Git can handle commit references in git archive just fine so use them
2013-03-28 12:49:52 +01:00
Nils Adermann
ba51027680
Reorder ArchiveManager parameters to make the download manager optional
2013-03-28 12:49:52 +01:00
Matthieu Moquet
a2b404e421
Cleaned archiver tests
2013-03-28 12:49:52 +01:00
Matthieu Moquet
9d24e17003
Fix workflow & typos
2013-03-28 12:49:52 +01:00
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.
2013-03-28 12:49:52 +01:00
Matthieu Moquet
60b1cc7d24
Create ArchiveManager with the Factory
2013-03-28 12:49:52 +01:00
Matthieu Moquet
a733d76b33
Merged zip & tar archivers
2013-03-28 12:49:52 +01:00
Matthieu Moquet
bfd2275cb0
Update interface to merge vcs with basic archivers
2013-03-28 12:49:52 +01:00
Matthieu Moquet
2fd17ecff8
Changed Package class due to upstream changes
2013-03-28 12:49:52 +01:00
Matthieu Moquet
20e717f975
Refactored the archiver package
2013-03-28 12:49:52 +01:00
Matthieu Moquet
3d0ce85db2
Moved archive Dumpers into its own Archiver package
2013-03-28 12:49:52 +01:00
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
2013-03-28 12:49:52 +01:00
Jordi Boggiano
ea7d79ab03
Make sure platform requirements of the root package are enforced when installing from lock, fixes #1611
2013-03-03 20:05:46 +01:00
Christian Riesen
6f5ab3ed5c
Add other valid versions to test for stability
2013-02-25 16:51:01 +01:00
Jordi Boggiano
97dfbefa72
Add support for arbitrary values for the references in version constraints
2013-02-13 13:26:27 +01:00
Jordi Boggiano
908d2d91da
Fix case insensitive matching
2013-02-11 11:52:50 +01:00
perprogramming
704837c574
- Sort links and keywords in ArrayDumper result (fixes issue #1499 )
...
- Adapt ArrayDumperTest
2013-01-31 09:55:19 +01:00
Jordi Boggiano
cea4c05021
Fix parsing of ~ version constraint with unstable versions, fixes #1476
2013-01-13 16:36:40 +01:00
Igor Wiedler
e7c7e2f70d
Consistently describe composer as dep mgr as opposed to package mgr
...
Closes #1207 .
2012-11-07 13:16:47 +01:00
Jordi Boggiano
bb685d9c7f
Fix license validation and add feedback of values to ease reading
2012-11-05 20:04:29 +01:00
Jordi Boggiano
cbd91b5952
Fix FILTER_VALIDATE_URL not supporting IDNs
2012-11-05 15:39:43 +01:00
Jordi Boggiano
e05391dc44
Improve validating array loader to avoid false positives
2012-11-05 14:18:04 +01:00
Jordi Boggiano
967c771b26
Add warnings to ValidatingArrayLoader that are simply stripped by default, add reporting of warnings when loading branches
2012-11-05 12:08:02 +01:00
Jordi Boggiano
4b531771bd
Add validators for package links and minimum-stability
2012-11-02 15:14:09 +01:00
Jordi Boggiano
573e4b2a7c
Merge branch 'newrepo'
2012-10-21 14:18:00 +02:00
Jordi Boggiano
a59a5c4581
Merge remote-tracking branch 'simensen/sem-version-support'
2012-10-19 13:55:47 +02:00
Jordi Boggiano
beb9a5bd72
Code optimizations: avoid loops in match()
2012-10-14 16:35:32 +02:00
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
2012-10-08 10:44:37 -07:00
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
2012-10-06 07:49:11 -07:00
Jordi Boggiano
62bb5b339b
Allow parsing of stability modifiers combined with multi-constraints
2012-10-05 19:05:39 +02:00
Martin Hasoň
29034ea3e0
Added support for the root package in the array dumper
2012-09-19 23:08:37 +02:00
Jordi Boggiano
8d7e5cdda5
Fix target-dir with multiple slashes too
2012-09-19 11:25:49 +02:00
Jordi Boggiano
a9195eb05f
Add a couple test cases
2012-09-18 18:32:24 +02:00
Jordi Boggiano
f377e9ca87
Fix possible vendor-dir "evasion" via target-dir
2012-09-18 18:30:11 +02:00
Jordi Boggiano
83239aa338
Update lock file to contain the complete package info, fixes #890
2012-09-14 16:43:56 +02:00
Jordi Boggiano
0932f65a17
Return 7 chars and not 6 for short git hashes, formatting fixes
2012-09-04 16:27:22 +02:00
Jordi Boggiano
338730b19b
Merge remote-tracking branch 'zczapran/issue/1043_wrong_output_for_versions_when_updating'
2012-09-04 16:22:29 +02:00
Jordi Boggiano
e01a9c564d
Fix parsing of stability for lowercased RC versions
2012-09-04 15:59:44 +02:00
Zbigniew Czapran
730f206cea
removed unneccesary PackageMock and trailing whitespaces
2012-08-30 23:44:54 +01:00
Zbigniew Czapran
80c2736021
in VersionParser only truncate the version if hash
2012-08-30 22:01:21 +01:00
Jordi Boggiano
d6de4a0036
Rename Package interfaces to reduce BC issues
2012-08-24 02:29:31 +02:00
Jordi Boggiano
fe15c6a827
Make dev version matches preserve the proper case, fixes #935
2012-08-11 18:34:01 +02:00
Jordi Boggiano
c65af3e3a1
Add ValidatingArrayLoader and more validation for the validate command
2012-07-18 17:20:56 +02:00
Kirill chEbba Chebunin
c62d4179b3
Remove unnecessary use statement from ArrayDumperTet
2012-07-14 16:01:55 +04:00
Kirill chEbba Chebunin
75d756f665
Add getSupport method to the PackageInterface.
2012-07-14 15:51:45 +04:00
Jordi Boggiano
d87b8d3493
Merge pull request #886 from palex-fpt/pear-binaries
...
Pear binaries
2012-07-13 12:46:46 -07:00
Nils Adermann
560c3254d4
Correctly treat dev versions for other types of comparisons and add tests
2012-07-11 20:49:53 +02:00
Jordi Boggiano
2f7130200a
Prevent seeing dev versions as equal when they are not, fixes #848
2012-07-11 20:25:22 +02:00
Alexey Prilipko
75d3d57117
Version parser stability regexp update
2012-07-10 21:50:58 +11:00
Alexey Prilipko
22aef0124e
Revert Locker change, ignore PEAR packages whose version cannot be parsed.
2012-07-03 19:18:58 +11:00
Alexey Prilipko
ac3cebc633
Update PEAR Package Extractor to use 'task:replace', 'phprelease' commands and install role='script' files
...
Add PearInstaller
Change PEAR packages type from 'library' to 'pear-library' and dist type from 'pear' to 'file'
Remove PearDownloader
Refactor Channel Installer
2012-07-03 19:18:58 +11:00
Jordi Boggiano
ffecd39d33
Refactor repositories handling in config/factory/loader, fixes #828 , fixes #826
2012-06-24 13:06:13 +02:00
Jordi Boggiano
3ac11b932c
Expose default repositories in system config file
2012-06-23 12:55:05 +02:00
Jordi Boggiano
4a6ae454c2
Merge remote-tracking branch 'dpb587/multiple-repos'
...
Conflicts:
src/Composer/Factory.php
src/Composer/Package/Loader/RootPackageLoader.php
tests/Composer/Test/Package/Loader/RootPackageLoaderTest.php
2012-06-23 12:09:31 +02:00
Jordi Boggiano
4fcc114f97
Merge pull request #808 from palex-fpt/not-equal-operator
...
Add '<>' operator to Version Parser
2012-06-22 07:00:18 -07:00
Nils Adermann
a756f7f880
Merge pull request #798 from cs278/dev-hash-detached-head
...
Ensure composer works with a detached head
2012-06-20 16:18:55 -07:00
Jordi Boggiano
73a865bf2a
Fix tests
2012-06-20 12:05:18 +02:00
Alexey Prilipko
9f08764e9a
Add '!=' handling to VersionConstraint::matchSpecific
2012-06-20 00:29:28 +11:00
Alexey Prilipko
e130386612
Add '<>' operator for Version Parser
2012-06-19 12:11:11 +11:00
Grégoire Pineau
f4e9dd4fb8
Fixed PSR rules
2012-06-14 12:10:01 +02:00
Chris Smith
5e4b2fcc8d
Test for detached heads yielding an invalid version
2012-06-14 11:03:26 +01:00
Nils Adermann
41215a0e47
Require first version of a root package alias, rather than alias
...
This makes sure that the alias will always be installed, even if it isn't
technically needed.
2012-05-24 23:29:08 +02:00
Jordi Boggiano
c10eb66ac4
Ignore references when parsing dev versions
2012-05-17 04:07:15 +02:00
Jordi Boggiano
0936670213
Add support for stabilities in lock file
2012-05-11 17:20:10 +02:00
Jordi Boggiano
ef28f3b067
Basic handling of stability flags
2012-05-09 19:10:06 +02:00
Jordi Boggiano
70a3c68f73
Add package stability
2012-05-09 19:10:01 +02:00
Michael Cullum
2653ece028
Adding author role to ArrayLoader Test
2012-05-01 16:03:45 +02:00
Danny Berger
8d6d155153
Add internal support for multiple default composer repositories.
2012-04-26 20:41:45 -04:00
Jordi Boggiano
a1306091f2
Fix locking behavior with --dev
2012-04-15 19:05:50 +02:00
Jordi Boggiano
89e095b4b5
Handle --dev installs/updates
2012-04-14 23:38:10 +02:00
Jordi Boggiano
e922404f19
Update/add tests
2012-04-14 23:38:06 +02:00
Jordi Boggiano
595182aec0
Add/fix tests
2012-04-13 02:47:55 +02:00
Jordi Boggiano
8654c43c62
Fix version parser regression, fixes #550
2012-04-09 16:00:02 +02:00
Jordi Boggiano
f604ca5762
Allow .x in version constraints as alias for .*
2012-04-08 17:02:43 +02:00
till
23902023e5
fix namespace
2012-03-08 14:17:22 +01:00
Martin Hasoň
736ea800e3
Added isDev method to the VersionParser class
2012-03-03 19:49:24 +01:00
Jordi Boggiano
1213067d96
Add test
2012-02-22 09:40:15 +01:00
Jordi Boggiano
59d2b1145c
Add lock file alias support and a bunch of fixes
2012-02-21 16:44:49 +01:00
Jordi Boggiano
82054f2060
Add aliasing: `foo as bar` will require foo and automatically make it replace the bar version
2012-02-21 14:03:24 +01:00
Jordi Boggiano
ae7107fc22
Add more test requirements
2012-02-19 16:57:28 +01:00
Jordi Boggiano
882496b926
Adjust version parser tests
2012-02-19 16:57:27 +01:00
Martin Hasoň
01be62d842
Updated ArrayDumper
2012-02-14 12:57:15 +01:00
Jordi Boggiano
56e43e4397
Add tests
2012-01-07 17:04:40 +01:00
Jordi Boggiano
462ebdf752
Detect lock file changes and warn users on install, fixes #75
2012-01-07 17:04:38 +01:00
Jordi Boggiano
f6b9488bf0
Move root package handling to a dedicated loader and make ArrayLoader more strict
2011-12-13 01:05:29 +01:00
Jordi Boggiano
e340022cce
Allow the use of self.version in package links
2011-11-23 16:47:23 +01:00
Jordi Boggiano
22858e81ef
Fix .* version constraints parsing to include nonstable versions
2011-11-23 16:41:27 +01:00
Jordi Boggiano
deb6ecd49b
Fix tests
2011-11-20 21:20:03 +01:00
Jordi Boggiano
b125926ad3
Fix tests
2011-11-20 15:46:15 +01:00
Jordi Boggiano
8e6f8ae57e
Add prettyVersion to packages, fixes #76
2011-11-20 15:06:12 +01:00
Jordi Boggiano
36a724fa51
Search only for packages from the local repository in the locker
2011-10-30 20:29:52 +01:00
Jordi Boggiano
e09f6900da
Fix up version parsing
2011-10-11 11:49:32 +02:00
Jordi Boggiano
19f89069a4
Add some more version normalization and support for branch names
2011-10-11 09:30:10 +02:00
everzet
21191ffa00
refactored PackageLock to Locker and stabilized it
2011-10-01 15:34:09 +03:00
Jordi Boggiano
ebe2a25ec6
Merge remote-tracking branch 'wilmoore/feature/memory-package-test-refactor'
...
Conflicts:
src/Composer/Package/MemoryPackage.php
2011-09-29 00:55:28 +02:00
Jordi Boggiano
fda206400a
Fix constraint parsing
2011-09-29 00:50:01 +02:00
Wil Moore III
97de4521d0
slight tweak to the casing of the provider method (providerversioningschemes -> providerVersioningSchemes)
2011-09-28 03:33:20 -06:00
Wil Moore III
eceb416564
eased up on the param documentation/annotations and lowercased the provider method.
2011-09-28 03:18:21 -06:00
Wil Moore III
fd5b1e0f1c
added annotations to test methods
2011-09-27 21:36:55 -06:00
Wil Moore III
b4df1d1a6b
follows code review comments @ https://github.com/composer/composer/pull/23#issuecomment-2208146
2011-09-27 21:32:36 -06:00
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.
2011-09-26 22:05:57 -06:00
Jordi Boggiano
da6566b343
Minor improvements to VersionParser
2011-09-26 20:34:58 +02:00
Jordi Boggiano
2e10b5c17e
Expand normalization feature and adjust tests
2011-09-26 00:59:32 +02:00
Jordi Boggiano
46a67733f8
Adjust codebase to the new VersionParser
2011-09-26 00:01:22 +02:00
Jordi Boggiano
f761cfe525
Refactored VersionParser
2011-09-26 00:01:14 +02:00
Jordi Boggiano
b620405ab0
Adjusted BasePackage::__toString()
2011-05-23 02:00:07 +02:00
Nils Adermann
ec94b76c7c
Tests for MultiConstraints on versions
2011-04-18 22:54:08 +02:00
Nils Adermann
d5dd86cd75
Correct version contraint matching and add tests for various cases
2011-04-18 22:45:11 +02:00
Nils Adermann
1870291949
Rename PackageTest to MemoryPackageTest
2011-04-18 22:44:14 +02:00
Jordi Boggiano
c6321e7277
Fix tests and invalid use statements
2011-04-17 23:45:37 +02:00