1
0
Fork 0
Commit Graph

1531 Commits (5dfd23668ed9d8e3e4aa88ae0eedae416a7f3732)

Author SHA1 Message Date
Rob Bast 0e584aa980 resolve issue 2016-02-02 10:45:57 +01:00
Jordi Boggiano 49d7d65933 Add verbosity input support to IOInterface 2016-01-29 10:14:12 +00:00
Jefferson Carpenter b7845bb6c0 Update SolverTest.php 2016-01-28 20:13:44 -06:00
Jefferson Carpenter 087b901545 Update broken-deps-do-not-replace.test 2016-01-28 20:12:51 -06:00
Niels Keurentjes 3e06c801f4 Cleaned up check+conversion that was no longer required. 2016-01-27 13:49:52 +01:00
Niels Keurentjes 523362c7c5 Cleaner notation for expected exceptions in fixtures. 2016-01-27 13:46:14 +01:00
Niels Keurentjes 639ee0701c Introduced more generic, less invasive way to test for exceptions in fixtures, more in line with how phpunit works. 2016-01-27 13:19:08 +01:00
Niels Keurentjes bd241cb896 Included unit test for circular root dependencies. 2016-01-27 10:05:10 +01:00
Niels Keurentjes e5fe3d8a3b Expanded InstallerTest to support expecting Exceptions by supplying "EXCEPTION" as "--EXPECT--" 2016-01-27 10:04:45 +01:00
Rob Bast f829a160fb use a proper tmp directory
this test failed on OSX before, trying to create a directory at the root of the filesystem
2016-01-26 14:32:04 +01:00
Jordi Boggiano 1818b95149 CS fixes 2016-01-26 13:07:18 +00:00
Jordi Boggiano 783e0aec8a Merge remote-tracking branch 'alcohol/unique-test-directories' 2016-01-26 12:35:29 +00:00
Jordi Boggiano 5c944d45ac Merge pull request #4827 from curry684/issue-4203
Added more graceful warning suppression utility
2016-01-26 12:31:18 +00:00
Jordi Boggiano 5672f67475 Merge pull request #4829 from curry684/issue-4726
Globbing while resolving path repositories now normalizes to slashes
2016-01-26 12:18:47 +00:00
Rob Bast a8995b2572 use dirsep so phpunit on windows doesnt fail 2016-01-26 11:23:08 +01:00
Rob Bast adf3b956d0 try to use unique test directories
any tests that use the filesystem should have their own unique directory, as we run our test suite in parallel and
cleanup of tests (removing directories) should not interfere with currently running tests
2016-01-26 09:41:21 +01:00
Niels Keurentjes aef4820abe Normalization of URLs caused discrepancy on Windows with unit tests. 2016-01-26 09:08:57 +01:00
Jordi Boggiano 03e0d65f37 Allow stream wrapper usage in config dirs, fixes #4788 2016-01-25 23:40:16 +00:00
Niels Keurentjes 2c3e7cf5f2 Unit tests fail in a nasty way if ErrorHandler test is run before the Silencer and it's not silencing itself. 2016-01-25 23:51:11 +01:00
Niels Keurentjes 76c1645a0e Merge remote-tracking branch 'upstream/master' into issue-4203 2016-01-25 23:38:13 +01:00
Niels Keurentjes 18cd4f966b Added silencer utility to more gracefully handle error suppression without hiding errors or worse. Fixes #4203, #4683 2016-01-25 23:37:54 +01:00
Jordi Boggiano c5cb2327cf Merge remote-tracking branch 'bamarni/config-repo-options' 2016-01-25 21:28:22 +00:00
Bilal Amarni e727f9f5fe [Config command] allow to pass options when adding a repo 2016-01-25 19:25:10 +01:00
Chris Smith 304c268c3b Tidy up and general improvement of sAN handling code
* Move OpenSSL functions into a new TlsHelper class
* Add error when sAN certificate cannot be verified due to
  CVE-2013-6420
* Throw exception if PHP >= 5.6 manages to use fallback code
* Add support for wildcards in CN/sAN
* Add tests for cert name validation
* Check for backported security fix for CVE-2013-6420 using
  testcase from PHP tests.
* Whitelist some disto PHP versions that have the CVE-2013-6420
  fix backported.
2016-01-24 19:02:50 +00:00
Jordi Boggiano 837fa805ec Code tweaks, refs #4124 2016-01-22 19:09:44 +00:00
nevvermind aa45a48283 Refactoring
- changed "SPI" into something more familiar, like "implementation"
- throw exceptions on invalid implementation types or invalid class names
- use null instead of false when querying
- refactored the tests accordingly
2016-01-22 13:51:32 +00:00
nevvermind 681043355f Update test fixtures + fix test 2016-01-22 13:51:32 +00:00
nevvermind 58ded13eb9 Fix tests breaking on a api version bump
Make generic plugins work with many API versions as opposed to just 1.0.0.
2016-01-22 13:51:32 +00:00
nevvermind 2051d74774 Added Capable plugins for a more future-proof Plugin API
Plugins can now present their capabilities to the PluginManager, through which it can act accordingly, thus making Plugin API more flexible, BC-friendly and decoupled.
2016-01-22 13:51:32 +00:00
Rob Bast 17d6b98707 add A to root requirements 2016-01-21 18:40:33 +01:00
Rob Bast 0f09982858 add a test attempting to reproduce composer/composer#4795 2016-01-21 16:18:00 +01:00
Rob Bast 446f1b3e31 fix zip test 2016-01-21 10:22:12 +01:00
Jordi Boggiano fb848d2e07 Code cleanups 2016-01-16 16:50:28 +00:00
Jordi Boggiano e6f1c13d00 xz test tweak 2016-01-10 20:45:40 +00:00
Jordi Boggiano 5214620f05 Fix xz tests 2016-01-10 20:26:23 +00:00
Jordi Boggiano c1cc6bfecf Avoid doing too many loads of the remotefilesystem 2016-01-10 20:06:10 +00:00
Jordi Boggiano 5d015defb8 Merge remote-tracking branch 'origin/master' into tls-config 2016-01-10 16:10:22 +00:00
Jordi Boggiano 969263944c Rename var 2016-01-09 18:39:18 +00:00
Jordi Boggiano 44a00a28fa Merge remote-tracking branch 'chorry/4694-clean-temporary-dirs-in-tests' 2016-01-09 18:37:50 +00:00
Jordi Boggiano 48420a2411 Update deps and bump json-schema requirement, fixes #4756 2016-01-09 16:52:06 +00:00
Alexander Loutsenko 909a679ab5 Filesystem is not needed as a property for CacheTest 2015-12-14 18:52:02 +03:00
Alexander Loutsenko 397ae2d7c8 review fixes 2015-12-14 18:50:04 +03:00
Alexander Loutsenko fa5de786ff clean garbage dirs in tmp after composer tests #4694 2015-12-14 17:52:37 +03:00
Rob Bast c292122791 it looks like php 5.3.3 might not have openssl extension? 2015-11-30 15:51:49 +01:00
Jordi Boggiano ddd85afd32 Merge pull request #4633 from jaapio/feature/gitlabInstallPath
Adds support for gitlab installed in subfolder
2015-11-30 13:49:50 +00:00
Jaapio df92cb09ab extract regex to const. To be able to reuse it 2015-11-29 13:59:54 +01:00
Jordi Boggiano 8072448cf3 Adjust deduplication of files autoloads, refs 9710b26d3f 2015-11-26 10:39:16 +00:00
Jaapio b471440ea0 Adds support for gitlab install in subfolder
Since gitlab can be hosted on any url also subdirectories should be
supported. (e.g https://mycompany.com/gitlab).
This supports only http and https protocols since the gitlab api url
is derived from the package repository url. And the ssh protocol doesn't
support folders this way.
2015-11-23 22:05:37 +01:00
Jordi Boggiano fbab2bfa17 Move user agent definition to StreamContextFactory so it is available in all contexts 2015-11-23 15:12:33 +00:00
Jordi Boggiano 020c126c27 Fix CS 2015-11-21 21:51:43 +00:00
Jordi Boggiano a10bffec0e Merge remote-tracking branch 'GromNaN/gitlab' 2015-11-21 21:48:46 +00:00
Jordi Boggiano 966a982738 CS fixes 2015-11-21 19:28:10 +00:00
Jordi Boggiano 67a1924173 Merge remote-tracking branch 'Rudloff/xz' 2015-11-21 19:16:59 +00:00
Jordi Boggiano 1fe690f810 Autoload generator cleanups 2015-11-21 18:33:17 +00:00
Jordi Boggiano 3748c11709 Simplify files autoload include function, and make sure files are included once per package even if exactly the same, refs #4186 2015-11-21 18:30:44 +00:00
Jordi Boggiano 9710b26d3f Merge remote-tracking branch 'jeskew/feature/require_files_but_once' 2015-11-21 17:31:05 +00:00
Jordi Boggiano c0b49d09f3 Merge remote-tracking branch 'cw-ozaki/no-script-dump-autoload'
Conflicts:
	src/Composer/Autoload/AutoloadGenerator.php
	src/Composer/Command/DumpAutoloadCommand.php
2015-11-21 17:14:33 +00:00
Thiago Carvalho 320533bcf9 Fixes #4610 2015-11-21 08:58:52 +01:00
Jordi Boggiano cf6cd83335 Use writeError for xdebug warning and fix running test suite with xdebug 2015-11-19 17:37:32 +00:00
Jordi Boggiano f674261b96 Merge remote-tracking branch 'ockcyp/exclude-classmap-parent' 2015-11-14 15:33:55 +00:00
Jérôme Tamarelle 4255db9e31 Allows SSH urls for gitlab and detect the scheme
SSH urls uses HTTPS to request the API
2015-11-14 16:05:05 +01:00
Jordi Boggiano 4b269f4ded Follow stability option in create-project to select the best possible version, refs #4563 2015-11-14 15:04:04 +00:00
Jérôme Tamarelle ac68a721f4 Merge remote-tracking branch 'composer/master' into gitlab
Conflicts:
	doc/04-schema.md
	src/Composer/Util/RemoteFilesystem.php
2015-11-14 14:13:39 +01:00
Jerome TAMARELLE 6ccc562c0f Add tests on GitLab class (copied from GitHubTest) 2015-11-13 18:50:50 +01:00
Omer Karadagli 4046ae042d Up-level relative paths in exclude-from-classmap 2015-11-12 15:53:47 +00:00
Giorgio Premi fd0026b542 Detect infinite script call recursion 2015-11-09 15:34:11 +01:00
Giorgio Premi a25492d1b9 Allow composer script call with @ syntax 2015-11-09 15:34:11 +01:00
Remi Collet a6c6537529 skip no more needed with jsonc 1.3.9 2015-11-04 09:11:01 +01:00
Pierre Rudloff 879d34589b XzDownloader test 2015-11-03 23:29:20 +01:00
Jordi Boggiano 735d4a692e Fix validating array loader tests 2015-10-30 20:40:09 +00:00
Jordi Boggiano 6c16510743 Add support for wildcards in exclude-from-classmap, refs #1607 2015-10-30 19:12:30 +00:00
Jordi Boggiano f1b0c073ad Tweaked exclude-from-classmap: windows support, normalize paths and make sure they are all package-relative and do not leak to other packages, refs #1607 2015-10-30 00:22:04 +00:00
Jordi Boggiano 084f6de24e Merge remote-tracking branch 'trivago/add_exclude'
Conflicts:
	doc/04-schema.md
	src/Composer/Autoload/AutoloadGenerator.php
2015-10-30 00:00:44 +00:00
Rob c7ed232ef4 Merge pull request #4529 from jeroenseegers/warn-on-commit-reference
Generate a warning when a commit reference is used
2015-10-29 10:52:59 +01:00
Jordi Boggiano 599ad77167 Merge pull request #4542 from bd808/feature/support-merge-plugin
Allow easier manipulation of RootAliasPackage
2015-10-28 03:45:57 +00:00
Bryan Davis 06c44ce998 Add setters used by composer-merge-plugin to RootPackageInterface
Extend RootPackageInterface with setter functions used by
composer-merge-plugin and implement them for RootAliasPackage. This will
allow composer-merge-plugin and similar code that manipulates the root
package at runtime to ignore the difference between a RootPackage and
a RootAliasPackage.
2015-10-27 14:43:29 -06:00
Jordi Boggiano 82349bcb2a Fix support for extracting stability flags in multi-constraints, fixes #4440 2015-10-27 14:59:48 +00:00
Jordi Boggiano 507415e404 Make VersionSelector prefer stable by default and allow specifying a PHP version that must be matched, fixes #4318 2015-10-27 14:43:04 +00:00
Jeroen Seegers 279b5f0156 Drop irrelevant properties from composer_commit-ref.json 2015-10-27 14:20:45 +01:00
Jeroen Seegers f3dc31839f Refactor commit-ref validation
The require and require-dev arrays have been merged into one and no
longer user private methods/properties to collect warnings.
2015-10-27 13:59:29 +01:00
Jeroen Seegers 476c6f279b Add fixture for composer.json with commit-ref 2015-10-27 13:50:41 +01:00
Jordi Boggiano 3d9daea6a0 CS fixes 2015-10-25 15:19:15 +00:00
Jeroen Seegers 73e73c90fb Generate a warning when a commit reference is used
Closes #4485
2015-10-23 21:38:11 +02:00
Jordi Boggiano a54f84f05f Merge pull request #4479 from MakiCode/feature#4397
Added --file flag: Feature#4397
2015-10-13 14:09:04 +01:00
Rob Bast b523fc0b7b ran fixers 2015-10-13 11:35:51 +02:00
MakiCode 1c0b9cd65f Removed test for non-string file name check 2015-10-12 10:20:45 -05:00
MakiCode 63ede6c9dd Fixed issues with PR 2015-10-07 12:42:19 -05:00
MakiCode 0d00338bdb Added better messages and fixed bugs 2015-10-04 20:03:06 -05:00
MakiCode 906c1c2e66 Added check for filename in archive manager and added test 2015-10-04 19:53:07 -05:00
Jordi Boggiano ce08582671 Fix CS 2015-09-28 10:53:24 +01:00
Rob Bast a1427d7fd6 replace all occurences in code and comments 2015-09-24 16:32:36 +02:00
Rob Bast 1ccfc8eb96 add semver, deprecated existing classes 2015-09-24 16:28:28 +02:00
Dennis Birkholz 3febbc2cbf Test case to verify relative paths remain relative 2015-09-23 18:15:43 +02:00
Jordi Boggiano 8f44f9cc67 Merge pull request #4422 from dennisbirkholz/wildcard-repositories
Enable wildcards in path names for path repositories
2015-09-20 16:41:02 +01:00
Jordi Boggiano 8913ac2fff Merge pull request #4362 from bd808/classmap-authoritative-cli
Add cli argument for classmap-authoritative
2015-09-20 16:00:21 +01:00
Matthias Pigulla 3c08318ea0 Add test 2015-09-18 15:31:54 +02:00
Dennis Birkholz 323537ad0f Allow wildcards in repository path names. 2015-09-15 16:41:07 +02:00
Jordi Boggiano 74e56fd5c6 Merge remote-tracking branch 'szeber/master' 2015-09-12 22:53:27 +01:00
Jordi Boggiano 89c6a68a76 Updates to path repository and path downloader, refs #4365 2015-09-12 22:28:03 +01:00
Jordi Boggiano 3a79313b63 Merge remote-tracking branch 'sroze/feature/path-repository' 2015-09-12 21:05:12 +01:00
James Titcumb d85bad29d6 Warn about unpushed changes
`composer status` now prevents overwriting Git package if changes have not been pushed.
2015-08-30 00:30:16 +02:00
Samuel ROZE 6c16153302 Added repository tests 2015-08-25 22:06:48 +01:00
Samuel ROZE bb81e3721a Move the `proc_open` test in setUp 2015-08-25 09:19:10 +01:00
Zsolt Szeberenyi d7a94bda1b Change short array syntax to long for 5.3 compatibility 2015-08-21 16:57:31 +12:00
Zsolt Szeberenyi bfb83f1fb7 Add name and version to the relevant fields, move content hash checking to the Locker 2015-08-21 16:54:28 +12:00
Bryan Davis cc2b9cfca5 Add cli argument for classmap-authoritative
Add a `--classmap-authoritative (-a)` argument to `composer install`,
`composer update` and `composer dumpautoload`. This enables the same
authoritative classmap behavior as the existing `classmap-authoritative`
configuration setting. The option can be used for creating highly
optimized production autoloaders via `composer install --no-dev
--optimize-autoloader --classmap-authoritative` for projects where
multiple autoloaders are present and unnecessary `file_exists` calls
introduce performance issues.

Closes #4361
2015-08-19 22:18:54 -06:00
voroks 154092ba1a Added removing file 'include_path.php' (if it is empty). 2015-08-19 15:08:27 +08:00
Samuel ROZE dfccb686ce Replace usage of brackets by legacy array notation 2015-08-18 15:16:15 +01:00
Samuel ROZE 5261a5fa03 Move version guessing in `VersionGuesser` class 2015-08-18 14:58:18 +01:00
voroks 85de450fe9 Removed some extra assertions. 2015-08-15 16:41:35 +08:00
voroks 4fa1cb2e9c Removing file autoload_files.php was added (#4254) 2015-08-15 16:12:16 +08:00
Nicolas Grekas fbae6b1589 Revert "Merge pull request #3975 from marc-mabe/hotfix/3974"
This reverts commit bdb6ecb29e, reversing
changes made to 8a12e50a16.
2015-08-04 10:34:54 +02:00
Jordi Boggiano 06feb19b2c Merge pull request #4169 from remicollet/patch-1
Set this test as slow
2015-08-02 12:10:47 +01:00
Rob Bast ef37b86c81 closes #1508 - updated tests 2015-07-30 13:37:12 +02:00
Remi Collet 9b9cbfe111 fix for changes in justinrainbow/json-schema 1.4.4 2015-07-16 12:03:35 +02:00
Remi Collet c014e0882f ignore this test with 'jsonc' 2015-07-16 12:03:35 +02:00
Rob Bast 5ae9e7fe22 remove spdx files, introduce external library 2015-07-16 11:42:12 +02:00
Jordi Boggiano 7e0db8aa46 Merge pull request #4239 from naderman/memory-rules
Reduce memory usage of Rule objects
2015-07-14 13:34:24 +01:00
Jordi Boggiano c36d2a2e50 Merge pull request #4214 from legoktm/parse-links
Move VersionParser::parseLinks() to ArrayLoader::parseLinks()
2015-07-13 14:28:10 +01:00
Nils Adermann 6e81f63635 Reduce memory footprint of rules by storing data in blob
Not declaring the job property saves significant amounts of memory as
most rules leave it as null
2015-07-09 17:23:45 +02:00
Nils Adermann b869fa9662 Correct rule hash test 2015-07-08 19:36:13 +02:00
Jordi Boggiano d79427f1a7 Fix tests 2015-07-04 12:22:58 +01:00
Jordi Boggiano 852e4f4e26 Merge remote-tracking branch 'alcohol/output-script-command-in-verbose-mode' 2015-07-04 12:11:18 +01:00
Kunal Mehta 14d1f0f3f6 Move VersionParser::parseLinks() to ArrayLoader::parseLinks()
Working towards #3545.

parseLinks is a wrapper around VersionParser::parseConstraints() that
creates Link objects, and better belongs in ArrayLoader.
2015-07-03 19:35:54 -07:00
Jordi Boggiano 2438105e11 Merge pull request #4086 from legoktm/format-version
Move VersionParser::formatVersion() to BasePackage::getFullPrettyVersion()
2015-07-04 00:55:50 +01:00
Rob Bast 4019f7bb44 Revert "apply a regex solution instead of tokenizer"
This reverts commit 33a7305e22c8d4e2ce38586855fd3d4b7b2af3dd.
2015-07-03 12:22:16 +02:00
Rob Bast b5d286e27b apply a regex solution instead of tokenizer 2015-07-03 12:22:16 +02:00
Rob Bast e4118385a0 updated spdx related files 2015-07-03 12:22:16 +02:00
Kunal Mehta f634c6946d Update callers of VersionParser::formatVersion()
Tests were moved to BasePackageTest.
2015-07-02 00:06:56 -07:00
Kunal Mehta 99dab8aebd Move VersionParser::formatVersion() to BasePackage::getFullPrettyVersion()
Working towards #3545.

formatVersion() does not belong in VersionParser since it depends upon a
Package object, and is creating a more complete pretty formatted
version, not parsing anything.

The new getFullPrettyVersion() method can be seen as an extension to
getPrettyVersion(), and is located in BasePackage as a result.

Callers to VersionParser::formatVersion() were not updated in this
commit to demonstrate that no functionality was changed in this
refactor. They will be updated in a follow up commit.
2015-07-01 23:54:08 -07:00
Jonathan Eskew 42b025776a Move file identifier calculation to compile time 2015-06-30 09:22:51 -07:00
Jordi Boggiano 6a64041055 CS fixes 2015-06-30 15:38:32 +01:00
Jordi Boggiano a8e004c7e7 Merge pull request #4199 from sminnee/version-comparison-docs
>=2.3.0 now includes pre-releases, added docs for this and -stable suffix Fixes #4080.
2015-06-30 14:32:20 +01:00
Sam Minnee 2cd698874f Include pre-releases in >=2.3.0 comparison. Fixes #4080.
This is a change to the >=2.3.0 comparison. Without this change, such a
comparison will exclude pre-release versions.

The rationale is that this makes the comparison more consistent with
<2.3.0 (which excludes all pre-releases) and ~2.3.0 (which includes
pre-releases).
2015-06-30 13:10:20 +01:00
Rob Bast 0298cdc60d change delimiter to curly braces 2015-06-30 13:52:47 +02:00
Rob Bast e698636af4 added test to reproduce #4183 2015-06-29 09:42:40 +02:00
Jonathan Eskew 24c4322672 Use 5.3 compatible array syntax 2015-06-28 13:47:00 -07:00
Jonathan Eskew 868a872df2 Push the hash to $GLOBALS 2015-06-28 13:44:43 -07:00
Jonathan Eskew 61ed7a9547 Explicitly check if a file has already been required before requiring it 2015-06-27 14:05:59 -07:00
Rob Bast fd34c5883a added php script handler info as well 2015-06-24 09:21:36 +02:00
Remi Collet c350bceeea Set this test as slow 2015-06-21 07:46:08 +02:00
Jordi Boggiano ee1e2c6f15 Merge pull request #4167 from wimvds/fix-bitbucket-references
download correct Bitbucket archive reference when using --prefer-dist
2015-06-19 18:54:18 +01:00
Wim Vandersmissen 1ff2a02517 fix to download correct Bitbucket archive reference when using --prefer-dist 2015-06-19 15:07:16 +02:00
Jordi Boggiano a943827371 Show that no version was found in composer show/license if root package is auto-versioned, fixes #4158 2015-06-18 23:47:17 +01:00
Nils Adermann 75c501251d Revert "Merge remote-tracking branch 'naderman/load-no-providers'"
This reverts commit 3e85f82373, reversing
changes made to b025d0982b.
2015-06-18 15:40:27 +02:00
Jordi Boggiano 3e85f82373 Merge remote-tracking branch 'naderman/load-no-providers' 2015-06-18 11:32:37 +01:00
Jordi Boggiano b2173d28fc Fix 5.3.3 build 2015-06-16 11:43:55 +01:00
Jordi Boggiano e73448ae1e Add possessive quantifiers to avoid backtracking and fix segfault on large files, fixes #4153 2015-06-16 11:22:45 +01:00
Jordi Boggiano 8e9659bd83 Merge pull request #4139 from elazar/feature/tests-in-classmap
Resolves #4138: Removed *Test.php filtering from AutoloadGenerator->dump()
2015-06-14 10:10:46 +01:00
Zsolt Szeberenyi 50b560fe4c Add the hash of the parsed content of the composer.json to the lock file, and use it to verify the json is not changed 2015-06-12 22:24:31 +02:00
Jordi Boggiano 89540c5690 Support bg colors and more clearing values in html output formatter 2015-06-12 17:23:18 +01:00
Jordi Boggiano 29dbc3835f Fix html output formatter to work with latest symfony console 2015-06-12 17:10:19 +01:00
elazar 6c029a850c Resolves #4138: Removed *Test.php filtering from AutoloadGenerator->dump() 2015-06-12 10:52:55 -05:00
Rob Bast 9223f4a208 show command by default 2015-06-09 14:02:51 +02:00
Rob Bast 222ee004e0 modified test case 2015-06-09 09:02:32 +02:00
nevvermind 12c833864c Revert converting `1.0.0` to `^1.0`. 2015-06-08 22:45:20 +01:00
Nils Adermann e25b86c129 Fix composer repo test to match what composer repos send 2015-06-08 18:57:56 +02:00
gmsantosxl 84c9c30b63 Remove extra '/' when findShortestPath $from is a directory 2015-06-03 16:48:01 -03:00
Jordi Boggiano 17c2a8019e Merge pull request #4089 from nevvermind/plugin-api-versions
Make plugins have actual constraints instead of fixed versions
2015-06-03 11:37:52 +01:00
Rob Bast d59115d7fa make unit tests assume a disabled entity loader 2015-06-03 10:19:40 +02:00
nevvermind 3032f0a538 Refactor based on code review
- Move the version api getter to the PluginManager And make it such that it can be mocked, but not pollute the public interface. That means "protected" visibility.
- The plugin api version constant should still be used throughout the code.
- Use different fixtures class names
- Use regex possessive quantifiers for performance
- Use full words for readability
2015-06-02 17:40:32 +01:00
nevvermind eb2aa14830 Make plugins have actual constraints instead of fixed versions
Instead of developing plugins against a single, fixed Plugin API version - `"composer-plugin-api": "1.0.0"`, this change will allow plugin developers to use versions like `"composer-plugin-api": "~1.1"` or `"composer-plugin-api": ">=2.1 <3.0"`, aka actual Composer-compatible constraints.

Only the "1.0", "1.0.0" and "1.0.0" Plugin API versions will be regarded as BC versions, and internally converted to "^1.0"; every other declared version string will be kept as it is.

Because of this new constraint flexibility, plugin version mismatches will be skipped, which means those plugin will NOT be registered to the system. Previously, a mismatch triggered a warning, but plugins were still registered.
2015-06-02 14:10:09 +01:00
Rob Bast 89885140d3 Created a failing test case 2015-06-02 15:04:58 +02:00
Rob Bast 46e0a506b9 Added another testcase + fix 2015-06-02 14:20:48 +02:00
Rob Bast a256f3dfca Added one failing testcase and one successful
Demonstrates that it handles x.y.z properly as long as z !== 0
2015-06-02 14:03:45 +02:00
Jordi Boggiano 0081964428 Merge remote-tracking branch 'colinodell/fix-tag-ambiguity'
Conflicts:
	src/Composer/Downloader/GitDownloader.php
	tests/Composer/Test/Downloader/GitDownloaderTest.php
2015-05-31 12:52:27 +01:00
Jordi Boggiano 27aac31970 Fix tests for autocrlf=true checkouts, fixes #4049 2015-05-28 14:43:52 +01:00
Jordi Boggiano 52d290f5f2 trim token just in case and update tests 2015-05-07 00:37:08 +01:00
Nils Adermann 67f10c1601 PHP 5.3 this/that compatibility 2015-05-05 20:32:05 +02:00
Possum 29ca21f30e PHP version checks tweaking 2015-05-05 20:18:24 +02:00
Nils Adermann ec5416f03c loadDev parameter is nonsense, properly load packages in create command 2015-05-05 19:58:03 +02:00
Nils Adermann da02c53540 Update the composer repository whatprovides test to a loadrecursively test 2015-05-05 19:44:07 +02:00
Jordi Boggiano 21e92b869e Merge pull request #4000 from SpacePossum/json_testing
On Json tests failures show more test failure details
2015-05-05 17:41:44 +01:00
Possum d7f7418243 some more test failure details 2015-05-05 18:13:16 +02:00
Jordi Boggiano e8572ca6f9 Merge pull request #3998 from SpacePossum/use_https
Use HTTPS where possible
2015-05-05 16:42:33 +01:00
Jordi Boggiano 0e0cb62fb8 Add test for replace 2015-05-05 11:07:11 +01:00
Possum 2e99b9fdf5 Use https where possible 2015-05-04 19:37:57 +02:00
Nils Adermann 709943aca5 ComposerRepository works differently now, so comment out test until replaced 2015-05-04 17:30:53 +02:00
Jordi Boggiano ab02867015 Use natural sort to sort packages, refs #3872 2015-05-01 16:16:02 +01:00
Jordi Boggiano 081e26f4d7 Merge remote-tracking branch 'localheinz/feature/sort-packages' 2015-05-01 16:08:57 +01:00
Jordi Boggiano 414cf70008 Fix phar build test 2015-05-01 14:48:47 +01:00
Jordi Boggiano ebffb3c179 Move improvements towards reproducible builds, refs #3927 2015-05-01 11:54:55 +01:00
Jordi Boggiano d93406a668 Merge pull request #3956 from nevvermind/use-phpunit-preconditions
Use PHPUnit pre-conditions
2015-05-01 10:50:17 +01:00
Cees-Jan Kiewiet c9d9b5085a Replaced <error> with <warning> for abandoned package as it reflects the intention of this feature better 2015-04-30 23:34:26 +02:00
Jordi Boggiano bdb6ecb29e Merge pull request #3975 from marc-mabe/hotfix/3974
fixes #3974: Autoloader have to distinguish between files and directories
2015-04-30 18:26:28 +01:00
Marc Bennewitz 9455c49053 fixes #3974: Autoloader have to distinguish between files and directories 2015-04-30 19:17:19 +02:00
Jordi Boggiano 8a12e50a16 Merge pull request #3983 from alcohol/upgrade-dialoghelper
Upgrade DialogHelper to QuestionHelper
2015-04-30 17:10:26 +01:00
Nils Adermann 258fdcb44d Merge pull request #3986 from Seldaek/partial-update-keep-lock
Partial updates should not corrupt the lock if the installed repo is not up to date with it
2015-04-30 17:54:58 +02:00
Nils Adermann cb44f209f8 Merge pull request #3985 from Seldaek/update-urls
Check if package URLs are up to date after composer update is done
2015-04-30 17:48:43 +02:00
Jordi Boggiano 137c551247 Check if package URLs are up to date after an update op is done, fixes #3214 2015-04-30 16:41:28 +01:00
Jordi Boggiano 4507805508 Partial updates should not corrupt the lock if the installed repo is not up to date with it, fixes #3439, closes #3553 2015-04-30 16:39:08 +01:00
Nils Adermann b4ed331168 The Solver Request no longer depends on the Pool 2015-04-30 17:24:24 +02:00
Rob Bast 8cc6e4f67d Fixed two camelcase names 2015-04-30 12:17:13 +02:00
Rob Bast 1213d368f6 Updated tests for new QuestionHelper flow 2015-04-30 12:16:33 +02:00
Jordi Boggiano d6620195e5 Prioritize repository over package versions in the default policy, fixes #3509 2015-04-30 10:43:04 +01:00
Jordi Boggiano 00ca2a91a3 Fix typo 2015-04-30 00:08:45 +01:00
Jordi Boggiano 4ce0adb23c Use the caret operator for all require operations 2015-04-29 23:53:40 +01:00
Jordi Boggiano 43c1caad0d Merge remote-tracking branch 'Seldaek/caret-op-for-semver'
Conflicts:
	tests/Composer/Test/Package/Version/VersionSelectorTest.php
2015-04-29 23:49:27 +01:00
Jordi Boggiano a5dfaafa02 Add a fixture for the schema validation 2015-04-29 23:45:30 +01:00
Jordi Boggiano fa398e14c7 Fix indent detection in json files when an empty line starts the object 2015-04-29 22:42:57 +01:00
Jordi Boggiano 32a479a1e7 Fix subkey manipulation when the main key does not exist yet 2015-04-29 22:42:41 +01:00
Jordi Boggiano a57c51e8d7 Finalize platform override feature
- Added tests, docs
- Persist to lock file
- Add support in config command
- Added to json schema
2015-04-29 22:38:07 +01:00
Andrew Berry 5b7c5cf41e Fix missing semicolons. 2015-04-23 12:56:11 -04:00
Andrew Berry 59e14ff098 Fix test classes with invalid PHP. 2015-04-23 12:45:27 -04:00
Adrian Dragus 7834dacb88 Forgot to remove the actual calls 2015-04-21 01:26:09 +01:00
Adrian Dragus 96ff1c5014 Use PHPUnit pre-conditions
See https://phpunit.de/manual/current/en/incomplete-and-skipped-tests.html#incomplete-and-skipped-tests.requires.tables.api
2015-04-21 01:15:28 +01:00
Rob Bast b99d9465c1 Added testcase 2015-04-20 13:09:18 +02:00
Steve Buzonas b44c3bee52 add tests to cover different use cases of package install preferences 2015-04-18 20:59:51 -04:00
Steve Buzonas 73c1f8c0e0 prefer strings for install handling when possible 2015-04-18 18:31:16 -04:00
Steve Buzonas 124739d055 fix preference resolution to be backwards compatible 2015-04-18 18:25:59 -04:00
Jordi Boggiano e50b5fe990 Merge pull request #3853 from hakre/fix/git-checkout
Git Checkout Branch / File Differentiation
2015-04-15 02:46:16 +01:00
Jordi Boggiano 46924cf5f5 Merge pull request #3854 from hakre/fix/symlink-missing
Prevent fatal error on missing symlink() function in tests
2015-04-15 02:43:13 +01:00
Jordi Boggiano 6b3178b169 Merge remote-tracking branch 'isoroku/fix-misspellings'
Conflicts:
	doc/articles/handling-private-packages-with-satis.md
2015-04-15 02:21:44 +01:00
Jordi Boggiano d0695b2a6d Merge pull request #3784 from slbmeh/feature/update-rm-tests
Use data provider in RepositoryManager tests
2015-04-15 01:36:01 +01:00
jakoch 74a077dd3d updated spdx-license handling to include metadata
issue https://github.com/composer/composer/issues/3744

summary of changes
- replaced bin script "fetch-spdx-identifiers" by "update-spdx-licenses"
- "update-spdx-licenses" uses "Composer/Util/SpdxLicensesUpdater" to update "spdx-licenses.json" file with license identifier, fullname and osi-approved-status
- dropped "spdx-identifiers.json" (identifiers only)
- dropped "SpdxLicenseIdentifier", it's just "SpdxLicense" now
- modified "ShowCommand" to output the license with metadata and removed some unused method arguments (cleanup)
2015-03-29 22:46:38 +02:00
msiebeneicher 7522a33079 Merge branch 'master' of https://github.com/composer/composer into add_exclude
# By Jordi Boggiano (30) and others
# Via Jordi Boggiano (37) and Morgan Campbell (1)
* 'master' of https://github.com/composer/composer: (83 commits)
  Update 01-basic-usage.md
  Revert 331425bcb3 as well, fixes #3612
  Revert "Disable overwrites when no-ansi is present, fixes #3612"
  Update deps
  Use justinrainbow/json-schema 1.4
  Improved wording
  Fix docs basic-auth => http-basic
  Add test for Generics class
  Single variable for traits and enums
  Use HHVM_VERSION instead of HPHP_VERSION
  Add support for using classmap to autoload Hack enums
  Re-use existing autoloader suffix if available, fixes #3701
  Report Travis CI build success early
  Test on HHVM nightly releases. Allow to fail.
  Make parseJson safer
  Use get home from Config instead of factory
  Fix env override regression, fixes #3820
  [create-project] Used no progress value for dependencies
  Add docBlock and fix CS
  Fix output of first line of progress when output is not decorated, refs #3818
  ...
2015-03-25 16:27:23 +01:00
Andreas Möller 32538a21a2 Enhancement: Sort packages by importance, then alphabetically 2015-03-25 14:10:20 +01:00
Jordi Boggiano 66b73ea456 Revert "Disable overwrites when no-ansi is present, fixes #3612"
This reverts commit e0d36e19eb.

Conflicts:
	src/Composer/IO/ConsoleIO.php
2015-03-24 01:31:53 +00:00
isoroku e0657b60a2 Fix misspellings 2015-03-20 14:23:24 +00:00
hakre 03b634d114 Prevent fatal error on missing symlink() function in tests
The testsuite didn't run through for me because the php symlink() function
was missing.

It is only available on Windows Visa/Server 2008 or higher.

This commit fixes the issue by checking if the method exists, and if not,
marks the test as skipped because of a non-matching precondition.
2015-03-19 14:42:13 +01:00
hakre 7077803aa4 Git Checkout Branch / File Differentiation
This fixes a minor inaccuracy issue when creating git checkout commands
for branches.

The git checkout command used within `GitDownloader::updateToCommit()`
does not use the "`--`" sequence to separate branch from file parameters.

This leads to an inaccuary as git tries as well the branch name as file
name. If the non-existent branch is actually the name of a file, the file
is checked out. If the non-existent branch is not the name of a file, an
error message is given:

> error: pathspec 'non-existent-branch' did not match any file(s) known to
git.

Both cases are not expected for the program flow in
`GitDownloader::updateToCommit()`.

The only thing that is expected is a non-existent branch to fail to
checkout - but with a different error message:

> // reference was not found (prints "fatal: reference is not a tree:
 $ref")

This can be easily fixed by adding the missing separator when constructing
the command which is applied with this commit.
2015-03-19 12:50:06 +01:00
Fred Emmott 23d5e30fbc Add test for Generics class
Already worked, just adding a test.
2015-03-09 11:29:04 -07:00
Fred Emmott cb1ea889d6 Use HHVM_VERSION instead of HPHP_VERSION 2015-03-09 10:02:10 -07:00
Fred Emmott 33ea86573e Add support for using classmap to autoload Hack enums
fixes composer/composer#3823

Ran tests with both PHP5.5.9-1ubuntu4.5 and HHVM 3.6. Test fails on HHVM only
if I back out the ClassMapGenerator.php change.
2015-03-09 09:38:02 -07:00
Jordi Boggiano b80038804f Fix env override regression, fixes #3820 2015-03-06 16:21:40 +00:00
Jérôme Tamarelle c1edfbb65c Add tests on GitLabDriver
Add an interactive prompt for gitlab token

Update doc for gitlab-domains

Add tests on GitLabDriver::supports

Update doc + CS

Optimize branch detection + fix typos

Fix test on GitLab support as it depends on SSL

Remove useless method + fix repository URL containing .git
2015-03-04 00:08:44 +01:00
Henrik Bjørnskov 782c6303bc Initial GitLab Driver
This is a proof of concept, and mostly done to gather feedback on the
structure of the driver and to see if this is something that Composer
should include in core.

Various review changes based on Stof comments.

* Remove cleanup() as it is implemented by the abstract class.
* Remove wrong comment in getReferences
* Implement getSource (as GitHubDriver does)
* Finish phpDocs for methods.
2015-03-04 00:08:30 +01:00
Jordi Boggiano c7b0628d93 Fix tests 2015-02-27 12:27:56 +00:00
Steve Buzonas 484c04b5e5 update repository manager tests to use data provider and test for exception case 2015-02-26 03:19:26 -05:00
Jérémy Derussé 86e0b847be Allow plugins to register commands 2015-02-26 09:14:25 +01:00
Rob Bast 3d329622d7 overwrite -> overwriteError 2015-02-25 11:00:35 +01:00
Rob Bast cb336a5416 Implement writeError throughout Composer 2015-02-25 11:00:35 +01:00
Jordi Boggiano 0b4a9235f4 CS fixes 2015-02-24 14:22:54 +00:00
Jordi Boggiano c291b07abd Merge pull request #3764 from alcohol/retry-slow-test
retry slow test if timeout occurs
2015-02-23 22:41:42 +00:00
Jordi Boggiano 3efed220a6 Clean up event dispatching code and make package events extend installer events 2015-02-23 15:34:49 +00:00
Rob Bast 85955d82a6 Raise timeout to 5 minutes 2015-02-23 09:57:54 +01:00
Jordi Boggiano efcd1e4247 Merge pull request #3749 from alcohol/allow-setting-packagist-to-false-through-config-command
composer config repositories.packagist false
2015-02-17 19:41:03 +00:00
Jordi Boggiano 306f5518d6 Merge pull request #3750 from DavidPrevot/git
Config Git repository user
2015-02-17 15:34:19 +00:00
Jordi Boggiano 5d3c7ab6b7 Rename test files and descriptions 2015-02-17 14:43:09 +00:00
Jordi Boggiano b4698568d2 Adjust tests and fix installer code to create the pool using locked requirements and not the composer.json reqs 2015-02-17 14:37:33 +00:00
David Prévot e5ede671d2 Config Git repository user
One can’t assume a Git user is already setup for the tests.
2015-02-16 11:55:56 -04:00
Rob Bast ef92a06205 composer config repositories.packagist false
closes #3728, closes #3713, closes #3290, not sure about #3025
2015-02-16 16:44:13 +01:00
Matthias Derer 1425bb7fc3 added tests to reproduce the bug 2015-02-16 13:46:59 +01:00
Jordi Boggiano 781d8cb925 Merge pull request #3740 from bestform/ignore-root-requirements-in-installer
Ignore root requirements in installer when installing from locked state
2015-02-14 17:12:21 +00:00
Jordi Boggiano 53925295c3 Merge pull request #3699 from trivago/non_feature_branches
added non-feature-branches
2015-02-14 15:44:45 +00:00
Matthias Derer c9cff6387a removed requirements from the root package should we install from the lock file 2015-02-13 16:15:34 +01:00
msiebeneicher 98de300878 * Small improvement of the testExcludeFromClassmap unit test 2015-02-12 09:49:42 +01:00
msiebeneicher dad6b05ca7 Merge branches 'add_exclude' and 'master' of https://github.com/trivago/composer into add_exclude
* Resolve conflicts and update unit test
2015-02-11 18:04:57 +01:00
msiebeneicher f28785a49d Merge branches 'add_exclude' and 'master' of https://github.com/trivago/composer into add_exclude
* 'add_exclude' of https://github.com/trivago/composer:

# By Jordi Boggiano (239) and others
# Via Jordi Boggiano (184) and others
* 'master' of https://github.com/trivago/composer: (638 commits)
  Simplified syntax
  github deprecation changes
  fix bug in GitDriver::supports for remote repo
  strict check, testcase(s)
  Fix regex matching and add more tests for addSubNode, refs #3721, fixes #3716
  solve edge case for `composer remove vendor/pkg`
  chmod 644 src/Composer/Command/RemoveCommand.php
  Avoid failing on composer show of lazy providers
  Show more info when a download fails
  Add notion of autoloader skipping autoload-dev rules
  Satis grammar fix.
  remove unused statements
  removed needless output param
  + limit git ls-remote to heads + escape repo url
  add check for remote Repository in GitDriver::supports
  suppress the prefix
  Improve notice about /usr/local/bin
  Reuse current file permissions
  Add the P character to the regex pattern
  Added deprecated warning for the dev option
  ...

Conflicts:
	src/Composer/Autoload/AutoloadGenerator.php
	src/Composer/Autoload/ClassMapGenerator.php
2015-02-11 17:54:35 +01:00
Jordi Boggiano 1f1b334f46 Merge pull request #3711 from alcohol/github-api-v3-deprecations
GitHub api v3 deprecations, closes #3566
2015-02-11 10:28:17 +00:00