Tailor 1.0

I've been quiet for a few months. I've been working hard in making Tailor more feature-complete and stable, in preparation for a 1.0 release. I'm pleased to say that the 1.0 release is now ready.  This release includes:

  • A revamped modeling system based around protocols that can support storing records in value types
  • More value types throughout the framework
  • Improved thread safety
  • A new date and time library with cleaner semantics and naming and easier APIs for time arithmatic and date formatting
  • A standalone framework with helpers for unit testing

I'm thrilled by this week's news that Swift is going to be open source and available on Linux. There are still plenty of pending details on how this will work, but I'm going to be making Tailor work on Linux as soon as the new compiler is available. I'm also excited about the new features in Swift 2, especially protocol extensions and error handling. Once I get back from WWDC, I'm going to start working on integrating these features into Tailor as part of version 1.1.

Going forward, we're going to be using semantic version, consisting of a major version, a minor version, and a bug fix version. In the long term our goal is for minor versions to focus on self-contained new features that maintain backward-compatibility, and for major versions to focus on significant refactoring a that may require breaking backward-compatibility. While the framework is still young and Swift is still evolving rapidly, this may be difficult. We're going to take an aggressive stance on adopting new Swift versions, following Apple's lead. New minor or major versions of the framework will be built on the latest Swift version that has been fully released.

It's clear this week that Swift has a bright future for more than just Mac and iOS apps, and I think that Tailor is going to be a key part of that future. I can't wait to see what's next.