Skip to content

Releases: atuttle/Taffy

Version 2.2.0

21 Jan 15:01
Compare
Choose a tag to compare

Bugs Fixed

  • #170: Don't run Taffy's onError handler if errors occur inside a path included in unhandledPaths
  • #172: Updated examples and documentation to use onApplicationStart instead of applicationStartEvent and onRequestStart instead of requestStartEvent.
  • #178: ETag header was not being returned when client supplied an ETag but the value didn't match (e.g. client cache out of date)
  • #182: Dashboard would throw an exception when using Hoth exception logging because its config is a simple string instead of an object. Updated the dashboard code to account for this situation.
  • #184: Typo in baseRepresentation.cfc has been fixed.

New Features

  • #169: If your JSON POST body is not a structure ({...}) then it will be passed to the resource as named argument _body. This includes simple values, arrays, etc.
  • #179: New logo!

Thanks

Special thanks to Aaron Martone, Andy Matthews, and w1nterl0ng for your help designing the logo, and Tony Junkes for the final design!

Thanks to Richard Poole, Jesse Franceschini, Cody Martin, marbetschar, Lee Howard, and Bill Rawlinson for your bug reports and other contributions to this release!

Version 2.1.0

23 Nov 00:34
Compare
Choose a tag to compare

Bugs Fixed

  • #166 Dashboard: Fix a bug where body wasn't pre-filling if the resource only has post/put verbs. Thanks to @jbvanzuylen for the pull request!
  • #165 Fixed dashboard display issue in Firefox and IE (apparently floats don't work the same way everywhere?)
  • #173 Updated ColdSpring example to use onApplicationStart instead of applicationStartEvent. Thanks to @billrawlinson for the pull request!
  • #121 A few of the tests were failing on Railo4 BER - these have all been addressed
  • Fixed a weird issue with CGI variables on IIS7

New Features

  • #167 Added ability to delete a streamed file after streaming is complete. Thanks to @dominic-oconnor for the pull request!
  • #174 Added an exception logging adapter that dumps the error to the screen (cfdump) instead of logging it. Thanks to @billrawlinson for the pull request!
  • #155 Pass all non-framework metadata for resource functions (e.g. get/post/put/delete) to a new argument of onTaffyRequest. Enables fun stuff like role-based security. Here's a basic example of how to use it.
  • Show the original exception if another exception occurs during exception logging. (Both are shown, original below new)
  • Include a full, structured stack trace when returning exceptions as json (if it's available).
  • Added an exception logging adapter that doesn't log anything anywhere (good for dev if you're returning exceptions as json)

Version 2.0.2

20 Sep 03:04
Compare
Choose a tag to compare
  • Bug #159: CORS headers weren't properly returned if the resource throws an exception
  • Pull Request #161 from @Damonmiller with CF8 and Railo compatibility fixes

Version 2.0.1

06 Sep 20:08
Compare
Choose a tag to compare

Resolves issue #156

Version 2.0.0

30 Aug 17:47
Compare
Choose a tag to compare

New Features

  • #84 Dashboard Redesign
    • Completely new visual design: 117% less eye-bleedy!
    • #63 Dashboard API reload should maintain UI state
    • #64 Dashboard should show response time
    • #78 Display resources with syntax errors in dashboard
    • #112 Dashboard: Prettify returned JSON
    • #139 Dashboard should indicate Taffy Version
    • #140 "No resources found" dashboard helper message only displayed during a reload
    • #149 Generated docs suck
  • #138 JSONP support (GET requests only) - DOCS

Bugs Fixed

  • #135 var-scoping issue specific to CF8
  • #137 var-scoping issue during DI
  • #142 Viewing auto-gen'd documentation multiple times can cause an exception
  • #143 Dashboard throws exception if no resources are defined
  • #144 Properly support Access-Control-Request-Headers (for CORS AJAX)
  • #146 Sometimes CRC instantiation could choke
  • #148 Dependency injection via <cfproperty>/property wasn't working if the dependency was managed by a 3rd party bean factory (e.g. ColdSpring)
  • Fix a bug that could cause "200 200 OK"

Obsoletions

Since this is the first major-version change since Taffy 1.0, just over 3 years ago, it's time to clean house a bit. Together, we've learned a lot about what makes Taffy great and what wasn't so great about it. In the last 3 years, many things have been deprecated. As of 2.0.0, they are all now removed. Onward and upward!

Need a migration guide? Here it is!

In addition to the previously deprecated features being removed, we're also taking this opportunity to rip off a band-aid, as it were: The applicationStartEvent() and requestStartEvent() methods were always a little bit of a kludge, and the only benefit they provided was that you didn't need to worry about calling super.onApplicationStart() and super.onRequestStart() respectively.

While that hand-holding seemed like a good idea at the time, the truth is that calling super-methods is a pretty basic concept for OOP, and it's more important that I help you learn to do it right (if needed) than to hold your hand like a child. I want you to be awesome. Be awesome!

As of Taffy 2.0.0, instead of applicationStartEvent() you should use onApplicationStart() and call super.onApplicationStart() (required!); and instead of requestStartEvent(), use onRequestStart() and call super.onRequestStart() (required!). If you're not sure where the best place in your code would be to make the super- calls, check the Migration Guide.

Version 1.3.3

10 Aug 21:48
Compare
Choose a tag to compare

Resolves #147 in the 1.3.x maintenance branch.

Version 1.2.1

10 Aug 21:50
Compare
Choose a tag to compare

Resolves #147 in the 1.2.x maintenance branch