Swift 1.7.5 Release
I’m pleased to announce that Swift 1.7.5 has been released. This release is the work of twenty-seven contributors and includes several important new features and bug fixes.
You can get a tarball of this release from github. Like all Swift releases, you can upgrade your currently running clusters to this version with no client downtime.
The full changelog is also available with the source.
This release would not have been possible without the hard work of the many contributors and core developers who spent time submitting and reviewing patches. With the addition of the nine new contributors in this release, Swift has eighty-four total contributors. You can see the full list of contributors here.
I’d like to highlight a few of the bigger changes to Swift that have gone into this release.
X-Container-Meta-Access-Control-Allow-Headers on their containers to allow CORS support.
Custom log handlers
Custom log handlers allow depoyers to more easily integrate with external log processors. This mechanism provides the ability to add your own handler to the log messages that Swift generates. The full docs are here.
Swift has always supported single range requests, but the HTTP spec allows for requesting multiple ranges of a resource at once. Swift now supports this feature on standard objects, and support against large object manifests should be available in a later release.
Deployers can set the client limits in a config file. These limits include the maximum object size, the maximum number of items returned in listings, and the limits on metadata. You can read the fully-commented sample config file in the source code.
Replicators can run against a specific partition or device
Replicators can now replicate a specific partition or device. This feature allows deployers to prioritize data replication for data that may not be fully replicated. For example, although Swift detects missing replicas automatically, a deployer can choose to replicate a specific set of data before the automatic systems detect the error.