1
0
Fork 0
Commit Graph

388 Commits (6b62f98d3c38c7b90c9b9e2fc8aec3ca41e0f3d9)

Author SHA1 Message Date
Beau Simensen 215556df7c Use --tags to get non-annotated tags as well. 2013-05-21 09:59:41 -05:00
Beau Simensen f9fe39e624 Fixed the existing test and added a new one for git tag version guessing. 2013-05-21 06:14:34 -05:00
Sam Minnee 324ef0f9bb Fixed upper bound of wildcard matches.
Follow-on from 95b4348afa
2013-05-20 19:10:04 +12:00
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