Assets 2

Changed

  • Relaxed minimum version requirement for zend-stdlib

@gsomoza gsomoza released this Apr 25, 2016 · 1 commit to master since this release

Assets 2

Big BC-break.

Changed

Refactored most of the library to take a more decoupled approach, removing the Timeline (it had too many responsibilities) and adding a DomainBus instead. Added unit tests that cover many more use-cases.

@gsomoza gsomoza released this Nov 11, 2015 · 39 commits to master since this release

Assets 2

Changed

  • Simplified DirectoryRepository's signature [BC break].
  • DirectoryRepository: Use SHA1 digests for version IDs by default (makes it easier to specify versions to migrate in the CLI).
  • Made resolver classes final [BC break].
  • Renamed AbstractReversibleComparator to AbstractComparator, since all comparators should be reversible now [BC break].
  • Removed isSortable flag from Sortable collections. Since sorting is a relatively expensive operation, we're making it the user's responsibility to trigger a sort on those collections on an as-needed basis.

Added

  • FilenameResolver, which simplifies specifying target versions for the user by allowing relative paths.

@gsomoza gsomoza released this Nov 6, 2015 · 47 commits to master since this release

Assets 2

IMPORTANT: this release introduces multiple BC-breaking changes.

This release introduces a RepositoryStack class that can be used to aggregate multiple repositories (e.g. to offer plugins the ability to add their own migrations inside their own packages/bundles).

It also introduces several BC-breaking changes with the goal of adding stability to the entire codebase:

  • One such major change is dropping the ebidtech/collection library in favor of doctrine/collections (a more mature library that also has no major dependencies).
  • Another notable change is that several interfaces have been changed to follow some extremely defensive php principles.

Changed

  • Renamed SimpleMigration to AbstractMigration to follow naming rules for abstract classes.
  • Refactor collections to use Doctrine\Collections
  • Change code to use VersionInterface instead of Version and TimelineInterface instead of Timeline wherever possible
  • Refactored TimelineFactory
  • Improved the "reverse" mechanism of collections by making the Comparator know how to return a reverse version of itself
  • Defensive PHP:
    • Made several classes final.
    • Made several methods in abstract classes and traits final as well.
    • Changed several class properties to private.

Added

  • Added interfaces for classes that were made final. E.g. VersionInterface.
  • Add IdResolver to the default Resolver stack
  • Made Repositories return sorted collections automatically via AbstractRepository

Removed

@gsomoza gsomoza released this Oct 28, 2015 · 65 commits to master since this release

Assets 2

ADDED

  • RepositoryStack class, which simply aggregates multiple repositories under a single object. Useful to load migrations from multiple directories (i.e. DirectoryRepositories).

@gsomoza gsomoza released this Sep 15, 2015 · 72 commits to master since this release

Assets 2

CHANGED

  • SortedCollection now delegates alias resolution to the new collection resolvers functionality.

ADDED

  • Collection resolvers.
  • Unit tests for AbstractStorage and FileStorage.
  • Various minor code-style fixes.

@gsomoza gsomoza released this Aug 13, 2015 · 82 commits to master since this release

Assets 2

[0.5.0] - 2015-08-13

Added

  • Support for aliases in sortable version collections.
  • Support for progress reports when running migrations in batch.

Changed

  • TimelineInterface, in order to support the new progress report additions.

@gsomoza gsomoza released this Aug 13, 2015 · 79 commits to master since this release

Assets 2

Changed

  • Made StorageInterface have discrete commands to add/remove individual versions.

Fixed

  • Fixed bug that reversed the meaning of version aliases 'last' and 'first' when rolling back.

@gsomoza gsomoza released this Jul 16, 2015 · 91 commits to master since this release

Assets 2

Timeline now accepts a MigrationBus as an optional 3rd parameter. This allows consumers to customise the Middleware that runs migrations to potentially inject their own custom middleware.

@gsomoza gsomoza released this Jul 14, 2015 · 98 commits to master since this release

Assets 2
Added SensionLabsInsight badge and fixed a few minor reported issues.