|
@@ -0,0 +1,892 @@
|
|
|
+# v1.0.0-rc.4
|
|
|
+## 10/29/2015
|
|
|
+
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fixed a fatal error if you have a collection with missing or invalid `@page: /route`
|
|
|
+
|
|
|
+# v1.0.0-rc.3
|
|
|
+## 10/29/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * New Page collection options! `@self.parent, @self.siblings, @self.descendants` + more
|
|
|
+ * Whitelist of file types for fallback route functionality (images by default)
|
|
|
+1. [](#improved)
|
|
|
+ * Assets switched from defines to streams
|
|
|
+1. [](#bugfix)
|
|
|
+ * README.md typos fixed
|
|
|
+ * Fixed issue with routes that have lang string in them (`/en/english`)
|
|
|
+ * Trim strings before validation so whitespace is not satisfy 'required'
|
|
|
+
|
|
|
+# v1.0.0-rc.2
|
|
|
+## 10/27/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added support for CSS Asset groups
|
|
|
+ * Added a `wrapped_site` system option for themes/plugins to use
|
|
|
+ * Pass `Page` object as event to `onTwigPageVariables()` event hook
|
|
|
+ * New `Data.items()` method to get all items
|
|
|
+1. [](#improved)
|
|
|
+ * Missing pipelined remote asset will now fail quietly
|
|
|
+ * More reliably handle inline JS and CSS to remove only surrounding HTML tags
|
|
|
+ * `Medium.meta` returns new Data object so null checks are possible
|
|
|
+ * Improved Medium metadata merging to allow for automatic title/alt/class attributes
|
|
|
+ * Moved Grav object to global variable rather than template variable (useful for macros)
|
|
|
+ * German language improvements
|
|
|
+ * Updated bundled composer
|
|
|
+1. [](#bugfix)
|
|
|
+ * Accept variety of `true` values in `User.authorize()` method
|
|
|
+ * Fix for `Validation` throwing an error if no label set
|
|
|
+
|
|
|
+# v1.0.0-rc.1
|
|
|
+## 10/23/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Use native PECL YAML parser if installed for 4X speed boost in parsing YAML files
|
|
|
+ * Support for inherited theme class
|
|
|
+ * Added new default language prepend system configuration option
|
|
|
+ * New `|evaluate` Twig filter to evaluate a string as twig
|
|
|
+ * New system option to ignore all **hidden** files and folders
|
|
|
+ * New system option for default redirect code
|
|
|
+ * Added ability to append specific `[30x]` codes to redirect URLs
|
|
|
+ * Added `url_taxonomy_filters` for page collections
|
|
|
+ * Added `@root` page and `recurse` flag for page collections
|
|
|
+ * Support for **multiple** page collection types as an array
|
|
|
+ * Added Dutch language file
|
|
|
+ * Added Russian language file
|
|
|
+ * Added `remove` method to User object
|
|
|
+1. [](#improved)
|
|
|
+ * Moved hardcoded mimetypes to `media.yaml` to be treated as Page media files
|
|
|
+ * Set `errors: display: false` by default in `system.yaml`
|
|
|
+ * Strip out extra slashes in the URI
|
|
|
+ * Validate hostname to ensure it is valid
|
|
|
+ * Ignore more SCM folders in Backups
|
|
|
+ * Removed `home_redirect` settings from `system.yaml`
|
|
|
+ * Added Page `media` as root twig object for consistency
|
|
|
+ * Updated to latest vendor libraries
|
|
|
+ * Optimizations to Asset pipeline logic for minor speed increase
|
|
|
+ * Block direct access to a variety of files in `.htaccess` for increased security
|
|
|
+ * Debugbar vendor library update
|
|
|
+ * Always fallback to english if other translations are not available
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fix for redirecting external URL with multi-language
|
|
|
+ * Fix for Asset pipeline not respecting asset groups
|
|
|
+ * Fix language files with child/parent theme relationships
|
|
|
+ * Fixed a regression issue resulting in incorrect default language
|
|
|
+ * Ensure error handler is initialized before URI is processed
|
|
|
+ * Use default language in Twig if active language is not set
|
|
|
+ * Fixed issue with `safeEmailFilter()` Twig filter not separating with `;` properly
|
|
|
+ * Fixed empty YAML file causing error with native PECL YAML parser
|
|
|
+ * Fixed `SVG` mimetype
|
|
|
+ * Fixed incorrect `Cache-control: max-age` value format
|
|
|
+
|
|
|
+# v0.9.45
|
|
|
+## 10/08/2015
|
|
|
+
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fixed a regression issue resulting in incorrect default language
|
|
|
+
|
|
|
+# v0.9.44
|
|
|
+## 10/07/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added Redis back as a supported cache mechanism
|
|
|
+ * Allow Twig `nicetime` translations
|
|
|
+ * Added `-y` option for 'Yes to all' in `bin/gpm update`
|
|
|
+ * Added CSS `media` attribute to the Assets manager
|
|
|
+ * New German language support
|
|
|
+ * New Czech language support
|
|
|
+ * New French language support
|
|
|
+ * Added `modulus` twig filter
|
|
|
+1. [](#improved)
|
|
|
+ * URL decode in medium actions to allow complex syntax
|
|
|
+ * Take into account `HTTP_HOST` before `SERVER_NAME` (helpful with Nginx)
|
|
|
+ * More friendly cache naming to ease manual management of cache systems
|
|
|
+ * Added default Apache resource for `DirectoryIndex`
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fix GPM failure when offline
|
|
|
+ * Fix `open_basedir` error in `bin/gpm install`
|
|
|
+ * Fix an HHVM error in Truncator
|
|
|
+ * Fix for XSS vulnerability with params
|
|
|
+ * Fix chaining for responsive size derivatives
|
|
|
+ * Fix for saving pages when removing the page title and all other header elements
|
|
|
+ * Fix when saving array fields
|
|
|
+ * Fix for ports being included in `HTTP_HOST`
|
|
|
+ * Fix for Truncator to handle PHP tags gracefully
|
|
|
+ * Fix for locate style lang codes in `getNativeName()`
|
|
|
+ * Urldecode image basenames in markdown
|
|
|
+
|
|
|
+# v0.9.43
|
|
|
+## 09/16/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added new `AudioMedium` for HTML5 audio
|
|
|
+ * Added ability for Assets to be added and displayed in separate *groups*
|
|
|
+ * New support for responsive image derivative sizes
|
|
|
+1. [](#improved)
|
|
|
+ * GPM theme install now uses a `copy` method so new files are not lost (e.g. `/css/custom.css`)
|
|
|
+ * Code analysis improvements and cleanup
|
|
|
+ * Removed Twig panel from debugger (no longer supported in Twig 1.20)
|
|
|
+ * Updated composer packages
|
|
|
+ * Prepend active language to `convertUrl()` when used in markdown links
|
|
|
+ * Added some pre/post flight options for installer via blueprints
|
|
|
+ * Hyphenize the site name in the backup filename
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fix broken routable logic
|
|
|
+ * Check for `phpinfo()` method in case it is restricted by hosting provider
|
|
|
+ * Fixes for windows when running GPM
|
|
|
+ * Fix for ampersand (`&`) causing error in `truncateHtml()` via `Page.summary()`
|
|
|
+
|
|
|
+# v0.9.42
|
|
|
+## 09/11/2015
|
|
|
+
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fixed `User.authorise()` to be backwards compabile
|
|
|
+
|
|
|
+# v0.9.41
|
|
|
+## 09/11/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * New and improved multibyte-safe TruncateHTML function and filter
|
|
|
+ * Added support for custom page date format
|
|
|
+ * Added a `string` Twig filter to render as json_encoded string
|
|
|
+ * Added `authorize` Twig filter
|
|
|
+ * Added support for theme inheritance in the admin
|
|
|
+ * Support for multiple content collections on a page
|
|
|
+ * Added configurable files/folders ignores for pages
|
|
|
+ * Added the ability to set the default PHP locale and override via multi-lang configuration
|
|
|
+ * Added ability to save as YAML via admin
|
|
|
+ * Added check for `mbstring` support
|
|
|
+ * Added new `redirect` header for pages
|
|
|
+1. [](#improved)
|
|
|
+ * Changed dependencies from `develop` to `master`
|
|
|
+ * Updated logging to log everything from `debug` level on (was `warning`)
|
|
|
+ * Added missing `accounts/` folder
|
|
|
+ * Default to performing a 301 redirect for URIs with trailing slashes
|
|
|
+ * Improved Twig error messages
|
|
|
+ * Allow validating of forms from anywhere such as plugins
|
|
|
+ * Added logic so modular pages are by default non-routable
|
|
|
+ * Hide password input in `bin/grav newuser` command
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fixed `Pages.all()` not returning modular pages
|
|
|
+ * Fix for modular template types not getting found
|
|
|
+ * Fix for `markdown_extra:` overriding `markdown:extra:` setting
|
|
|
+ * Fix for multi-site routing
|
|
|
+ * Fix for multi-lang page name error
|
|
|
+ * Fixed a redirect loop in `URI` class
|
|
|
+ * Fixed a potential error when `unsupported_inline_types` is empty
|
|
|
+ * Correctly generate 2x retina image
|
|
|
+ * Typo fixes in page publish/unpublish blueprint
|
|
|
+
|
|
|
+# v0.9.40
|
|
|
+## 08/31/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added some new Twig filters: `defined`, `rtrim`, `ltrim`
|
|
|
+ * Admin support for customizable page file name + template override
|
|
|
+1. [](#improved)
|
|
|
+ * Better message for incompatible/unsupported Twig template
|
|
|
+ * Improved User blueprints with better help
|
|
|
+ * Switched to composer **install** rather than **update** by default
|
|
|
+ * Admin autofocus on page title
|
|
|
+ * `.htaccess` hardening (`.htaccess` & `htaccess.txt`)
|
|
|
+ * Cache safety checks for missing folders
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fixed issue with unescaped `o` character in date formats
|
|
|
+
|
|
|
+# v0.9.39
|
|
|
+## 08/25/2015
|
|
|
+
|
|
|
+1. [](#bugfix)
|
|
|
+ * `Page.active()` not triggering on **homepage**
|
|
|
+ * Fix for invalid session name in Opera browser
|
|
|
+
|
|
|
+# v0.9.38
|
|
|
+## 08/24/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added `language` to **user** blueprint
|
|
|
+ * Added translations to blueprints
|
|
|
+ * New extending logic for blueprints
|
|
|
+ * Blueprints are now loaded with Streams to allow for better overrides
|
|
|
+ * Added new Symfony `dump()` method
|
|
|
+1. [](#improved)
|
|
|
+ * Catch YAML header parse exception so site doesn't die
|
|
|
+ * Better `Page.parent()` logic
|
|
|
+ * Improved GPM display layout
|
|
|
+ * Tweaked default page layout
|
|
|
+ * Unset route and slug for improved reliability of route changes
|
|
|
+ * Added requirements to README.md
|
|
|
+ * Updated various libraries
|
|
|
+ * Allow use of custom page date field for dateRange collections
|
|
|
+1. [](#bugfix)
|
|
|
+ * Slug fixes with GPM
|
|
|
+ * Unset plaintext password on save
|
|
|
+ * Fix for trailing `/` not matching active children
|
|
|
+
|
|
|
+# v0.9.37
|
|
|
+## 08/12/2015
|
|
|
+
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed issue when saving `header.process` in page forms via the **admin plugin**
|
|
|
+ * Fixed error due to use of `set_time_limit` that might be disabled on some hosts
|
|
|
+
|
|
|
+# v0.9.36
|
|
|
+## 08/11/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added a new `newuser` CLI command to create user accounts
|
|
|
+ * Added `default` blueprint for all templates
|
|
|
+ * Support `user` and `system` language translation merging
|
|
|
+1. [](#improved)
|
|
|
+ * Added isSymlink method in GPM to determine if Grav is symbolically linked or not
|
|
|
+ * Refactored page recursing
|
|
|
+ * Updated blueprints to use new toggles
|
|
|
+ * Updated blueprints to use current date for date format fields
|
|
|
+ * Updated composer.phar
|
|
|
+ * Use sessions for admin even when disabled for site
|
|
|
+ * Use `GRAV_ROOT` in session identifier
|
|
|
+
|
|
|
+# v0.9.35
|
|
|
+## 08/06/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added `body_classes` field
|
|
|
+ * Added `visiblity` toggle and help tooltips on new page form
|
|
|
+ * Added new `Page.unsetRoute()` method to allow admin to regenerate the route
|
|
|
+2. [](#improved)
|
|
|
+ * User save no longer stores username each time
|
|
|
+ * Page list form field now shows all pages except root
|
|
|
+ * Removed required option from page title
|
|
|
+ * Added configuration settings for running Nginx in sub directory
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed deep translation merging
|
|
|
+ * Fixed broken **metadata** merging with site defaults
|
|
|
+ * Fixed broken **summary** field
|
|
|
+ * Fixed broken robots field
|
|
|
+ * Fixed GPM issue when using cURL, throwing an `Undefined offset: 1` exception
|
|
|
+ * Removed duplicate hidden page `type` field
|
|
|
+
|
|
|
+# v0.9.34
|
|
|
+## 08/04/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added new `cache_all` system setting + media `cache()` method
|
|
|
+ * Added base languages configuration
|
|
|
+ * Added property language to page to help plugins identify page language
|
|
|
+ * New `Utils::arrayFilterRecursive()` method
|
|
|
+2. [](#improved)
|
|
|
+ * Improved Session handling to support site and admin independently
|
|
|
+ * Allow Twig variables to be modified in other events
|
|
|
+ * Blueprint updates in preparation for Admin plugin
|
|
|
+ * Changed `Inflector` from static to object and added multi-language support
|
|
|
+ * Support for admin override of a page's blueprints
|
|
|
+3. [](#bugfix)
|
|
|
+ * Removed unused `use` in `VideoMedium` that was causing error
|
|
|
+ * Array fix in `User.authorise()` method
|
|
|
+ * Fix for typo in `translations_fallback`
|
|
|
+ * Fixed moving page to the root
|
|
|
+
|
|
|
+# v0.9.33
|
|
|
+## 07/21/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added new `onImageMediumSaved()` event (useful for post-image processing)
|
|
|
+ * Added `Vary: Accept-Encoding` option
|
|
|
+2. [](#improved)
|
|
|
+ * Multilang-safe delimeter position
|
|
|
+ * Refactored Twig classes and added optional umask setting
|
|
|
+ * Removed `pageinit()` timing
|
|
|
+ * `Page->routable()` now takes `published()` state into account
|
|
|
+ * Improved how page extension is set
|
|
|
+ * Support `Language->translate()` method taking string and array
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed `backup` command to include empty folders
|
|
|
+
|
|
|
+# v0.9.32
|
|
|
+## 07/14/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Detect users preferred language via `http_accept_language` setting
|
|
|
+ * Added new `translateArray()` language method
|
|
|
+2. [](#improved)
|
|
|
+ * Support `en` translations by default for plugins & themes
|
|
|
+ * Improved default generator tag
|
|
|
+ * Minor language tweaks and fixes
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix for session active language and homepage redirects
|
|
|
+ * Ignore root-level page rather than throwing error
|
|
|
+
|
|
|
+# v0.9.31
|
|
|
+## 07/09/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added xml, json, css and js to valid media file types
|
|
|
+2. [](#improved)
|
|
|
+ * Better handling of unsupported media type downloads
|
|
|
+ * Improved `bin/grav backup` command to mimic admin plugin location/name
|
|
|
+3. [](#bugfix)
|
|
|
+ * Critical fix for broken language translations
|
|
|
+ * Fix for Twig markdown filter error
|
|
|
+ * Safety check for download extension
|
|
|
+
|
|
|
+# v0.9.30
|
|
|
+## 07/08/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * BIG NEWS! Extensive Multi-Language support is all new in 0.9.30!
|
|
|
+ * Translation support via Twig filter/function and PHP method
|
|
|
+ * Page specific default route
|
|
|
+ * Page specific route aliases
|
|
|
+ * Canonical URL route support
|
|
|
+ * Added built-in session support
|
|
|
+ * New `Page.rawRoute()` to get a consistent folder-based route to a page
|
|
|
+ * Added option to always redirect to default page on alias URL
|
|
|
+ * Added language safe redirect function for use in core and plugins
|
|
|
+2. [](#improved)
|
|
|
+ * Improved `Page.active()` and `Page.activeChild()` methods to support route aliases
|
|
|
+ * Various spelling corrections in `.php` comments, `.md` and `.yaml` files
|
|
|
+ * `Utils::startsWith()` and `Utils::endsWith()` now support needle arrays
|
|
|
+ * Added a new timer around `pageInitialized` event
|
|
|
+ * Updated jQuery library to v2.1.4
|
|
|
+3. [](#bugfix)
|
|
|
+ * In-page CSS and JS files are now handled properly
|
|
|
+ * Fix for `enable_media_timestamp` not working properly
|
|
|
+
|
|
|
+# v0.9.29
|
|
|
+## 06/22/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * New and improved Regex-powered redirect and route alias logic
|
|
|
+ * Added new `onBuildPagesInitialized` event for memory critical or time-consuming plugins
|
|
|
+ * Added a `setSummary()` method for pages
|
|
|
+2. [](#improved)
|
|
|
+ * Improved `MergeConfig()` logic for more control
|
|
|
+ * Travis skeleton build trigger implemented
|
|
|
+ * Set composer.json versions to stable versions where possible
|
|
|
+ * Disabled `last_modified` and `etag` page headers by default (causing too much page caching)
|
|
|
+3. [](#bugfix)
|
|
|
+ * Preload classes during `bin/gpm selfupgrade` to avoid issues with updated classes
|
|
|
+ * Fix for directory relative _down_ links
|
|
|
+
|
|
|
+# v0.9.28
|
|
|
+## 06/16/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added method to set raw markdown on a page
|
|
|
+ * Added ability to enabled system and page level `etag` and `last_modified` headers
|
|
|
+2. [](#improved)
|
|
|
+ * Improved image path processing
|
|
|
+ * Improved query string handling
|
|
|
+ * Optimization to image handling supporting URL encoded filenames
|
|
|
+ * Use global `composer` when available rather than Grv provided one
|
|
|
+ * Use `PHP_BINARY` contant rather than `php` executable
|
|
|
+ * Updated Doctrine Cache library
|
|
|
+ * Updated Symfony libraries
|
|
|
+ * Moved `convertUrl()` method to Uri object
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix incorrect slug causing problems with CLI `uninstall`
|
|
|
+ * Fix Twig runtime error with assets pipeline in sufolder installations
|
|
|
+ * Fix for `+` in image filenames
|
|
|
+ * Fix for dot files causing issues with page processing
|
|
|
+ * Fix for Uri path detection on Windows platform
|
|
|
+ * Fix for alternative media resolutions
|
|
|
+ * Fix for modularTypes key properties
|
|
|
+
|
|
|
+# v0.9.27
|
|
|
+## 05/09/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added new composer CLI command
|
|
|
+ * Added page-level summary header overrides
|
|
|
+ * Added `size` back for Media objects
|
|
|
+ * Refactored Backup command in preparation for admin plugin
|
|
|
+ * Added a new `parseLinks` method to Plugins class
|
|
|
+ * Added `starts_with` and `ends_with` Twig filters
|
|
|
+2. [](#improved)
|
|
|
+ * Optimized install of vendor libraries for speed improvement
|
|
|
+ * Improved configuration handling in preparation for admin plugin
|
|
|
+ * Cache optimization: Don't cache Twig templates when you pass dynamic params
|
|
|
+ * Moved `Utils::rcopy` to `Folder::rcopy`
|
|
|
+ * Improved `Folder::doDelete`
|
|
|
+ * Added check for required Curl in GPM
|
|
|
+ * Updated included composer.phar to latest version
|
|
|
+ * Various blueprint fixes for admin plugin
|
|
|
+ * Various PSR and code cleanup tasks
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix issue with Gzip not working with `onShutDown()` event
|
|
|
+ * Fix for URLs with trailing slashes
|
|
|
+ * Handle condition where certain errors resulted in blank page
|
|
|
+ * Fix for issue with theme name equal to base_url and asset pipeline
|
|
|
+ * Fix to properly normalize font rewrite path
|
|
|
+ * Fix for absolute URLs below the current page
|
|
|
+ * Fix for `..` page references
|
|
|
+
|
|
|
+# v0.9.26
|
|
|
+## 04/24/2015
|
|
|
+
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed issue with homepage routes failing with 'dirname' error
|
|
|
+
|
|
|
+# v0.9.25
|
|
|
+## 04/24/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added support for E-Tag, Last-Modified, Cache-Control and Page-based expires headers
|
|
|
+2. [](#improved)
|
|
|
+ * Refactored media image handling to make it more flexible and support absolute paths
|
|
|
+ * Refactored page modification check process to make it faster
|
|
|
+ * User account improvements in preparation for admin plugin
|
|
|
+ * Protect against timing attacks
|
|
|
+ * Reset default system expires time to 0 seconds (can override if you need to)
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix issues with spaces in webroot when using `bin/grav install`
|
|
|
+ * Fix for spaces in relative directory
|
|
|
+ * Bug fix in collection filtering
|
|
|
+
|
|
|
+# v0.9.24
|
|
|
+## 04/15/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added support for chunked downloads of Assets
|
|
|
+ * Added new `onBeforeDownload()` event
|
|
|
+ * Added new `download()` and `getMimeType()` methods to Utils class
|
|
|
+ * Added configuration option for supported page types
|
|
|
+ * Added assets and media timestamp options (off by default)
|
|
|
+ * Added page expires configuration option
|
|
|
+2. [](#bugfix)
|
|
|
+ * Fixed issue with Nginx/Gzip and `ob_flush()` throwing error
|
|
|
+ * Fixed assets actions on 'direct media' URLs
|
|
|
+ * Fix for 'direct assets` with any parameters
|
|
|
+
|
|
|
+# v0.9.23
|
|
|
+## 04/09/2015
|
|
|
+
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fix for broken GPM `selfupgrade` (Grav 0.9.21 and 0.9.22 will need to manually upgrade to this version)
|
|
|
+
|
|
|
+# v0.9.22
|
|
|
+## 04/08/2015
|
|
|
+
|
|
|
+1. [](#bugfix)
|
|
|
+ * Fix to normalize GRAV_ROOT path for Windows
|
|
|
+ * Fix to normalize Media image paths for Windows
|
|
|
+ * Fix for GPM `selfupgrade` when you are on latest version
|
|
|
+
|
|
|
+# v0.9.21
|
|
|
+## 04/07/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Major Media functionality enhancements: SVG, Animated GIF, Video support!
|
|
|
+ * Added ability to configure default image quality in system configuration
|
|
|
+ * Added `sizes` attributes for custom retina image breakpoints
|
|
|
+2. [](#improved)
|
|
|
+ * Don't scale @1x retina images
|
|
|
+ * Add filter to Iterator class
|
|
|
+ * Updated various composer packages
|
|
|
+ * Various PSR fixes
|
|
|
+
|
|
|
+# v0.9.20
|
|
|
+## 03/24/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added `addAsyncJs()` and `addDeferJs()` to Assets manager
|
|
|
+ * Added support for extranal URL redirects
|
|
|
+2. [](#improved)
|
|
|
+ * Fix unpredictable asset ordering when set from plugin/system
|
|
|
+ * Updated `nginx.conf` to ensure system assets are accessible
|
|
|
+ * Ensure images are served as static files in Nginx
|
|
|
+ * Updated vendor libraries to latest versions
|
|
|
+ * Updated included composer.phar to latest version
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed issue with markdown links to `#` breaking HTML
|
|
|
+
|
|
|
+# v0.9.19
|
|
|
+## 02/28/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added named assets capability and bundled jQuery into Grav core
|
|
|
+ * Added `first()` and `last()` to `Iterator` class
|
|
|
+2. [](#improved)
|
|
|
+ * Improved page modification routine to skip _dot files_
|
|
|
+ * Only use files to calculate page modification dates
|
|
|
+ * Broke out Folder iterators into their own classes
|
|
|
+ * Various Sensiolabs Insight fixes
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed `Iterator.nth()` method
|
|
|
+
|
|
|
+# v0.9.18
|
|
|
+## 02/19/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added ability for GPM `install` to automatically install `_demo` content if found (w/backup)
|
|
|
+ * Added ability for themes and plugins to have dependencies required to install via GPM
|
|
|
+ * Added ability to override the system timezone rather than relying on server setting only
|
|
|
+ * Added new Twig filter `random_string` for generating random id values
|
|
|
+ * Added new Twig filter `markdown` for on-the-fly markdown processing
|
|
|
+ * Added new Twig filter `absoluteUrl` to convert relative to absolute URLs
|
|
|
+ * Added new `processTemplate()` method to Twig object for on-the-fly processing of twig template
|
|
|
+ * Added `rcopy()` and `contains()` helper methods in Utils
|
|
|
+2. [](#improved)
|
|
|
+ * Provided new `param_sep` variable to better support Apache on Windows
|
|
|
+ * Moved parsedown configuration into the trait
|
|
|
+ * Added optional **deep-copy** option to `mergeConfig()` for plugins
|
|
|
+ * Updated bundled `composer.phar` package
|
|
|
+ * Various Sensiolabs Insight fixes - Silver level now!
|
|
|
+ * Various PSR Fixes
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix for windows platforms not displaying installed themes/plugins via GPM
|
|
|
+ * Fix page IDs not picking up folder-only pages
|
|
|
+
|
|
|
+# v0.9.17
|
|
|
+## 02/05/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added **full HHVM support!** Get your speed on with Facebook's crazy fast PHP JIT compiler
|
|
|
+2. [](#improved)
|
|
|
+ * More flexible page summary control
|
|
|
+ * Support **CamelCase** plugin and theme class names. Replaces dashes and underscores
|
|
|
+ * Moved summary delimiter into `site.yaml` so it can be configurable
|
|
|
+ * Various PSR fixes
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix for `mergeConfig()` not falling back to defaults
|
|
|
+ * Fix for `addInlineCss()` and `addInlineJs()` Assets not working between Twig tags
|
|
|
+ * Fix for Markdown adding HTML tags into inline CSS and JS
|
|
|
+
|
|
|
+# v0.9.16
|
|
|
+## 01/30/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added **Retina** and **Responsive** image support via Grav media and `srcset` image attribute
|
|
|
+ * Added image debug option that overlays responsive resolution
|
|
|
+ * Added a new image cache stream
|
|
|
+2. [](#improved)
|
|
|
+ * Improved the markdown Lightbox functionality to better mimic Twig version
|
|
|
+ * Fullsize Lightbox can now have filters applied
|
|
|
+ * Added a new `mergeConfig()` method to Plugin class to merge system + page header configuration
|
|
|
+ * Added a new `disable()` method to Plugin class to programmatically disable a plugin
|
|
|
+ * Updated Parsedown and Parsedown Extra to address bugs
|
|
|
+ * Various PSR fixes
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix bug with image dispatch in traditionally _non-routable_ pages
|
|
|
+ * Fix for markdown link not working on non-current pages
|
|
|
+ * Fix for markdown images not being found on homepage
|
|
|
+
|
|
|
+# v0.9.15
|
|
|
+## 01/23/2015
|
|
|
+
|
|
|
+3. [](#bugfix)
|
|
|
+ * Typo in video mime types
|
|
|
+ * Fix for old `markdown_extra` system setting not getting picked up
|
|
|
+ * Fix in regex for Markdown links with numeric values in path
|
|
|
+ * Fix for broken image routing mechanism that got broken at some point
|
|
|
+ * Fix for markdown images/links in pages with page slug override
|
|
|
+
|
|
|
+# v0.9.14
|
|
|
+## 01/23/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added **GZip** support
|
|
|
+ * Added multiple configurations via `setup.php`
|
|
|
+ * Added base structure for unit tests
|
|
|
+ * New `onPageContentRaw()` plugin event that processes before any page processing
|
|
|
+ * Added ability to dynamically set Metadata on page
|
|
|
+ * Added ability to dynamically configure Markdown processing via Parsedown options
|
|
|
+2. [](#improved)
|
|
|
+ * Refactored `page.content()` method to be more flexible and reliable
|
|
|
+ * Various updates and fixes for streams resulting in better multi-site support
|
|
|
+ * Updated Twig, Parsedown, ParsedownExtra, DoctrineCache libraries
|
|
|
+ * Refactored Parsedown trait
|
|
|
+ * Force modular pages to be non-visible in menus
|
|
|
+ * Moved RewriteBase before Exploits in `.htaccess`
|
|
|
+ * Added standard video formats to Media support
|
|
|
+ * Added priority for inline assets
|
|
|
+ * Check for uniqueness when adding multiple inline assets
|
|
|
+ * Improved support for Twig-based URLs inside Markdown links and images
|
|
|
+ * Improved Twig `url()` function
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix for HTML entities quotes in Metadata values
|
|
|
+ * Fix for `published` setting to have precedent of `publish_date` and `unpublish_date`
|
|
|
+ * Fix for `onShutdown()` events not closing connections properly in **php-fpm** environments
|
|
|
+
|
|
|
+# v0.9.13
|
|
|
+## 01/09/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added new published `true|false` state in page headers
|
|
|
+ * Added `publish_date` in page headers to automatically publish page
|
|
|
+ * Added `unpublish_date` in page headers to automatically unpublish page
|
|
|
+ * Added `dateRange()` capability for collections
|
|
|
+ * Added ability to dynamically control Cache lifetime programmatically
|
|
|
+ * Added ability to sort by anything in the page header. E.g. `sort: header.taxonomy.year`
|
|
|
+ * Added various helper methods to collections: `copy, nonVisible, modular, nonModular, published, nonPublished, nonRoutable`
|
|
|
+2. [](#improved)
|
|
|
+ * Modified all Collection methods so they can be chained together: `$collection->published()->visible()`
|
|
|
+ * Set default Cache lifetime to default of 1 week (604800 seconds) - was infinite
|
|
|
+ * House-cleaning of some unused methods in Pages object
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix `uninstall` GPM command that was broken in last release
|
|
|
+ * Fix for intermittent `undefined index` error when working with Collections
|
|
|
+ * Fix for date of some pages being set to incorrect future timestamps
|
|
|
+
|
|
|
+# v0.9.12
|
|
|
+## 01/06/2015
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added an all-access robots.txt file for search engines
|
|
|
+ * Added new GPM `uninstall` command
|
|
|
+ * Added support for **in-page** Twig processing in **modular** pages
|
|
|
+ * Added configurable support for `undefined` Twig functions and filters
|
|
|
+2. [](#improved)
|
|
|
+ * Fall back to default `.html` template if error occurs on non-html pages
|
|
|
+ * Added ability to have PSR-1 friendly plugin names (CamelCase, no-dashes)
|
|
|
+ * Fix to `composer.json` to deter API rate-limit errors
|
|
|
+ * Added **non-exception-throwing** handler for undefined methods on `Medium` objects
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix description for `self-upgrade` method of GPM command
|
|
|
+ * Fix for incorrect version number when performing GPM `update`
|
|
|
+ * Fix for argument description of GPM `install` command
|
|
|
+ * Fix for recalcitrant CodeKit mac application
|
|
|
+
|
|
|
+# v0.9.11
|
|
|
+## 12/21/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added support for simple redirects as well as routes
|
|
|
+2. [](#improved)
|
|
|
+ * Handle Twig errors more cleanly
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix for error caused by invalid or missing user agent string
|
|
|
+ * Fix for directory relative links and URL fragments (#pagelink)
|
|
|
+ * Fix for relative links with no subfolder in `base_url`
|
|
|
+
|
|
|
+# v0.9.10
|
|
|
+## 12/12/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added Facebook-style `nicetime` date Twig filter
|
|
|
+2. [](#improved)
|
|
|
+ * Moved `clear-cache` functionality into Cache object required for Admin plugin
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix for undefined index with previous/next buttons
|
|
|
+
|
|
|
+# v0.9.9
|
|
|
+## 12/05/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added new `@page` collection type
|
|
|
+ * Added `ksort` and `contains` Twig filters
|
|
|
+ * Added `gist` Twig function
|
|
|
+2. [](#improved)
|
|
|
+ * Refactored Page previous/next/adjacent functionality
|
|
|
+ * Updated to Symfony 2.6 for yaml/console/event-dispatcher libraries
|
|
|
+ * More PSR code fixes
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix for over-escaped apostrophes in YAML
|
|
|
+
|
|
|
+# v0.9.8
|
|
|
+## 12/01/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added configuration option to set default lifetime on cache saves
|
|
|
+ * Added ability to set HTTP status code from page header
|
|
|
+ * Implemented simple wild-card custom routing
|
|
|
+2. [](#improved)
|
|
|
+ * Fixed elusive double load to fully cache issue (crossing fingers...)
|
|
|
+ * Ensure Twig tags are treated as block items in markdown
|
|
|
+ * Removed some older deprecated methods
|
|
|
+ * Ensure onPageContentProcessed() event only fires when not cached
|
|
|
+ * More PSR code fixes
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix issue with miscalculation of blog separator location `===`
|
|
|
+
|
|
|
+# v0.9.7
|
|
|
+## 11/24/2014
|
|
|
+
|
|
|
+1. [](#improved)
|
|
|
+ * Nginx configuration updated
|
|
|
+ * Added gitter.im badge to README
|
|
|
+ * Removed `set_time_limit()` and put checks around `ignore_user_abort`
|
|
|
+ * More PSR code fixes
|
|
|
+2. [](#bugfix)
|
|
|
+ * Fix issue with non-valid asset path showing up when they shouldn't
|
|
|
+ * Fix for JS asset pipeline and scripts that don't end in `;`
|
|
|
+ * Fix for schema-based markdown URLs broken routes (eg `mailto:`)
|
|
|
+
|
|
|
+# v0.9.6
|
|
|
+## 11/17/2014
|
|
|
+
|
|
|
+1. [](#improved)
|
|
|
+ * Moved base_url variables into Grav container
|
|
|
+ * Forced media sorting to use natural sort order by default
|
|
|
+ * Various PSR code tidying
|
|
|
+ * Added filename, extension, thumb to all medium objects
|
|
|
+2. [](#bugfix)
|
|
|
+ * Fix for infinite loop in page.content()
|
|
|
+ * Fix hostname for configuration overrides
|
|
|
+ * Fix for cached configuration
|
|
|
+ * Fix for relative URLs in markdown on installs with no base_url
|
|
|
+ * Fix for page media images with uppercase extension
|
|
|
+
|
|
|
+# v0.9.5
|
|
|
+## 11/09/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added quality setting to medium for compression configuration of images
|
|
|
+ * Added new onPageContentProcessed() event that is post-content processing but pre-caching
|
|
|
+2. [](#improved)
|
|
|
+ * Added support for AND and OR taxonomy filtering. AND by default (was OR)
|
|
|
+ * Added specific clearing options for CLI clear-cache command
|
|
|
+ * Moved environment method to URI so it can be accessible in plugins and themes
|
|
|
+ * Set Grav's output variable to public so it can be manipulated in onOutputGenerated event
|
|
|
+ * Updated vendor libraries to latest versions
|
|
|
+ * Better handing of 'home' in active menu state detection
|
|
|
+ * Various PSR code tidying
|
|
|
+ * Improved some error messages and notices
|
|
|
+3. [](#bugfix)
|
|
|
+ * Force route rebuild when configuration changes
|
|
|
+ * Fix for 'installed undefined' error in CLI versions command
|
|
|
+ * Do not remove the JSON/Text error handlers
|
|
|
+ * Fix for supporting inline JS and CSS when Asset pipeline enabled
|
|
|
+ * Fix for Data URLs in CSS being badly formed
|
|
|
+ * Fix Markdown links with fragment and query elements
|
|
|
+
|
|
|
+# v0.9.4
|
|
|
+## 10/29/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * New improved Debugbar with messages, timing, config, twig information
|
|
|
+ * New exception handling system utilizing Whoops
|
|
|
+ * New logging system utilizing Monolog
|
|
|
+ * Support for auto-detecting environment configuration
|
|
|
+ * New version command for CLI
|
|
|
+ * Integrate Twig dump() calls into Debugbar
|
|
|
+2. [](#improved)
|
|
|
+ * Selfupgrade now clears cache on successful upgrade
|
|
|
+ * Selfupgrade now supports files without extensions
|
|
|
+ * Improved error messages when plugin is missing
|
|
|
+ * Improved security in .htaccess
|
|
|
+ * Support CSS/JS/Image assets in vendor/system folders via .htaccess
|
|
|
+ * Add support for system timers
|
|
|
+ * Improved and optimized configuration loading
|
|
|
+ * Automatically disable Debugbar on non-HTML pages
|
|
|
+ * Disable Debugbar by default
|
|
|
+3. [](#bugfix)
|
|
|
+ * More YAML blueprint fixes
|
|
|
+ * Fix potential double // in assets
|
|
|
+ * Load debugger as early as possible
|
|
|
+
|
|
|
+# v0.9.3
|
|
|
+## 10/09/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * GPM (Grav Package Manager) Added
|
|
|
+ * Support for multiple Grav configurations
|
|
|
+ * Dynamic media support via URL
|
|
|
+ * Added inlineCss and inlineJs support for Assets
|
|
|
+2. [](#improved)
|
|
|
+ * YAML caching for increased performance
|
|
|
+ * Use stream wrapper in pages, plugins and themes
|
|
|
+ * Switched to RocketTheme toolbox for some core functionality
|
|
|
+ * Renamed `setup` CLI command to `sandbox`
|
|
|
+ * Broke cache types out into multiple directories in the cache folder
|
|
|
+ * Removed vendor libs from github repository
|
|
|
+ * Various PSR cleanup of code
|
|
|
+ * Various Blueprint updates to support upcoming admin plugin
|
|
|
+ * Added ability to filter page children for normal/modular/all
|
|
|
+ * Added `sort_by_key` twig filter
|
|
|
+ * Added `visible()` and `routable()` filters to page collections
|
|
|
+ * Use session class in shutdown process
|
|
|
+ * Improvements to modular page loading
|
|
|
+ * Various code cleanup and optimizations
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed file checking not updating the last modified time. For real this time!
|
|
|
+ * Switched debugger to PRODUCTION mode by default
|
|
|
+ * Various fixes in URI class for increased reliability
|
|
|
+
|
|
|
+# v0.9.2
|
|
|
+## 09/15/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * New flexible site and page metadata support including ObjectGraph and Facebook
|
|
|
+ * New method to get user IP address in URI object
|
|
|
+ * Added new onShutdown() event that fires after connection is closed for Async features
|
|
|
+2. [](#improved)
|
|
|
+ * Skip assets pipeline minify on Windows platforms by default due to PHP issue 47689
|
|
|
+ * Fixed multiple level menus not highlighting correctly
|
|
|
+ * Updated some blueprints in preparation for admin plugin
|
|
|
+ * Fail gracefully when theme does not exist
|
|
|
+ * Add stream support into ResourceLocator::addPath()
|
|
|
+ * Separate themes from plugins, add themes:// stream and onTask events
|
|
|
+ * Added barDump() to Debugger
|
|
|
+ * Removed stray test page
|
|
|
+ * Override modified only if a non-markdown file was modified
|
|
|
+ * Added assets attributes support
|
|
|
+ * Auto-run composer install when running the Grav CLI
|
|
|
+ * Vendor folder removed from repository
|
|
|
+ * Minor configuration performance optimizations
|
|
|
+ * Minor debugger performance optimizations
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fix url() twig function when Grav isn't installed at root
|
|
|
+ * Workaround for PHP bug 52065
|
|
|
+ * Fixed getList() method on Pages object that was not working
|
|
|
+ * Fix for open_basedir error
|
|
|
+ * index.php now warns if not running on PHP 5.4
|
|
|
+ * Removed memcached option (redundant)
|
|
|
+ * Removed memcache from auto setup, added memcache server configuration option
|
|
|
+ * Fix broken password validation
|
|
|
+ * Back to proper PSR-4 Autoloader
|
|
|
+
|
|
|
+# v0.9.1
|
|
|
+## 09/02/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Added new `theme://` PHP stream for current theme
|
|
|
+2. [](#improved)
|
|
|
+ * Default to new `file` modification checking rather than `folder`
|
|
|
+ * Added support for various markdown link formats to convert to Grav-friendly URLs
|
|
|
+ * Moved configure() from Theme to Themes class
|
|
|
+ * Fix autoloading without composer update -o
|
|
|
+ * Added support for Twig url method
|
|
|
+ * Minor code cleanup
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed issue with page changes not being picked up
|
|
|
+ * Fixed Minify to provide `@supports` tag compatibility
|
|
|
+ * Fixed ResourceLocator not working with multiple paths
|
|
|
+ * Fixed issue with Markdown process not stripping LFs
|
|
|
+ * Restrict file type extensions for added security
|
|
|
+ * Fixed template inheritance
|
|
|
+ * Moved Browser class to proper location
|
|
|
+
|
|
|
+# v0.9.0
|
|
|
+## 08/25/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Addition of Dependency Injection Container
|
|
|
+ * Refactored plugins to use Symfony Event Dispatcher
|
|
|
+ * New Asset Manager to provide unified management of JavaScript and CSS
|
|
|
+ * Asset Pipelining to provide unification, minify, and optimization of JavaScript and CSS
|
|
|
+ * Grav Media support directly in Markdown syntax
|
|
|
+ * Additional Grav Generator meta tag in default themes
|
|
|
+ * Added support for PHP Stream Wrapper for resource location
|
|
|
+ * Markdown Extra support
|
|
|
+ * Browser object for fast browser detection
|
|
|
+2. [](#improved)
|
|
|
+ * PSR-4 Autoloader mechanism
|
|
|
+ * Tracy Debugger new `detect` option to detect running environment
|
|
|
+ * Added new `random` collection sort option
|
|
|
+ * Make media images progressive by default
|
|
|
+ * Additional URI filtering for improved security
|
|
|
+ * Safety checks to ensure PHP 5.4.0+
|
|
|
+ * Move to Slidebars side navigation in default Antimatter theme
|
|
|
+ * Updates to `.htaccess` including section on `RewriteBase` which is needed for some hosting providers
|
|
|
+3. [](#bugfix)
|
|
|
+ * Fixed issue when installing in an apache userdir (~username) folder
|
|
|
+ * Various mobile CSS issues in default themes
|
|
|
+ * Various minor bug fixes
|
|
|
+
|
|
|
+
|
|
|
+# v0.8.0
|
|
|
+## 08/13/2014
|
|
|
+
|
|
|
+1. [](#new)
|
|
|
+ * Initial Release
|