Skip to content

Releases: php-tuf/composer-stager

v2.0.0

16 Dec 11:24
abaf3e2
Compare
Choose a tag to compare

What's Changed

New Features

  • Add Domain\Value\Path\PathInterface::isAbsolute() by @TravisCarden in #62
  • Add an optional $cwd argument to Infrastructure\Value\Path\AbstractPath::__construct() by @TravisCarden in #63
  • Add Domain\Value\Path\PathInterface::raw() by @TravisCarden in #64
  • Add Domain\Service\Host\HostInterface by @TravisCarden in #65
  • Add an optional $cwd argument to Infrastructure\Factory\Path\PathFactoryInterface::create() by @TravisCarden in #66
  • Add the ability to Domain\Service\Filesystem\FilesystemInterface to distinguish between hard links and symlinks by @TravisCarden in #69
  • Forbid symlinks pointing to a directory with PhpFileSyncer by @TravisCarden in #109
  • Rename PathInterface::resolve() and ::resolveRelativeTo() by @TravisCarden in #114
  • Explicitly mark the API surface by @TravisCarden in #115
  • Make Domain\Service\Host\HostInterface::isWindows() static by @TravisCarden in #119
  • Merge Domain\Aggregate\PreconditionsTree\PreconditionsTreeInterface into Domain\Service\Precondition\PreconditionInterface by @TravisCarden in #127
  • Add Infrastructure\Service\Filesystem\Filesystem::isDirEmpty() by @TravisCarden in #155
  • Make preconditions trees return the status message of the first unfulfilled child if there is one by @TravisCarden in #156
  • Include "previous" exception details in thrown exception in Filesystem::copy() by @TravisCarden in #191
  • Add precondition for host support for running independent PHP processes by @TravisCarden in #192
  • Use an "exceptions" domain for all translatable exception messages by @TravisCarden in #196
  • Make translation domains overridable via service by @TravisCarden in #201
  • Add placeholder substitution to TranslatableMessage::__toString() by @TravisCarden in #203
  • Eliminate dynamic properties for PHP 8.2 compatibility by @TravisCarden in #210
  • Move most internal interfaces into the API by @TravisCarden in #211
  • Hide Symfony Process component behind a facade by @TravisCarden in #216
  • Introduce API\Process\Value\OutputTypeEnum for a safer API\Process\Service\OutputCallbackInterface by @TravisCarden in #221
  • Add API\Process\Service\ProcessInterface::run() by @TravisCarden in #222
  • Add API\Process\Service\ProcessInterface::setEnv() and ::getEnv() by @TravisCarden in #224
  • Make API\Translation\Service\TranslatorInterface an injectable service by @TravisCarden in #225
  • Put Path\Value\PathList behind a factory by @TravisCarden in #239
  • Rename API\Path\Value\PathInterface::resolved() and ::resolvedRelativeTo() to ::absolute() and ::relative(), respectively by @TravisCarden in #243
  • Make API\Path\Factory\PathFactoryInterface::create() non-static by @TravisCarden in #249
  • Add path canonicalization to PathList paths by @TravisCarden in #240
  • Add support for Windows directory separators to Internal\FileSyncer\Service\RsyncFileSyncer by @TravisCarden in #250
  • Merge HostInterface into EnvironmentInterface and move it into the API layer by @TravisCarden in #261
  • Add $timeout argument to relevant API\Precondition\Service\PreconditionInterface methods by @TravisCarden in #266
  • Downgrade Symfony components to support Drupal 10.0.x. by @TravisCarden in #269
  • Document and add tests for expanded Drupal core supported versions spread by @TravisCarden in #272
  • Add API\Process\Service\ProcessInterface::getErrorOutput() by @TravisCarden in #273
  • Inject FileSyncerFactoryInterface instead of depending on FileSyncerInterface directly by @TravisCarden in #274
  • Fix some untranslatable UI strings and add a PHPStan rule to prevent introducing any more by @TravisCarden in #285
  • Add API\Filesystem\Service\FilesystemInterface::filePerms() by @TravisCarden in #304
  • Stop trying to convert fileperms() result in Internal\Filesystem\Service\Filesystem::filePerms() by @TravisCarden in #306
  • Add API\Filesystem\Service\FilesystemInterface::chmod() by @TravisCarden in #303
  • Replace API\Filesystem\Service\FilesystemInterface::filePerms() with ::fileMode() by @TravisCarden in #307
  • Add API\Filesystem\Service\FilesystemInterface::touch() by @TravisCarden in #319
  • Add $env argument to Process creation chain by @TravisCarden in #324
  • Add $cwd argument to Process creation chain by @TravisCarden in #325
  • Add API\Path\Value\PathInterface::isRelative() by @TravisCarden in #328
  • Convert PathHelper into an injectable service by @TravisCarden in #329
  • Remove PhpFileSyncer and add rsync support for Windows by @TravisCarden in #334
  • Add support for symlinks that point to a directory by @TravisCarden in #336
  • Make sure active and staging directories are actually directories by @TravisCarden in #341
  • Add API\Precondition\Service\NoNestingOnWindowsInterface by @TravisCarden in #342
  • Make compatible with Symfony 7 by @TravisCarden in #351
  • Add methods to API\Process\Service\OutputCallbackInterface and create an implementation by @TravisCarden in #355
  • Make ComposerIsAvailable use ComposerProcessRunner instead of ProcessFactory by @TravisCarden in #357
  • Declare conflicts with vulnerable versions of symfony/process by @TravisCarden in #395

Other Changes

Read more

v2.0.0-rc6

19 Nov 18:43
5ab70d1
Compare
Choose a tag to compare
v2.0.0-rc6 Pre-release
Pre-release

What's Changed

Full Changelog: v2.0.0-rc5...v2.0.0-rc6

v2.0.0-rc5

17 Jul 18:59
9c5aef2
Compare
Choose a tag to compare
v2.0.0-rc5 Pre-release
Pre-release

What's Changed

Full Changelog: v2.0.0-rc4...v2.0.0-rc5

v2.0.0-rc4

14 Jun 18:47
37037eb
Compare
Choose a tag to compare
v2.0.0-rc4 Pre-release
Pre-release

What's Changed

Full Changelog: v2.0.0-rc3...v2.0.0-rc4

v2.0.0-rc3

06 Jun 02:01
52c02a3
Compare
Choose a tag to compare
v2.0.0-rc3 Pre-release
Pre-release

What's Changed

  • Fix process error output-capturing broken by upstream regression by @TravisCarden in #368

Full Changelog: v2.0.0-rc2...v2.0.0-rc3

v2.0.0-rc2

23 May 21:58
bf02845
Compare
Choose a tag to compare
v2.0.0-rc2 Pre-release
Pre-release

What's Changed

  • Make FileSyncer skip files based on contents, not modification time and filesize by @TravisCarden in #365

Full Changelog: v2.0.0-rc1...v2.0.0-rc2

v2.0.0-rc1

17 Apr 21:36
eaba6e5
Compare
Choose a tag to compare
v2.0.0-rc1 Pre-release
Pre-release

What's Changed

  • Add methods to API\Process\Service\OutputCallbackInterface and create an implementation by @TravisCarden in #355
  • Make ComposerIsAvailable use ComposerProcessRunner instead of ProcessFactory by @TravisCarden in #357

Internal Changes

Full Changelog: v2.0.0-beta5...v2.0.0-rc1

v2.0.0-beta5

03 Apr 13:43
e687ed9
Compare
Choose a tag to compare
v2.0.0-beta5 Pre-release
Pre-release

What's Changed

Full Changelog: v2.0.0-beta4...v2.0.0-beta5

v2.0.0-beta4

14 Mar 19:54
7df5ce8
Compare
Choose a tag to compare
v2.0.0-beta4 Pre-release
Pre-release

What's Changed

  • Loosen ymfony/translation-contractsconstraint for Drupal compatability by @TravisCarden in #271
  • Add API\Process\Service\ProcessInterface::getErrorOutput() by @TravisCarden in #273
  • Inject FileSyncerFactoryInterface instead of depending on FileSyncerInterface directly by @TravisCarden in #274
  • Add value deduplication to Internal\Path\Value\PathList::getAll() by @TravisCarden in #279
  • Fix some untranslatable UI strings and add a PHPStan rule to prevent introducing any more by @TravisCarden in #285
  • Add API\Filesystem\Service\FilesystemInterface::filePerms() by @TravisCarden in #304
  • Stop trying to convert fileperms() result in Internal\Filesystem\Service\Filesystem::filePerms() by @TravisCarden in #306
  • Add API\Filesystem\Service\FilesystemInterface::chmod() by @TravisCarden in #303
  • Replace API\Filesystem\Service\FilesystemInterface::filePerms() with ::fileMode() by @TravisCarden in #307
  • Make API\Filesystem\Service\FilesystemInterface::copy() preserve file permissions by @TravisCarden in #308
  • Rename FilesystemInterface::exists() to ::fileExists() by @TravisCarden in #314
  • Remove API\Filesystem\Service\FilesystemInterface::isDirEmpty() by @TravisCarden in #316
  • Rename Internal\Filesystem\Service\Filesystem::remove() to ::rm() by @TravisCarden in #318
  • Add API\Filesystem\Service\FilesystemInterface::touch() by @TravisCarden in #319
  • Add $env argument to Process creation chain by @TravisCarden in #324
  • Add $cwd argument to Process creation chain by @TravisCarden in #325
  • Add API\Path\Value\PathInterface::isRelative() by @TravisCarden in #328
  • Convert PathHelper into an injectable service by @TravisCarden in #329
  • Remove PhpFileSyncer and add rsync support for Windows by @TravisCarden in #334
  • Add support for symlinks that point to a directory by @TravisCarden in #336
  • Remove now-unused methods on API\Filesystem\Service\FilesystemInterface by @TravisCarden in #339
  • Make API\Filesystem\Service\FilesystemInterface::isDir() and ::isFile() resolve links like their PHP built-in counterparts by @TravisCarden in #340
  • Make sure active and staging directories are actually directories by @TravisCarden in #341
  • Add API\Precondition\Service\NoNestingOnWindowsInterface by @TravisCarden in #342
  • Wire new preconditions up to CommonPreconditions by @TravisCarden in #345

Internal Changes

Full Changelog: v2.0.0-beta3...v2.0.0-beta4

v2.0.0-beta3

30 Aug 14:44
9dd34d0
Compare
Choose a tag to compare
v2.0.0-beta3 Pre-release
Pre-release

What's Changed

  • Make API\Path\Factory\PathFactoryInterface::create() non-static by @TravisCarden in #249
  • Add path canonicalization to PathList paths by @TravisCarden in #240
  • Add support for Windows directory separators to Internal\FileSyncer\Service\RsyncFileSyncer by @TravisCarden in #250
  • Make $timeout arguments non-nullable by @TravisCarden in #254
  • Degrade gracefully when set_time_limit() is disabled by @TravisCarden in #256
  • Merge HostInterface into EnvironmentInterface and move it into the API layer by @TravisCarden in #261
  • Add $timeout argument to relevant API\Precondition\Service\PreconditionInterface methods by @TravisCarden in #266
  • Downgrade Symfony components to support Drupal 10.0.x. by @TravisCarden in #269

Full Changelog: v2.0.0-beta2...v2.0.0-beta3