All Versions
Latest Version
Avg Release Cycle
50 days
Latest Release
2306 days ago

Changelog History

  • v2.1 Changes

    December 28, 2017

    ๐Ÿš€ Release Notes

    JLRoutes 2.1 has the following new features and improvements:

    ๐Ÿ†• New

    • 0๏ธโƒฃ It is now possible to change the default route definition class using +[JLRoutes setDefaultRouteDefinitionClass:]
    • ๐Ÿ‘€ Much more of the JLRRouteDefinition API is exposed in the header and intended to be overridden in subclasses (see README for more details).
    • ๐Ÿ‘€ A new class, JLRRouteHandler, has been added to provide helper methods for creating route handler blocks that are routed to classes or object instances (see README for more details).

    ๐Ÿ‘Œ Improvements

    • The initializer for JLRRouteDefinition no longer requires a scheme parameter to be provided
    • JLRRouteResponse now holds on to the final parameters passed to the handler block, via a parameters property
    • JLRRouteResponse and JLRRouteDefinition now conform to NSCopying
    • Many miscellaneous API improvements
    • Significant code cleanup
  • v2.0.6 Changes

    December 28, 2017

    ๐Ÿš€ Release Notes

    • ๐Ÿ“œ Rewrote optional route parsing to be much less buggy and fragile.
  • v2.0.5 Changes

    April 13, 2017

    ๐Ÿš€ Release Notes

    • ๐Ÿ“š Significantly improved documentation.
    • Minor code cleanup.
  • v2.0.4 Changes

    April 09, 2017

    ๐Ÿš€ Release Notes

    • โž• Added an option to control how URL host is treated (#89)
    • Other minor tweaks
  • v2.0.3 Changes

    April 06, 2017

    ๐Ÿš€ Release Notes

    • ๐Ÿ›  Fixed a regression where domain names were not properly excluded from the logic that prepends the URL host to the path components (#88).
    • โž• Added a few new methods for querying routes (#49):

      • (NSDictionary <NSString *, NSArray <JLRRouteDefinition *> *> *)allRoutes; - (NSArray <JLRRouteDefinition *> *)routes;
    • โž• Added a new method for registering a route by instance, allowing for subclasses/customization:

      • (void)addRoute:(JLRRouteDefinition *)routeDefinition;
    • โš  Turned on some stricter warning settings, including warnings as errors.

    • ๐Ÿ“š Started improving documentation, more to come on this front.

  • v2.0.2 Changes

    March 23, 2017

    ๐Ÿš€ Release Notes

    • ๐Ÿ“œ Query param evaluation now also takes into account the global shouldDecodePlusSymbols option. Previously it was only applied to parsed route parameters. (#87)
  • v2.0.1 Changes

    November 08, 2016

    ๐Ÿš€ Release Notes

    • ๐ŸŽ JLRoutes now explicitly requires iOS 8.0 or macOS 10.10 and higher, due to use of NSURLComponents queryItems. (#83)
      • If you require iOS 7 support, please continue to use version 1.6.4.
    • ๐Ÿ›  Fixed issues related to looping over the mutable routes array without copying it. (#81)
  • v2.0 Changes

    October 11, 2016

    ๐Ÿš€ Release Notes

    • ๐Ÿ“œ URL parsing has been entirely rewritten and now relies heavily on NSURLComponents
    • Split apart functionality into internal classes to make the code easier to read and maintain
    • ๐Ÿ›  Numerous misc bug fixes and improvements over the 1.x codebase
  • v1.6.4 Changes

    October 10, 2016

    Notable Changes

    • ๐Ÿ“œ Optional route parsing has been rewritten

    Important Note: This will be the last release of the current parsing logic and architecture. The next release will feature completely rewritten route parsing (using NSURLComponents) and a greatly improved internal architecture.

  • v1.6.3 Changes

    October 02, 2016

    Notable Changes

    • โœ… Massive code cleanup in both JLRoutes.m and the unit test .m.
    • ๐Ÿ—„ Deprecated a bunch of class-method APIs that I don't want to support anymore. All depreciated APIs can be easily replaced by calling the same method on the +globalRoutes instance instead.
    • ๐Ÿ›  Fixed a bug where unmatchedURLHandler would get called when evaluating canRouteURL:.


    • @Zeeker