Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Aug 27, 2015
  1. Updated project list

    authored
  2. Merge branch 'hotfix/cli'

    authored
    Close #9
  3. Updated CLI tooling

    authored
    - Broke with #8, due to change in how service configuration works. Updated to
      pull the container in the same fashion as the web bootstrap.
  4. Namespaced all templates

    authored
    - Moved related templates into separate directories.
    - Updated mustache template factory to add those directories with the
      appropriate namespace.
    - Updated code to use namespaced template references.
    - Updated templates with partials and/or inheritance to reference namespaced
      versions where appropriate.
    - Fixes to namespace/aggregate resolvers to ensure they work correctly.
  5. Allow using namespaced templates in Mustache

    authored
    - Added NamespacedMustacheResolver, for resolving namespaced template
      names. Allows adding templates by namespace, and can properly handle
      namespaced template names.
    - Added AggregateMustacheResolver; allows composing a priority queue of
      mustache resolvers.
    - Updated MustacheTemplate to always compose an aggregate mustache
      resolver, and for the aggregate to always compose a
      NamespacedMustacheResolver at -1 priority. All path operations proxy
      to the NamespacedMustacheResolver.
Commits on Aug 26, 2015
  1. Use Expressive error handling when possible

    authored
    Using for:
    
    - 405
    - 404
    - all other errors except 401
    
    This allowed removing most of the post pipeline middleware. Local
    configuration now uses the Whoops error handler, while the templated
    error handler is used for production.
  2. Refactored configuration and container creation

    authored
    - Used technique from expressive manual
  3. Updated dependencies to latest stable versions

    authored
    - Also, explicitly added aura/router, as it's no longer part of the expressive
      requirements.
Commits on Aug 11, 2015
  1. Fix mustache renderer

    authored
    - For some reason, the `array` typehint was re-added, though I'd tested
      without it.
  2. Use template interface from zend-expressive

    authored
    - Removes `Mwop\Template\TemplateInterface`
    - Updates `Mwop\Template\MustacheTemplate` to follow `TemplateInterface`
      contract.
    - Updates all references to `Mwop\Template\TemplateInterface` to instead use
      `Zend\Expressive\Template\TemplateInterface`, both in code and configuration.
Commits on Aug 10, 2015
  1. Merge branch 'develop'

    authored
    Merge develop to master, closing #6.
  2. Merge branch 'feature/expressive' into develop

    authored
    Rewrites the site to use zend-expressive.
  3. Cleanup

    authored
    - Remove unused classes/services
    - Use `::class` constant whenever possible
    - Remove debug statements
  4. Better pagecache_rules.xml workflow

    authored
    - Cannot have it in gitignore, because then it is not in the deployment package.
      So, instead, remove it as soon as the deployment packages is built.
  5. Refactor console tooling

    authored
    - Moved all console classes into appropriate `Console` sub-namespaces
      (i.e., all blog console tools are under `Mwop\Blog\Console`, etc.).
      This makes finding and differentiating them easier.
    - Updated service definitions to reflect the above.
    - Updated console application to pull using new service names.
    - Updated Github AtomExtensionManager to be a standalone version,
      without using `Mwop\Services`.
    - Updated PrepPageCacheRules to read from a dist file and write to the
      final, adding the final to the gitignore; this resolves a
      long-standing gripe I've had with the tooling.
  6. Removed the Templated class

    authored
    - No longer relevant due to usage of TemplateInterface and direct rendering
      inside middleware.
  7. Removed the Services class and `getServiceContainer()` function

    authored
    - No longer relevant, due to ServiceManager usage.
  8. Fixed blog post caching

    authored
    - Some incorrect logic was preventing caching of posts.
    - The console tooling needed updating to use the ServiceManager instead of the
      homegrown service implementation.
    - The CachePosts console tooling needed updating to use the DisplayPost
      middleware, and to set the 'id' attribute on the request before invoking it.
    - Removed the obsolete `Blog\CachingMiddlewareFactory` and `Blog\Middleware`
      classes.
  9. Refactored blog

    authored
    - Separated each specific aspect into its own middleware:
      - ListPostsMiddleware handles listing posts and pagination of lists.
      - FeedMiddleware handles returning feeds.
      - DisplayPostMiddleware handles displaying a single post.
    - Caching is middleware surrounding another middleware, which simplifies
      its logic. A delegator factory creates the CachingMiddleware and
      injects it with the originally requested middleware.
    - The main middleware is a zend-expressive application that adds routes
      for tags, feeds, and posts, and then pipes a fallback middleware for
      listing posts.
Commits on Aug 8, 2015
  1. Moved all sub-apps to post_routing

    authored
    - These will match less frequently, so have them intercept only if
      routing fails.
  2. Refactored jobs

    authored
    - Middleware is now a MiddlewareFactory returning an Application
      instance that sets up the subpaths.
    - Now registered as a pre-routing middleware in the pipeline.
  3. Refactored authentication layer

    authored
    - Done as a discrete application.
    - Registered as as subapplication via pre_routing pipeline.
    - Updated ComicsFactory to return a MiddlewarePipe instead of just the
      ComicsPage; this allows it to add the UserSession as part of that
      discrete pipeline, intercepting before the ComicsPage to allow session
      initializatin.
  4. Updated Refactor

    authored
    Do not use end()
  5. Refactored NotAllowed

    authored
    - Expressive sets the `Allow` header, so we should only set it if not present.
  6. Refactored error handler

    authored
    - Use `TemplateInterface`
    - Return `HtmlResponse` instances with expected status codes
  7. Refactor comics page

    authored
    - Use `TemplateInterface`
    - Ensure authorization gateway works as expected
  8. Refactored Contact middleware to Expressive

    authored
    - Acts as its own Expressive application, and is
    - *Piped* to the main application.
    
    Discovered Aura.Router does not have a way to do optional qualifiers
    that do not have params (e.g. `{/}`), which requires registering the
    top-level route twice. :-(
    
    Additionally, it appears that I have some broken functionality throughout my
    app, as I was using `getHeader()` where I typically needed `getHeaderLine()`.
Something went wrong with that request. Please try again.