Skip to content

Latest commit

 

History

History
887 lines (574 loc) · 24.5 KB

CHANGELOG.md

File metadata and controls

887 lines (574 loc) · 24.5 KB

Changelog

All notable changes to this project will be documented in this file, in reverse chronological order by release.

2.1.1 - TBD

Added

  • Nothing.

Changed

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

2.1.0 - 2017-12-11

Added

  • #155 adds $app typehinting in routes and pipeline config.

Changes

  • #160 switches to PSR-11 container references.

  • #153, #163 simplifies method of checking for static file requests.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #175 adds an authentication fix for fast-cgi.

  • #180 fixes loading config files on IBMi.

2.0.4 - 2017-10-12

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #178 fixes the installer to work with the most recent zend-stratigility releases by pinning http-interop/http-middleware to ^0.4.1 and zendframework/zend-expressive to ^2.0.5; without these changes, installation was leading to exceptions and partial installation previously.

2.0.3 - 2017-04-25

Added

  • Nothing.

Changed

  • #151 updates the following dependencies to use their newly released stable 1.0 branches:
    • zend-config-aggregator
    • zend-component-installer

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

2.0.2 - 2017-04-11

Added

  • Nothing.

Changes

  • Updated select dependencies to latest patch releases:
    • zend-component-installer: 0.7.1 (fixes issue with ConfigProvider detection)
    • zend-expressive-platesrenderer: 1.3.1 (fixes issue with UrlExtension's $fragmentIdentifier default value)
    • zend-expressive-tooling: 0.4.1 (brings in expressive binary, with its middleware:create command)

Deprecated

  • Nothing.

Removed

  • #146 removes obsolete raise_throwables key from default config.

Fixed

  • Nothing.

2.0.1 - 2017-03-14

Added

  • Nothing.

Changes

  • #141 changes the reference to the DefaultDelegate in config/autoload/dependencies.global.php to be a string instead of using ::class notation. Using a string name makes it clear the service is not a concrete class or interface name.

  • #143 updates dependencies to pick up the Expressive 2.0.2 release, zend-expressive-helpers 4.0 release, and renderer releases related to the helpers 4.0 release.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

2.0.0 - 2017-03-07

Added

  • #54 adds zfcampus/zf-development-mode as a development dependency, and places the application into development mode during initial installation. This allows production applications to be configured out-of-the-box with features such as configuration caching.

    A new tool, invokable via composer clear-config-cache, allows you to clear the configuration cache programmatically from the command line if necessary. Toggling development mode also clears the configuration cache.

    Development mode commands include:

    • composer development-enable
    • composer development-disable
    • composer development-status
    • composer clear-config-cache
  • #124 adds the ability to select the initial application structure from one of the following options:

    • Minimal (no default routes, middleware, or assets)
    • Flat (default routes and assets; src/ directory is assumed to be library code)
    • Modular (default routes and assets; src/ directory contains application modules)

    #138 updated the logic when creating a modular structure to also inject zendframework/zend-expressive-tooling as a development requirement, as it provides the tools:

    • ./vendor/bin/expressive-module create <modulename> (create and activate a new module in your application, including composer autoloading rules)
    • ./vendor/bin/expressive-module register <modulename> (register an existing module with your application, including composer autoloading rules)
    • ./vendor/bin/expressive-module deregister <modulename> (deregister an existing module from your application, including composer autoloading rules)

Changes

  • #54 updates the shipped config/config.php to leverage zend-config-aggregator for purposes of aggregating configuration. This change allows the use of third party "modules" (packages providing a ConfigProvider class that returns configuration on invocation) with the skeleton. Additionally, this update now adds zend-component-installer as a development requirement, which allows packages to declare if they have a configuration provider, and then prompt you as to whether or not you want it registered in your application.

  • #54 updates the skeleton to default to a programmatic pipeline. This results in the following:

    • Removal of the config/autoload/middleware-pipeline.global.php file.
    • Addition of a config/pipeline.php file, containing the various application calls necessary to build your application pipeline; this file may be edited to suit your application.
    • Removal of any routing configuration from the config/autoload/routes.global.php file. Routes are now defined in config/routes.php using programmatic statements instead. You may add as many routes as you desire to this file, segregate them into multiple files, or even add them via delegator factories on the Application instance.
  • #54 updates the following dependencies:

    • zend-expressive-router to ^2.0
    • zend-expressive-helpers to ^3.0.1
    • zend-expressive-aurarouter to ^2.0
    • zend-expressive-fastroute to ^2.0
    • zend-expressive-zendrouter to ^2.0
    • zend-expressive-platesrenderer to ^1.2
    • zend-expressive-twigrenderer to ^1.2.1
    • zend-expressive-zendviewrenderer to ^1.2.1
  • #120 switches the order of questions in the installer, to prompt for the container to use first. This will allow some optimizations for some third-party container systems such as Disco.

  • #132 modifies which file the installer writes Whoops configuration to when selected. Previously, it wrote it to config/autoload/local.php; it now writes it to config/autoload/development.local.php.dist, allowing enabling/disabling the Whoops integration via the zf-development-mode tooling.

  • #130 changes the structure of public/index.php slightly. In order to prevent creation of new globals, it now creates and calls a closure around creation of the container, retrieval of the application, registration of the pipeline and routes, and execution of the application.

Deprecated

  • Nothing.

Removed

  • #110 removes the global config array to ArrayObject conversion for all containers except Aura.Di.

Fixed

  • Nothing.

1.0.5 - 2017-01-25

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • #127 removes PHP 5.5 support.

Fixed

  • #127 registers the missing TwigEnvironmentFactory which was introduced in zend-expressive-twigrenderer 1.2.0. Not having this factory registered causes a deprecation message.

1.0.4 - 2016-12-01

Added

  • #113 removes leftover skeleton files.
  • #118 removes CHANGELOG.md, CONDUCT.md and CONTRIBUTING.md after setup.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #114 fixes composer check script.
  • #121 fixes composer serve script for Windows.

1.0.3 - 2016-09-01

Added

  • #93 adds support for Pimple "extensions" ($pimple->extend()) via the dependencies sub-key extensions, as follows:

    return [
        'dependencies' => [
            'extensions' => [
                SomeClass::class => ExtendingFactory::class,
            ],
        ],
    ];
  • #93 adds support to the Pimple container script to allow wrapping delegators (delegator factories from zend-servicemanager) as anonymous Pimple extensions.

Deprecated

  • Nothing.

Removed

  • #102 removes the development dependendy on ocramius/proxy-manager, as it is not required.

Fixed

  • #91 fixes the Pimple factory caching to work correctly with invokable classes used as factories.
  • #95 fixes the prompt for a minimal install to ensure that only n and y (or uppercase versions of each) are valid answers, looping until a valid answer is provided.
  • #101 removes filp/whoops from the composer.json prior to prompting the user for packages to install, ensuring it does not remain if a user selects a minimal install or to not use whoops for development.
  • #109 adds comprehensive, granular tests covering all functionality of the installer, raising coverage from 40% to 100%.

1.0.2 - 2016-04-21

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #85 updates the Aura.Di dependency to stable 3.X versions.
  • #88 modifies the installer to remove composer.lock from the .gitignore file during initial installation.
  • #89 updates the zend-stdlib dependency to allow usage of its v3 series.

1.0.1 - 2016-03-17

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #53 updates the default Pimple container script such that it now caches factory instances for re-use.
  • #72 updates the composer.json to remove the possibility of installing an Expressive RC version, updates zend-servicemanager to allow using 3.0 versions, and updates whoops to allow either 1.1 or 2.0 versions.
  • #80 updates the default ProxyManager constraints to also allow v2 versions.
  • #81 fixes an issue in the installer whereby specified constraints were not being passed to Composer prior to dependency resolution/installation, resulting in stale dependencies.
  • #78 updates the shipped default error templates to remove error/exception display. Users who really need this functionality can write their own templates; the project aims to deliver a "safe by default" setting.

1.0.0 - 2016-01-28

First stable release.

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

1.0.0rc8 - 2016-01-21

Eighth release candidate.

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #66 adds the 'error' => true, declaration to the 'error' pipeline middleware specification.
  • #67 updates the filp/whoops dependency for installer development to ^1.1 || ^2.0; the two are compatible for our use cases, but we should prefer the latest that can be installed. As 2.0 requires PHP 5.5.9, but our minimum PHP version is 5.5.0, we must specify both.

1.0.0rc7 - 2016-01-19

Seventh release candidate.

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #64 fixes the installer script to correctly rewrite the require-dev section and ensure only the development dependencies selected, as well as base requirements such as PHPUnit and PHP_CodeSniffer, are installed. As such, the --no-dev flag is no longer required, and development dependencies such as whoops are properly installed.

1.0.0rc6 - 2016-01-19

Sixth release candidate.

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #56 updates the composer serve command to include the public/index.php script as an argument. This ensures that asset paths that the application could intercept and serve will be passed to the application (previously, the built-in server would treat these as 404s, and never pass them to the application).
  • #57 updates the Apache configuration rules defined in public/.htaccess to omit several that could prevent the application from intercepting requests for assets.
  • #52 fixes the switch statement in the HomePageAction class to ensure the template name and documentation link are accurately found.
  • #59 updates the config/container.php implementation for zend-servicemanager such that it can work with either v2 or v3 of that library.
  • #60 updates the zend-expressive-helpers dependency to ^2.0, and updates the config/autoload/middleware-pipeline.global.php to follow the changes in middleware configuration introduced in zend-expressive #270. The change introduces convention-based keys for "always" (execute before routing), "routing" (routing, listeners that act on the route result, and dispatching), and "error", with reasonable priorities to ensure execution order.
  • #60 fixes the documentation for composer create-project to include the --no-dev flag; this is done as composer currently installs the development dependencies listed before the installer script rewrites the composer.json file. Running composer update or composer install within the project directory after the initial installation will install the development dependencies.

1.0.0rc5 - 2015-12-22

Fifth release candidate.

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #42 fixes some grammatical issues in the questions presented by the installer.
  • #45 fixes how JS and CSS assets are added to zend-view templates.
  • #48 adds unit tests for the OptionalPackages class (which provides the Composer installer scripts).
  • #49 updates the Pimple support to Pimple v3, ensuring Pimple users are using the latest stable release.

1.0.0rc4 - 2015-12-09

Fourth release candidate.

Added

  • #34 updates the zend-view configuration to register a factory for Zend\View\HelperPluginManager, as well as a view_helpers sub-key for registering custom view helpers.
  • #37 creates the subdirectories src/App/ and test/AppTest/, moving the subdirectories of each under those, and updating the composer.json autoloading directives accordingly. This change will allow new projects to implement a "modular" structure if desired, with a subdirectory per namespace.
  • #41 adds the composer script "serve", which fires up the built-in PHP webserver on port 8080; invoke using composer serve.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #23 updates the comment for the glob statements to ensure all 4 (not just 2!) possible matches are detailed.
  • #24 updates the config/config.php file to store cached configuration as a plain PHP file, so that it can simply include(); this will be faster than using JSON-serialized structures.
  • #30 updates the Twig configuration to follow the changes made for zendframework/zend-expressive-twigrenderer 0.3.0. The old configuration format will still work, though users should update their configuration to the new format. The change in this patch only affects new installs.
  • #33 updates to zendframework/zend-expressive-helpers ^1.2.
  • #33 adds configuration for auto-registering the new Zend\Expressive\Helper\UrlHelperMiddleware as pipeline middleware; this fixes an issue when using the zend-view renderer with the url() helper whereby the UrlHelper was being registered as a route result observer too late to receive the RouteResult.
  • #40 renames the namespace for the installer to ExpressiveInstaller.

1.0.0rc3 - 2015-12-07

Third release candidate.

Added

  • #20 adds the ability to specify a "minimal" install; when selected, the installer will install modified configuration, omit some files, and remove the default middleware and public assets.
  • #27 adds zendframework/zend-expressive-helpers as a dependency, and integrates the helpers into the configuration.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #13 updates the installer to also remove the dependency on composer/composer on completion.
  • #11 moves the route middleware service definitions into the routes configuration files.
  • #21 updates require statements in generated configuration files to use the __DIR__ constant to ensure files are located relative to the origin file.
  • #25 and #29 update minimum versions for each router and template implementation (final versions for RC3 are all at ^1.0).
  • #29 sets the zend-expressive required version to ~1.0.0@rc || ^1.0, to ensure a stable version is always installed.

1.0.0rc2 - 2015-10-20

Second release candidate.

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Updated expressive to RC2.
  • Updated subcomponent versions in installer to ^0.2

1.0.0rc1 - 2015-10-19

First release candidate.

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

0.5.3 - 2015-10-16

Added

  • #8 adds a routine to the installer that recursively removes the src/Composer/ directory of the skeleton, ensuring you have a clean start when creating a project.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

0.5.2 - 2015-10-13

Added

  • #7 adds a dependency on zend-stdlib for the purposes of globbing and merging configuration.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

0.5.1 - 2015-10-11

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #6 updates the zendframework/zend-view package configuration to remove the dependency on zendframework/zend-i18n, as it is now handled in the standalone zend-expressive-zendviewrenderer package.

0.5.0 - 2015-10-10

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #3 updates the skeleton to use zendframework/zend-expressive 0.4.0.

0.4.0 - 2015-10-09

First release as zend-expressive-skeleton.

Added

  • Nothing.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

0.3.0 - 2015-09-12

Added

  • Use zend-expressive template factories.
  • Use the zend view url helper in the layout template.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

0.2.0 - 2015-09-11

Added

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.

0.1.1 - 2015-09-08

Added

  • #b4a0923 adds support for Pimple 3.0.x. Still needs testing!

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • #11 fixes an issues where non stable packages are not being installed correctly.

0.1.0 - 2015-09-07

Initial tagged release.

Added

  • Everything.

Deprecated

  • Nothing.

Removed

  • Nothing.

Fixed

  • Nothing.