Jordi Boggiano
6035e462d8
Fix test when on feature branch
2021-02-17 23:43:35 +01:00
Jordi Boggiano
a54d16f8a6
Fix tests env usage
2021-02-17 23:26:40 +01:00
Jordi Boggiano
f7e8f7625f
Remove plugin installer hackery
2021-02-17 23:21:18 +01:00
Jordi Boggiano
7267533690
Add one more InstalledVersions test for upgrades showing a known issue with plugin upgrades
2021-02-15 17:57:57 +01:00
Jordi Boggiano
27d0c5c3ef
Add test deficiencies in installed versions as the runtime autoloaders are not prepended and do not grant access to the latest data
2021-02-12 11:12:42 +01:00
Jordi Boggiano
d3ba447b79
Full functional test-bed improvements
2021-02-12 11:09:00 +01:00
Jordi Boggiano
52d7c6c383
Fix/add tests and also handle case where a json object is used
2021-02-11 11:13:58 +01:00
Jordi Boggiano
902174d2a7
Improve error reporting when failing to load a package, fixes #9680
2021-02-10 11:24:59 +01:00
Ayesh Karunaratne
228428747a
Add support for autoloading Enums
...
PHP 8.1 supports Enums, and [Enums follow class-semantics](https://php.watch/versions/8.1/enums#class-semantics-autoload ).
Composer's class-map generator currently looks for `class`, `interface`, and `trait` keywords. If Composer is run in PHP 8.1 or later, Composer now additionally looks for `enum` keyword as well. This is similar to how Hack's `enum` support is added.
This PR also adds tests for basic enums, backed enums, namespaced enums, and an enum that implements an interface and extends a class.
2021-02-06 15:51:18 +07:00
Arnaud Vanwambeke
7402ef33fc
Dont recommend to use with all dependencies option when it is already used
2021-02-03 23:43:35 -05:00
Jordi Boggiano
5e956afa2f
Try fixing the build
2021-02-01 13:32:34 +01:00
Jordi Boggiano
07b8c23f02
Merge branch '1.10'
2021-01-27 15:46:58 +01:00
Jordi Boggiano
37c5e9961c
Merge remote-tracking branch 'nicolas-grekas/path-version' into 1.10
2021-01-27 15:20:38 +01:00
Jordi Boggiano
92313447d6
Filter out exclude-from-classmap rules to avoid generating very long regexes, fixes #9487
2021-01-27 15:10:32 +01:00
Nicolas Grekas
725b33ee5a
Handle "versions" option in PathRepository, remove support for "branch-version"
2021-01-27 14:28:26 +01:00
Nicolas Grekas
079e501ac8
Revert "Merge pull request #9273 from nicolas-grekas/dev-version"
...
This reverts commit d2d606ced2
, reversing
changes made to 4a8dbcd145
.
2021-01-27 14:03:44 +01:00
Jordi Boggiano
51001dec60
Merge remote-tracking branch 'nicolas-grekas/install-stack'
2021-01-27 11:04:09 +01:00
Nicolas Grekas
ba94445bb9
Ensure InstalledVersions reports info about all currently registered class loaders
2021-01-27 10:39:35 +01:00
Jordi Boggiano
6c346d00f3
Merge pull request #9617 from clxmstaab/merge-checkout-reset
...
GitDownloader: combine checkout + reset commands into a single process
2021-01-26 11:01:58 +01:00
Jordi Boggiano
471a63c206
Merge pull request #9465 from BR0kEN-/issues/9464
...
#9464 : ZipArchiver incorrectly treats `.gitignore` directory inclusions
2021-01-26 10:42:26 +01:00
Markus Staab
4a6f1792ea
adjusted test expectations
2021-01-18 10:11:08 +01:00
Jordi Boggiano
d8a5db4cbb
Fix tests
2021-01-12 14:59:21 +01:00
Jordi Boggiano
57117384df
Merge pull request #9601 from Seldaek/json-fix
...
Fix JSON manipulation issue with large files and jit enabled
2021-01-12 14:45:13 +01:00
Jordi Boggiano
d94e638461
Fix tests and edge case
2021-01-12 14:00:02 +01:00
Jordi Boggiano
b021647e6f
Fix JSON manipulation issue with large files and jit enabled, fixes #9595
2021-01-12 11:02:43 +01:00
Jordi Boggiano
7f3a56f39b
Merge pull request #9360 from naderman/pool-builder-unlock-consider-all-constraints
...
PoolBuilder: Ensure versions matching locked constraints get loaded
2020-12-03 16:59:39 +01:00
Nils Adermann
db0656eab0
Duplicate partial update unlock but keep old version test with provide keyword
2020-12-01 14:55:05 +01:00
Jordi Boggiano
62bd81bf7a
Make sure the default branch alias is never used as a constraint by the VersionSelector
2020-11-26 14:24:22 +01:00
Jordi Boggiano
d00edab884
Merge pull request #9477 from naderman/fix-alias-conflicts
...
Explicit conflicts should conflict with aliases of packages too
2020-11-26 13:59:57 +01:00
Jordi Boggiano
e203809106
Fix test description
2020-11-26 13:59:35 +01:00
Nils Adermann
7197278fe9
Always install aliases together with their original package
...
Restores some Composer 1.x behavior like unbound constraints conflicting
with default branches unless they are branch aliased.
Simplifies conflicts with aliases because packages cannot be installed
without their aliases, so we do not need to know which aliases are
uninstalled in lock file or installed.json.
2020-11-26 12:10:07 +01:00
Jordi Boggiano
e857a8216c
Make sure mirror update fails if no lock file is present
2020-11-26 11:28:17 +01:00
Jordi Boggiano
2d025dce05
Make sure mirror updates do not fail if there are dev requirements and new requires are present, fixes #9514
2020-11-26 11:27:44 +01:00
Nils Adermann
58f358d028
Correct test case descriptions
2020-11-26 11:21:53 +01:00
Jordi Boggiano
b7d770659b
CS fixes
2020-11-22 14:52:39 +01:00
Jordi Boggiano
152694b574
Fix tests
2020-11-22 14:31:38 +01:00
Andrés De la Cruz
480a6439fd
Fix phpstan phpdocs issues ( #9478 )
2020-11-20 09:28:09 +01:00
Nils Adermann
1b337be236
Add expected lock files to conflict with branch alias tests, add install from lock test
2020-11-16 13:27:54 +01:00
Nils Adermann
c02d2842b0
Test conflict with an unrequired alias does not prevent install.
...
The alias still ends up being marked as installed as the install step
reads it from the branch alias in the lock file and doesn't know a
conflict required it to be skipped.
2020-11-13 16:55:35 +01:00
Nils Adermann
045b5c6b6b
Add test case verifying conflicts on alias prevent it from getting installed
2020-11-13 15:47:27 +01:00
Nils Adermann
6b48258432
Add test case for root alias on an unloadable package
2020-11-13 14:40:54 +01:00
Jordi Boggiano
7b183956d8
Make sure the root aliases always get installed when a package is updated, fixes #9448
2020-11-13 13:52:21 +01:00
Sergii Bondarenko
1ec5fa81e4
#9464 : Add the test to reveal the issue
2020-11-12 13:12:55 +02:00
Jordi Boggiano
e5a009ed80
Make sure empty objects are not left behind when removing requires/.. fixes #9462
2020-11-12 11:09:15 +01:00
Jordi Boggiano
b574f10d9d
Rename mainPackage to rootPackage in AutoloadGenerator and ensure we use RootPackageInterface
2020-11-12 10:41:06 +01:00
Jordi Boggiano
b8e40f6060
Fix tests
2020-11-11 11:49:50 +01:00
Jakub Bouček
8dc5effee7
AutoloadGenerator: Send error HTTP status on error
2020-11-05 09:57:48 +01:00
Jordi Boggiano
56c65a58e2
Make platform-check only check non-dev requires, refs #9412
2020-11-04 23:41:58 +01:00
Jordi Boggiano
8c1355f448
Improve output of platform check further in case errors are hidden
2020-11-04 22:28:17 +01:00
Jordi Boggiano
ec960d12b0
Merge remote-tracking branch 'jakubboucek/feature/jb-platform-check-tigger-error'
2020-11-04 21:54:12 +01:00
Jordi Boggiano
4797d4afc8
Fix tests
2020-11-04 21:24:30 +01:00
Jakub Bouček
2595de07ce
AutoloadGenerator: Trigger native PHP error on platform checks fails - tests
2020-11-04 12:28:15 +01:00
Jakub Bouček
6f1761fe18
AutoloadGenerator: Send error HTTP status on error - update tests
2020-11-04 11:18:21 +01:00
Tanel Pipar
ad2fcf8d92
Close zip archive after test finishes
2020-11-03 12:27:15 +02:00
Tanel Pipar
b57792a80a
Skip CWD-in-path test on Windows
2020-11-03 12:20:44 +02:00
Tanel Pipar
4d05cbffe3
Remove CWD from only the beginning of a path in ZipArchiver
...
Fixes https://github.com/composer/composer/issues/9403
2020-11-03 12:04:02 +02:00
Tanel Pipar
8f454c6708
Remove CWD from only the beginning of a path in ZipArchiver
...
Fixes https://github.com/composer/composer/issues/9403
2020-11-03 12:01:48 +02:00
zorn
5aa90baab1
Add new lines to platform reqs issues
2020-11-01 23:39:06 +10:00
Jordi Boggiano
28e591dcd4
Merge pull request #9387 from studioromeo/fix-git-non-master-default-failing-tests
...
Fix git init -b being unavailable for older versions
2020-10-30 18:03:00 +01:00
Robert Rhoades
2ced7b0bf8
Fix git init -b being unavailable for older versions
...
On older versions of git init doesn't have the -b flag. That
was introduced in v2.28.0.
Instead switch to using git checkout -b which has much
wider support (2.4.12 was as far back as I could check on
the docs).
2020-10-30 16:58:32 +00:00
Jordi Boggiano
372af31d23
Fix tests
2020-10-30 17:40:35 +01:00
Jordi Boggiano
f2f3b03fec
Fix config/create-project handling of repositories to prepend them by default as this is most likely the goal, fixes #9371
2020-10-30 14:16:40 +01:00
Jordi Boggiano
41daf69c87
Merge pull request #9379 from glaubinix/f/zip-util
...
Zip: ignore mac osx specific folder when searching for composer.json
2020-10-30 10:48:31 +01:00
Stephan Vock
d97c37f103
Zip: ignore mac osx specific folder when searching for composer.json
2020-10-29 22:30:12 +00:00
Robert Rhoades
e6c7ab693e
Fix running tests with non standard default branch
...
When the global git config has init.defaultbranch set to
something other than master the tests fail. This is because
the tests assume that the default branch is called master
but that may not be the case.
This fixes the tests by ensuring that when running git init
we ensure the default branch is called master regardless of
how git is configured.
2020-10-29 21:16:11 +00:00
Nils Adermann
63bed40818
PoolBuilderTest: Add a dependency which must not be loaded on unlock
2020-10-27 22:18:05 +01:00
Nils Adermann
ea42d13f37
PoolBuilderTest: check locked constraints are considered on partial update
2020-10-27 21:59:12 +01:00
Jordi Boggiano
ff74d0e686
Fix lock file generation with dev-master aliases to be compatible with Composer 1, fixes #9337
2020-10-27 20:50:26 +01:00
Nils Adermann
7bc2112f2b
InstallerTest: Add a test for partial updates
...
Needs to take constraints of locked packages into account
2020-10-27 17:02:31 +01:00
Nils Adermann
b5c0e68bc7
PoolBuilder: test case ensuring versions matching locked constraints get loaded
2020-10-27 16:52:31 +01:00
Jordi Boggiano
568d9206cc
Fix tests
2020-10-27 14:04:36 +01:00
Jordi Boggiano
4b8c2aa121
Fix default version to be semver parseable, fixes #9342
2020-10-25 22:22:19 +01:00
Jordi Boggiano
5bdb0cfff5
Merge pull request #9339 from Seldaek/fix-plugin-order
...
Fix plugin install order for plugins modifying downloads
2020-10-25 21:28:38 +01:00
Jordi Boggiano
2d4e1e0dce
Make sure Transaction sorts operations correctly to begin with
2020-10-25 14:06:45 +01:00
johnstevenson
2a913c7a68
Improve proxy error messages for streams
2020-10-24 18:20:31 +01:00
Jordi Boggiano
62eff8e979
Tweaks to new proxying code, refs #9324
2020-10-24 10:36:39 +02:00
johnstevenson
d47261eb93
Refactor proxy handling for Composer2
2020-10-23 21:38:29 +01:00
Nils Adermann
e868996bdd
Validate: Warn about providing or replacing packages you require
2020-10-23 22:02:13 +02:00
Jordi Boggiano
8564dd8dac
Allow Url::sanitize to escape URLs without scheme
2020-10-23 13:27:46 +02:00
johnstevenson
8feb83b22b
Remove duplicate StreamContextFactory ssl options
...
Added in Dec 2014 (commit 8dad846
), superseded in Jan 2016 (pr #4759 )
2020-10-23 13:25:17 +02:00
Jordi Boggiano
4d2f41a415
Merge pull request #9318 from naderman/validate-provide-replace-requirement
...
Validate: Warn about providing or replacing packages you require
2020-10-23 10:35:26 +02:00
Jordi Boggiano
447416a357
Fix typo
2020-10-22 16:16:02 +02:00
Nils Adermann
6409ed0fc2
Validate: Warn about providing or replacing packages you require
2020-10-22 11:28:19 +02:00
Jordi Boggiano
492bece6e2
Merge pull request #9317 from naderman/test-provider-satisfy-self
...
Test: Verify require for package provided or replaced by pkg itself is used
2020-10-22 10:46:05 +02:00
Nils Adermann
1d6c0865ca
Test: Verify replacing a package required by the same package satisfies the dep
2020-10-22 10:32:04 +02:00
Nils Adermann
290450214e
Test: Verify require for package provided by pkg itself is used
2020-10-22 10:26:28 +02:00
Nils Adermann
c0236c5ed2
Move slow integration test to separate fixtures directory and add to slow group
2020-10-22 10:14:17 +02:00
Nils Adermann
c37dce0bb3
Remove unnecessary hhvm conflict rules from test
2020-10-22 10:02:09 +02:00
Nils Adermann
2468cd20dd
Update test case for github issue 7665 to have correct output
2020-10-22 09:44:16 +02:00
Nils Adermann
e11f52c041
Add a test to reproduce github issue #7665
2020-10-22 09:44:16 +02:00
Jordi Boggiano
b74afd772b
Merge pull request #9309 from naderman/fix-solver-9290
...
MultiConflictRule conflict analysis handling on level 1 decisions
2020-10-21 18:40:03 +02:00
Nils Adermann
7b4cb9c370
Solver: Prevent infinite recursion in analyzeUnsolvableRule
...
In complex scenarios reasons for learned rules can themselves be learned
rules caused by other learned rules which had the some of the same
reasons. In this situation iterating over all problem rules requires
keeping track of which rules have previously been analyzed to avoid and
endless loop.
Side effect is that the sorting of problems including learned rules
changes slightly.
2020-10-21 17:11:13 +02:00
Nils Adermann
9641ad6025
SolverProblemException: Hide learnt rules on output
...
Results in too much error output which is not helpful. Very repetitive
and hard to understand. In issue 8903 even leads to endless recursion
bug.
2020-10-21 14:08:12 +02:00
Nils Adermann
853305063d
Add test case for github issue 9290
2020-10-21 13:33:39 +02:00
Jordi Boggiano
99a5469b5e
More hints
2020-10-18 13:13:44 +02:00
Jordi Boggiano
4d005a9786
Merge pull request #9296 from mcaskill/bugfix/file-downloader-cache-keys
...
Fix availability of $urls in FileDownloader
2020-10-16 11:24:03 +02:00
Jordi Boggiano
c01e3bd2f0
Make async test more robust
2020-10-16 11:23:03 +02:00
Chauncey McAskill
fcc072fdb6
Add test to check processed URL and cache key
2020-10-15 23:46:12 -04:00
Nils Adermann
fdde9e5933
On composer install we fix locked packages, but consider them locked for error reporting
2020-10-14 11:46:13 +02:00
Nils Adermann
74fb313c39
Separate locked packages from fixed packages in request
...
Locked packages are basically like removable fixed packages, so we still
only load one version, but we do not require their installation unless
something the user needs requires their use. So they automatically get
removed if they are no longer needed on any update.
2020-10-14 11:46:13 +02:00