Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 0.16.0 #219

Closed
johanjanssens opened this issue Dec 23, 2019 · 0 comments
Closed

Release 0.16.0 #219

johanjanssens opened this issue Dec 23, 2019 · 0 comments
Assignees
Milestone

Comments

@johanjanssens
Copy link
Member

johanjanssens commented Dec 23, 2019

1. Editable collections #189

Implemented an unified REST level 3 API for editable collections supporting both database, filesystem, controller and webservice models. It requires changes in:

A collection is editable if it defines a schema describing the attributes and constraints for each attribute. Collections that do not provide a schema are not editable and can only be browsed using GET requests.

2. HTTP cache improvements #210

Implemented improvements to the HTTP cache adding two new cache related headers Cache-Tag and Cache-Status, and adding support for Last-Modified header and cache.

The cache now uses an implicit cache validation solution based on the unique hash of the page, together with the hashes of the different collections used to generate the page. If the page or one of the collections has changed since the last time the page was cached the cache will be considered invalid.

3. Http client cache #213

Implemented a RCF7234 compliant cache for the the http client offering following features:

  • Heuristic Freshness though the http_resource_cache_time config option
  • Cache Validation using ETag and Last-Modified headers
  • Cache Invalidation of none-safe requests
  • Freshening Stored Responses upon Validation
  • Freshening Responses via HEAD
  • Serving Stale Responses

4. Http cache proxy #215

Implemented a http cache proxy offering Cache Validation using ETag and Last-Modified and Cache Expiration using the max_age function parameter.

This is a real proxy, it doesn't cache itself, it only forwards, or validates. The cache is implemented as an anonymous function and expected an array based php file cache with 'headers' and 'content' properties.

5. Assets and filter improvements #218

Smaller improvements to assets handling to improve cacheability of assets in CDN's. All core js and css assets now include a version number and 'min' prefix to filename in case of minified versions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant