1
0
Fork 0
Commit Graph

1426 Commits (e3f957324d92a0b96d0dd4b9c2240de83c2027d9)

Author SHA1 Message Date
Rob Bast 5e73b21c70 return realpath() value (OSX uses a weird symlink structure) 2016-01-26 09:41:21 +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