<!--- Changes below this line will be automatically regenerated -->
## Change Log
### API Changes
* 2018-02-01 [03cb478](https://github.com/silverstripe/silverstripe-asset-admin/commit/03cb4782a63d6ac50497dc9303e0da9ccf4faba5) Enable upload / attach options on UploadField to be individually toggled on or off (Damian Mooyman)
* 2018-01-30 [1b13072](https://github.com/silverstripe/silverstripe-versioned/commit/1b1307246d1a042213c49c203bece916d7b3b031) Ensure that duplications fail over to owned objects (Damian Mooyman)
* 2018-01-22 [04050b275](https://github.com/silverstripe/silverstripe-framework/commit/04050b27538b6c3050ea4b66a6664a23f618f3b6) Director::host() now formally includes port in host (Damian Mooyman)
* 2018-01-18 [4b8140e](https://github.com/silverstripe/silverstripe-versioned/commit/4b8140e15e59a88b5908b6beb1523df7ca643c20) Refactor GridFieldVersionedState into versioned module (Damian Mooyman)
* 2018-01-12 [8d077203d](https://github.com/silverstripe/silverstripe-framework/commit/8d077203d4d2a6f98b738f9c5f83e3264545677f) Implement support for public/ webroot folder (#7741) (Damian Mooyman)
* 2017-12-21 [8900298](https://github.com/silverstripe/silverstripe-assets/commit/890029813a73de5297397e3d432c9600c46e1e96) Support public/ webroot folder (Damian Mooyman)
* 2017-12-19 [b2ce6b4](https://github.com/silverstripe/recipe-core/commit/b2ce6b426703c2f75007745cc8459ab39c0c7112) Update to support public-files (Damian Mooyman)
* 2017-12-11 [c59c9e0](https://github.com/silverstripe/silverstripe-versioned/commit/c59c9e04cec808c2bc492cda32d840da1df84962) Split ownership and recursive publishing into RecursivePublishable (Damian Mooyman)
* 2017-12-11 [9170220d2](https://github.com/silverstripe/silverstripe-framework/commit/9170220d2c5f53a19ffc033f13c38f0b78931962) Add onAfterSave extension point to GridFieldDetailForm_ItemRequest (Damian Mooyman)
* 2017-11-27 [1fedc5fc](https://github.com/silverstripe/silverstripe-cms/commit/1fedc5fc10b6a1d2af417a051d7fe6bd8182b191) Make `CMSMain::getSiteTreeFor()` default to `null` nodeCount (#2029) (Lee Bradley)
* 2017-11-14 [f863573d1](https://github.com/silverstripe/silverstripe-framework/commit/f863573d1c2029be0414f352634adee3bc222663) Add getShortName to DBClassName (Damian Mooyman)
* 2017-11-07 [642cbdafc](https://github.com/silverstripe/silverstripe-framework/commit/642cbdafc8cf16d2ca48dcd0d51d5655f23ad664) Allow an array as a param to makeFieldReadOnly() (Reece Alexander)
* 2018-01-30 [5892acf](https://github.com/silverstripe/silverstripe-versioned/commit/5892acfb958e4d5eade675689e7be94d7aa0c282) GraphQL versioning support (#83) (Aaron Carlino)
* 2018-01-30 [296d18c](https://github.com/silverstripe/silverstripe-graphql/commit/296d18c4657464c89df5b67c958a1cad024964c9) Versioning support for scaffolded operations (#128) (Aaron Carlino)
* 2018-01-24 [456871fd9](https://github.com/silverstripe/silverstripe-framework/commit/456871fd914cec8f8142dd5a00949c7f28caff26) Updated PasswordValidator to fallback to config options - still retains instance variables (Christopher Joe)
* 2018-01-24 [e99bd6f4](https://github.com/silverstripe/silverstripe-cms/commit/e99bd6f49e8ebb13cc6d44e9c79e47a2c26e16ce) Ensure all base folders are excluded (Damian Mooyman)
* 2018-01-23 [fcf502255](https://github.com/silverstripe/silverstripe-framework/commit/fcf50225509a7776527be351e212fcd391a28003) Add support for ordinals in DBDate::Format() (Loz Calver)
* 2018-01-22 [89c8a28](https://github.com/silverstripe/silverstripe-admin/commit/89c8a28b05097bf9974482440f2f9757cccd8daa) Put gridfield page count in button toolbar for security admin (Damian Mooyman)
* 2018-01-17 [827537f](https://github.com/silverstripe/silverstripe-versioned/commit/827537f8ac597e3aab979046964b7ead01e18fa9) Add version status badge in gridfield detail view (Saophalkun Ponlu)
* 2018-01-12 [9fddb5de9](https://github.com/silverstripe/silverstripe-framework/commit/9fddb5de999bb4faf3f95c81efcd23c19c857247) Add getter and setter for removeRelation in GridFieldDeleteAction (Robbie Averill)
* 2017-12-22 [ce1a3a4](https://github.com/silverstripe/silverstripe-versioned/commit/ce1a3a4fc704f5bbc1a8d437c7d592cfdde09837) Gridfield uses versioned by default (Saophalkun Ponlu)
* 2017-12-21 [294cfc8](https://github.com/silverstripe/silverstripe-admin/commit/294cfc8b4476a51820b2e9b1b3ea7006e40d1543) Add data object status badge in gridffield detail view (Saophalkun Ponlu)
* 2017-12-13 [31e04c849](https://github.com/silverstripe/silverstripe-framework/commit/31e04c84917b66afd94cdda21ac8059ede09f508) Allow html in security failure message (Saophalkun Ponlu)
* 2017-12-12 [06cecc6](https://github.com/silverstripe/silverstripe-campaign-admin/commit/06cecc648774ce2080d70de5e604105121bf7b84) Set .gitattributes to ignore tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-12 [c342f49](https://github.com/silverstripe/silverstripe-asset-admin/commit/c342f499b52df747ef905f4bfaa916a0bdd22c3d) re-instate `setAllowedMaxFileNumber()` to the new UploadField (Christopher Joe)
* 2017-12-12 [4f946aa](https://github.com/silverstripe/silverstripe-assets/commit/4f946aaf9eadf9361ed401a5151d1852778e002c) Add cache service for file inherited permissions (Aaron Carlino)
* 2017-12-11 [d0e5bc1](https://github.com/silverstripe/silverstripe-admin/commit/d0e5bc1f9ae22a88e19855f0036c82c0120e9f73) Major refactor of validation and error handling on react forms (Aaron Carlino)
* 2017-12-10 [ccece4b](https://github.com/silverstripe/silverstripe-installer/commit/ccece4bf1c669cc5930cd7297e785e05aa157eba) update composer with --prefer-source flag so that tests are included (Christopher Joe)
* 2017-12-10 [1c1f9a1](https://github.com/silverstripe/silverstripe-versioned/commit/1c1f9a186a2a35383b91c4f38d27b3a71c711ec3) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-10 [33a68dda](https://github.com/silverstripe/silverstripe-siteconfig/commit/33a68ddabc8692152eff1c376f5fb5a0cfdee1f0) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-10 [4d805361](https://github.com/silverstripe/silverstripe-reports/commit/4d8053611d4b669e0f637c207ac7d8de728ee296) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-10 [b959af3](https://github.com/silverstripe/silverstripe-graphql/commit/b959af3cb800aa351cc800a2add062ac58f6e9e7) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-10 [aff4babfa](https://github.com/silverstripe/silverstripe-framework/commit/aff4babfa51ad458ebcf087e2a325ffed87612ac) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-10 [50ed744](https://github.com/silverstripe/silverstripe-errorpage/commit/50ed744e8072190eb51b1364db0c3fd3fb34a05e) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-10 [2985b4a6](https://github.com/silverstripe/silverstripe-cms/commit/2985b4a6e9f6aace7cca63b0f38fc25f6c067a01) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-10 [d08d472](https://github.com/silverstripe/silverstripe-assets/commit/d08d472155875d745a2b5690e07c7e4bf23538a2) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-10 [0d422e9](https://github.com/silverstripe/silverstripe-asset-admin/commit/0d422e9a2d0895c492c88fc85910b68049b09860) Set .gitattributes to ignore tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-12-07 [b8c9027](https://github.com/silverstripe/silverstripe-admin/commit/b8c9027f9d85ae69759b12518cc3c5c44626b9c9) Set .gitattributes to ignore docs and tests folder, and some source asset files which are not needed (Christopher Joe)
* 2017-11-29 [2dcb3fd2a](https://github.com/silverstripe/silverstripe-framework/commit/2dcb3fd2ab5c60c98068c8f92dde740e0e45d94e) Add documentation for pattern library (Christopher Joe)
* 2017-11-27 [a7847b573](https://github.com/silverstripe/silverstripe-framework/commit/a7847b573b65c1dc2f3d1e36ed3f53f9b1577abf) Add the ability to redirect a user to a custom page (Damian Mooyman)
* 2017-11-07 [7f3db6b](https://github.com/silverstripe/silverstripe-admin/commit/7f3db6b6fc6708e0805d16ab89faa4c596aed176) dependencies for eslint package (Aaron Carlino)
* 2017-11-06 [2e43780a8](https://github.com/silverstripe/silverstripe-framework/commit/2e43780a8ae664ead109bd99c094f3873defbfea) Add sort columns to DB index automatically (Daniel Hensby)
* 2017-11-01 [91f1a5801](https://github.com/silverstripe/silverstripe-framework/commit/91f1a58018b208b3677550dc4d22ac5d83f5124a) Allow chain-ability on adding and removing fields (zanderwar)
* 2017-10-23 [5b335ad5](https://github.com/silverstripe/silverstripe-reports/commit/5b335ad511a9cdef77c1ecb568d0cb92ba2dd2db) Add support for callable link formatting (Will Rossiter)
* 2017-09-28 [2f0a0cb63](https://github.com/silverstripe/silverstripe-framework/commit/2f0a0cb63f12c9428cce9403fdd11dd155f73116) Add (alt text) to title field for clarity (Robbie Averill)
* 2017-01-19 [da9c133c1](https://github.com/silverstripe/silverstripe-framework/commit/da9c133c1b294da9aaa580700353b6814e1d2c47) Add flattenFields() function to iterate over all deeply nested fields in a form (Jake Bentvelzen)
### Bugfixes
* 2018-02-07 [a0fa38b](https://github.com/silverstripe/silverstripe-asset-admin/commit/a0fa38b36fbe81941bcc56158428a2cc924532c0) Fit sort dropdown to icon on smaller sizes to prevent wrapping (Luke Edwards)
* 2018-02-07 [86f2ff4](https://github.com/silverstripe/silverstripe-asset-admin/commit/86f2ff4a13200305ff0800abd45c3939fe22c452) Align buttons to right to keep consistency (Luke Edwards)
* 2018-02-07 [24dfe11](https://github.com/silverstripe/silverstripe-asset-admin/commit/24dfe114cb926df3009aa59aeb59393fd63dbab8) Asset admin toolbar buttons stacking vertically on small screens (Luke Edwards)
* 2018-02-07 [e5ff48b35](https://github.com/silverstripe/silverstripe-framework/commit/e5ff48b352fc94cfab15f29132535752f7a7ed2f) Fix incorrect BASE_URL when webroot is parent of public folder (Damian Mooyman)
* 2018-02-07 [b060892](https://github.com/silverstripe/silverstripe-installer/commit/b060892992735cb12a2d57bbf6ba45c3803a03c8) Fix routing error for public assets (Damian Mooyman)
* 2018-02-06 [2225cf4c9](https://github.com/silverstripe/silverstripe-framework/commit/2225cf4c953a26bb5d335c4cafe4a83779cfe80a) Fix Director::test() not persisting removed session keys on teardown (Damian Mooyman)
* 2018-02-06 [660dfd34a](https://github.com/silverstripe/silverstripe-framework/commit/660dfd34a828e7eb7dc8ef9986b201a14620d17f) Issue where default admin has no password encryption (Daniel Hensby)
* 2018-02-05 [28ca11dd7](https://github.com/silverstripe/silverstripe-framework/commit/28ca11dd7e5e9a1c4fd1f5d4acbec856adfb7176) Regex range identifier correctly escaped (Daniel Hensby)
* 2018-02-01 [bc2fc7f2d](https://github.com/silverstripe/silverstripe-framework/commit/bc2fc7f2dbf18d92ad6ef29c8173ff26b5213608) Prevent invalid members being written to database if validation_enabled is false (Damian Mooyman)
* 2018-01-31 [884cee7](https://github.com/silverstripe/silverstripe-versioned/commit/884cee753a97a47fa3232fbe64f2def368ea8741) Prevent versioned crashing in absence of graphql module (Damian Mooyman)
* 2018-01-30 [07e70148](https://github.com/silverstripe/silverstripe-cms/commit/07e70148dacb8cd84f976f796320c9f47c33b3a0) Add some exist check for tabsets which may not be there (#2079) (Chris Joe)
* 2018-01-17 [7eef400](https://github.com/silverstripe/recipe-core/commit/7eef40098e73dfed8c21ea2be057c98fedbb7489) Ensure there is an error response if composers autoloader cant be found (Daniel Hensby)
* 2018-01-16 [ca2fe3b1f](https://github.com/silverstripe/silverstripe-framework/commit/ca2fe3b1f63823e059fb8652eb2d0d7098537f69) Fix themed editor.css url not being resolved properly (Damian Mooyman)
* 2018-01-16 [20348b5f4](https://github.com/silverstripe/silverstripe-framework/commit/20348b5f42d343e704e8cd8200a50a17e7a38326) Fix `upgrade-code doctor` with public path (Damian Mooyman)
* 2018-01-15 [15ef769e1](https://github.com/silverstripe/silverstripe-framework/commit/15ef769e1d68909908caf97daed9f8d854173c72) Don't re-declare manually-declared variables for public folder (Damian Mooyman)
* 2018-01-15 [292647d](https://github.com/silverstripe/recipe-core/commit/292647d26f13f9a9e139536f3f04cfdb6b283186) Fix routing error for public assets (Damian Mooyman)
* 2018-01-02 [b3ae11fe4](https://github.com/silverstripe/silverstripe-framework/commit/b3ae11fe478a14b025a26858236e4bf86aaac661) Missing Part of Sentence (David Lloyd)
* 2017-12-22 [212178bb0](https://github.com/silverstripe/silverstripe-framework/commit/212178bb0d59199dc4ed2d214957db30d1c03b39) `SSViwer::execute_template` should allow requirements to be included (Daniel Hensby)
* 2017-12-19 [2fd81eea](https://github.com/silverstripe/silverstripe-cms/commit/2fd81eea9e593e97ccc939b0597e7369a459f87f) no button view type toggle when searching pages (Saophalkun Ponlu)
* 2017-12-19 [646ba571](https://github.com/silverstripe/silverstripe-cms/commit/646ba57152dee2cd2e168f95085c6fa55b878fc1) Amend rules to ignore test files only (Christopher Joe)
* 2017-12-19 [5fdd3a5](https://github.com/silverstripe/silverstripe-campaign-admin/commit/5fdd3a5d1520bbc3f2e324e21aeb4539bcd2a574) Amend rules to ignore test files only (Christopher Joe)
* 2017-12-19 [ae9d016](https://github.com/silverstripe/silverstripe-asset-admin/commit/ae9d016295461eeea0cd9ddb864f8320ab3fd7e7) Amend rules to ignore test files only (Christopher Joe)
* 2017-12-19 [fe319e85c](https://github.com/silverstripe/silverstripe-framework/commit/fe319e85ccf8fbd3cacab0b27539c184051e5e76) Amend rules to ignore test files only (Christopher Joe)
* 2017-12-18 [74cd028](https://github.com/silverstripe/silverstripe-admin/commit/74cd0281b2ad8691315ec9da1d9a545edd785214) applyTransforms not using new addErrors() API (Aaron Carlino)
* 2017-12-14 [b4a35293](https://github.com/silverstripe/silverstripe-reports/commit/b4a3529339345b88cf9db9503caef1b386709dc6) Minor linting violation in Report (Robbie Averill)
* 2017-12-11 [6dd07b52](https://github.com/silverstripe/silverstripe-cms/commit/6dd07b5262c6d43f0b373214ff24b1c1d5a686e0) CI config for 4 branch (Damian Mooyman)
* 2017-12-01 [682ef89](https://github.com/silverstripe/silverstripe-admin/commit/682ef89bde9bd30b19710c9f2b3ba757d4939893) loading order for modules (Christopher Joe)
* 2017-11-30 [0884f05](https://github.com/silverstripe/silverstripe-asset-admin/commit/0884f054268b367186748b9a0bb9703136d69501) Fix broken unit tests (Christopher Joe)
* 2017-11-29 [2717f0134](https://github.com/silverstripe/silverstripe-framework/commit/2717f013447069fd1879b24140dd84145ece9cef) link to nginx.org wiki (JorisDebonnet)
* 2017-10-16 [cafa3fc29](https://github.com/silverstripe/silverstripe-framework/commit/cafa3fc29ae39c01dbbe52373bb366846e886798) switch to `trigger_error()` when a resource is not found (#7468) (Chris Joe)
* 2017-10-11 [7adedd0](https://github.com/silverstripe/silverstripe-admin/commit/7adedd0c0e67b29a6d2cc16060228c4c4666acfd) Remove duplicate "field" class in FieldGroup holder template (Robbie Averill)
* 2017-09-27 [c95916037](https://github.com/silverstripe/silverstripe-framework/commit/c959160375ddb77db5cff269c48c5721fad8cd51) Misnamed test namespaces (Daniel Hensby)