Published by Marco on 1. Jan 2016 22:50:28
Updated by Marco on 23. Mar 2016 16:15:03
------------------------------------------------------------------------

The summary below describes major new features, items of note and breaking
changes. The "full list of issues"

is also available for those with access to the Encodo issue tracker.

[Highlights]

Quino 2 is finally ready and will go out the door with a 2.1 rather than a 2.0
version number. The reason being that we released 2.0 internally and tested the
hell out of it. 2.1 is the result of that testing. It includes a lot of bug
fixes as well as API tweaks to make things easier for developers.

  * Made more improvements to the Startup/Configuration API for products
    ("QNO-4860" , "QNO-4991"
    , "QNO-4990"
    , "QNO-4911"
    )
  * Further refined the independent and properly decoupled assemblies
    ("QNO-5001" , "QNO-4609"
    , "QNO-2514"
    , "QNO-4980"
    , "QNO-4974"
    , "QNO-4865"
    )
  * Improved support for continuous integration and deployment of Quino packages
    and symbols via TeamCity ("QNO-5003"
    , "QNO-3738"
    , "QNO-4998"
    , "QNO-4756"
    , "QNO-4995"
    )
  * Improved the Web integration with ASP.NET WebAPI and MVC authentication
    filters ("QNO-4711" )
  * Addressed some performance regressions from 1.13 and added a suite of
    performance tests to keep better track of performance targets.

On top of that, I've gone through the backlog and found many issues that had
either been fixed already, were obsolete or had been inadequately specified. The
Quino backlog dropped from 682 to 542 issues.

  * 18 issues marked as won't fix and 46 issues marked as obsolete
    * Stop supporting Glimpse, although there is a Quino.Web.Glimpse package to
      use the support we do have ("QNO-4560"
      )
    * Stop supporting HtmlHelpers and other client-side rendering ("QNO-3921"
      , "QNO-3995"
      , "QNO-3804"
      , "QNO-3797"
      , "QNO-3974"
      , "QNO-4001"
      , "QNO-3992"
      , "QNO-3991"
      , "QNO-3973"
      , "QNO-3970"
      , "QNO-3969"
      , "QNO-3918"
      , "QNO-3866"
      , "QNO-3865"
      , "QNO-3857"
      , "QNO-3849"
      , "QNO-3848"
      , "QNO-3842"
      , "QNO-3839"
      , "QNO-3837"
      , "QNO-3836"
      , "QNO-3834"
      , "QNO-3833"
      , "QNO-3831"
      , "QNO-3824"
       w/sub-tasks, "QNO-3806"
      , "QNO-3805"
      , "QNO-3802"
      , "QNO-2288"
      )
    12 issues marked as incomplete (not sufficiently specified)
  * 2 issues marked as cannot reproduce
  * 97 issues marked as fixed


[Breaking changes]

The following changes are marked with Obsolete attributes, so you'll get a hint
as to how to fix the problem. Since these are changes from an unreleased version
of Quino, they cause a compile error.

  * UseMetaSchemaWinformDxFeedback() has been renamed to
    UseMetaschemaWinformDx()
  * UseSchemaMigrationSupport() has been renamed to
    UseIntegratedSchemaMigration()
  * MetaHttpApplicationBase.MetaApplication has been renamed to BaseApplication
  * The IServer.Run() extension method is no longer supported.
  * GetStandardFilters, GetStandardFiltersForFormsAuthentication() and
    GetStandardFiltersForUnrestrictedAuthentication are no longer supported.
    Instead, you should register filters in the IOC and use the
    IWebFilterAttributeFactory.CreateFilters() to get the list of supported
    filters
  * The ToolRequirementAttribute is no longer supported or used.
  * AssemblyExtensions.GetLoadableTypesWithInterface() is no longer supported
  * AssemblyTools.GetValidAssembly() has been replaced with
    AssemblyTools.GetApplicationAssembly(); GetExecutableName() and
    GetExecutablePath() have removed.
  * All of the constant expressions on the MetaBuilderBase (e.g.
    EndOfTimeExpression) are obsolete. Instead, use
    MetaBuilderBase.ExpressionFactory.Constants.EndOfTime instead.
  * All of the global values on MetaObjectDescriptionExtensions are obsolete;
    instead, use the IMetaObjectFormatterSettings from the IOC to change
    settings on startup.
  * Similarly, the set of extension methods that included GetShortDescription()
    has been moved to the  IMetaObjectFormatter. Obtain an instance from the
    IOC, as usual.