mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
4d1e659fed
DOCS Adjust owns upgrading example Fixes #7598
3554 lines
317 KiB
Markdown
3554 lines
317 KiB
Markdown
# 4.0.0
|
||
|
||
## Introduction
|
||
|
||
This version introduces many breaking changes, which in most projects can be managed through a combination
|
||
of automatic upgrade processes as well as manual code review. This document reviews these changes and will
|
||
guide developers in preparing existing 3.x code for compatibility with 4.0
|
||
|
||
## Overview {#overview}
|
||
|
||
* Minimum version dependencies have increased; PHP 5.5 and Internet Explorer 11 (or other modern browser)
|
||
is required.
|
||
* All code earlier marked as deprecated for 4.0 has now been removed (check our
|
||
[deprecation process](/contributing/release_process))
|
||
* All code has been migrated to follow the PSR-2 coding standard. Most significantly, all SilverStripe
|
||
classes are now namespaced, and some have been renamed. This has major implications for
|
||
arrangement of templates, as well as other references to classes via string literals or configuration.
|
||
Automatic upgrading tools have been developed to cope with the bulk of these changes (see
|
||
[upgrading notes](#upgrading)).
|
||
* Object class has been replaced with traits ([details](#object-replace)).
|
||
* Asset storage has been abstracted, and a new concept of `DBFile` references via database column references
|
||
now exists in addition to references via the existing `File` dataobject. File security and protected files
|
||
are now a core feature ([details](#asset-storage))
|
||
* A new front-end development process has been developed for the construction of javascript based components,
|
||
prominently featuring ReactJS to develop highly functional CMS content areas. A new standard form schema
|
||
API has been developed to allow back-end PHP constructed forms to scaffold themselves within ReactJS
|
||
powered sections.
|
||
* CMS CSS has been re-developed using Bootstrap v4 as a base
|
||
([blog post](https://www.silverstripe.org/blog/a-frameworks-framework-why-silverstripe-4-will-use-bootstrap/))
|
||
* Asset admin has been replaced with a purely ReactJS powered upgrade, and split out
|
||
module called [asset-admin](https://github.com/silverstripe/silverstripe-asset-admin/).
|
||
* Versioning is now a much more powerful feature, with the addition of campaigns to allow batches of related
|
||
or inter-dependent objects to be published as a single "changeset" ([details](#changeset)).
|
||
* Dependencies between versioned objects can be
|
||
declared using the new ownership API, so that developers can ensure that relational consistency is
|
||
maintained during publishing ([details](#ownership))
|
||
This new system can be managed via the new "Campaigns" CMS section ([blog post](https://www.silverstripe.org/blog/campaigns-in-silverstripe-4/))
|
||
* Template variable casting (e.g. `<h1>$Title</h1>`) is enforced by default, which will ensure safe HTML encode
|
||
unless explicitly opted out ([details](#template-casting))
|
||
* Themes are now configured to cascade, where you can specify a list of themes, and have the template engine
|
||
search programatically through a prioritised list when resolving template and CSS file paths.
|
||
* Removed module path constants (e.g. `FRAMEWORK_PATH`) and support for hardcoded file paths (e.g. `mysite/css/styles.css`) ([details](#module-paths))
|
||
* Replaced Zend_Translate with symfony/translation ([details](#i18n))
|
||
* Replaced `Zend_Cache` and the `Cache` API with a PSR-16 implementation (symfony/cache) ([details](#cache))
|
||
* `_ss_environment.php` files have been removed in favour of `.env` and "real" environment variables ([details](#env)).
|
||
* Behat support updated to v3 (
|
||
[details](https://github.com/silverstripe/silverstripe-behat-extension))
|
||
* The `GDBackend` and `ImagickBackend` classes have been replaced by a unified `InterventionBackend` which uses the
|
||
[intervention/image](https://github.com/intervention/image) library to power manipualations.
|
||
* Dependencies can managed via [recipe-plugin](https://github.com/silverstripe/recipe-plugin). See [recipe-core](https://github.com/silverstripe/recipe-core) and [recipe-cms](https://github.com/silverstripe/recipe-cms) as examples.
|
||
* Authentication has been upgraded to a modular approach using re-usable interfaces and easier to hook in to LoginHandlers ([details](#custom-authenticators)).
|
||
* Core modules are installed in the `vendor/` folder by default (other modules can opt-in, see [guide](/developer_guides/extending/how_tos/publish_a_module))
|
||
* Renamed constant for temp folder from `TEMP_FOLDER` to `TEMP_PATH` for naming consistency with other path variables and constants
|
||
|
||
## Upgrading Guide {#upgrading}
|
||
|
||
The below sections describe how to go about updating an existing site to be prepared for upgrade to 4.0.
|
||
Most of these upgrading tasks will involve manual code review, although in some cases there are
|
||
some automated processes that users can run.
|
||
|
||
### Composer dependency update {#deps}
|
||
|
||
As a first step, you need to update your composer dependencies.
|
||
The easiest way is to start with a new `composer.json` file
|
||
and gradually move over settings from your old one.
|
||
This way you don't get dependency conflicts with potentially incompatible modules.
|
||
|
||
Backup your existing `composer.json` and overwrite it with the following content:
|
||
|
||
```json
|
||
{
|
||
"name": "myvendor/myproject",
|
||
"require": {
|
||
"silverstripe/recipe-cms": "^1"
|
||
},
|
||
"prefer-stable": true,
|
||
"minimum-stability": "dev"
|
||
}
|
||
```
|
||
|
||
This composer file uses the new [recipe](https://github.com/silverstripe/recipe-plugin) approach
|
||
which bundles all core dependencies in a meta package. If you want more granular control over what gets installed,
|
||
check the `composer.json` files in [recipe-core](https://github.com/silverstripe/recipe-core) and [recipe-cms](https://github.com/silverstripe/recipe-cms).
|
||
|
||
Now run a `composer update`. This will remove all existing modules from your local codebase
|
||
since we replaced your project's `composer.json`. Now you can move back your modules
|
||
one by one, checking for compatible versions on [packagist.org](http://packagist.org).
|
||
|
||
Note: If you have issues with a pre-existing composer install you can force a clean re-install with the
|
||
below commands:
|
||
|
||
```bash
|
||
rm -rf vendor/composer
|
||
rm composer.lock
|
||
composer update
|
||
```
|
||
|
||
For modules with stable releases, simply set your composer constraints to the new version
|
||
(with a [next significant release](https://getcomposer.org/doc/articles/versions.md#next-significant-release-operators) operator).
|
||
|
||
```diff
|
||
{
|
||
"require": {
|
||
- "myvendor/compatible-module": "~2.0",
|
||
+ "myvendor/compatible-module": "~3.0",
|
||
}
|
||
}
|
||
```
|
||
|
||
For modules with a compatible pre-release, use an explicit [stability constraints](https://getcomposer.org/doc/articles/versions.md#stability-constraints).
|
||
This can be changed to a [next significant release](https://getcomposer.org/doc/articles/versions.md#next-significant-release-operators) operator
|
||
once the module is stable.
|
||
|
||
```diff
|
||
{
|
||
"require": {
|
||
- "myvendor/prerelease-module": "~2.0",
|
||
+ "myvendor/prerelease-module": "~3.0@dev",
|
||
}
|
||
}
|
||
```
|
||
|
||
For modules that don't have a pre-release branch started,
|
||
you should raise an issue on the repository asking for 4.0 compatibility.
|
||
For now, you should attempt to continue the upgrade without the module
|
||
and temporarily disable its functionality.
|
||
|
||
### Install the upgrader tool {#upgrader-tool}
|
||
|
||
A lot of upgrade work can be automated, and we've written an
|
||
[upgrader tool](https://github.com/silverstripe/silverstripe-upgrader/) for this purpose.
|
||
Install it via composer:
|
||
|
||
```
|
||
composer global require silverstripe/upgrader
|
||
```
|
||
|
||
### index.php and .htaccess rewrites {#index-php-rewrites}
|
||
|
||
The location of SilverStripe's "entry file" has changed. Your project and server environment will need
|
||
to adjust the path to this file from `framework/main.php` to `index.php`.
|
||
If you are running Apache, adjust your `.htaccess` file. For other webservers,
|
||
please consult the [installation guides](getting_started/installation/).
|
||
Since 4.0, URL rewrite capabilities are required,
|
||
unless you PHP's built-in webserver through [silverstripe/serve](https://github.com/silverstripe/silverstripe-serve).
|
||
|
||
The [upgrader tool](https://github.com/silverstripe/silverstripe-upgrader/) has a task runner which
|
||
automates this process for you.
|
||
|
||
Install the upgrader:
|
||
|
||
```
|
||
export PATH=$PATH:~/.composer/vendor/bin/
|
||
composer global require silverstripe/upgrader
|
||
```
|
||
|
||
Run the upgrader:
|
||
|
||
```
|
||
cd ~/my-project-root
|
||
upgrade-code doctor
|
||
```
|
||
|
||
This will ensure that your `.htaccess` and `index.php` are set to a reasonable default value
|
||
for a clean installation. If you have applied customisations to your `.htaccess`
|
||
file (e.g. a custom `main.php`, HTTP header configuration, deny file access),
|
||
you'll need to manually reapply these to the copied default file.
|
||
|
||
### Renamed and namespaced classes {#namespaced-classes}
|
||
|
||
Nearly all core PHP classes have been namespaced. For example, `DataObject` is now called `SilverStripe\ORM\DataObject`.
|
||
The below tasks describe how to upgrade an existing site to remain compatible with the newly upgraded classes.
|
||
We have developed an [upgrader tool](https://github.com/silverstripe/silverstripe-upgrader/) to (semi-)automatically
|
||
update your 3.x code to the new naming. Here's an example how to upgrade your `mysite` folder:
|
||
|
||
```
|
||
cd ~/my-project-root
|
||
~/.composer/vendor/bin/upgrade-code upgrade ./mysite --write
|
||
```
|
||
|
||
If you want to do a dry-run, omit the `--write` option to see a preview of a diff of
|
||
all changed project files.
|
||
|
||
This will resolve the majority of upgrading work, but we strongly recommend reviewing the diff
|
||
running some regression testing on your functionality. SilverStripe core classes can be referenced
|
||
in your PHP files, but also in YAML configuration and SilverStripe templates.
|
||
For a full list of renamed classes, check the `.upgrade.yml` definitions in each module.
|
||
|
||
The rename won't affect class-based permission codes or database table names.
|
||
|
||
### `_ss_environment.php` changed to`.env` {#env}
|
||
|
||
The php configuration `_ss_environment.php` file has been replaced in favour of a non-executable
|
||
`.env` file, which follows a syntax similar to an `.ini` file for key/value pair assignment. Like
|
||
the old php file, `.env` may be placed in either the web root, or one level above.
|
||
|
||
For example, if you have the below `_ss_environment.php` file, your `.env` would be rewritten as follows:
|
||
|
||
`_ss_environment.php`:
|
||
|
||
|
||
```php
|
||
// Environment
|
||
define('SS_ENVIRONMENT_TYPE', 'dev');
|
||
define('SS_DEFAULT_ADMIN_USERNAME', 'admin');
|
||
define('SS_DEFAULT_ADMIN_PASSWORD', 'password');
|
||
$_FILE_TO_URL_MAPPING[__DIR__] = 'http://localhost';
|
||
|
||
// Database
|
||
define('SS_DATABASE_CHOOSE_NAME', true);
|
||
define('SS_DATABASE_CLASS', 'MySQLDatabase');
|
||
define('SS_DATABASE_USERNAME', 'root');
|
||
define('SS_DATABASE_PASSWORD', '');
|
||
define('SS_DATABASE_SERVER', '127.0.0.1');
|
||
```
|
||
|
||
`.env`:
|
||
|
||
```
|
||
## Environment
|
||
SS_ENVIRONMENT_TYPE="dev"
|
||
SS_DEFAULT_ADMIN_USERNAME="admin"
|
||
SS_DEFAULT_ADMIN_PASSWORD="password"
|
||
SS_BASE_URL="http://localhost/"
|
||
|
||
### Database
|
||
SS_DATABASE_CHOOSE_NAME="true"
|
||
SS_DATABASE_CLASS="MySQLDatabase"
|
||
SS_DATABASE_USERNAME="root"
|
||
SS_DATABASE_PASSWORD=""
|
||
SS_DATABASE_SERVER="127.0.0.1"
|
||
```
|
||
|
||
The removal of the `_ss_environment.php` file means that conditional logic is no longer available in the environment
|
||
variable set-up process. This generally encouraged bad practice and should be avoided. If you still require conditional
|
||
logic early in the bootstrap, this is best placed in the `_config.php` files.
|
||
|
||
Note also that `$_FILE_TO_URL_MAPPING` has been removed and replaced with `SS_BASE_URL` env var.
|
||
This url must be an absolute url with an optional protocol. The following are valid, for example:
|
||
|
||
```
|
||
SS_BASE_URL="http://localhost/"
|
||
SS_BASE_URL="https://localhost/"
|
||
SS_BASE_URL="//localhost/"
|
||
```
|
||
|
||
The global values `$database` and `$databaseConfig` have been deprecated, as has `ConfigureFromEnv.php`
|
||
which is no longer necessary.
|
||
|
||
To access environment variables you can use the `SilverStripe\Core\Environment::getEnv()` method.
|
||
|
||
See [Environment Management docs](/getting_started/environment_management/) for full details.
|
||
|
||
### Migrate File DataObject {#migrate-file}
|
||
|
||
Since the structure of `File` dataobjects has changed, a new task `MigrateFileTask`
|
||
has been added to assist in migration of legacy files (see [file migration documentation](/developer_guides/files/file_migration)).
|
||
|
||
```
|
||
$ ./vendor/bin/sake dev/tasks/MigrateFileTask
|
||
```
|
||
|
||
Any `File` dataobject which is not in the `File.allowed_extensions` config will be deleted
|
||
from the database during migration. Any invalid file on the filesystem will not be deleted,
|
||
but will no longer be attached to a dataobject, and should be cleaned up manually.
|
||
To disable this, set the following config:
|
||
|
||
```yaml
|
||
SilverStripe\Assets\FileMigrationHelper:
|
||
delete_invalid_files: false
|
||
```
|
||
|
||
### Get upgrade tips on your code {#inspect-hints}
|
||
|
||
While there's some code we can automatically rewrite, other uses of changed SilverStripe APIs aren't that obvious.
|
||
You can use our heuristics to get some hints on where you need to review code manually.
|
||
Hints will generally point to more detail about a specific upgrade in this guide.
|
||
This task should be run *after* `upgrade-code upgrade`.
|
||
|
||
```
|
||
~/.composer/vendor/bin/upgrade-code inspect ./mysite
|
||
```
|
||
|
||
These hints only cover a part of the upgrade work,
|
||
but can serve as a good indicator for where to start.
|
||
|
||
### Rewrite literal table names {#literal-table-names}
|
||
|
||
In 3.x the class name of any DataObject matched the table name, but in 4.x all classes are namespaced, and it is
|
||
necessary to map between table and class for querying the database.
|
||
|
||
In order to ensure you are using the correct table for any class a new
|
||
[DataObjectSchema](api:SilverStripe\ORM\DataObjectSchema) service is available to manage these mappings
|
||
(see [Versioned documentation](/developer_guides/model/data_model_and_orm)).
|
||
For example, the below shows how you would update a query with a hard-coded table name:
|
||
|
||
```diff
|
||
public function countDuplicates($model, $fieldToCheck)
|
||
{
|
||
$query = new SilverStripe\ORM\Queries\SQLSelect();
|
||
+ $table = SilverStripe\ORM\DataObject::getSchema()->tableForField($model, $field);
|
||
- $query->setFrom("\"{$model}\"");
|
||
+ $query->setFrom("\"{$table}\"");
|
||
- $query->setWhere(["\"{$model}\".\"{$field}\"" => $model->$fieldToCheck]);
|
||
+ $query->setWhere(["\"{$table}\".\"{$field}\"" => $model->$fieldToCheck]);
|
||
return $query->count();
|
||
}
|
||
```
|
||
|
||
### Rewrite literal class names {#literal-class-names}
|
||
|
||
You'll need to update any strings that represent class names and make sure they're fully
|
||
qualified. In particular, relationship definitions such as `has_one` and `has_many` will need
|
||
to be updated to refer to fully qualified class names.
|
||
|
||
In configs and with literal PHP strings it is recommended to use the php `::class` constant,
|
||
as demonstrated below.
|
||
|
||
```diff
|
||
<?php
|
||
+ use SilverStripe\ORM\DataObject;
|
||
+ use SilverStripe\Security\Member;
|
||
class MyClass extends DataObject
|
||
{
|
||
private static $has_one = [
|
||
- 'Author' => 'Member',
|
||
+ 'Author' => Member::class,
|
||
];
|
||
}
|
||
```
|
||
|
||
In the context of YAML, the magic constant `::class` does not apply. Fully qualified class names must be hard coded.
|
||
|
||
```diff
|
||
-MyObject:
|
||
+My\Project\MyObject:
|
||
property: value
|
||
```
|
||
|
||
### Move controllers to their own files {#controllers-own-files}
|
||
|
||
The convention for naming controllers is now `[MyPageType]Controller`, where it used to be `[MyPageType]_Controller`. This change was made to be more compatible with the PSR-2 standards.
|
||
|
||
You can still use, for example, `Page_Controller`, but you will get a deprecation notice. It is
|
||
best to change it to `PageController` during your upgrade process. Keep in mind any modules or
|
||
other thirdparty code that extend `PageController` are likely to assume that class exists.
|
||
|
||
By default, a controller for a page type *must* reside in the same namespace as its page. To use different logic, override `SiteTree::getControllerName()`.
|
||
|
||
### Template locations and references {#template-locations}
|
||
|
||
Templates are now more strict about their locations.
|
||
Case is now also checked on case-sensitive filesystems.
|
||
|
||
Either include the folder in the template name (`renderWith('MyEmail.ss')` => `renderWith('emails/MyEmail.ss')`),
|
||
move the template into the correct directory, or both.
|
||
|
||
Core template locations have moved - if you're including or overriding these
|
||
(e.g. for FormField templates) please adjust to the new paths. The `forms` folder
|
||
no longer exists, and instead template locations will be placed in paths that match
|
||
the `SilverStripe\Forms` namespace.
|
||
|
||
When using `<% include %>` template tag you can continue to leave out the `Includes` folder,
|
||
but this now will also search templates in the base folder if no Include can be found.
|
||
|
||
`<% include Sidebar %>` will match `Includes/Sidebar.ss`, but will also match `Sidebar.ss`
|
||
if the former is not present.
|
||
|
||
Please refer to our [template syntax](/developer_guides/templates/syntax) for details.
|
||
|
||
### Config settings should be set to `private static` {#private-static}
|
||
|
||
Class configuration defined as `static` properties need to be marked as `private` to take effect:
|
||
|
||
```diff
|
||
-public static $allowed_actions = [
|
||
+private static $allowed_actions = [
|
||
'suggest'
|
||
];
|
||
```
|
||
|
||
### Module paths can't be hardcoded {#module-paths}
|
||
|
||
You should no longer rely on modules being placed in a deterministic folder (e.g. `/framework`),
|
||
and use getters on the [Module](api:SilverStripe\Core\Manifest\Module) object instead.
|
||
They expect a module composer name, followed by the module relative path, separated by a double colon.
|
||
This prepares SilverStripe for moving modules out of the webroot at a later point.
|
||
|
||
Usage in templates:
|
||
|
||
```diff
|
||
-<img src="framework/images/image.png" />
|
||
+<img src="$ModulePath(silverstripe/framework)/image.png" />
|
||
|
||
-<% require css("framework/css/styles.css") %>
|
||
+<% require css("silverstripe/framework: css/styles.css") %>
|
||
```
|
||
|
||
Usage in Requirements:
|
||
|
||
```diff
|
||
-Requirements::css('framework/css/styles.css');
|
||
+Requirements::css('silverstripe/framework: css/styles.css');
|
||
```
|
||
|
||
Usage with custom logic:
|
||
|
||
```diff
|
||
+use SilverStripe\Core\Manifest\ModuleLoader;
|
||
+use SilverStripe\View\ThemeResourceLoader;
|
||
|
||
-$moduleFilePath = FRAMEWORK_DIR . '/MyFile.php';
|
||
+$moduleFilePath = ModuleLoader::getModule('silverstripe/framework')->getRelativeResourcePath('MyFile.php');
|
||
|
||
-$baseFilePath = BASE_PATH . '/composer.json';
|
||
+$baseFilePath = Director::baseFolder() . '/composer.json';
|
||
|
||
-$mysiteFilePath = 'mysite/css/styles.css';
|
||
+$mysiteFilePath = ModuleLoader::getModule('mysite')->getRelativeResourcePath('css/styles.css');
|
||
|
||
-$themesFilePath = SSViewer::get_theme_folder() . '/css/styles.css';
|
||
+$themesFilePath = ThemeResourceLoader::inst()->findThemedResource('css/styles.css');
|
||
|
||
-$themeFolderPath = THEMES_DIR . '/simple';
|
||
+$themeFolderPath = ThemeResourceLoader::inst()->getPath('simple');
|
||
```
|
||
|
||
Usage for Page and ModelAdmin:
|
||
|
||
```php
|
||
class ListingPage extends \Page {
|
||
private static $icon = 'mycompany/silverstripe-mymodule: client/images/sitetree_icon.png';
|
||
}
|
||
```
|
||
|
||
```php
|
||
class MyCustomModelAdmin extends \SilverStripe\Admin\ModelAdmin {
|
||
private static $menu_icon = 'mycompany/silverstripe-mymodule: client/images/modeladmin_icon.png';
|
||
}
|
||
```
|
||
|
||
To ensure consistency, we've also deprecated support for path constants:
|
||
|
||
* Deprecated `FRAMEWORK_DIR` and `FRAMEWORK_PATH`
|
||
* Deprecated `FRAMEWORK_ADMIN_DIR` and `FRAMEWORK_ADMIN_PATH`
|
||
* Deprecated `FRAMEWORK_ADMIN_THIRDPARTY_DIR` and `FRAMEWORK_ADMIN_THIRDPARTY_PATH`
|
||
* Deprecated `THIRDPARTY_DIR` and `THIRDPARTY_PATH`
|
||
* Deprecated `CMS_DIR` and `CMS_PATH`
|
||
* Deprecated `THEMES_DIR` and `THEMES_PATH`
|
||
* Deprecated `MODULES_PATH` and `MODULES_DIR`
|
||
|
||
### Adapt tooling to modules in vendor folder {#vendor-folder}
|
||
|
||
SilverStripe modules can now be installed like any other composer package: In the `vendor/` folder
|
||
instead of the webroot. Modules need to opt in to this behaviour after they've ensured
|
||
that no hardcoded path references exist (see "Upgrade module paths in file references").
|
||
|
||
All core modules have been moved over already:
|
||
|
||
```diff
|
||
-framework/
|
||
+vendor/silverstripe/framework/
|
||
-cms/
|
||
+vendor/silverstripe/cms/
|
||
...
|
||
```
|
||
|
||
Since the `vendor/` folder isn't publicly accessible, modules need to declare
|
||
which files need to be exposed via the new [vendor-plugin](https://github.com/silverstripe/vendor-plugin)
|
||
(e.g. images or CSS/JS files). These files will be either symlinked or copied into a new `resources/`
|
||
folder automatically on `composer install`.
|
||
|
||
If your deployment process relies on `composer install` on the production environment,
|
||
and this environment supports symlinks, you don't need to change anything.
|
||
If you deploy release archives, either ensure those archives can correctly extract symlinks,
|
||
or explicitly switch to the "copy" mode to avoid symlinks.
|
||
|
||
### SS_Log replaced with PSR-3 logging {#psr3-logging}
|
||
|
||
One of the great changes that comes with SilverStripe 4 is the introduction of
|
||
[PSR-3](http://www.php-fig.org/psr/psr-3/) compatible logger interfaces. This
|
||
means we can use thirdparty services like Monolog. `SS_Log` has been replaced
|
||
with a logger which can be accessed using the LoggerInterface::class service.
|
||
|
||
For instance, code which logs errors should be upgraded as below:
|
||
|
||
```diff
|
||
-SS_Log::log('My error message', SS_Log::ERR);
|
||
+use Psr\Log\LoggerInterface;
|
||
+use SilverStripe\Core\Injector\Injector;
|
||
+Injector::inst()->get(LoggerInterface::class)->error('My error message');
|
||
```
|
||
|
||
If necessary, you may need to customise either the default logging handler, or
|
||
one of the error formatters. For example, if running unit tests you may want to
|
||
suppress errors. You can temporarily disable logging by setting a `NullHandler`
|
||
|
||
```yml
|
||
---
|
||
Name: custom-dev-logging
|
||
After: dev-logging
|
||
Only:
|
||
environment: dev
|
||
---
|
||
# Replace default handler with null
|
||
SilverStripe\Core\Injector\Injector:
|
||
Monolog\Handler\HandlerInterface: Monolog\Handler\NullHandler
|
||
```
|
||
|
||
Alternatively you can customise one or both of the below services:
|
||
- `Monolog\Formatter\FormatterInterface.detailed` service, which is used for displaying
|
||
detailed error messages useful for developers.
|
||
- `Monolog\Formatter\FormatterInterface.friendly` service, which is used to display "error"
|
||
page content to visitors of the site who encounter errors.
|
||
|
||
For example, a custom error page generator could be added as below:
|
||
|
||
```yml
|
||
---
|
||
Name: custom-errorpage
|
||
After:
|
||
- '#loggingformatters'
|
||
---
|
||
SilverStripe\Core\Injector\Injector:
|
||
Monolog\Formatter\FormatterInterface.friendly:
|
||
class: WebDesignGroup\ShopSite\Logging\ErrorPageFormatter
|
||
```
|
||
|
||
`WebDesignGroup\ShopSite\Logging\ErrorPageFormatter` should be a class that
|
||
implements the `Monolog\Formatter\FormatterInterface` interface.
|
||
|
||
### Upgrade `mysite/_config.php` {#config-php}
|
||
|
||
The globals `$database` and `$databaseConfig` are deprecated. You should upgrade your
|
||
site `_config.php` files to use the [.env configuration](#env)
|
||
|
||
`conf/ConfigureFromEnv.php` is no longer used, and references to this file should be deleted.
|
||
|
||
If you need to configure database details in PHP you should configure these details via `.env` file,
|
||
or alternatively (but less recommended) use the new `DB::setConfig()` api.
|
||
|
||
The global `$project` is deprecated in favour of the configuration setting
|
||
`SilverStripe\Core\Manifest\ModuleManifest.project`.
|
||
|
||
Changes to `mysite/_config.php`:
|
||
|
||
```diff
|
||
<?php
|
||
-global $project;
|
||
-$project = 'mysite';
|
||
-include 'conf/ConfigureFromEnv.php';
|
||
```
|
||
|
||
And also add to `mysite/_config/mysite.yml`:
|
||
|
||
```yml
|
||
SilverStripe\Core\Manifest\ModuleManifest:
|
||
project: mysite
|
||
```
|
||
|
||
### Object class replaced by traits {#object-replace}
|
||
|
||
Object has been superseded by traits.
|
||
|
||
- `Injectable`: Provides `MyClass::create()` and `MyClass::singleton()`
|
||
- `Configurable`: Provides `MyClass::config()`
|
||
- `Extensible`: Provides all methods related to extensions (E.g. add_extension()).
|
||
|
||
Upgrade subclass use
|
||
|
||
|
||
```diff
|
||
-class MyClass extends Object
|
||
-{
|
||
-}
|
||
+use SilverStripe\Core\Extensible;
|
||
+use SilverStripe\Core\Injector\Injectable;
|
||
+use SilverStripe\Core\Config\Configurable;
|
||
+class MyClass
|
||
+{
|
||
+ use Extensible;
|
||
+ use Injectable;
|
||
+ use Configurable;
|
||
+}
|
||
```
|
||
|
||
|
||
Upgrade references to $this->class
|
||
|
||
```diff
|
||
-$obj->class
|
||
+get_class($obj);
|
||
|
||
-$this->class;
|
||
+static::class;
|
||
```
|
||
|
||
Upgrade parse_class_spec()
|
||
|
||
```diff
|
||
-$spec = Object::parse_class_spec($spec);
|
||
+$spec = ClassInfo::parse_class_spec($spec);
|
||
```
|
||
|
||
Upgrade create_from_string()
|
||
|
||
|
||
```diff
|
||
-$obj = Object::create_from_string('Varchar(100)');
|
||
+$obj = Injector::inst()->create('Varchar(100)');
|
||
```
|
||
|
||
Upgrade extension use
|
||
|
||
```diff
|
||
|
||
-Object::add_extension('File', 'Versioned');
|
||
+File::add_extension(Versioned::class);
|
||
+DataObject::add_extension(File::class, Versioned::class); // alternate
|
||
|
||
-$has = Object::has_extension('File', 'Versioned');
|
||
+$has = File::has_extension(Versioned::class);
|
||
+$has = DataObject::has_extension(File::class, Versioned::class); // alternate
|
||
|
||
-$extensions = Object::get_extensions('File');
|
||
+$extensions = File::get_extensions();
|
||
+$extensions = DataObject::get_extensions(File::class); // alternate
|
||
```
|
||
|
||
### Session object removes static methods {#session}
|
||
|
||
Session object is no longer statically accessible via `Session::inst()`. Instead, Session
|
||
is a member of the current request.
|
||
|
||
```diff
|
||
public function httpSubmission($data, $form, $request)
|
||
{
|
||
- Session::set('loggedIn', null);
|
||
+ $request->getSession()->set('loggedIn', null);
|
||
}
|
||
```
|
||
|
||
|
||
In some places it may still be necessary to access the session object where no request is available.
|
||
In rare cases it is still possible to access the request of the current controller via
|
||
`Controller::curr()->getRequest()` to gain access to the current session.
|
||
|
||
### Extensions are now singletons {#extensions-singletons}
|
||
|
||
Extensions are now all singletons, meaning that state stored as protected vars
|
||
within extensions are now shared across all object instances that use this extension.
|
||
|
||
As a result, you must take care that all protected vars are either refactored to be stored against
|
||
the owner object, or are keyed in a fashion distinct to the parent.
|
||
|
||
```diff
|
||
class MyExtension extends Extension {
|
||
public function getContent() {
|
||
- if (!$this->contentCache) {
|
||
- $this->contentCache = $this->generateContent();
|
||
- }
|
||
- return $this->contentCache;
|
||
+ $contentCache = $this->owner->getField('contentCache');
|
||
+ if (!$contentCache) {
|
||
+ $contentCache = $this->generateContent();
|
||
+ $this->owner->setField('contentCache', $contentCache);
|
||
+ }
|
||
+ return $contentCache;
|
||
}
|
||
}
|
||
```
|
||
|
||
When using extensions with distinct constructor arguments it's advisable to
|
||
use `yml` to register those constructor arguments and use a service name or alias in
|
||
`private static $extensions`. Please review the default service definitions below:
|
||
|
||
```yaml
|
||
---
|
||
Name: versionedextension
|
||
---
|
||
SilverStripe\Core\Injector\Injector:
|
||
# Versioning only
|
||
SilverStripe\Versioned\Versioned.versioned:
|
||
class: SilverStripe\Versioned\Versioned
|
||
constructor:
|
||
mode: Versioned
|
||
# Staging and Versioning
|
||
SilverStripe\Versioned\Versioned.stagedversioned:
|
||
class: SilverStripe\Versioned\Versioned
|
||
constructor:
|
||
mode: StagedVersioned
|
||
# Default is alias for .stagedversioned
|
||
SilverStripe\Versioned\Versioned: '%$SilverStripe\Versioned\Versioned.stagedversioned'
|
||
```
|
||
|
||
Upgrade your extension references:
|
||
|
||
```diff
|
||
class MyClass extends DataObject {
|
||
private static $extensions = [
|
||
- Versioned::class . '(Versioned)',
|
||
+ Versioned::class . '.versioned',
|
||
];
|
||
}
|
||
```
|
||
|
||
### Static references to asset paths {#static-asset-paths}
|
||
|
||
All static files (images, javascript, stylesheets, fonts) used for the CMS and forms interfaces
|
||
in `framework` and `cms` have moved locations. These assets are now placed in a `client/` subfolder,
|
||
which are also sub-folders of the modules which now reside in `vendor`.
|
||
|
||
This will affect you if you have used `Requirements::block()` on files in the `framework/` or `cms/` folder.
|
||
|
||
In order to identify resources it is preferred to use the new module-root prefixed string form when
|
||
adding requirements.
|
||
|
||
Usage in Requirements:
|
||
|
||
```diff
|
||
-Requirements::css('framework/admin/css/styles.css');
|
||
+Requirements::css('silverstripe/admin: client/dist/styles/bundle.css');
|
||
```
|
||
|
||
The location of these resources is determined from the `name` field in the `composer.json`
|
||
for each module. `silverstripe/admin:` will be mapped to the folder `vendor/silverstripe/admin`
|
||
where this module is installed, based on the `vendor/silverstripe/admin/composer.json` name
|
||
matching the prefix in `Requirements::css()`.
|
||
|
||
Care should also be taken when referencing images in these folders from your own stylesheets (`url()`),
|
||
or via SilverStripe templates (`<img>` tags).
|
||
|
||
`Requirements` now throws an exception then a file is not found, rather than
|
||
failing silently, so check your `Requirements` are pointing to files that exist.
|
||
|
||
```
|
||
framework/javascript => silverstripe/admin:client/dist/
|
||
framework/javascript/lang => silverstripe/admin:client/lang/
|
||
framework/images => silverstripe/admin:client/dist/images/
|
||
framework/css => silverstripe/admin:client/dist/css/
|
||
framework/scss => silverstripe/admin:client/src/styles/
|
||
admin/javascript/ => silverstripe/admin:client/src/
|
||
admin/javascript/src/ => silverstripe/admin:client/src/legacy/ (mostly)
|
||
admin/javascript/lang/ => silverstripe/admin:client/lang/
|
||
admin/scss/ => silverstripe/admin:client/styles/legacy/
|
||
admin/css/ => silverstripe/admin:client/dist/css/
|
||
admin/css/screen.css => silverstripe/admin:client/dist/css/bundle.css
|
||
admin/images/ => silverstripe/admin:client/dist/images/
|
||
admin/images/sprites/src/ => silverstripe/admin:client/src/sprites/
|
||
admin/images/sprites/dist/ => silverstripe/admin:client/dist/sprites/
|
||
admin/font/ => silverstripe/admin:client/dist/font/
|
||
```
|
||
|
||
Most JavaScript files in `framework/javascript` have been removed,
|
||
and are bundled through [Webpack](http://webpack.github.io/) into a combined file instead.
|
||
If you have referenced these files elsewhere, please consider
|
||
running the ES6 source files in `admin/client/src/legacy`
|
||
through your own transpiling and bundle process.
|
||
|
||
This also includes JavaScript i18n support, and the removal of the `i18n::js_i18n`
|
||
configuration option used in `Requirements::add_i18n_javascript()`.
|
||
|
||
The CMS UI is moving away from `Requirements::combine_files()` in favour of Webpack.
|
||
This method is being considered for deprecation in future versions.
|
||
|
||
All JavaScript thirdparty dependencies have either been moved to NPM (see `package.json`),
|
||
or moved into the `framework/admin/thirdparty` folder. If you are hotlinking to any
|
||
of these files, please consider packaging your own versions in your projects and modules.
|
||
For CMS modules, you can also use many library globals which the core bundles already expose
|
||
(see [Build Tooling](/contributing/build_tooling)).
|
||
|
||
One commonly linked thirdparty dependency is `jquery.js` bundled with SilverStripe:
|
||
|
||
```
|
||
framework/thirdparty/jquery/jquery.js => framework/admin/thirdparty/jquery/jquery.js
|
||
```
|
||
|
||
If you have customised the CMS UI (via JavaScript or CSS), please read our guide to
|
||
[customise the admin interface](/developer_guides/customising_the_admin_interface/).
|
||
|
||
### Explicit text casting on template variables {#template-casting}
|
||
|
||
Now whenever a `$Variable` is used in a template, regardless of whether any casts or methods are
|
||
suffixed to the reference, it will be cast to either an explicit DBField for that field, or
|
||
the value declared by the `default_cast` on the parent object.
|
||
|
||
The default value of `default_cast` is `Text`, meaning that now many cases where a field was
|
||
left un-uncoded, this will now be safely encoded via `Convert::raw2xml`. In cases where
|
||
un-cast fields were used to place raw HTML into templates, this will now encode this until
|
||
explicitly cast for that field.
|
||
|
||
You can resolve this in your model by adding an explicit cast to HTML for those fields.
|
||
|
||
```diff
|
||
use SilverStripe\View\ViewableData;
|
||
use SilverStripe\Core\Convert;
|
||
|
||
class MyObject extends ViewableData
|
||
{
|
||
+ private static $casting = [
|
||
+ 'SomeHTML' => 'HTMLText'
|
||
+ ];
|
||
|
||
public function getSomeHTML
|
||
{
|
||
- $title = Convert::raw2xml($this->Title);
|
||
+ $title = Convert::raw2xml($this->Title);
|
||
return "<h1>{$title}</h1>";
|
||
}
|
||
}
|
||
```
|
||
|
||
If you need to encode a field (such as `HTMLText`) for use in HTML attributes, use `.ATT`
|
||
instead, or if used in an actual XML file use `.CDATA` (see [template casting](/developer_guides/templates/casting)).
|
||
|
||
### Replace UploadField with injected service {#uploadfield}
|
||
|
||
This field has been superceded by a new class provided by the
|
||
[asset-admin](https://github.com/silverstripe/silverstripe-asset-admin) module, which provides a more
|
||
streamlined simpler mechanism for uploading `File` dataobjects.
|
||
|
||
A helper service `FileHandleField` is provided to assist with dependency injection. Where the asset-admin
|
||
module is not installed this service will fall back to the `FileField` class instead.
|
||
Usages of `UploadField` will need to be upgraded as below.
|
||
|
||
```diff
|
||
use SilverStripe\Forms\FieldList;
|
||
-use SilverStripe\AssetAdmin\Forms\UploadField;
|
||
+use SilverStripe\Forms\FileHandleField;
|
||
+use SilverStripe\Core\Injector\Injector;
|
||
use SilverStripe\ORM\DataObject;
|
||
|
||
class MyClass extends DataObject
|
||
{
|
||
public function getCMSFields()
|
||
{
|
||
return new FieldList(
|
||
- new UploadField('Files')
|
||
+ Injector::inst()->create(FileHandleField::class, 'Files')
|
||
);
|
||
}
|
||
}
|
||
```
|
||
|
||
### i18n placeholders, plurals and i18nEntityProvider {#i18n}
|
||
|
||
In many cases, localisation strings which worked in 3.x will continue to work in 4.0, however certain patterns
|
||
have been deprecated and will be removed in 5.0. These include:
|
||
|
||
- `_t()` calls with sprintf-style placeholders (`%s`). Replace with named placeholders instead.
|
||
- `_t()` calls with non-associative injection arguments. Please use an associative array for all arguments.
|
||
- `_t()` calls which do not include a default value will now raise a warning. This can be disabled by setting
|
||
the `i18n.missing_default_warning` config to false.
|
||
|
||
If you attempt to use non-associative injection arguments with named placeholders, the result will
|
||
now trigger an exception.
|
||
|
||
Implementors of `i18nEntityProvider` should note that the return type for `provideI18nEntities()` has changed as well.
|
||
The non-associative array return type is deprecated. If returning a default string for a module
|
||
other than itself, it should return an array with the `default` and `module` keys respectively.
|
||
|
||
Full locale-rule respecting localisation for plural forms is now supported. The default
|
||
key for an object plural form is `<Namespaced\ClassName>.PLURALS`, and follows CLDR array form for each
|
||
pluralisation. See [the CLDR chart](http://www.unicode.org/cldr/charts/latest/supplemental/language_plural_rules.html)
|
||
for reference.
|
||
|
||
The below demonstrates how you can provide new localisation strings for an object,
|
||
including both plurals and cross-module localisations.
|
||
|
||
|
||
```php
|
||
use SilverStripe\ORM\DataObject;
|
||
|
||
class MyObject extends DataObject, implements i18nEntityProvider
|
||
{
|
||
public function provideI18nEntities()
|
||
{
|
||
return [
|
||
'MyObject.SINGULAR_NAME' => 'object',
|
||
'MyObject.PLURAL_NAME' => 'objects',
|
||
'MyObject.PLURALS' => [
|
||
'one' => 'An object',
|
||
'other' => '{count} objects',
|
||
],
|
||
'AnotherSection.DESCRIPTION' => [
|
||
'default' => 'This is the description for this section',
|
||
'module' => 'extendedmodule',
|
||
],
|
||
];
|
||
}
|
||
}
|
||
```
|
||
|
||
|
||
In YML format this will be expressed as the below:
|
||
|
||
`mymodule/lang/en.yml`:
|
||
|
||
|
||
```yml
|
||
en:
|
||
MyObject:
|
||
SINGULAR_NAME: 'object'
|
||
PLURAL_NAME: 'objects'
|
||
PLURALS:
|
||
one: 'An object',
|
||
other: '{count} objects'
|
||
```
|
||
|
||
`extendedmodule/lang/en.yml`:
|
||
|
||
|
||
```yml
|
||
en:
|
||
AnotherSection:
|
||
DESCRIPTION: 'This is the description for this section'
|
||
```
|
||
|
||
|
||
Usage of these pluralised strings is through the existing `_t()` method,
|
||
and require a `|` pipe-delimeter with a `{count}` argument.
|
||
|
||
|
||
```php
|
||
public function pluralise($count)
|
||
{
|
||
return _t('MyObject.PLURALS', 'An object|{count} objects', [ 'count' => $count ]);
|
||
}
|
||
```
|
||
|
||
In templates this can also be invoked as below:
|
||
|
||
|
||
```ss
|
||
<%t MyObject.PLURALS 'An item|{count} items' count=$Count %>
|
||
```
|
||
|
||
### Removed Member.DateFormat and Member.TimeFormat database settings {#member-date-time-fields}
|
||
|
||
We're using [native HTML5 date and time pickers](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/date)
|
||
in `DateField` and `TimeField` now ([discussion](https://github.com/silverstripe/silverstripe-framework/issues/6626)),
|
||
where the browser localises the output based on the browser/system preferences.
|
||
In this context it no longer makes sense to give users control over their own
|
||
date and time formats in their CMS profile.
|
||
Consequently, we've also removed `MemberDatetimeOptionsetField`.
|
||
|
||
`Member->getDateFormat()` and `Member->getTimeFormat()` still exist, and default to
|
||
the [IntlDateFormatter defaults](http://php.net/manual/en/class.intldateformatter.php) for the selected locale.
|
||
|
||
|
||
### New asset storage mechanism {#asset-storage}
|
||
|
||
File system has been abstracted into an abstract interface. By default, the out of the box filesystem
|
||
uses [Flysystem](http://flysystem.thephpleague.com/) with a local storage mechanism (under the assets directory).
|
||
|
||
Because the filesystem now uses the sha1 of file contents in order to version multiple versions under the same
|
||
filename, the default storage paths in 4.0 will not be the same as in 3.
|
||
|
||
In order to retain existing file paths in line with framework version 3 you should set the
|
||
`\SilverStripe\Filesystem\Flysystem\FlysystemAssetStore.legacy_paths` config to true.
|
||
Note that this will not allow you to utilise certain file versioning features in 4.0.
|
||
|
||
|
||
```yml
|
||
SilverStripe\Filesystem\Flysystem\FlysystemAssetStore:
|
||
legacy_paths: true
|
||
```
|
||
|
||
|
||
See our ["File Management" guide](/developer_guides/files/file_management) for more information.
|
||
|
||
Depending on your server configuration, it may also be necessary to adjust your assets folder
|
||
permissions. Please see the [common installation problems](/getting_started/installation/common_problems)
|
||
guide for configuration instruction.
|
||
|
||
### Image handling {#image-handling}
|
||
|
||
As all image-specific manipulations has been refactored from `Image` into an `ImageManipulations` trait, which
|
||
is applied to both `File` and `DBFile`. These both implement a common interface `AssetContainer`, which
|
||
has the `getIsImage()` method. In some cases, it may be preferable to invoke this method to detect
|
||
if the asset is an image or not, rather than checking the subclass, as the asset may also be a `DBFile` with
|
||
an image filter applied, rather than an instance of the `Image` dataobject.
|
||
|
||
In addition, a new file category `image/supported` has been added, which is a subset of the `image` category.
|
||
This is the subset of all image types which may be assigned to the `[Image](api:SilverStripe\Assets\Image)` dataobject, and may have
|
||
manipulations applied to it. This should be used as the file type restriction on any `[UploadField](api:SilverStripe\AssetAdmin\Forms\UploadField)` which
|
||
is intended to upload images for manipulation.
|
||
|
||
```diff
|
||
-if($file instanceof Image) {
|
||
- $upload = new UploadField();
|
||
- $upload->setAllowedFileCategories('image');
|
||
-}
|
||
+if ($file->getIsImage()) {
|
||
+ $upload = new UploadField();
|
||
+ $upload->setAllowedFileCategories('image/supported');
|
||
+}
|
||
```
|
||
|
||
In cases where image-only assets may be assigned to relationships then your datamodel should specify explicitly
|
||
an `Image` datatype, or refer to `DBFile('image/supported')`.
|
||
|
||
```php
|
||
use SilverStripe\Assets\Image;
|
||
class MyObject extends SilverStripe\ORM\DataObject
|
||
{
|
||
private static $has_one = [
|
||
"ImageObject" => Image::class
|
||
];
|
||
private static $db = [
|
||
"ImageField" => "DBFile('image/supported')"
|
||
];
|
||
}
|
||
```
|
||
|
||
### Writing to `File` dataobjects or the assets folder {#write-file-dataobject}
|
||
|
||
In the past all that was necessary to write a `File` DataObject to the database was to ensure a physical file
|
||
existed in the assets folder, and that the Filename of the DataObject was set to the same location.
|
||
|
||
Since the storage of physical files is no longer a standard location, it's necessary to delegate the writing of such
|
||
files to the asset persistence layer. As a wrapper for an individual file, you can use any of the `setFrom*`
|
||
methods to assign content from a local (e.g. temporary) file, a stream, or a string of content.
|
||
You would need to upgrade your code as below.
|
||
|
||
```diff
|
||
-function importTempFile($tmp)
|
||
-{
|
||
- copy($tmp, ASSETS_PATH . '/imported/' . basename($tmp));
|
||
- $file = new File();
|
||
- $file->setFilename('assets/imported/'.basename($tmp));
|
||
- $file->write();
|
||
-}
|
||
+public function importTempFile($tmp)
|
||
+{
|
||
+ Versioned::reading_stage('Stage');
|
||
+ $file = new File();
|
||
+ $file->setFromLocalFile($tmp, 'imported/' . basename($tmp));
|
||
+ $file->write();
|
||
+ $file->doPublish();
|
||
+}
|
||
```
|
||
|
||
Note that 'assets' is no longer present in the new code, and the path beneath what was once assets is now
|
||
used to generate the 'filename' value. This is because there is no longer an assumption that files are
|
||
stored in the assets folder.
|
||
|
||
There are other important considerations in working with File dataobjects which differ from legacy:
|
||
|
||
* File synchronisation is no longer automatic. This is due to the fact that there is no longer a 1-to-1 relationship
|
||
between physical files and File DataObjects.
|
||
* Folder DataObjects are now purely logical DataObjects, and perform no actual filesystem folder creation on write.
|
||
* All Files are versioned, which means that by default, new File records will not be visibile
|
||
to the public site. You will need to make sure to invoke `->doPublish()` on any File DataObject
|
||
you wish visitors to be able to see.
|
||
|
||
You can disable File versioning by adding the following to your `_config.php`
|
||
|
||
```php
|
||
SilverStripe\Assets\File::remove_extension('Versioned');
|
||
```
|
||
|
||
### Custom image manipulations {#image-manipulations}
|
||
|
||
As file storage and handling has been refactored into the abstract interface, many other components which were
|
||
once specific to Image.php have now been moved into a shared `ImageManipulation` trait. Manipulations of file content,
|
||
which are used to generate what are now called "variants" of assets, is now a generic api available to both `File`
|
||
and `DBFile` classes through this trait.
|
||
|
||
Custom manipulations, applied via extensions, must be modified to use the new API.
|
||
For instance, code which sizes images to a fixed width should be updated as below:
|
||
|
||
Before:
|
||
|
||
```php
|
||
// in MyImageExtension.php
|
||
class MyImageExtension extends SilverStripe\ORM\DataExtension
|
||
{
|
||
public function GalleryThumbnail($height)
|
||
{
|
||
return $this->getFormattedImage('GalleryThumbnail', $height);
|
||
}
|
||
|
||
public function generateGalleryThumbnail(Image_Backend $backend, $height)
|
||
{
|
||
return $backend->paddedResize(300, $height);
|
||
}
|
||
}
|
||
|
||
// in _config.php
|
||
SilverStripe\Assets\Image::add_extension('MyImageExtension');
|
||
```
|
||
|
||
Now image manipulations are implemented with a single method via a callback generator:
|
||
|
||
```php
|
||
use SilverStripe\Assets\File;
|
||
|
||
// in MyImageExtension.php
|
||
class MyImageExtension extends SilverStripe\Core\Extension
|
||
{
|
||
public function GalleryThumbnail($height)
|
||
{
|
||
// Generates the manipulation key
|
||
$variant = $this->owner->variantName(__FUNCTION__, $height);
|
||
|
||
// Instruct the backend to search for an existing variant with this key,
|
||
// and include a callback used to generate this image if it doesn't exist
|
||
return $this->owner->manipulateImage($variant, function (Image_Backend $backend) use ($height) {
|
||
return $backend->paddedResize(300, $height);
|
||
});
|
||
}
|
||
}
|
||
|
||
// in _config.php
|
||
File::add_extension('MyImageExtension');
|
||
\SilverStripe\Filesystem\Storage\DBFile::add_extension('MyImageExtension');
|
||
```
|
||
|
||
There are a few differences in this new API:
|
||
|
||
* The extension is no longer specific to DataObjects, so it uses the generic `Extension` class instead of `DataExtension`
|
||
* This extension is added to both `DBFile` and `File`, or order to make this manipulation available to non-dataobject
|
||
file references as well, but it could be applied to either independently.
|
||
* A helper method `variantName` is invoked in order to help generate a unique variant key. Custom code may use another
|
||
generation mechanism.
|
||
* Non-image files may also have manipulations, however the specific `manipulateImage` should not be used in this case.
|
||
A generic `manipulate` method may be used, although the callback for this method both is given, and should return,
|
||
an `AssetStore` instance and file tuple (Filename, Hash, and Variant) rather than an Image_Backend.
|
||
|
||
### File or Image shortcode handler {#file-shortcode}
|
||
|
||
The `handle_shortcode` methods have been removed from the core File and Image classes
|
||
and moved to separate classes in their own respective namespace.
|
||
`Image` and `File` do not implement the `ShortcodeHandler` interface anymore.
|
||
The shortcode handler for `File` has been moved to
|
||
`SilverStripe\Assets\ShortcodesFileShortcodeProvider` and
|
||
the Image handler has been moved to `SilverStripe\Assets\Shortcodes\ImageShortcodeProvider`
|
||
|
||
Example of changed shortcode handling:
|
||
|
||
```diff
|
||
+use SilverStripe\Assets\Shortcodes\FileShortcodeProvider;
|
||
class MyShortcodeUser extends Object
|
||
{
|
||
private $content;
|
||
|
||
public function Content($arguments, $parser, $shortcode)
|
||
{
|
||
- return File::handle_shortcode($arguments, $this->content, $parser, $shortcode);
|
||
+ return FileShortcodeProvider::handle_shortcode($arguments, $this->content, $parser, $shortcode);
|
||
}
|
||
}
|
||
```
|
||
|
||
### Composite db fields {#compositedbfield}
|
||
|
||
The `CompositeDBField` interface has been replaced with an abstract class, `DBComposite`. In many cases, custom code
|
||
that handled saving of content into composite fields can be removed, as it is now handled by the base class.
|
||
|
||
The below describes the minimum amount of effort required to implement a composite DB field.
|
||
|
||
```php
|
||
use SilverStripe\ORM\FieldType\DBComposite;
|
||
|
||
class MyAddressField extends
|
||
{
|
||
private static $composite_db = [
|
||
'Street' => 'Varchar(200)',
|
||
'Suburb' => 'Varchar(100)',
|
||
'City' => 'Varchar(100)',
|
||
'Country' => 'Varchar(100)'
|
||
];
|
||
|
||
public function scaffoldFormField($title = null, $params = null)
|
||
{
|
||
new SilverStripe\Forms\TextField($this->getName(), $title);
|
||
}
|
||
}
|
||
```
|
||
|
||
### Removed `DataObject::database_fields` or `DataObject::db` {#dataobject-db-database-fields}
|
||
|
||
The methods `DataObject::database_fields()`, `DataObject::custom_database_fields()` and `DataObject::db()` have
|
||
been removed.
|
||
|
||
Instead, to get all database fields for a dataobject, including base fields (such as ID, ClassName, Created, and LastEdited), use `DataObject::getSchema()->databaseFields($className, $aggregate = true)`.
|
||
To omit the base fields, pass a value of `false` as the `$aggregate` parameter, e.g. `DataObject::getSchema()->databaseFields(Member::class, false)`.
|
||
|
||
Composite database fields are omitted from the `databaseFields()` method. To get those, use `DataObject::getSchema()->compositeFields($className, $aggregate = true)`.
|
||
|
||
|
||
### Rewrite SQLQuery to more specific classes {#sqlquery}
|
||
|
||
Instead of `SQLQuery`, you should now use `SQLSelect`, `SQLUpdate`, `SQLInsert`
|
||
or `SQLDelete` - check the [3.2.0](3.2.0#sqlquery) upgrading notes for details.
|
||
|
||
Example:
|
||
|
||
```diff
|
||
-function augmentSQL(SQLQuery &$query, DataQuery &$dataQuery = null)
|
||
+public function augmentSQL(SQLSelect $query, DataQuery $dataQuery = null)
|
||
{
|
||
if(!preg_match('/MyField/', implode(' ', $query->getWhere()))) {
|
||
- $query->addWhere('"MyField" = 'foo');
|
||
+ $query->addWhere(['"MyField"' => 'foo']);
|
||
}
|
||
}
|
||
```
|
||
|
||
### Upgrade BuildTask classes {#buildtask-segment}
|
||
|
||
Similarly to the `$table_name` configuration property for DataObjects, you should define a `private static $segment` for `BuildTask`
|
||
instances to ensure that you can still run your task via `sake dev/tasks/MyTask`. Without defining it, the default
|
||
will be a fully-qualified class name like `sake dev/tasks/Me-MyModule-Tasks-MyTask`. This can also be configured in YAML.
|
||
|
||
```php
|
||
use SilverStripe\Dev\BuildTask;
|
||
|
||
class MyTask extends BuildTask
|
||
{
|
||
private static $segment = 'MyTask';
|
||
}
|
||
```
|
||
|
||
### Moved ErrorPage into a new module {#errorpage}
|
||
|
||
ErrorPage has been moved to a separate [silverstripe/errorpage module](http://addons.silverstripe.org/add-ons/silverstripe/errorpage)
|
||
to allow for alternative approaches to managing error responses.
|
||
The module is installed by default on new projects, but needs to be added to existing projects
|
||
to preserve functionality on the existing "Page not found" and "Server error" pages in the CMS.
|
||
|
||
composer require silverstripe/errorpage
|
||
|
||
Alternatively you can implement your own `onBeforeHTTPError()` handling to present custom errors.
|
||
By default, SilverStripe will display a plaintext "not found" message when the module isn't installed.
|
||
Check the [module upgrading guide](http://addons.silverstripe.org/add-ons/silverstripe/errorpage)
|
||
for more configuration API changes on the `ErrorPage` class.
|
||
|
||
### Server configuration files for assets {#assets-server-config}
|
||
|
||
Server configuration files for `/assets` are no longer static, and are regenerated via a set of
|
||
standard SilverStripe templates on flush. These templates include:
|
||
|
||
* `Assets_HTAccess.ss`: Template for public permissions on the Apache server.
|
||
* `Assets_WebConfig.ss`: Template for public permissions on the IIS server.
|
||
* `Protected_HTAccess.ss`: Template for the protected store on the Apache server (should deny all requests).
|
||
* `Protected_WebConfig.ss`: Template for the protected store on the IIS server (should deny all requests).
|
||
|
||
You will need to make sure that these files are writable via the web server, and that any necessary
|
||
configuration customisation is done via overriding these templates.
|
||
|
||
Depending on your server configuration, it may also be necessary to adjust your assets folder
|
||
permissions. Please see the [common installation problems](/getting_started/installation/common_problems)
|
||
guide for configuration instruction.
|
||
|
||
If upgrading from an existing installation, make sure to invoke `?flush=all` at least once.
|
||
|
||
See our ["File Security" guide](/developer_guides/files/file_security) for more information.
|
||
|
||
### TinyMCE v4 {#tinymce}
|
||
|
||
Please see the [tinymce upgrading guide](http://archive.tinymce.com/wiki.php/Tutorial:Migration_guide_from_3.x)
|
||
to assist with upgrades to customisations to TinyMCE v3.
|
||
|
||
In Framework 4.0 the user interface for TinyMCE has been trimmed down considerably, with certain toolbar
|
||
buttons removed from the default cms configuration:
|
||
|
||
* Strikethrough
|
||
* Styles dropdown
|
||
* Block quotes
|
||
* Horizontal Rule
|
||
* Undo / Redo
|
||
* Cut / Paste as word
|
||
* Select all
|
||
* Fullscreen
|
||
|
||
However, these function may be enabled on a case by case basis through modifification of the default
|
||
tinymce config, or by creating custom configurations (check [TinyMCE documentation](https://www.tinymce.com/docs/configure/)).
|
||
|
||
The optional `ss_macron` plugin for inserting Māori diacritical marks
|
||
has been removed from core. You can configure the built-in `charmap` plugin instead:
|
||
|
||
```php
|
||
$editor = SilverStripe\Forms\HTMLEditor\HtmlEditorConfig::get('cms');
|
||
$editor->enablePlugins('charmap');
|
||
$editor->addButtonsToLine(1, 'charmap');
|
||
$editor->setOption('charmap_append', [
|
||
['256','A - macron'],
|
||
['274','E - macron'],
|
||
['298','I - macron'],
|
||
['332','O - macron'],
|
||
['362','U - macron'],
|
||
['257','a - macron'],
|
||
['275','e - macron'],
|
||
['299','i - macron'],
|
||
['333','o - macron'],
|
||
['363','u - macron']
|
||
]);
|
||
```
|
||
|
||
### DataObjects with the `Versioned` extension {#dataobject-versioned}
|
||
|
||
In most cases, versioned models with the default versioning parameters will not need to be changed. However,
|
||
there are now additional restrictions on the use of custom stage names.
|
||
|
||
Rather than declaring the list of stages a model has, the constructor for `Versioned` will take a single mode
|
||
parameter, which declares whether or not the model is versioned and has a draft and live stage, or alternatively
|
||
if it only has versioning without staging.
|
||
|
||
Each form of this extension is registered under the appropriate service identifier, which you should use in your
|
||
model as below:
|
||
|
||
```php
|
||
use SilverStripe\ORM\DataObject;
|
||
use SilverStripe\ORM\Versioning\Versioned;
|
||
|
||
/**
|
||
* This model has staging and versioning. Stages will be "Stage" and "Live"
|
||
*/
|
||
class MyStagedModel extends SilverStripe\ORM\DataObject
|
||
{
|
||
private static $extensions = [
|
||
Versioned::class . '.stagedversioned',
|
||
];
|
||
}
|
||
|
||
/**
|
||
* This model has versioning only, and will not has a draft or live stage, nor be affected by the current stage.
|
||
*/
|
||
class MyVersionedModel extends DataObject
|
||
{
|
||
private static $extensions = [
|
||
Versioned::class . '.versioned',
|
||
];
|
||
}
|
||
```
|
||
|
||
Additionally, the following api methods have been added:
|
||
|
||
* `Versioned::publishRecursive` Publishes this object, and all owned objects
|
||
* `Versioned::publishSingle` Publishes this object, but not owned objects
|
||
* `Versioned::copyVersionToStage` Replaces the old `publish` method.
|
||
|
||
These methods are deprecated:
|
||
|
||
* `Versioned::publish` Replaced by `Versioned::copyVersionToStage`
|
||
* `Versioned::doPublish` Replaced by `Versioned::publishRecursive`
|
||
|
||
### New Ownership API {#ownership}
|
||
|
||
In order to support the recursive publishing of dataobjects, a new API has been developed to allow
|
||
developers to declare dependencies between versioned objects.
|
||
|
||
```php
|
||
private static $owns = [
|
||
'Banners', // This page depends on banners, declared as a separate 'has_many'
|
||
'FooterImage', // This page depends on the footer image, declared as a separate 'has_one'
|
||
];
|
||
```
|
||
|
||
This is done to ensure that the published state of linked components are consistent with their "owner."
|
||
Without the concept of ownership, these linked components could be implicitly exposed on the frontend,
|
||
which may not align with the intent of the content author.
|
||
|
||
For instance, on a products page which has a list of products, the products should not be published unless
|
||
the products page is, too. The ownership API solves this by allowing you to declare a two-way relationship
|
||
between objects, typically, but not necessarily, linked by a database relationship
|
||
(`has_many`, `many_many`, etc.).
|
||
|
||
```php
|
||
use SilverStripe\Versioned\Versioned;
|
||
use SilverStripe\ORM\DataObject;
|
||
|
||
class ProductPage extends Page
|
||
{
|
||
private static $has_many = [
|
||
'Products' => Product::class
|
||
];
|
||
|
||
private static $owns = [
|
||
'Products'
|
||
];
|
||
}
|
||
|
||
class Product extends DataObject
|
||
{
|
||
private static $extensions = [
|
||
Versioned::class
|
||
];
|
||
|
||
private static $has_one = [
|
||
'Parent' => ProductPage::class
|
||
];
|
||
}
|
||
```
|
||
|
||
If your objects are linked by something other than a database relationship, for instance, a custom
|
||
getter that is computed at runtime, the same rules can be applied, as long as you provide an `$owned_by`
|
||
setting on the child object.
|
||
|
||
For more information, see the [DataObject ownership](https://docs.silverstripe.org/en/4/developer_guides/model/versioning/#dataobject-ownership) documentation and the [versioning](/developer_guides/model/versioning) documentation
|
||
|
||
### ChangeSet batch publishing {#changeset}
|
||
|
||
ChangeSet objects have been added, which allow groups of objects to be published in
|
||
a single atomic transaction.
|
||
This API will utilise the ownership API to ensure that changes to any object include
|
||
all necessary changes to owners or owned entities within the same changeset.
|
||
|
||
### New `[image]` shortcode in `HTMLText` fields {#image-shortcode}
|
||
|
||
The new Ownership API relies on relationships between objects.
|
||
Many of these relationships are already made explicit through `has_one`, `has_many` and `many_many`.
|
||
Images inserted into `HTMLText` fields (through a WYSIWYG editor) need to be tracked as well.
|
||
Instead of `<img>` tags, the field will insert `[image]` shortcodes which point to the database identifier
|
||
of the `Image` record rather than its path on the filesystem. The shortcode will be automatically replaced
|
||
when the field is rendered. Newly inserted images will automatically receive the shortcode and ownership tracking,
|
||
and existing `<img>` will continue to work.
|
||
|
||
### Renamed DBField and subclasses {#dbfield-rename}
|
||
|
||
All `DBField` subclasses are namespaced, have a `DB` prefix, and drop any existing `SS_` prefix.
|
||
For example, `Text` becomes `SilverStripe\ORM\FieldType\DBText`,
|
||
and `SS_Datetime` becomes `SilverStripe\ORM\FieldType\DBDatetime`.
|
||
Since they are aliased to their old name, you likely won't need to change your `DataObject::$db` definitions.
|
||
If you are instanciating or otherwise referencing those classes directly (not through strings),
|
||
they'll likely get rewritten automatically through the
|
||
[upgrader tool](https://github.com/silverstripe/silverstripe-upgrader/).
|
||
|
||
Example:
|
||
|
||
```diff
|
||
use SilverStripe\ORM\DataObject;
|
||
+use SilverStripe\ORM\FieldType\DBVarchar;
|
||
|
||
class MyObject extends DataObject
|
||
{
|
||
private static $db = [
|
||
'Number' => 'Int',
|
||
- 'Time' => 'SS_Datetime'
|
||
+ 'Time' => 'Datetime'
|
||
];
|
||
|
||
public function TextNumber()
|
||
{
|
||
- return new Varchar('TextNumber', 'Number is ' . $this->Number);
|
||
+ return new DBVarchar('TextNumber', 'Number is ' . $this->Number);
|
||
}
|
||
}
|
||
```
|
||
|
||
### Removed RestfulService {#restfulservice}
|
||
|
||
The `RestfulService` API was a (poor) attempt at a built-in HTTP client.
|
||
We've removed it, and recommend using [Guzzle](http://docs.guzzlephp.org/en/latest/) instead.
|
||
|
||
### Removed Oembed {#oembed}
|
||
|
||
Instead of Oembed, the framework now relies on [oscarotero/Embed](https://github.com/oscarotero/Embed) to handle getting the shortcode-data for embedding.
|
||
If you have custom embedding-code relying on `Oembed`, please refer to the documentation provided by this package.
|
||
|
||
### Configurable Admin URL {#admin-url}
|
||
|
||
The default `admin/` URL to access the CMS interface can now be changed via a custom Director routing rule for
|
||
`AdminRootController`. If your website or module has hard coded `admin` URLs in PHP, templates or JavaScript, make sure
|
||
to update those with the appropriate function or config call. See
|
||
[CMS architecture](/developer_guides/customising_the_admin_interface/cms-architecture#the-admin-url) for language
|
||
specific functions.
|
||
|
||
### Custom Authenticators {#custom-authenticators}
|
||
|
||
The methods `register()` and `unregister()` on `Authenticator` are deprecated in favour
|
||
of the `Config` system. This means that any custom `Authenticator` needs to be registered
|
||
through the YAML config. Check the [Authentication docs](/developer_guides/Security/Authentication)
|
||
for details how to setup a custom handler.
|
||
|
||
```yml
|
||
SilverStripe\Security\Authenticator;
|
||
authenticators:
|
||
- MyVendor\MyModule\MyAuthenticator
|
||
```
|
||
|
||
If there is no authenticator registered, `Authenticator` will try to fall back on the `default_authenticator`,
|
||
which can be changed using the following config, replacing the `MemberAuthenticator` with your authenticator:
|
||
|
||
```yml
|
||
SilverStripe\Security\Authenticator:
|
||
default_authenticator: SilverStripe\Security\MemberAuthenticator
|
||
```
|
||
|
||
As soon as a custom authenticator is registered, the default authenticator will not be available anymore, unless enabled specifically in the config.
|
||
By default, the `SilverStripe\Security\MemberAuthenticator` is seen as the default authenticator until it's explicitly set in the config.
|
||
|
||
Every request is now authenticated against an `IdentityStore` interface.
|
||
By default that's a `CookieAuthenticationHandler` and a `SessionAuthenticationHandler`,
|
||
which are called from the `AuthenticationHandler`.
|
||
If there is a valid `Member`, it is set on `Security::setCurrentUser()`, which defaults to `null`.
|
||
IdentityStores are responsible for logging members in and out (e.g. destroy cookies and sessions, or instantiate them).
|
||
|
||
### Config is now immutable {#config}
|
||
|
||
Performance optimisations have been made to Config which, under certain circumstances, require developer
|
||
care when modifying or caching config values. The top level config object is now immutable on application
|
||
bootstrap, and requires a developer to invoke `Config::modify()` to make mutable prior to modification.
|
||
This will immediately have a slight performance hit, so should be done sparingly, and avoided at all
|
||
if possible in performance intensive applications.
|
||
|
||
The `Config::inst()->update()` method is deprecated, and replaced with `Config::modify()->set()` and
|
||
`Config::modify()->merge()` to respectively replace and merge config.
|
||
|
||
When config is merged (either via modification or merged between yml blocks) falsey-values (including nulls)
|
||
now replace any prior values (even arrays).
|
||
|
||
One removed feature is the `Config::FIRST_SET` option. Either use uninherited config directly on the class
|
||
directly, or use the inherited config lookup. As falsey values now overwrite all parent class values, it is
|
||
now generally safer to use the default inherited config, where in the past you would need to use `FIRST_SET`.
|
||
|
||
### Replace Zend_Cache with symfony/cache {#cache}
|
||
|
||
We have replaced the unsupported `Zend_Cache` library with [symfony/cache](https://github.com/symfony/cache).
|
||
This also allowed us to remove SilverStripe's `Cache` API and use dependency injection with a standard
|
||
[PSR-16](http://www.php-fig.org/psr/psr-16/) cache interface instead.
|
||
|
||
Caches should be retrieved through `Injector` instead of `Cache::factory()`,
|
||
and have a slightly different API (e.g. `set()` instead of `save()`).
|
||
|
||
```diff
|
||
-$cache = Cache::factory('myCache');
|
||
+use Psr\SimpleCache\CacheInterface;
|
||
+$cache = Injector::inst()->get(CacheInterface::class . '.myCache');
|
||
|
||
// create a new item by trying to get it from the cache
|
||
-$myValue = $cache->load('myCacheKey');
|
||
+$myValue = $cache->get('myCacheKey');
|
||
|
||
// set a value and save it via the adapter
|
||
-$cache->save(1234, 'myCacheKey');
|
||
+$cache->set('myCacheKey', 1234);
|
||
|
||
// retrieve the cache item
|
||
-if (!$cache->load('myCacheKey')) {
|
||
- // ... item does not exists in the cache
|
||
-}
|
||
+if (!$cache->has('myCacheKey')) {
|
||
+ // ... item does not exists in the cache
|
||
+}
|
||
|
||
// Remove a cache key
|
||
-$cache->remove('myCacheKey');
|
||
+$cache->delete('myCacheKey');
|
||
```
|
||
|
||
With the necessary minimal config in `_config/mycache.yml`
|
||
|
||
```yml
|
||
---
|
||
Name: mycache
|
||
---
|
||
SilverStripe\Core\Injector\Injector:
|
||
Psr\SimpleCache\CacheInterface.myCache:
|
||
factory: SilverStripe\Core\Cache\CacheFactory
|
||
constructor:
|
||
namespace: 'mycache'
|
||
```
|
||
|
||
Caches are now configured through dependency injection services instead of PHP.
|
||
See our ["Caching" docs](/developer-guides/performance/caching) for more details.
|
||
|
||
Before (`mysite/_config.php`):
|
||
|
||
```php
|
||
Cache::add_backend(
|
||
'primary_memcached',
|
||
'Memcached',
|
||
[
|
||
'servers' => [
|
||
'host' => 'localhost',
|
||
'port' => 11211,
|
||
]
|
||
]
|
||
);
|
||
Cache::pick_backend('primary_memcached', 'any', 10);
|
||
```
|
||
|
||
After (`mysite/_config/config.yml`):
|
||
|
||
```yml
|
||
---
|
||
After:
|
||
- '#corecache'
|
||
---
|
||
SilverStripe\Core\Injector\Injector:
|
||
MemcachedClient:
|
||
class: 'Memcached'
|
||
calls:
|
||
- [ addServer, [ 'localhost', 11211 ] ]
|
||
SilverStripe\Core\Cache\CacheFactory:
|
||
class: 'SilverStripe\Core\Cache\MemcachedCacheFactory'
|
||
constructor:
|
||
client: '%$MemcachedClient
|
||
```
|
||
|
||
### User-code style upgrades {#usercode-style-upgrades}
|
||
|
||
Although it is not mandatory to upgrade project code to follow SilverStripe and
|
||
PSR-2 standard it is highly recommended to ensure that code is consistent. The below sections
|
||
will assist you with bringing yourself up to speed.
|
||
|
||
Please note that before upgrading user code style it is necessary to run the standard upgrade path
|
||
to fix references and usages of framework API.
|
||
|
||
### Upgrading user-code to use namespaces
|
||
|
||
Upgrading code to use namespaces is quite a complex process, and as such we have provided
|
||
several development tools and processes to help make the upgrade user friendly and as
|
||
automated as possible.
|
||
|
||
### Using the upgrader tool to automatically apply namespaces
|
||
|
||
The [upgrader tool](https://github.com/silverstripe/silverstripe-upgrader/) provides a feature
|
||
to not only automatically namespace code, but will provide automatic upgrade of other code
|
||
references to those classes.
|
||
|
||
Use the below to setup upgrader, and apply a namespace to a given code folder.
|
||
|
||
```
|
||
composer global require silverstripe/upgrader
|
||
cd ~/Project/Root
|
||
~/.composer/vendor/bin/upgrade-code add-namespace "WebDesignGroup\ShopSite" ./mysite/code --recursive --write
|
||
```
|
||
|
||
If you want to do a dry-run, omit the `--write` option to see a preview of a diff of
|
||
all changed project files.
|
||
|
||
This task will do the following:
|
||
|
||
- Add the given namespace to all files in the code class, and subdirectories.
|
||
- Sub-namespaces will be applied based on directory structure
|
||
- All references to classes in any namespaced files will be safely retained with additional `use` directives
|
||
added as necessary.
|
||
- Register all namespaced classese in a mysite/.upgrade.yml file for migration of other code
|
||
|
||
This task will not do the following, and must be done manually:
|
||
|
||
- Adding `table_name` to any namespaced classes
|
||
- Upgrade other references to namespaced classes outside of this folder
|
||
- Migrate any database table records
|
||
|
||
Please see the following steps for more information.
|
||
|
||
### Using the upgrader tool to update references to namespaced user classes
|
||
|
||
Once a project has been namespaced all newly renamed classes will have a mapping included in the `mysite/.upgrade.yml`
|
||
file. If you have any user-code that references these, you may need to run the upgrader again (as you did did
|
||
to upgrade your project to namespaced framework classe).
|
||
|
||
```
|
||
composer global require silverstripe/upgrader
|
||
cd ~/Project/Root
|
||
~/.composer/vendor/bin/upgrade-code upgrade ./othercode --write
|
||
```
|
||
|
||
### Updating custom dataobjects to use existing table names
|
||
|
||
Once you have namespaced your user code it will be necessary to customise the `table_name` config
|
||
for your dataobjects, in order to ensure the correct table is used after upgrade. It is recommended
|
||
to point this to the base name of the class, excluding namespace, as in 3.x.
|
||
|
||
```diff
|
||
namespace WebDesignGroup\ShopSite;
|
||
use SilverStripe\ORM\DataObject;
|
||
use Page;
|
||
class GalleryPage extends Page
|
||
{
|
||
+ private static $table_name = 'GalleryPage';
|
||
}
|
||
```
|
||
|
||
### Class name remapping {#class-name-remapping}
|
||
|
||
If you've namespaced one of your custom page types, you may notice a message in the CMS
|
||
telling you it's obsolete. This is likely because the `ClassName`
|
||
field in the `SiteTree` table still contains the singular model name, e.g. `GalleryPage`
|
||
and that when you change it to `WebDesignGroup\ShopSite\GalleryPage` then everything
|
||
works again.
|
||
|
||
The `dev/build` task is configured to look for a legacy class name mapping
|
||
configuration setting and will update this for you automatically. You can use
|
||
this to add DB upgrading rules for your own classes.
|
||
|
||
For example, you could upgrade references to the newly namespaced Banner class by adding
|
||
this to your `mysite/_config/upgrade.yml` file:
|
||
|
||
```yml
|
||
SilverStripe\ORM\DatabaseAdmin:
|
||
classname_value_remapping:
|
||
GalleryPage: WebDesignGroup\ShopSite\GalleryPage
|
||
```
|
||
|
||
The next time you run a dev/build the class name for all `GalleryPage` pages will
|
||
be automatically updated to the new `WebDesignGroup\ShopSite\GalleryPage`
|
||
|
||
### PSR-2 Coding Standard compliance {#psr2}
|
||
|
||
You can use the [php codesniffer](https://github.com/squizlabs/PHP_CodeSniffer) tool
|
||
to not only detect and lint PSR-2 coding errors, but also do some minimal automatic
|
||
code style migration.
|
||
|
||
- Install the necessary library:
|
||
`composer require squizlabs/php_codesniffer`
|
||
- Copy silverstripe standards config file from framework/phpcs.xml to your project root:
|
||
`cp ./framework/phpcs.xml ./phpcs.xml`
|
||
- Run the automatic upgrade tool on your code folder
|
||
`vendor/bin/phpcbf ./mysite/code`
|
||
- Run the automatic linting tool to detect and manually fix other errors:
|
||
`vendor/bin/phpcs ./mysite/code`
|
||
|
||
Repeat the final step and manually repair suggested changes, as necessary,
|
||
until you no longer have any linting issues.
|
||
|
||
### PSR-4 autoloading for project code {#psr4}
|
||
|
||
While not critical to an upgrade, SilverStripe 4.0 has adopted the [PS-4 autoloading](http://www.php-fig.org/psr/psr-4/)
|
||
standard for the core modules, so it's probably a good idea to be consistent.
|
||
|
||
You can implement this in your composer configuration like so:
|
||
|
||
```json
|
||
{
|
||
"autoload": {
|
||
"psr-4": {
|
||
"WebDesignGroup\\ShopSite\\": "mysite/src/"
|
||
}
|
||
}
|
||
}
|
||
```
|
||
|
||
Now you just need to ensure that each class site in the correct folder location
|
||
(including case sensitivity) to match its namespace. For example,
|
||
`WebDesignGroup\ShopSite\Model\GalleryItem.php` should live at `mysite/src/Model/GalleryItem.php`.
|
||
|
||
Note that you don’t have to use `src/` as the root folder name. You can continue
|
||
to use `code/` if you want to. SilverStripe has adopted the PSR-4 approach and
|
||
have also started to use `src/` as a default folder location instead of
|
||
`code/`. If you’re going to change, it's probably a good time to do it while you're
|
||
upgrading.
|
||
|
||
For examples, take a look at the file/folder structure and to the
|
||
`composer.json` configuration in either the `framework` or `cms` modules.
|
||
|
||
Please note that there are changes to template structure which in some cases
|
||
require templates to be in a folder location that matches the namespace of the class
|
||
that it belongs to, e.g. `themes/mytheme/templates/MyVendor/Foobar/Model/MyModel.ss`.
|
||
|
||
## API Changes {#api-changes}
|
||
|
||
### General {#overview-general}
|
||
|
||
* Minimum PHP version raised to 5.6 (with support for PHP 7.x)
|
||
* Dropped support for PHP safe mode (removed php 5.4).
|
||
* Once PHP versions become [unsupported by the PHP Project](http://php.net/supported-versions.php)),
|
||
we drop support for those versions in the [next minor release](/contributing/release-process
|
||
This means PHP 5.6 and PHP 7.0 support will become unsupported in Dec 2018.
|
||
* Minimum CMS browser requirement raised from Internet Explorer 8 to Internet Explorer 11
|
||
* Updated PHPUnit from 3.7 to 4.8 ([upgrade notes](https://github.com/sebastianbergmann/phpunit/wiki/Release-Announcement-for-PHPUnit-4.0.0#backwards-compatibility-issues)).
|
||
Please remove any PHPUnit related `require_once()` calls (e.g. in `FeatureContext`
|
||
definitions of the [behat-extension](https://github.com/silverstripe-labs/silverstripe-behat-extension) module).
|
||
Run `composer require --dev 'phpunit/phpunit:~4.8'` on existing projects to pull in the new dependency.
|
||
* `always_populate_raw_post_data` will now raise a deprecation warning in install.php when running in php 5.x,
|
||
unless set to `-1`. This is due to `$HTTP_RAW_POST_DATA` being removed in php 7.
|
||
See the [http://php.net/manual/en/reserved.variables.httprawpostdata.php](php documentation) for more information.
|
||
* Admin URL can now be configured via custom Director routing rule
|
||
* `Controller::init` visibility changed to protected. Use `Controller::doInit()` instead.
|
||
* `Controller::join_links` supports an array of link sections.
|
||
* `Object::useCustomClass` has been removed. You should use the config API with Injector instead. {#object-usecustomclass}
|
||
* `Object::invokeWithExtensions` now has the same method signature as `Object::extend` and behaves the same way.
|
||
* `ServiceConfigurationLocator` is now an interface not a class.
|
||
* `i18nTextCollectorTask` merge is now true by default.
|
||
* `Object` has been broken up into various traits, each of which can be added to other objects independently:
|
||
* `Configurable` Provides Config API helper methods
|
||
* `Injectable` Provides Injector API helper methods
|
||
* `Extensible` Allows extensions to be applied
|
||
* `Convert` class has extra methods for formatting file sizes in php_ini compatible format
|
||
* `Convert::memstring2bytes()` will parse a php_ini memory size.
|
||
* `Convert::bytes2memstring()` will format the memory size with the appropriate scale.
|
||
* `SiteTree.alternatePreviewLink` is deprecated. Use `updatePreviewLink` instead.
|
||
* `Injector` dependencies no longer automatically inherit from parent classes.
|
||
* `$action` parameter to `Controller::Link()` method is standardised.
|
||
* Moved test database cleanup task from `sake dev/tests/cleanupdb` to `sake dev/tasks/CleanupTestDatabasesTask`
|
||
* `Injector::load` given a `src` parameter will no longer guess the
|
||
service name from the filename. Now the service name will either
|
||
by the array key, or the `class` parameter value.
|
||
* Uniqueness checks for `File.Name` is performed on write only (not in `setName()`)
|
||
* Created `Resettable` interface to better declare objects which should be reset between tests.
|
||
* Added a server requirement for the php-intl extension (shipped by default with most PHP distributions)
|
||
* Replaced `Zend_Date` and `Zend_Locale` with the `php-intl` extension.
|
||
* Consistently use CLDR date formats (rather than a mix of CLDR and `date()` formats)
|
||
* Moved config into a new module: [silverstripe/config](https://github.com/silverstripe/silverstripe-config/).
|
||
See upgrading notes below.
|
||
* Falsey config values (null, 0, false, etc) can now replace non-falsey values.
|
||
* Introduced new `ModuleLoader` manifest, which allows modules to be found via composer name.
|
||
E.g. `$cms = ModuleLoader::inst()->getManifest()->getModule('silverstripe/cms')`
|
||
* `ClassManifest::getOwnerModule()` now returns a `Module` object instance.
|
||
* Moved `Object::parse_class_spec()` to `ClassInfo`
|
||
* Removed `create_from_spec()`. Supportede by `Injector` natively.
|
||
* Moved `Controller::Link()` to parent class (`RequestHandler`)
|
||
* Moved `Controller::redirect()` to parent class (`RequestHandler`)
|
||
* Moved `Controller::redirectBack()` to parent class (`RequestHandler`)
|
||
* `RequestHandler::Link()` now relies on the `url_segment` handler being provided for the class.
|
||
If left unset, this will raise an error.
|
||
* `RequestHandler::getBackURL()` and `getReturnReferer()` have been added to safely inspect the current request
|
||
to see if there is a url to redirect back to.
|
||
* Renamed `LeftAndMain_TreeNode` to `CMSMain_TreeNode`
|
||
* Removed `LeftAndMain::SiteTreeAsUL()` (override left in `CMSMain`)
|
||
* Moved `LeftAndMain::getSiteTreeFor()` to `CMSMain`
|
||
* Moved `LeftAndMain::getsubtree()` to `CMSMain`
|
||
* Moved `LeftAndMain::updatetreenodes()` to `CMSMain`
|
||
* Moved `LeftAndMain::savetreenodes()` to `CMSMain`
|
||
* Renamed `LeftAndMain::EditorToolbar()` to `Modals()`. Returns a `ModalController` handler
|
||
instance rather than a `HTMLEditorField_Toolbar`
|
||
* Removed `Director::$dev_servers` and `Director::$test_servers`
|
||
* Removed `Director::$urlParams` and `Director::setUrlParams()`
|
||
* Removed `Director.alternate_host`. Use `Director.alternate_base_url` instead.
|
||
* Removed `Director.alternate_protocol`. Use `Director.alternate_base_url` instead.
|
||
* 'BlockUntrustedIPS' env setting has been removed.
|
||
All IPs are untrusted unless `SS_TRUSTED_PROXY_IPS` is set to '*'
|
||
See [Environment Management docs](/getting_started/environment_management/) for full details.
|
||
* `SS_TRUSTED_PROXY_HOST_HEADER`, `SS_TRUSTED_PROXY_PROTOCOL_HEADER`, and `SS_TRUSTED_PROXY_IP_HEADER`
|
||
are no longer supported. These settings should go into the Injector service configuration for
|
||
TrustedProxyMiddleware instead.
|
||
* Removed `SS_HOST` environment constant. Use `SS_BASE_URL` instead.
|
||
* `Member::canLogIn()` now returns boolean. Use `Member::validateCanLogin()` to get a `ValidationResult`
|
||
* Moved `Security::has_default_admin` to `DefaultAdminService::hasDefaultAdmin()`
|
||
* Moved `Security::check_default_admin` to `DefaultAdminService::isDefaultAdminCredentials()`
|
||
* Moved `Security::default_admin_torname` to `DefaultAdminService::getDefaultAdminUsername()`
|
||
* Moved `Security::default_admin_password` to `DefaultAdminService::getDefaultAdminPassword()`
|
||
* Moved `Security::setDefaultAdmin` to `DefaultAdminService::setDefaultAdmin()`
|
||
* Moved `Security::clearDefaultAdmin` to `DefaultAdminService::clearDefaultAdmin()`
|
||
* Moved `Security::findAnAdministrator` to `DefaultAdminService::findOrCreateDefaultAdmin()`
|
||
* Deprecated `Member::checkPassword()`. Use `Authenticator::checkPassword()` instead
|
||
* Deprecated `RequestFilter`. Use
|
||
[HTTPMiddleware](/developer_guides/controllers/middlewares) instead.
|
||
* Changed `RequestFilter`: The `$session` and `$dataModel` variables removed from preRequest / postRequest.
|
||
* `Extension` instances are now singletons and no longer are constructed once per extended object.
|
||
See the 'Upgrade extensions to work as singletons' section on this page for more information.
|
||
* Removed `ConfigureFromEnv.php`
|
||
* Changed `Session` object to avoid static access (`Session::inst()`).
|
||
Use it from the current request via `$request->getSession()` instead.
|
||
All static methods have been removed, and the `inst_` prefix removed from all instance members.
|
||
* `Director.rules` config no longer support `redirect:<url>` directly via config.
|
||
* Removed `Director::get_environment_type()` and `Director::set_environment_type()`.
|
||
Get the `Kernel` instance via injector and query `getEnvironment()` instead.
|
||
(e.g. `$type = Injector::inst()->get(Kernel::class)->getEnvironment()`)
|
||
* Removed `Director.environment_type` to configure the environment via YAML.
|
||
Use a [.env file](/getting_started/environment_management) to manage environment settings.
|
||
* Removed `increase_xdebug_nesting_level_to()` (functionality has been inlined into `AppKernel`)
|
||
* Moved `set_increase_time_limit_max()` to `Environment::setTimeLimitMax()`
|
||
* Moved `get_increase_time_limit_max()` to `Environment::getTimeLimitMax()`
|
||
* Moved `set_increase_memory_limit_max()` to `Environment::setMemoryLimitMax()`
|
||
* Moved `get_increase_memory_limit_max()` to `Environment::getMemoryLimitMax()`
|
||
* Moved `increase_time_limit_to()` to `Environment::increaseTimeLimitTo()`
|
||
* Moved `increase_memory_limit_to()` to `Environment::increaseMemoryLimitTo()`
|
||
* Moved `translate_memstring()` to `Convert::memstring2bytes`.
|
||
* Moved `getTempFolder()` to `TempFolder::getTempFolder()`
|
||
* Removed `getTempParentFolder()`
|
||
* Removed `getTempFolderUsername()`
|
||
* Removed `CMSMain::buildbrokenlinks()`
|
||
* Removed `Injector::unregisterAllObjects()`. Use `unregisterObjects` to unregister
|
||
groups of objects limited by type instead.
|
||
* Removed `SS_Log`. Use `Injector::inst()->get(LoggerInterface::class)` instead.
|
||
* Removed `CMSBatchAction_Delete`
|
||
* Removed `CMSBatchAction_DeleteFromLive`
|
||
* Removed `CMSMain.enabled_legacy_actions` config.
|
||
* `CMSmain.getCMSTreeTitle` is now ignored on extensions. Use `updateCMSTreeTitle` in extensions instead.
|
||
* Removed ability to run tests via web requests (`http://mydomain.com/dev/tests`), use the standard CLI
|
||
command instead (`vendor/bin/phpunit`).
|
||
* Removed `dev/jstests/` controller
|
||
* Removed `TestRunner` and `JSTestRunner`
|
||
* Removed `PhpUnitWrapper`, `PhpUnitWrapper_3_4`, `PhpUnitWrapper_3_5`, `PhpUnitWrapper_Generic`, `SapphireTestSuite` APIs
|
||
* Removed `SapphireTestReporter` and `CliTestReporter`
|
||
* Removed `SapphireTest::skipTest()`, use `markTestSkipped()` in a `setUp()` method instead
|
||
* `debugmethods` querystring argument has been removed from debugging.
|
||
* Moved `ErrorPage` into a new module: [silverstripe/errorpage](http://addons.silverstripe.org/add-ons/silverstripe/errorpage). See upgrading notes in that module.
|
||
* Removed `VirtualPage_Controller`. Virtual pages will now share whichever controller the “target” page uses
|
||
* Removed `Config_LRU`
|
||
* Removed `SilverStripeInjectionCreator`
|
||
* Removed `i18n::get_translatable_modules` method.
|
||
* Removed `i18nTextCollector_Writer_Php`
|
||
* `i18nTextCollector` no longer collects from `themes/<theme>` root dir.
|
||
Modules which provide themes via `<moduleName>/themes/<theme>` are now preferred.
|
||
* Removed `i18nSSLegacyAdapter`
|
||
* Removed `FunctionalTest::stat()`
|
||
* Removed `LeftAndMainMarkingFilter`
|
||
* Removed `Controller::getFormOwner()`
|
||
* Removed `TeamCityListener`
|
||
* Removed the `Spyc` YAML library. Please load it yourself, or use the included Symfony YAML component.
|
||
* Removed `RestfulService`. Use Guzzle instead ([details](#restfulservice))
|
||
* Removed `Oembed` in favour of a
|
||
[oscarotero/Embed](https://github.com/oscarotero/Embed)
|
||
* Removed `TextParser` and `BBCodeParser`. These are available in an archived module,
|
||
[silverstripe-archive/bbcodeparser](https://github.com/silverstripe-archive/silverstripe-bbcodeparser)
|
||
* Removed `ViewableData::ThemeDir`. Use `ThemeResourceLoader::findThemedResource` in conjunction with `SSViewer::get_themes` instead.
|
||
* Removed `Config::FIRST_SET` and `Config::INHERITED`
|
||
* Removed `RequestHandler.require_allowed_actions`. This is now fixed to on and cannot be
|
||
disabled.
|
||
* Removed `ClassManifest::getModules()`. Use `ModuleLoader` instead
|
||
* Removed `ClassManifest::getConfigDirs()`. Use `ModuleLoader` instead
|
||
* Removed `ClassManifest::getConfigs()`. Use `ModuleLoader` instead
|
||
* Removed `Session::set_config()` and `Session::get_config()`. Use the `Session.timeout` config setting instead
|
||
* Removed `Security::set_login_recording()` and `Security::get_login_recording()`.
|
||
Use the `Security.login_recording` config setting instead.
|
||
* Removed `ModelAsController::find_old_page()`. Use `OldPageRedirector::find_old_page()` instead
|
||
* Removed `RootURLController:set_default_homepage_link()` and `RootURLController::get_default_homepage_link()`.
|
||
Use the `RootURLController.default_homepage_link` config setting instead.
|
||
* Removed `CreditCardField`, `CountryDropdownField`, `PhoneNumberField`, `MemberDatetimeOptionsetField`, `InlineFormAction`.
|
||
Use custom code instead
|
||
* Removed `ResetFormAction`, use `FormAction::create()->setAttribute('type', 'reset')` instead
|
||
* `Injector` now complies with [PSR-11](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-11-container.md).
|
||
Accordingly, `hasService()` has been renamed to `has()`, and `get()` will throw
|
||
`SilverStripe\Core\Injector\InjectorNotFoundException` when the service can't be found.
|
||
* Removed `CustomMethods::createMethod()`. Use closures instead.
|
||
* Removed `Extension::$ownerBaseClass` property. You should use `$this->owner->baseClass()` instead.
|
||
The second argument of `Extension::setOwner()` has also been removed.
|
||
* Deprecated `ClassInfo::baseDataClass()`. Use `DataObject::getSchema()->baseDataClass()` instead.
|
||
* Deprecated `ClassInfo::table_for_object_field()`. Use `DataObject::getSchema()->tableForField()` instead
|
||
* Deprecated `Config::inst()->update()`. Use `Config::modify()->set()` or `Config::modify()->merge()`
|
||
instead.
|
||
|
||
### ORM {#overview-orm}
|
||
|
||
* Deprecated `SQLQuery` in favour `SQLSelect` ([details](#sqlquery))
|
||
* Added `DataObject.many_many` 'through' relationships now support join dataobjects in place of
|
||
automatically generated join tables. See the [/developer_guides/relations](datamodel relationship docs)
|
||
for more info.
|
||
* Added `DataList::filter()` by null now internally generates "IS NULL" or "IS NOT NULL" conditions
|
||
appropriately on queries.
|
||
* Changed `DataObject` constructor to require an additional parameter, which must be included in subclasses.
|
||
* `DataObject::db` now returns composite fields.
|
||
* `DataObject::ClassName` field has been refactored into a `DBClassName` type field (instead of a string).
|
||
* `DataObject::can()` has new method signature with `$context` parameter.
|
||
* `DataObject::duplicate()` now requires explicit flag to duplicate `belongs_many_many` (off by default),
|
||
but now works with unsaved relations. By default only `many_many` are duplicated.
|
||
* `HTMLText` no longer enables shortcodes by default. Two injector aliases have been created for this
|
||
class which can be used to select the correct behaviour. Use `HTMLText` for shortcodes enabled,
|
||
and `HTMLFragment` without shortcodes enabled (the new default).
|
||
* Renamed `String::NoHTML()` to `Plain()`
|
||
* Removed `String::LimitWordCountXML()`. Use `LimitWordCount()` instead.
|
||
* Removed `String::BigSummary()`. Use `Summary()` instead.
|
||
* Changed `HTMLText` limit methods to operate on plain text rather than attempt to manipulate the underlying HTML.
|
||
* `FormField::Title()` and `FormField::RightTitle()` are now cast as plain text by default (but can be overridden).
|
||
* Renamed `FormField#createTag()` to `FormField::create_tag()`
|
||
* `Hierarchy` class has had much of it's functionality refactored out into `MarkedSet`:
|
||
* `isMarked()`
|
||
* `isTreeOpened()`
|
||
* `isExpanded()`
|
||
* `markByID()`
|
||
* `markPartialTree()`
|
||
* `markExpanded()`
|
||
* `markUnexpanded()`
|
||
* `markToExpose()`
|
||
* `markClosed()`
|
||
* `markOpened()`
|
||
* `markedNodeIDs()`
|
||
* `getChildrenAsUL()` replaced with `renderChildren()`, which now takes a template name.
|
||
* `markingFilterMatches()` (and made protected)
|
||
* `markChildren()` (and made protected)
|
||
* Search filter classes (e.g. `ExactMatchFilter`) are now registered with `Injector`
|
||
via a new `DataListFilter.` prefix convention.
|
||
see [search filter documentation](/developer_guides/model/searchfilters) for more information.
|
||
* `Permission::flush_permission_cache()` renamed to `reset()` and added to `Resettable` interface.
|
||
* Changed `Versioned` constructor now only allows a single string to declare whether staging is enabled or not. The
|
||
number of names of stages are no longer able to be specified. See below for upgrading notes for models
|
||
with custom stages.
|
||
* Renamed `Versioned::reading_stage()` to `set_stage()` (throws an error if setting an invalid stage)
|
||
* Renamed `Versioned::current_stage()` to `get_stage()`
|
||
* Removed `Versioned::getVersionedStages()`
|
||
* Removed `Versioned::get_live_stage()`. Use the `Versioned::LIVE` constant instead.
|
||
* Removed `Versioned::getDefaultStage()`. Use the `Versioned::DRAFT` constant instead.
|
||
* Changed `Versioned::$versionableExtensions` from `private static` to `protected static`
|
||
* Added `Versioned::hasStages()` to check if an object has a given stage.
|
||
* Added `Versioned::stageTable()` to get the table for a given class and stage.
|
||
* Any extension declared via `versionableExtensions` config on Versioned dataobject must now
|
||
`VersionableExtension` interface at a minimum. `Translatable` has been removed from default
|
||
`versionableExtensions`
|
||
* The default CMS delete behaviour for versioned dataobjects is now to delete from both draft
|
||
and live stages, and to save to the archive. There is no longer a separate "Archive" action.
|
||
* Any writes to versioned dataobjects (in either Draft or Live) will always write to the draft
|
||
(main) table as a source of truth. This means that records created in Live mode will always be
|
||
available to the CMS and in draft mode.
|
||
* `_versions` suffixed tables are now renamed to `_Versions`. This fix will be automatically
|
||
applied during dev/build.
|
||
* A lot of standard versioned API has been refactored from `SiteTree` into `Versioned` extension.
|
||
* All versioned DataObjects have `canPublish()`, `canArchive()`, `canUnpublish()` permission checks
|
||
* All versioned Dataobjects have `doPublish()`, `doArchive()`, `doPublish()`, and `doUnpublish()` actions.
|
||
However, `do*()` methods will no longer automatically check `can*()` permissions, and must be done by
|
||
usercode before invocation.
|
||
* Moved `SiteTree::getIsAddedToStage()` to `Versioned::isOnDraftOnly()`
|
||
* Moved `SiteTree::getIsModifiedOnStage()` to `Versioned::isModifiedOnDraft()`
|
||
* Moved `SiteTree::isPublished()` to `Versioned`.
|
||
* Renamed `SiteTree::getExistsOnLive()` to `isPublished()`
|
||
* Added `Versioned::isOnDraft()`
|
||
* Added `Versioned::isArchived()`
|
||
* Added `Versioned::isOnLiveOnly()`
|
||
* Added `ChangeSet` and `ChangeSetItem` for batch publishing of versioned dataobjects.
|
||
* Added `DataObject.table_name` config to customise the database table for any record.
|
||
* Added `DataObjectSchema` class to assist with mapping between classes and tables.
|
||
* Changed `DataObject.indexes` to use `columns` instead of `value` to define index contents.
|
||
* Changed `Money` to treat values as empty only if `Amount` field is null. If an `Amount` value
|
||
is provided without a `Currency` specified, it will be formatted as per the current locale.
|
||
* Removed `DatabaseAdmin#clearAllData()`. Use `DB::get_conn()->clearAllData()` instead
|
||
* Moved `SapphireTest` temp DB methods into a new `TempDatabase` class.
|
||
This allows applications to create temp databases when not running tests.
|
||
* Moved `SapphireTest::using_temp_db()` to `TempDatabase->isUsed()`
|
||
* Moved `SapphireTest::kill_temp_db()` to `TempDatabase->kill()`
|
||
* Moved `SapphireTest::empty_temp_db()` to `TempDatabase->clearAllData()`
|
||
* Moved `SapphireTest::create_temp_db()` to `TempDatabase->build()`
|
||
* Moved `SapphireTest::delete_all_temp_dbs()` to `TempDatabase->deleteAll()`
|
||
* Moved `SapphireTest::resetDBSchema()` to `TempDatabase->resetSchema()`
|
||
* `DBDate`, `DBTime` and `DBDatetime` have changed methods:
|
||
* Added `getTimestamp()` to get the respective date / time as unix timestamp (seconds since 1970-01-01)
|
||
* Changed `Format()` method to use [CLDR format strings](http://userguide.icu-project.org/formatparse/datetime),
|
||
rather than [PHP format string](http://php.net/manual/en/function.date.php).
|
||
E.g. `d/m/Y H:i:s` (php format) should be replaced with to `dd/MM/y HH:mm:ss` (CLDR format).
|
||
* Added `getISOFormat()` to return the standard date/time ISO 8601 pattern in CLDR format.
|
||
* Changed `setValue()` method to expect dates and times to be passed in
|
||
ISO 8601 format (y-MM-dd) or (HH:mm:ss). Certain date formats will attempt to parse with
|
||
the below restrictions:
|
||
- `/`, `.` or `-` are supported date separators, but will be replaced with `-` internally.
|
||
- US date formats (m-d-y / y-d-m) will not be supported and may be parsed incorrectly.
|
||
(Note: Date form fields will still support localised date formats).
|
||
- `dd-MM-y` will be converted to `y-MM-dd` internally.
|
||
- 2-digit values for year will now raise errors.
|
||
* Changed `FormatFromSettings()` to default to `Nice()` format if no member is logged in.
|
||
* Changed `Nice()`, `Long()` and `Full()` methods to follow standard formatting rules for the
|
||
current locale, rather than pre-defined formats.
|
||
* Added `Short()` to format concise date/time values, as a shorter version than `Nice`
|
||
* Added `getFormatter()` to return a locale-specific date/time formatter.
|
||
* Added `DBTime::FormatFromSettings()`
|
||
* Deprecated globals `$database` and `$databaseConfig`. Use `DB::setConfig()` instead.
|
||
* Removed `DataModel`
|
||
* Changed `DataObject::can*()` methods to no longer accept a member ID. These must now be passed a `Member` object or left null
|
||
* Moved `DataObject::db()` to `DataObjectSchema::fieldSpec()` and `DataObjectSchema::fieldSpecs()`
|
||
* Moved `DataObject::manyManyComponent()` to `DataObjectSchema` (access through `DataObject->getSchema()`)
|
||
* Moved `DataObject::belongsToComponent()` to `DataObjectSchema` (access through `DataObject->getSchema()`)
|
||
* Moved `DataObject::hasOneComponent()` to `DataObjectSchema` (access through `DataObject->getSchema()`)
|
||
* Moved `DataObject::hasManyComponent()` to `DataObjectSchema` (access through `DataObject->getSchema()`)
|
||
* Moved `DataObject::getRemoteJoinField()` to `DataObjectSchema` (access through `DataObject->getSchema()`)
|
||
* Moved `DataObject::database_fields()` to `DataObjectSchema::databaseFields()`
|
||
* Moved `DataObject::has_own_table()` to `DataObjectSchema::classHasTable()`
|
||
* Moved `DataObject::composite_fields()` to `DataObjectSchema::compositeFields()`
|
||
* Moved `DataObject::manyManyExtraFieldsForComponent()` to `DataObjectSchema`
|
||
* Deprecated `DataObject::$destroyed`
|
||
* Removed `DataObject::validateModelDefinitions`. Relations are now validated within `DataObjectSchema`
|
||
* Removed `DataObject` methods `hasOwnTableDatabaseField`, `has_own_table_database_field` and {#dataobject-has-own}
|
||
`hasDatabaseFields` are superceded by `DataObjectSchema::fieldSpec`.
|
||
Use `$schema->fieldSpec($class, $field, DataObjectSchema::DB_ONLY | DataObjectSchema::UNINHERITED )`.
|
||
Exclude `uninherited` option to search all tables in the class hierarchy.
|
||
* Renamed `DataObject::is_composite_field()` to `DataObjectSchema::compositeField()`
|
||
* Renamed `DataObject::custom_database_fields()`to `DataObjectSchema::databaseFields()`
|
||
or `DataObjectSchema::fieldSpecs()` instead.
|
||
* Removed `DataList::getRelation`, as it was mutable. Use `DataList::applyRelation` instead, which is immutable.
|
||
* `Member` Field 'RememberLoginToken' removed, replaced with 'RememberLoginHashes' has_many relationship
|
||
* Removed `UpgradeSiteTreePermissionSchemaTask`
|
||
* Removed `EncryptAllPasswordsTask`
|
||
* Removed `DBString::LimitWordCountXML()` method. Use `LimitWordCount()` for XML safe version.
|
||
* Removed `SiteTree::getExistsOnLive()`. Use `isPublished()` instead.
|
||
* Removed `SiteTree::getIsDeletedFromStage()`. Use `isOnDraft()` instead (inverse case).
|
||
* Changed `DataObject.many_many` to remove triangular resolution. Both the `many_many` and `belongs_many_many`
|
||
must point directly to the specific class on the opposing side, not a subclass or parent.
|
||
* Removed `DataObject::validateModelDefinitions()`. Validation and parsing of config is now handled
|
||
within `DataObjectSchema`.
|
||
* `CMSBatchAction_Delete` removed. Use `CMSBatchAction_Archive` instead.
|
||
* Removed `Date::past_date()`
|
||
* Removed `Date::prior_monday()`
|
||
* Removed `Date::weekday()`
|
||
* Removed `Date::next_day()`
|
||
* Removed `Date::day_before()`
|
||
* Removed `Date::days_between()`
|
||
* Removed `Date::nice_format()`. Use locale-specific formatting for `Nice()`
|
||
* Removed `Time::nice_format()`. Use locale-specific formatting for `Nice()`
|
||
* Removed `Datetime::nice_format()`. Use locale-specific formatting for `Nice()`
|
||
* Removed `Time::TwelveHour()`
|
||
* Removed `Time::Nice24()`
|
||
* Removed `Money::NiceWithShortname()`
|
||
* Removed `Money::NiceWithName()`
|
||
* Removed `Money::getShortName()`
|
||
* Removed `Money::getCurrencyName()`
|
||
* Removed additional arguments from `Money::getSymbol()`. The result of this value is
|
||
now localised based on the currency code assigned to the `Money` instance
|
||
* Removed `Money::getAllowedCurrencies`. Apply validation to `MoneyField` instead.
|
||
* Removed `Hierarchy::parentStack()` removed. Use `getAncestors()` instead
|
||
* Removed `Hierarchy::doAllChildrenIncludingDeleted()`. Use `AllChildrenIncludingDeleted()` instead
|
||
* Removed `Hierarchy::naturalNext()`
|
||
* Removed `Hierarchy::naturalPrev()`
|
||
* Removed `Hierarchy::markingFinished()`
|
||
|
||
### Filesystem {#overview-filesystem}
|
||
|
||
* Image manipulations have been moved into a new `[ImageManipulation](api:SilverStripe\Assets\ImageManipulation)` trait.
|
||
* Removed `CMSFileAddController`
|
||
* `UploadField::setAllowedFileCategories('image')` now excludes non-resizeable images. 'unresizeable_image' is
|
||
can be used to validate these types.
|
||
* `Image_Backend` API now loads and saves from `AssetContainer` instances rather than local files.
|
||
* The following File categories have been renamed: 'zip' to 'archive', 'doc' to 'document', and 'mov' to 'video'
|
||
* `File::updateLinks()` no longer takes urls as parameters. All file links are now identified either by
|
||
the `DataObject::ID` in a `data-fileid` property, or via shortcodes. This is necessary because file
|
||
urls are no longer able to identify assets.
|
||
* Extension point `HtmlEditorField::processImage` has been removed, and moved to `Image::regenerateImageHTML()`
|
||
* `Upload::load()` now stores assets directly without saving into a `File` dataobject.
|
||
* Protected file storage is now a core Framework API. See [/developer_guides/files/file_security] for
|
||
more information.
|
||
* `File` is now versioned, and should be published before they can be used on the frontend.
|
||
See section on [Migrating File DataObject from 3.x to 4.0](#migrating-file-dataobject-from-3x-to-40)
|
||
below for upgrade notes.
|
||
* New filesystem abstraction including new `DBFile` database field to hold file references.
|
||
* `ShortcodeHandler` interface to help generate standard handlers for HTML shortcodes in the editor.
|
||
* `File::handle_shortcode()` and `Image::handle_shortcode()` have moved to their own classes in `SilverStripe\Assets\Shortcodes`,
|
||
and are named `FileShortcodeProvider` and `ImageShortcodeProvider` respectively.
|
||
* `AssetNameGenerator` interface, including a `DefaultAssetNameGenerator` implementation, which is used to generate
|
||
renaming suggestions based on an original given filename in order to resolve file duplication issues.
|
||
* `GeneratedAssetHandler` API now used to store and manage generated files (such as those used for error page
|
||
cache or combined files).
|
||
* `Requirements_Minifier` API can be used to declare any new mechanism for minifying combined required files.
|
||
By default this api is provided by the `JSMinifier` class, but user code can substitute their own.
|
||
* `AssetControlExtension` is applied by default to all DataObjects, in order to support the management
|
||
of linked assets and file protection.
|
||
* `ProtectedFileController` class is used to serve up protected assets.
|
||
* `AssetAdaptor` has a new config `default_server` which helps tell the code which server type to use if no matching type was found by scanning the server software - defaults to `apache`
|
||
|
||
The following image manipulations have been removed:
|
||
|
||
* Renamed `Image::SetRatioSize()` to `Fit()`
|
||
* Renamed `Image::SetWidth()` to `ScaleWidth()`
|
||
* Renamed `Image::SetHeight()` to `ScaleHeight()`
|
||
* Renamed `Image::SetSize()` to `Pad()`
|
||
* Renamed `Image::PaddedImage()` to `Pad()`
|
||
* Renamed `Image::CroppedImage()` to `Fill()`
|
||
* Renamed `Image::AssetLibraryPreview()` to `PreviewThumbnail()`
|
||
* Renamed `Image::AssetLibraryThumbnail()` to `CMSThumbnail()`
|
||
|
||
The following `File` methods have been removed. Since there is no longer any assumed local path for any file,
|
||
methods which dealt with such paths may no longer be relied on.
|
||
|
||
* Removed `File::deletedatabaseOnly()`
|
||
* Renamed `File::link_shortcode_handler()` to `handle_shortcode()`
|
||
* Removed `File::setParentID()`
|
||
* Removed `File::getFullPath()`
|
||
* Removed `File::getRelativePath()`
|
||
* Removed `File::Content` database field (wasn't used by core)
|
||
|
||
Image manipulations have been moved out of `Image` and now available to any `File` or `DBFile` which has the
|
||
appropriate mime types. The following file manipulations classes and methods have been removed:
|
||
|
||
* Removed `Image_Cached`
|
||
* Removed `Image::regenerateFormattedImages()`
|
||
* Removed `Image::getGeneratedImages()`
|
||
* Removed `Image::deleteFormattedImages()`
|
||
* Removed `Image::handle_shortcode()` moved to `SilverStripe\Assets\Shortcodes\ImageShortcodeProvider::handle_shortcode()`
|
||
* Removed `AssetAdmin::deleteunusedthumbnails()`
|
||
* Removed `AssetAdmin::getUnusedThumbnails()`
|
||
* Removed `Folder_UnusedAssetsField`
|
||
* Removed `Folder::syncChildren()`
|
||
* Removed `Folder::constructChild()`
|
||
* Removed `Folder::addUploadToFolder()`
|
||
* Removed `RegenerateCachedImagesTask`
|
||
* Removed `CleanImageManipulationCache`
|
||
* Removed `Filesystem::sync()`
|
||
* Removed `AssetAdmin::doSync()`
|
||
|
||
### Templates and Form {#overview-template}
|
||
|
||
* Upgrade to TinyMCE 4.x
|
||
* Templates now use a standard template lookup system via `SSViewer::get_templates_by_class()`
|
||
which builds a candidate list for a given class. Actual resolution of existing templates
|
||
for any list of candidates is actually performed by `SSViewer::chooseTemplate`
|
||
* `HtmlEditorConfig` is now an abstract class, with a default implementation `TinyMCEConfig` for the built in
|
||
TinyMCE editor.
|
||
* `HtmlEditorField::setEditorConfig()` may now take an instance of a `HtmlEditorConfig` class, as well as a
|
||
standard config identifier name.
|
||
* `HeaderField` requires a `$name` constructor argument (`new HeaderField('MyName', 'My Title')`
|
||
* `FormField` templates no longer look in the 'forms' folder for templates. As all form fields are
|
||
now namespaced, the path for these templates will now match the namespace of the given class instead.
|
||
* `$module` parameter in `themedCSS()` and `themedJavascript()` removed.
|
||
* Ability to select a theme through `admin/settings` has been removed from `SiteConfig`. Please use `SSViewer.themes` config instead.
|
||
* `FormAction::setValidationExempt())` can be used to turn on or off form validation for individual actions
|
||
* GridField edit form now has improved support for versioned DataObjects, with basic publishing
|
||
actions available when editing records.
|
||
* `PopoverField` added to provide popup-menu behaviour in react forms (currently not available for
|
||
non-react forms).
|
||
* Introduction of experimental `FormFactory` API as a substitute for DataObject classes being responsible
|
||
for building their own form fields. This builds a form based on a given controller and model,
|
||
and can be customised on a case by case basis. This has been introduced initially for the asset-admin
|
||
module.
|
||
* Introduced `AssetAdmin\Forms\UploadField` as a React-friendly version of `UploadField`. This may also
|
||
be used in normal entwine forms for managing files in a similar way to `UploadField`. However, this
|
||
does not support inline editing of files.
|
||
* Added method `FormField::setSubmittedValue($value, $data)` to process input submitted from form
|
||
submission, in contrast to `FormField::setValue($value, $data)` which is intended to load its
|
||
value from the ORM. The second argument to `setValue()` has been added.
|
||
* `FormField::create_tag()` moved to `SilverStripe\View\HTML->createTag()`.
|
||
* `CompositeField::setID()` is removed. ID is generated from name indirectly.
|
||
Use SilverStripe\Form\FormField::setName() instead
|
||
* Changed `ListboxField` to multiple only. Previously, this field would operate as either a
|
||
single select (default) or multi-select through `setMultiple()`.
|
||
Now this field should only be used for multi-selection. Single-selection should be done using
|
||
a regular `DropdownField`.
|
||
* `GroupedDropdownField::setDisabled()` now only accepts a list of values
|
||
instead of a list of grouped values. The method now expectes
|
||
a non-associative array of values (not titles) or an `SS_List`.
|
||
|
||
The following methods and properties on `Requirements_Backend` have been renamed: {#requirements}
|
||
|
||
* Renamed `$combine_files` to `$combinedFiles`
|
||
* Renamed `$combine_js_with_min` to `$minifyCombinedFiles`
|
||
* Renamed `$write_header_comments` to `$writeHeaderComment`
|
||
* Renamed `$write_js_to_body` to `$writeJavascriptToBody`
|
||
* Renamed `$force_js_to_bottom` to `$forceJSToBottom`
|
||
* Renamed `get_combined_files_enabled()` to `getCombinedFilesEnabled()`
|
||
* Renamed `set_combined_files_enabled()` to `setCombinedFilesEnabled()`
|
||
* Renamed `get_suffix_requirements()` to `getSuffixRequirements()`
|
||
* Renamed `set_suffix_requirements()` to `setSuffixRequirements()`
|
||
* Renamed `get_custom_scripts()` to `getCustomScripts()`
|
||
* Renamed `unblock_all()` to `unblockAll()`
|
||
* Renamed `include_in_response()` to `includeInResponse()`
|
||
* Renamed `combine_files()` to `combineFiles()`
|
||
* Renamed `get_combine_files()` to `getCombinedFiles()`
|
||
* Renamed `clear_combined_files()` to `clearCombinedFiles()`
|
||
* Renamed `process_combined_files()` to `processCombinedFiles()`
|
||
* Renamed `set_write_js_to_body()` to `setWriteJavascriptToBody()`
|
||
* Renamed `set_force_js_to_bottom()` to `setForceJSToBottom()`
|
||
* Added `get_minify_combined_js_files()` and `set_minify_combined_js_files()`
|
||
* Added `get_force_js_to_bottom()`
|
||
* Added `get_write_js_to_body()`
|
||
* Changed `includeInHTML()` to remove the first parameter (`$template`)
|
||
|
||
A new config `Requirements_Backend.combine_in_dev` has been added in order to allow combined files to be
|
||
forced on during development. If this is off, combined files is only enabled in live environments.
|
||
|
||
Form validation has been refactored significantly. A new `FormMessage` trait has been created to {#form-validation}
|
||
handle `FormField` and `Form` messages. This trait has a new`setMessage()` API to assign a message, type, and cast.
|
||
Use `getMessage()`, `getMessageType()`, `getMessageCast()` and `getMessageCastingHelper()` to retrieve them.
|
||
|
||
`Form` behaviour methods have been changed:
|
||
|
||
* `__construct()` now allows a `RequestHandler` to be passed as a first argument, rather than a controller.
|
||
In addition this argument is now optional. This allows forms to be constructed as a model only.
|
||
* `validate` is replaced with `validationResult` instead, which returns a `ValidationResult` instance.
|
||
This is no longer automatically persisted in the state by default, unless a redirection occurs.
|
||
You can also save any response in the state by manually invoking `saveFormState` inside a custom
|
||
validation response handler.
|
||
* Renamed `setupFormErrors()` to `restoreFormState()`
|
||
* Renamed `resetValidation()` to `clearFormState()`
|
||
* Added `loadMessagesFrom()` to load a `ValidationResult` into a form.
|
||
* Changed `setMessage()` to accept `$cast` as a third parameter (instead of a `$escapeHtml` boolean)
|
||
* Removed `messageForForm()`. Use `setMessage()` or `sessionMessage()` instead.
|
||
* Added `getSessionValidationResult()` / `setSessionValidationResult()` to get / set session errors
|
||
* Added `getSessionData()` / `setSessionData()` to get / set field values cached in the session
|
||
* Removed `addErrorMessage()`. Use `sessionMessage()` or `sessionError()` to add a
|
||
form level message, throw a `ValidationException` during submission, or add a custom validator.
|
||
* `Form` is no longer a `RequestHandler`, but implements the `HasRequestHandler` interface and returns
|
||
a `FormRequestHandler` instance from `getRequestHandler()`. the `Form` constructor no longer has
|
||
any mandatory parameters, and the first parameter allows a non-`Controller` `RequestHandler` to be
|
||
passed.
|
||
* Moved `buttonClicked()` to `FormRequestHandler`
|
||
* Moved `checkAccessAction()` to `FormRequestHandler`
|
||
* Moved `handleField()` to `FormRequestHandler`
|
||
* Moved `httpSubmission()` to `FormRequestHandler`
|
||
* Moved `Link()` to `FormRequestHandler`
|
||
|
||
`Validator` methods have changed:
|
||
|
||
* Changed `validate()` to return a `ValidationResult` instance.
|
||
* Removed `requireField()`. Use `RequiredFields` subclass instead.
|
||
|
||
`ValidationResult` now has these methods:
|
||
|
||
* Added `serialize()` / `unserialize()` for saving within session state
|
||
* Renamed `messageList()` to `getMessages()`
|
||
* Changed `error()` to `addMessage()` / `addError()` / `addFieldMessage()` / `addFieldError()`
|
||
* Renamed `valid()` to `isValid()`
|
||
|
||
`ValidationException` has these changes:
|
||
|
||
* Changed constructor to remove second argument (`$message`). It now only accepts `$result`,
|
||
which may be a string, and optional `$code`
|
||
|
||
New `DatetimeField` methods replace `getConfig()` / `setConfig()`: {#datetimefield}
|
||
|
||
* Added `getTimezone()` / `setTimezone()`
|
||
* Added `getDateTimeOrder()` / `setDateTimeOrder()`
|
||
* Added `getLocale()` / `setLocale()`
|
||
* Removed `datavaluefield` config as internal data value is now fixed to ISO 8601 format
|
||
|
||
The `DatetimeField` has changed behaviour:
|
||
|
||
* It uses a combined input instead of a composite from `DateField` and `TimeField`
|
||
Consequently, `getDateField()` and `getTimeField()` have been removed.
|
||
* It returns [ISO 8601 normalised dates](https://html.spec.whatwg.org/multipage/infrastructure.html#local-dates-and-times)
|
||
by default in `Value()`, which include a "T" separator between date and time.
|
||
This is required to allow HTML5 input. Either use `setHTML5(false)` to set your custom format,
|
||
or use `dataValue()` to retrieve a whitespace separated representation.
|
||
* It no longer accepts `setValue()` as an array with 'date' and 'time' keys
|
||
* Added `getHTML5()` / `setHTML5()`
|
||
|
||
New `DateField` methods replace `getConfig()` / `setConfig()`: {#datefield}
|
||
|
||
* Added `getDateFormat()` / `setDateFormat()`
|
||
* Added `getMinDate()` / `setMinDate()`
|
||
* Added `getMaxDate()` / `setMaxDate()`
|
||
* Added `getLocale()` / `setLocale()`
|
||
|
||
The `DateField` has changed behavior:
|
||
|
||
* `DateField` no longer provides a jQuery UI date picker (`showcalendar` option),
|
||
and uses [HTML5 date pickers](https://www.wufoo.com/html5/types/4-date.html) by default instead.
|
||
* `DateField` provides an optional polyfill for
|
||
[browsers without HTML5 date picker support](http://caniuse.com/#feat=input-datetime)
|
||
* The `dmyfields` option has been replced with native HTML5 behaviour (as one single `<input type=date>`).
|
||
* `getClientLocale` / `setClientLocale` have been removed (handled by `DateField->locale` and browser settings)
|
||
|
||
New `TimeField` methods replace `getConfig()` / `setConfig()` {#timefield}
|
||
|
||
* Added `getTimeFormat()` / `setTimeFormat()`
|
||
* Added `getLocale()` / `setLocale()`
|
||
|
||
Further API changes:
|
||
|
||
* Removed `TabularStyle`
|
||
* Removed `NestedForm`
|
||
* Removed `FieldList->getTabPathRewrites()`
|
||
* Removed `FieldList->setTabPathRewrites()`
|
||
* Removed `FieldList->rewriteTabPath()`
|
||
* Removed `Form->transformTo()`
|
||
* Removed `Form->callfieldmethod()`
|
||
* Removed `Form->single_field_required()`
|
||
* Removed `Form->current_action()`
|
||
* Removed `Form->set_current_action()`
|
||
* Removed `Form->testSubmission()`
|
||
* Removed `Form->testAjaxSubmission()`
|
||
* Removed `ValidationResult->messageList()`
|
||
* Removed `ValidationResult->codeList()`
|
||
* Removed `ValidationResult->message()`
|
||
* Removed `ValidationResult->starredList()`
|
||
* Removed `ValidationResult->error()`
|
||
* Removed `ValidationResult->valid()`
|
||
* Removed `ReportAdminForm.ss` template
|
||
* Removed `FormField::dontEscape()`. Escaping is now managed on a class by class basis.
|
||
* Removed `PermissionCheckboxSetField::getAssignedPermissionCodes()`
|
||
* Removed `Requirements::delete_combined_files()`
|
||
* Removed `NumericField_Readonly`. Use `setReadonly(true)` instead.
|
||
* Removed `SSViewer->set_source_file_comments()`
|
||
* Removed `SSViewer->get_source_file_comments()`
|
||
* Removed `SSViewer->getOption()`
|
||
* Removed `SSViewer->setOption()`
|
||
* Removed `MemberDatetimeOptionsetField` (no replacement)
|
||
* Removed `DateField_View_JQuery` (replaced with native HTML5 support in `DateField`)
|
||
* Moved `HTMLEditorField_Toolbar` to `SilverStripe\Admin\ModalController`
|
||
* Moved `HTMLEditorField_Embed` to`SilverStripe\AssetAdmin\EmbedResource`
|
||
* Removed `HTMLEditorField_File`
|
||
* Removed `HTMLEditorField_Flash`
|
||
* Removed `HTMLEditorField_Image`
|
||
|
||
### i18n {#overview-i18n}
|
||
|
||
* Upgrade of i18n to symfony/translation
|
||
* Localisation based on language-only (without any specific locale) is now supported
|
||
* `i18nEntityProvider::provideI18nEntities()` Now is expected to return only a single array
|
||
map of key to default values.
|
||
* i18n keys for '.PLURAL_NAME' and '.SINGULAR_NAME' have been changed back to use the namespaced class names
|
||
for all DataObject subclasses, rather than just the basename without namespace.
|
||
* i18n key for locale-respective pluralisation rules added as '.PLURALS'. These can be configured
|
||
within yaml in array format as per [ruby i18n pluralization rules](http://guides.rubyonrails.org/i18n.html#pluralization).
|
||
* Moved `i18n.all_locales` config setting to `SilverStripe\i18n\Data\Locales.locales`
|
||
* Moved `i18n.common_languages` config setting to `SilverStripe\i18n\Data\Locales.languages`
|
||
* Moved `i18n.likely_subtags` config setting to `SilverStripe\i18n\Data\Locales.likely_subtags`
|
||
* Moved `i18n.tinymce_lang` config setting to `SilverStripe\Forms\HTMLEditor\TinyMCEConfig.tinymce_lang`
|
||
* Moved `i18n::get_tinymce_lang()` to `SilverStripe\Forms\HTMLEditor\TinyMCEConfig::get_tinymce_lang()`
|
||
* Moved `i18n::get_locale_from_lang()` to `SilverStripe\i18n\Data\Locales::localeFromLang()`
|
||
* Moved `i18n::get_lange_from_locale()` to `SilverStripe\i18n\Data\Locales::langFromLocale()`
|
||
* Moved `i18n::validate_locale()` to `SilverStripe\i18n\Data\Locales::validate()`
|
||
* Moved `i18n::get_common_languages()` to `SilverStripe\i18n\Data\Locales::getLanguages()`
|
||
* Moved `i18n::get_locale_name()` to `SilverStripe\i18n\Data\Locales::localeName()`
|
||
* Moved `i18n::get_language_name()` to `SilverStripe\i18n\Data\Locales::languageName()`
|
||
* Moved `i18n.module_priority` config setting to `SilverStripe\i18n\Data\Sources.module_priority`
|
||
* Moved `i18n::get_owner_module()` to `SilverStripe\Core\Manifest\ClassManifest::getOwnerModule()`
|
||
This now returns a `Module` object instance instead of a string.
|
||
* Moved `i18n::get_existing_translations()` to `SilverStripe\i18n\Data\Sources::getKnownLocales()`
|
||
* Removed `Zend_Translate`
|
||
* Changed `i18n::_t()` to remove support for sprintf-style `%s` arguments
|
||
* Changed `i18n::_t()` to remove support for non-associative injection with named parameters
|
||
* Removed `i18n::get_language_name()`
|
||
* Removed `i18n::get_language_code()`
|
||
* Removed `i18n::get_common_locales()`
|
||
* Removed `i18n.common_locales`
|
||
|
||
### Email {#overview-mailer}
|
||
|
||
* Changed `Mailer` to an interface
|
||
* `Email` re-written to be powered by [SwiftMailer](https://github.com/swiftmailer/swiftmailer)
|
||
* Default template body variable renamed from `$Body` to `$EmailContent`
|
||
* Renamed `Email->setTemplate()` to `Email->setHTMLTemplate()`
|
||
* Added `Email->setPlainTemplate()` for rendering plain versions of email
|
||
* Renamed `Email->populateTemplate()` to `Email->setData()`
|
||
|
||
### SapphireTest {#overview-testing}
|
||
|
||
* `is_running_tests()` is no longer public and user code should not rely on this. Test-specific behaviour
|
||
should be implemented in `setUp()` and `tearDown()`
|
||
* Removed `setUpOnce()`. Please use `setUpBeforeClass()`
|
||
* Removed `tearDownOnce()`. Please use `tearDownAfterClass()`
|
||
* Removed `TestListener`
|
||
* Renamed `$requiredExtensions` to `$required_extensions` (and made static)
|
||
* Renamed `$extraDataObjects` to `$extra_dataobjects` (and made static)
|
||
* Renamed `$extraControllers` to `$extra_controllers` (and made static)
|
||
|
||
### Security {#overview-security}
|
||
|
||
* `LoginForm` now has an abstract method `getAuthenticatorName()`. If you have made subclasses of this,
|
||
you will need to define this method and return a short name describing the login method.
|
||
* `MemberLoginForm` has a new constructor argument for the authenticator class, although this is usually
|
||
constructed by `MemberAuthenticator` and won't affect normal use.
|
||
* `Authenticator` methods `register()` and `unregister()` are deprecated in favour of using `Config`
|
||
* Unused `SetPassword` property removed from `Member`. Use `Member::changePassword` or set `Password` directly.
|
||
<!--- Changes below this line will be automatically regenerated -->
|
||
|
||
## Change Log
|
||
|
||
### Security
|
||
|
||
* 2017-05-09 [30986b4ea](https://github.com/silverstripe/silverstripe-framework/commit/30986b4ea3d6a111e182f1970267696b991ea660) Lock out users who dont exist in the DB (Daniel Hensby) - See [ss-2017-002](http://www.silverstripe.org/download/security-releases/ss-2017-002)
|
||
* 2016-05-03 [70480f5ee](https://github.com/silverstripe/silverstripe-framework/commit/70480f5ee433d9a67bcd54fa7f284d764fb73a47) HtmlEditorField_Toolbar#viewfile not whitelisting URLs (Damian Mooyman) - See [ss-2015-027](http://www.silverstripe.org/download/security-releases/ss-2015-027)
|
||
|
||
### API Changes
|
||
|
||
* 2017-10-05 [b996e2c22](https://github.com/silverstripe/silverstripe-framework/commit/b996e2c22c47eb8eecd1656e1dd69160b97fc68c) Extensions are now stateless (Damian Mooyman)
|
||
* 2017-09-27 [f686b5082](https://github.com/silverstripe/silverstripe-framework/commit/f686b50824a75eb17677987adfcc4366dc9f8f65) Rename assert dos to assert list (Werner M. Krauß)
|
||
* 2017-09-05 [496b9c8c](https://github.com/silverstripe/silverstripe-cms/commit/496b9c8c045af1625f9b3484b3db5a0607ae10d0) Implement insert-anchor modal (Damian Mooyman)
|
||
* 2017-09-04 [a9c479f2](https://github.com/silverstripe/silverstripe-cms/commit/a9c479f26a9d0d48b3d708873d9034c1d7496b48) Allow SiteTree::Link to be extended (Damian Mooyman)
|
||
* 2017-08-23 [595ba75a5](https://github.com/silverstripe/silverstripe-framework/commit/595ba75a50e2cb8eb0b5fc7088f398474f17785d) Make FormField::hasClass return a boolean instead of an int (Robbie Averill)
|
||
* 2017-08-14 [c14233f74](https://github.com/silverstripe/silverstripe-framework/commit/c14233f7435d87fe1641c179f647a8e5441afc5d) Enable config files to be loaded for behat tests (Damian Mooyman)
|
||
* 2017-08-08 [2c54e331](https://github.com/silverstripe/silverstripe-cms/commit/2c54e33106ae1dfa2eb4d873769c2f17edd406ff) Virtual pages now respect cascade_deletes on source page (Damian Mooyman)
|
||
* 2017-08-08 [323644c7b](https://github.com/silverstripe/silverstripe-framework/commit/323644c7bb963f9310704a7871419ade356c1683) Implement cascade_deletes (Damian Mooyman)
|
||
* 2017-07-31 [078a508d7](https://github.com/silverstripe/silverstripe-framework/commit/078a508d718f9a37dc6ac413be2db5ecd124a03b) Replace legacy tiny_mce_gzip compressor with asset generator (Damian Mooyman)
|
||
* 2017-07-26 [3364f5c5](https://github.com/silverstripe/silverstripe-cms/commit/3364f5c52bc7a5059412a946fbe193235196001b) Use setTitleField to use MenuTitle for selecting internal links (Damian Mooyman)
|
||
* 2017-07-16 [f4af1fab](https://github.com/silverstripe/silverstripe-reports/commit/f4af1fab7731c76c742d0823717b22db00268516) Remove Report::add_excluded_report() and make excluded_reports configurable (Robbie Averill)
|
||
* 2017-07-12 [2b266276c](https://github.com/silverstripe/silverstripe-framework/commit/2b266276c2146f4d8fd6e5fec69e28fc9848586e) Implement new module sorting pattern (Aaron Carlino)
|
||
* 2017-07-12 [a69600fa](https://github.com/silverstripe/silverstripe-cms/commit/a69600fa7b4fccf55ef1264cb62e97b559b87469) Update module sorting (Damian Mooyman)
|
||
* 2017-07-11 [ccda816f9](https://github.com/silverstripe/silverstripe-framework/commit/ccda816f909b3004c3a8e00dec02fa37e35d1667) added flatList argument for generating the json tree list with a context string property (Christopher Joe)
|
||
* 2017-07-11 [2d04b84](https://github.com/silverstripe/silverstripe-installer/commit/2d04b844b78d4b4fbbff054e58fbf1b06d965060) Convert installer to recipe (Damian Mooyman)
|
||
* 2017-06-27 [cf511562](https://github.com/silverstripe/silverstripe-reports/commit/cf5115624dee09861409370446ebb27f5a3ebee9) Remove REPORTS_DIR and its use. (Sam Minnee)
|
||
* 2017-06-27 [ef6db273](https://github.com/silverstripe/silverstripe-cms/commit/ef6db273a1e71d35185e1d505d9d85d2849e9ded) Remove CMS_PATH and CMS_DIR (Sam Minnee)
|
||
* 2017-06-27 [741166e36](https://github.com/silverstripe/silverstripe-framework/commit/741166e36963735884a847b24a3bbf05776f41e0) ModulePath template global now takes any composer package name. (Sam Minnee)
|
||
* 2017-06-25 [69fe16689](https://github.com/silverstripe/silverstripe-framework/commit/69fe166897686b50ef2536808fb3ba5712408174) Director::handleRequest() is no longer static - use a Director service (Sam Minnee)
|
||
* 2017-06-25 [d20ab50f9](https://github.com/silverstripe/silverstripe-framework/commit/d20ab50f9d480372a2b6489278f9876d1a85134c) Stronger Injector service unregistration (Damian Mooyman)
|
||
* 2017-06-25 [e92c63c54](https://github.com/silverstripe/silverstripe-framework/commit/e92c63c5457bf56fe320d83977e3475c1fc60908) Remove $sid argument of Session::start() (Sam Minnee)
|
||
* 2017-06-23 [10866c080](https://github.com/silverstripe/silverstripe-framework/commit/10866c0809623426e875c335ee9175e11935f98c) Replace Director::direct() with Director::handleRequest(). (Sam Minnee)
|
||
* 2017-06-22 [b30f410ea](https://github.com/silverstripe/silverstripe-framework/commit/b30f410ea02b2330eef871a2eb59ad022fdfa102) Deprecate RequestFilter. (Sam Minnee)
|
||
* 2017-06-22 [3873e4ba0](https://github.com/silverstripe/silverstripe-framework/commit/3873e4ba008cfc2af7e26ca86665affc289cd677) Refactor bootstrap, request handling (Damian Mooyman)
|
||
* 2017-06-15 [024371c37](https://github.com/silverstripe/silverstripe-framework/commit/024371c37e96326c0ae001d5940e1a1839191f6f) authentication ValidationResult handling to pass by-reference (Damian Mooyman)
|
||
* 2017-06-15 [62d095305](https://github.com/silverstripe/silverstripe-framework/commit/62d095305b965840a2991b5f19f16e9453dd0456) Update DefaultAdmin services (Damian Mooyman)
|
||
* 2017-06-12 [77ec2b90](https://github.com/silverstripe/silverstripe-cms/commit/77ec2b90c6e72039394cfd96f403f562b43cdbec) Removed ErrorPage (Jonathon Menz)
|
||
* 2017-06-10 [413b4936a](https://github.com/silverstripe/silverstripe-framework/commit/413b4936a1cfe6447832c08c26a4fceb9a3a36a6) Add extension hook to FormField::extraClass() (Damian Mooyman)
|
||
* 2017-06-09 [0559da7f](https://github.com/silverstripe/silverstripe-siteconfig/commit/0559da7f5c7064dc98d85d78273f83b910af0771) s for Authenticator refactor (Damian Mooyman)
|
||
* 2017-06-09 [03125b8c](https://github.com/silverstripe/silverstripe-reports/commit/03125b8c6cd0f2deb757d856807b050566adeb89) s for Authenticator refactor (Simon Erkelens)
|
||
* 2017-05-25 [f82f0844](https://github.com/silverstripe/silverstripe-cms/commit/f82f0844c1ffd8c7fd40520072983e9eaf82ae21) Add insert internal link modal (Damian Mooyman)
|
||
* 2017-05-25 [e7d87add9](https://github.com/silverstripe/silverstripe-framework/commit/e7d87add9f6cafb8fdfd49310a0106ce94356762) Remove legacy HTMLEditor classes (Damian Mooyman)
|
||
* 2017-05-22 [2e94a11](https://github.com/silverstripe/silverstripe-installer/commit/2e94a11c8b6863cca505ff08e3fb430cb1b9190a) Add pgsql + behat tests to installer (Damian Mooyman)
|
||
* 2017-05-19 [ad43a8292](https://github.com/silverstripe/silverstripe-framework/commit/ad43a8292339af4df5614e9c29fcd7e71bc9fc7a) Consistent use of inst() naming across framework (Robbie Averill)
|
||
* 2017-05-19 [963d9197d](https://github.com/silverstripe/silverstripe-framework/commit/963d9197d3e714e4f137ae538b86c4bd6288c0e2) Ensure that all DataQuery joins are aliased based on relationship name (Damian Mooyman)
|
||
* 2017-05-19 [100048da3](https://github.com/silverstripe/silverstripe-framework/commit/100048da33c7ea2561de008033deed99a59e7723) PSR-11 compliance (fixes #6594) (#6931) (Ingo Schommer)
|
||
* 2017-05-17 [fba8e2c24](https://github.com/silverstripe/silverstripe-framework/commit/fba8e2c245ba21febb983de8148242fdf27394c4) Remove Object class (Damian Mooyman)
|
||
* 2017-05-12 [906a4c444](https://github.com/silverstripe/silverstripe-framework/commit/906a4c444b43fddc243f905962a40f6fc25a2dac) Add streamable response object (Damian Mooyman)
|
||
* 2017-05-12 [23e1aa8c](https://github.com/silverstripe/silverstripe-cms/commit/23e1aa8c45f31ac191ed005bbf761229d923074f) Refactor inherited permissions (#1811) (Damian Mooyman)
|
||
* 2017-05-11 [0b70b008b](https://github.com/silverstripe/silverstripe-framework/commit/0b70b008b36b3d4c0c7cb42db86eea3ad675f7a9) Implement InheritedPermission calculator (#6877) (Damian Mooyman)
|
||
* 2017-05-11 [259f957ce](https://github.com/silverstripe/silverstripe-framework/commit/259f957ce89be071ddd7ba850c8c941fe51ef59b) Rename services to match FQN of interface / classes (Damian Mooyman)
|
||
* 2017-05-11 [49e559b0](https://github.com/silverstripe/silverstripe-cms/commit/49e559b08cebe4311e1af581c15a42eddc467242) Rename services to match FQN of interface / classes (Damian Mooyman)
|
||
* 2017-05-08 [484a4ec4](https://github.com/silverstripe/silverstripe-cms/commit/484a4ec4f6f59d34934233cca3c5ea5ff0d2beaf) Removed deprecated RootURLController:set_default_homepage_link (Ingo Schommer)
|
||
* 2017-05-08 [7c2f49d44](https://github.com/silverstripe/silverstripe-framework/commit/7c2f49d443833dd151c137f6f596210b37399ba8) Removed RootURLController:set_default_homepage_link() (Ingo Schommer)
|
||
* 2017-05-08 [cec983b62](https://github.com/silverstripe/silverstripe-framework/commit/cec983b628f3ee8780126a940351ca6268d2ff4b) Removed deprecated ModelAsController::find_old_page() (Ingo Schommer)
|
||
* 2017-05-08 [de41e145](https://github.com/silverstripe/silverstripe-cms/commit/de41e14518fee36be957afe146ea1acd63d8e9f1) Removed deprecated ModelAsController::find_old_page() (Ingo Schommer)
|
||
* 2017-05-08 [5784a7d2d](https://github.com/silverstripe/silverstripe-framework/commit/5784a7d2d7c4c5ec27765498660f9a71cbdb7f48) Removed deprecated Security::set_login_recording() (Ingo Schommer)
|
||
* 2017-05-08 [2a7c76e9e](https://github.com/silverstripe/silverstripe-framework/commit/2a7c76e9e99eb2ae315671191ba3575c827a0108) Removed deprecated DatabaseAdmin#clearAllData() (Ingo Schommer)
|
||
* 2017-05-08 [81e5c7ac4](https://github.com/silverstripe/silverstripe-framework/commit/81e5c7ac4017fe5813e9eebb5edb5cc38a41dfa1) Removed deprecated Session::set_config() (Ingo Schommer)
|
||
* 2017-05-08 [1d438d3fb](https://github.com/silverstripe/silverstripe-framework/commit/1d438d3fb5eb822081c7e428d57c271bf3aee180) Remove deprecated FormAction::createTag() (Ingo Schommer)
|
||
* 2017-05-08 [75b7e1906](https://github.com/silverstripe/silverstripe-framework/commit/75b7e19066c504708b721dca3cd39fe5ea45ac6b) Remove deprecated SS_HOST (Ingo Schommer)
|
||
* 2017-05-08 [0d9b38363](https://github.com/silverstripe/silverstripe-framework/commit/0d9b3836319b40160bab56774dfdb548934399ce) Removed legacy form fields (fixes #6099) (Ingo Schommer)
|
||
* 2017-05-02 [963568d7](https://github.com/silverstripe/silverstripe-siteconfig/commit/963568d7a2c39599280e0752af336ba0c394ac87) Refactor inheritable permissions (Damian Mooyman)
|
||
* 2017-04-28 [03750acbe](https://github.com/silverstripe/silverstripe-framework/commit/03750acbee6ee26b4f5cae762c22ea6dc3cf4492) Namespace i18n keys (Damian Mooyman)
|
||
* 2017-04-28 [b1c59d40](https://github.com/silverstripe/silverstripe-cms/commit/b1c59d40c6808fc3fd3a3ccfbec443577559973a) Namespace i18n keys (Damian Mooyman)
|
||
* 2017-04-27 [61388b153](https://github.com/silverstripe/silverstripe-framework/commit/61388b153f9fbad0d794d3280516d8fa9aa29e5a) Rewrite Date and Time fields to support HTML5 (Damian Mooyman)
|
||
* 2017-04-26 [de8abe116](https://github.com/silverstripe/silverstripe-framework/commit/de8abe11675941ee9c5bfa49f491155dd8f22293) rename (Ingo Schommer)
|
||
* 2017-04-23 [7af7e6719](https://github.com/silverstripe/silverstripe-framework/commit/7af7e6719e82385a1a60813141fd291df5a16667) Security.authenticators is now a map, not an array (Sam Minnee)
|
||
* 2017-04-21 [df100b87](https://github.com/silverstripe/silverstripe-cms/commit/df100b8798f5c9a270b15d9f8ba1bb084b053247) Upgrade to behat 3 (Damian Mooyman)
|
||
* 2017-04-21 [0a55ff9f8](https://github.com/silverstripe/silverstripe-framework/commit/0a55ff9f8c4367d4026ed477ebafb7e9c3c32f71) Remove SapphireTestReporter and CliTestReporter (Ingo Schommer)
|
||
* 2017-04-17 [64e802f79](https://github.com/silverstripe/silverstripe-framework/commit/64e802f7955df2738d6d7381d30843f0cd438332) Move createTag to HTML class (Damian Mooyman)
|
||
* 2017-04-13 [f54ff29](https://github.com/silverstripe/silverstripe-installer/commit/f54ff29a023e0d77678365e8447f3ddba0a99226) Remove BlockUntrustedIPs (Damian Mooyman)
|
||
* 2017-04-13 [2548bfba1](https://github.com/silverstripe/silverstripe-framework/commit/2548bfba1ea5904302c60523b8a8d6d51d4515ab) Replace SS_HOST with SS_BASE_URL (Damian Mooyman)
|
||
* 2017-04-11 [0791b387b](https://github.com/silverstripe/silverstripe-framework/commit/0791b387b81aa4a3e6a931fe10d60d0d7a795d80) Update serialisation of JSON tree data (Damian Mooyman)
|
||
* 2017-04-10 [f2768c85b](https://github.com/silverstripe/silverstripe-framework/commit/f2768c85b10edeaf195ffaa336a0ac2468feb471) Enable namespaced-localisation keys in templates (Damian Mooyman)
|
||
* 2017-04-06 [d75a3cb0](https://github.com/silverstripe/silverstripe-cms/commit/d75a3cb0e9db7b3f52bedec71043ebeefc969d1c) Update site tree hierarchy to use a MarkingSet and template (Damian Mooyman)
|
||
* 2017-04-03 [e61257c27](https://github.com/silverstripe/silverstripe-framework/commit/e61257c27b42a29bf45acaf8e5a15a13a1e9ed34) Update embed/embed to 3.0 (Damian Mooyman)
|
||
* 2017-04-03 [9be22701f](https://github.com/silverstripe/silverstripe-framework/commit/9be22701fd31123e4cb63102c04c6eb4b82b8792) exists() no longer true for nullifyIfEmpty if empty string (Damian Mooyman)
|
||
* 2017-03-30 [4b7994036](https://github.com/silverstripe/silverstripe-framework/commit/4b79940368bd765840d22a5dabddb62c40df7b6c) Drop IE10 support (fixes #6321) (Ingo Schommer)
|
||
* 2017-03-30 [326aa37ea](https://github.com/silverstripe/silverstripe-framework/commit/326aa37ea4f1e09319098105932467a10d6782e6) HTML5 date/time fields, remove member prefs (fixes #6626) (Ingo Schommer)
|
||
* 2017-03-29 [92a5e4a05](https://github.com/silverstripe/silverstripe-framework/commit/92a5e4a057176916a92158f38b5f98fbdb9e13cf) Refactor CMS-specific code out of LeftAndMain (Damian Mooyman)
|
||
* 2017-03-29 [136b67f59](https://github.com/silverstripe/silverstripe-framework/commit/136b67f5976737fb98837989f5ee7d662f27b089) Major refactor of Hierarchy into MarkedSet (Damian Mooyman)
|
||
* 2017-03-28 [98e77a48](https://github.com/silverstripe/silverstripe-cms/commit/98e77a48a920706b3b8d91bd9f2c6c3be85c6a9d) Rename SiteTree::description() to SiteTree::classDescription() to prevent clash (Damian Mooyman)
|
||
* 2017-03-23 [874c6ccdd](https://github.com/silverstripe/silverstripe-framework/commit/874c6ccdd4a4eb887c989e858a8bb3b34d02f384) Add experimental getResource() to Module (Damian Mooyman)
|
||
* 2017-03-22 [1186f0783](https://github.com/silverstripe/silverstripe-framework/commit/1186f0783041fc236f872e2b14e69f3746d7bd45) Use mysql-safe table namespace separator (Damian Mooyman)
|
||
* 2017-03-21 [5ce98ace](https://github.com/silverstripe/silverstripe-cms/commit/5ce98aced2058670e303a16db899428ed5777df4) Upgrade to rely on silverstripe/versioned module (Damian Mooyman)
|
||
* 2017-03-21 [ac3a9c9e6](https://github.com/silverstripe/silverstripe-framework/commit/ac3a9c9e6e4dd5dfd0f9d93696b17652cea5be59) Split out SilverStripe\ORM\Versioned into new module (Damian Mooyman)
|
||
* 2017-03-19 [62f8aa440](https://github.com/silverstripe/silverstripe-framework/commit/62f8aa4408189e407fd81e827c239eb0fd58c4ef) Drop PHP 5.5 support, limit PHP 5.6 to 2018 (Damian Mooyman)
|
||
* 2017-03-16 [dae6d5902](https://github.com/silverstripe/silverstripe-framework/commit/dae6d5902f7968222a1ad8b3f879fbf4ab2b2f7a) Split SilverStripe\Assets into separate module (Damian Mooyman)
|
||
* 2017-03-16 [3a0099161](https://github.com/silverstripe/silverstripe-framework/commit/3a0099161bbaa88d53d67d20384bccc7cfe26cab) Remove Log class (Damian Mooyman)
|
||
* 2017-03-14 [4599b2b5](https://github.com/silverstripe/silverstripe-reports/commit/4599b2b52cb910d07ef906260e65fe702a365a0f) move CMSPreviewable to ORM (Damian Mooyman)
|
||
* 2017-03-14 [54ba08a30](https://github.com/silverstripe/silverstripe-framework/commit/54ba08a306d23139e1e5a15f9bc54c4d7dc9f34a) Replace ManifestCache with ManifestCacheFactory (Damian Mooyman)
|
||
* 2017-03-12 [a07a9bffc](https://github.com/silverstripe/silverstripe-framework/commit/a07a9bffc43b3d0a5188dad149fa0c3c42667834) Add FormRequestHandler::forTemplate() for backwards compatibility (Damian Mooyman)
|
||
* 2017-03-10 [9f953770f](https://github.com/silverstripe/silverstripe-framework/commit/9f953770f5228c0387de5a0607e32448cc26a265) Move CMSPreviewable to framework module (Damian Mooyman)
|
||
* 2017-03-09 [ce1406091](https://github.com/silverstripe/silverstripe-framework/commit/ce14060913fee01d86d73ca8513d3a68d87c627c) Apply default logger to all caches (Damian Mooyman)
|
||
* 2017-03-09 [8f0f9fa11](https://github.com/silverstripe/silverstripe-framework/commit/8f0f9fa1190a36f91eb07ccde62065da566389ba) Apply logging to config cache (Damian Mooyman)
|
||
* 2017-03-02 [0c41a97a8](https://github.com/silverstripe/silverstripe-framework/commit/0c41a97a8b1ecde2341122b49ebc58b9e6e2a9e0) Refactor Form request handling into FormRequestHandler (Damian Mooyman)
|
||
* 2017-03-01 [466c50b30](https://github.com/silverstripe/silverstripe-framework/commit/466c50b30217a301a8fb69e9ac61efcbb8487ec2) Switch from npm4 and shrinkwrap to npm6 and yarn (Christopher Joe)
|
||
* 2017-02-28 [50deb1776](https://github.com/silverstripe/silverstripe-framework/commit/50deb17763098d938478c6422f1767da67a375a1) remove UploadField, AssetField and associated files (Christopher Joe)
|
||
* 2017-02-27 [e74556b32](https://github.com/silverstripe/silverstripe-framework/commit/e74556b32277b03c299efce62a75b37a4b0cbdd3) Protect Director::get_environment_type() from invoking (Damian Mooyman)
|
||
* 2017-02-26 [b3fc11e59](https://github.com/silverstripe/silverstripe-framework/commit/b3fc11e594bda2569f467630e42486a472cbc123) Move ssmedia plugin to asset-admin (Damian Mooyman)
|
||
* 2017-02-26 [c452d5f6c](https://github.com/silverstripe/silverstripe-framework/commit/c452d5f6cd87ba512869c12494b73d40b93a2c86) Rename CoreConfigCreator to CoreConfigFactory (Damian Mooyman)
|
||
* 2017-02-24 [1d49c4afe](https://github.com/silverstripe/silverstripe-framework/commit/1d49c4afe9f2e9a1957e3f3f1d183eaa1c0cb461) Remove non-asset-admin TinyMCE media dialog (Damian Mooyman)
|
||
* 2017-02-23 [d220ca3f6](https://github.com/silverstripe/silverstripe-framework/commit/d220ca3f67de0198269610fcc2045bd016ea6cf2) Use symfony/cache (fixes #6252) (Ingo Schommer)
|
||
* 2017-02-23 [358bb8ba](https://github.com/silverstripe/silverstripe-cms/commit/358bb8baecf2434e4d43831d5f47fe839cd9e1e0) Remove insert-media tests (now covered by asset-admin, not cms) (Damian Mooyman)
|
||
* 2017-02-22 [8444a21cb](https://github.com/silverstripe/silverstripe-framework/commit/8444a21cbfc440035f4b6805b9a07771ab9363b0) Upgrade tests to use new Config API (Damian Mooyman)
|
||
* 2017-02-22 [3362e15a2](https://github.com/silverstripe/silverstripe-framework/commit/3362e15a2978918c7d3f2b72b30844e2f5ee53eb) Upgrade code to use updated config (Damian Mooyman)
|
||
* 2017-02-22 [395878885](https://github.com/silverstripe/silverstripe-framework/commit/39587888582f1ab41b73d2cf00edd983327df6eb) Remove Director.environment_type config and replace with static methods (Damian Mooyman)
|
||
* 2017-02-22 [a6e9a7111](https://github.com/silverstripe/silverstripe-framework/commit/a6e9a7111bf7b6d5d79e90611d6443cbce2204f2) Substitute core config system with new silverstripe/config module (Damian Mooyman)
|
||
* 2017-02-22 [72ddac2a5](https://github.com/silverstripe/silverstripe-framework/commit/72ddac2a56f8cb89be4046c041077484a227783e) Implement ModuleLoader for module registration by composer name (Damian Mooyman)
|
||
* 2017-02-22 [6bae8047](https://github.com/silverstripe/silverstripe-cms/commit/6bae804744f4fb513ffc79c116ce6cee561ce6e7) Use symfony/cache (Ingo Schommer)
|
||
* 2017-02-19 [2513a0f4c](https://github.com/silverstripe/silverstripe-framework/commit/2513a0f4c3edcef63619fa03074b7328ed243b2e) Added drag and drop libraries (Christopher Joe)
|
||
* 2017-02-16 [4885736b](https://github.com/silverstripe/silverstripe-cms/commit/4885736b0eccf8f4b6843e8892ba7d389480e749) Upgrade CMS to use new Config API (Damian Mooyman)
|
||
* 2017-02-14 [014f0d23e](https://github.com/silverstripe/silverstripe-framework/commit/014f0d23edbb604ee285274711b2c49124acc3f7) Create SeparatedDateField (Damian Mooyman)
|
||
* 2017-01-30 [9d35ff8f9](https://github.com/silverstripe/silverstripe-framework/commit/9d35ff8f9559ae7087ce189880db749fe1569efa) Remove ViewableData::ThemeDir, update changelog to reflect suggested replacement (Robbie Averill)
|
||
* 2017-01-26 [029a8b958](https://github.com/silverstripe/silverstripe-framework/commit/029a8b9586888cff44f621b7e4299eddd0f6528d) Substitute Zend_Currency with NumberFormatter based solution (Damian Mooyman)
|
||
* 2017-01-20 [942c0257b](https://github.com/silverstripe/silverstripe-framework/commit/942c0257b765ebc46bb0b2c3069721ccb8915ff6) Upgrade to behat 3 (Damian Mooyman)
|
||
* 2017-01-18 [8a07c56bd](https://github.com/silverstripe/silverstripe-framework/commit/8a07c56bdf28a4d74ebd22c17b1e258f91a273b2) Replace i18n message localisation with symfony/translation (Damian Mooyman)
|
||
* 2017-01-17 [3033953cc](https://github.com/silverstripe/silverstripe-framework/commit/3033953cc93ea0f721084cbc1d4d77842963eafd) Scaffolded redux form fields have the parent form name assigned as a property (Damian Mooyman)
|
||
* 2017-01-13 [7d67c5b9b](https://github.com/silverstripe/silverstripe-framework/commit/7d67c5b9bd578b7e7b4ff17fe6d8df3bec621979) Allow users to act-as another (Damian Mooyman)
|
||
* 2017-01-13 [ce38f1f1f](https://github.com/silverstripe/silverstripe-framework/commit/ce38f1f1fd1722fb50285dd57aa9b528d2794105) Allow "removeComponentsByType" to remove multiple component"s" (Robbie Averill)
|
||
* 2017-01-12 [2c274c838](https://github.com/silverstripe/silverstripe-framework/commit/2c274c838ece66256a0fc94fc3d9680f212cfff9) Shift Security page class config to separate option (Damian Mooyman)
|
||
* 2017-01-10 [9e563ebd3](https://github.com/silverstripe/silverstripe-framework/commit/9e563ebd3a2cd7aab164184b0d28f25be2d9fbfe) Moved iShouldSeeAButton to behat-extension (Damian Mooyman)
|
||
* 2017-01-05 [fb06cc0](https://github.com/silverstripe/silverstripe-installer/commit/fb06cc0075d524cd42bfd7495b2f9aa458e91ef8) Page_Controller to PageController (PSR-2 compliance) (Robbie Averill)
|
||
* 2016-12-29 [0927e547](https://github.com/silverstripe/silverstripe-cms/commit/0927e54780d2f5b7d240ffd7f1f39522c19610a0) Allow controller discovery without underscore (PSR-2 compliance) (Robbie Averill)
|
||
* 2016-12-20 [9be5142fc](https://github.com/silverstripe/silverstripe-framework/commit/9be5142fc15b17395562a0c88b53eece0fbd2c4b) Set::publish() / canPublish() no longer treats hasChanges() = false as a permission error (Damian Mooyman)
|
||
* 2016-12-14 [bb71a37cc](https://github.com/silverstripe/silverstripe-framework/commit/bb71a37cc8274f05d5a9abeae39bf3793155df0d) added enlarge icon (Christopher Joe)
|
||
* 2016-12-12 [88b4ae65c](https://github.com/silverstripe/silverstripe-framework/commit/88b4ae65cc51041f866ee47c66a7764aa3e107f8) Add css class to assist with bootstrapping entwine sections (Damian Mooyman)
|
||
* 2016-12-12 [178bd480e](https://github.com/silverstripe/silverstripe-framework/commit/178bd480eb141f6dc0eb8d07097d85d0e80a8e07) s required for asset search behaviour (Paul Clarke)
|
||
* 2016-12-09 [63ac2efa](https://github.com/silverstripe/silverstripe-siteconfig/commit/63ac2efaa2e7e8caca178579f16d1526fe2a0746) Update validation handling (#43) (Damian Mooyman)
|
||
* 2016-12-09 [bf58c5ae](https://github.com/silverstripe/silverstripe-cms/commit/bf58c5aef4578657678857fe0f0f59f8c60f759e) Update to use new form submission handling (#1691) (Damian Mooyman)
|
||
* 2016-12-06 [6b06fd9f2](https://github.com/silverstripe/silverstripe-framework/commit/6b06fd9f2d9321ced73eee46964da42ea87b473e) Add buttonTooltop to PopoverField and fix critical positioning issue (Damian Mooyman)
|
||
* 2016-11-28 [97d0fc61d](https://github.com/silverstripe/silverstripe-framework/commit/97d0fc61d8a8d246ae2fa05ad769fdb741a3c8ea) Include psr-2 checks in CI (Damian Mooyman)
|
||
* 2016-11-28 [f16d7e183](https://github.com/silverstripe/silverstripe-framework/commit/f16d7e1838d834575738086326d1191db3a5cfd8) Deprecate unused / undesirable create_new_password implementation (Damian Mooyman)
|
||
* 2016-11-23 [799ebe5ba](https://github.com/silverstripe/silverstripe-framework/commit/799ebe5ba8f3b95139031c3a905598a331fedab6) Expose QueryString library and lib/Format as external for formatting items (Christopher Joe)
|
||
* 2016-11-23 [6e589aac7](https://github.com/silverstripe/silverstripe-framework/commit/6e589aac7598878d60490a390537c4a12c24f619) Updates to Form, ValidationResponse, ValidationException (Damian Mooyman)
|
||
* 2016-11-22 [875811fdf](https://github.com/silverstripe/silverstripe-framework/commit/875811fdfd9d3269d168f1767ccd55bbf24d5a13) Create loading state for schema (Christopher Joe)
|
||
* 2016-11-15 [38070ab2](https://github.com/silverstripe/silverstripe-cms/commit/38070ab2d3a8d768c60047e31d39d74e12c13242) Update tests to reflect renamed services (Damian Mooyman)
|
||
* 2016-11-13 [cac326eeb](https://github.com/silverstripe/silverstripe-framework/commit/cac326eebb8e3914813b7dcee3cdba4d09434e1b) Add getExtraDataObjects() and getExtraControllers() methods to SapphireTest (Damian Mooyman)
|
||
* 2016-11-04 [7cba50e3a](https://github.com/silverstripe/silverstripe-framework/commit/7cba50e3a544780badc4e1eda6ed3e2cf8b49417) Refactor UploadField, FileField and AssetField into traits Uploadable and FileUploadable (Damian Mooyman)
|
||
* 2016-11-03 [8e4ed776d](https://github.com/silverstripe/silverstripe-framework/commit/8e4ed776d893e9828326d31b8bfb1345888894ae) Expose FieldHolder react component (Damian Mooyman)
|
||
* 2016-10-28 [1142757c2](https://github.com/silverstripe/silverstripe-framework/commit/1142757c21df7d421057be9d185cc88ab97abe1b) Add 'validation' to form schema (Damian Mooyman)
|
||
* 2016-10-28 [1734e0d2a](https://github.com/silverstripe/silverstripe-framework/commit/1734e0d2a334c0d48d276f673df1cac1fc78edc0) Shorten overly-verbose invalid extension error (#6231) (Damian Mooyman)
|
||
* 2016-10-25 [555104083](https://github.com/silverstripe/silverstripe-framework/commit/555104083995678e16717dd7f3238cf55755c496) Update listview / treeview to use pjax instead of deferred loading (Damian Mooyman)
|
||
* 2016-10-25 [13d40f96](https://github.com/silverstripe/silverstripe-cms/commit/13d40f96f3d0f6459ff47a398c31a5d6a27725b4) Rename _versions table to _Versions (#1655) (Damian Mooyman)
|
||
* 2016-10-25 [d54ae8bb](https://github.com/silverstripe/silverstripe-cms/commit/d54ae8bb26b37f7424ba5767f5ee5b9175069e23) Consolidate "Delete from draft" and "Archive" actions into a consistent behaviour (#1653) (Damian Mooyman)
|
||
* 2016-10-21 [8c87ea6b](https://github.com/silverstripe/silverstripe-cms/commit/8c87ea6b79fc6298008cdfc956d0a1cd733d8d87) Update listview / treeview to use pjax instead of deferred loading (Damian Mooyman)
|
||
* 2016-10-20 [ea6851fd7](https://github.com/silverstripe/silverstripe-framework/commit/ea6851fd700aa8ba5407e54c361f150d1769f122) Rename _versions table to _Versions (Damian Mooyman)
|
||
* 2016-10-19 [840f27523](https://github.com/silverstripe/silverstripe-framework/commit/840f275235fff97132a3b541e83bcffe848ed407) Created a generic FormFactory interface (#6178) (Damian Mooyman)
|
||
* 2016-10-18 [316ac8603](https://github.com/silverstripe/silverstripe-framework/commit/316ac8603647a03e7d8705a83343430cc8b88141) Writes to versioned dataobjects always writes to stage even when written on live (Damian Mooyman)
|
||
* 2016-10-14 [6e8304ff2](https://github.com/silverstripe/silverstripe-framework/commit/6e8304ff2f4b2582b8535ef549b9f2ad9479925e) Namespace framework tests (Damian Mooyman)
|
||
* 2016-10-13 [055795d4d](https://github.com/silverstripe/silverstripe-framework/commit/055795d4d1e6da449af5eef3a9bebfacb284eb69) Support fixture paths relative to current directory (Damian Mooyman)
|
||
* 2016-10-11 [f60fe7d4a](https://github.com/silverstripe/silverstripe-framework/commit/f60fe7d4a9a698a009298c63915a4872bcfadfcf) Versioned::publishRecursive() now uses a ChangeSet (Damian Mooyman)
|
||
* 2016-10-11 [f5f6fdce1](https://github.com/silverstripe/silverstripe-framework/commit/f5f6fdce12abd6074de210b11b98a68fd929c62c) Duplication of many_many relationships now defaults to many_many only (Damian Mooyman)
|
||
* 2016-10-06 [cb24d199b](https://github.com/silverstripe/silverstripe-framework/commit/cb24d199b6e7c57204032452100fa79338e0219a) Convert fieldSpec options to bitwise operators (#6161) (Damian Mooyman)
|
||
* 2016-10-06 [d1dbe912](https://github.com/silverstripe/silverstripe-cms/commit/d1dbe912470295fb11a5f38ebcdeb4d4c4447bdc) Update for DataObjectSchema changes (Damian Mooyman)
|
||
* 2016-10-06 [11bbed4f7](https://github.com/silverstripe/silverstripe-framework/commit/11bbed4f76b2dab35ed0c1db50114eef4a29c4b7) Move many methods from DataObject to DataObjectSchema (Damian Mooyman)
|
||
* 2016-10-05 [380d6523c](https://github.com/silverstripe/silverstripe-framework/commit/380d6523c5db67041721077c58e06f54e46dfe0a) Cleaned up versioned status checks (Damian Mooyman)
|
||
* 2016-10-05 [1ce243cc](https://github.com/silverstripe/silverstripe-cms/commit/1ce243ccc1c724edce1140a43cdf61e1900df537) Cleaned up versioned status checks (Damian Mooyman)
|
||
* 2016-10-03 [f0dd9af69](https://github.com/silverstripe/silverstripe-framework/commit/f0dd9af699cd03e3e315ff6e8297efdc0a9cfd23) Support named join alias for many_many through list (Damian Mooyman)
|
||
* 2016-09-30 [27d35403e](https://github.com/silverstripe/silverstripe-framework/commit/27d35403e863d47745d32025ee7969b1b1d1171c) Force formschema to be reloaded on form submission (Damian Mooyman)
|
||
* 2016-09-30 [92e34b743](https://github.com/silverstripe/silverstripe-framework/commit/92e34b743432a47f3be6d460b0c48f044ed96882) controller::join_links supports array values (Damian Mooyman)
|
||
* 2016-09-28 [2f4867fef](https://github.com/silverstripe/silverstripe-framework/commit/2f4867fef85b273f60b8c0b794e4ecf10a59d0d5) added watch command to package.json (Christopher Joe)
|
||
* 2016-09-26 [e7303170c](https://github.com/silverstripe/silverstripe-framework/commit/e7303170c2ff62adc0fb5d09fdffaacf88c614dd) Implement many_many through (Damian Mooyman)
|
||
* 2016-09-21 [760caaab](https://github.com/silverstripe/silverstripe-cms/commit/760caaab444837a5bb58d49e9f8727f1b61a876c) use new bootstrap button row template (Damian Mooyman)
|
||
* 2016-09-21 [5a59c4f4b](https://github.com/silverstripe/silverstripe-framework/commit/5a59c4f4b40523592174d661f1be490d3cafdea9) Add bootstrap button row template (Damian Mooyman)
|
||
* 2016-09-20 [4f19113c](https://github.com/silverstripe/silverstripe-cms/commit/4f19113c5cce68ae6806c13d87c4f916bcc977ba) Use new DBField::getSchemaValue() (Damian Mooyman)
|
||
* 2016-09-19 [ea50e3007](https://github.com/silverstripe/silverstripe-framework/commit/ea50e300791bf8bf4e187ae048ef56b2ad78d994) Move PreviewLink logic into File dataobject (Christopher Joe)
|
||
* 2016-09-15 [8f23fa99a](https://github.com/silverstripe/silverstripe-framework/commit/8f23fa99a5cbb91e47a10c4d9008ef7364137b10) Moved CMS-specific JavaScript to admin/thirdparty (Ingo Schommer)
|
||
* 2016-09-15 [7d67b24c2](https://github.com/silverstripe/silverstripe-framework/commit/7d67b24c257c515ee758ca7df11aba81766d82fd) Removed legacy Jasmine JS Unit tests (Ingo Schommer)
|
||
* 2016-09-14 [e8375111b](https://github.com/silverstripe/silverstripe-framework/commit/e8375111b17dd2cf4b08b709f140786f69a9f924) Enable default value to be specified for dbstring types at the db level (Damian Mooyman)
|
||
* 2016-09-13 [aecf5260f](https://github.com/silverstripe/silverstripe-framework/commit/aecf5260fc41f4a3a1161e21a955d0cb3b2f075a) Remove TextParser and BBCodeParser (Sam Minnee)
|
||
* 2016-09-13 [2316b0da9](https://github.com/silverstripe/silverstripe-framework/commit/2316b0da9fd18423c0246b7ce4a156f11d2e96a3) Remove i18n::js_i18n option (Ingo Schommer)
|
||
* 2016-09-13 [ee10dbb68](https://github.com/silverstripe/silverstripe-framework/commit/ee10dbb680d7653b1f727e5e146b07df87e66b37) Moved frontend assets into admin/ "module" (Ingo Schommer)
|
||
* 2016-09-13 [327a8a32](https://github.com/silverstripe/silverstripe-cms/commit/327a8a320e882d7c96118036f837d29acd9e8ca8) Move preview template to cms section (Damian Mooyman)
|
||
* 2016-09-13 [9b1c24cf4](https://github.com/silverstripe/silverstripe-framework/commit/9b1c24cf4c74c8241f7b1e9fac1ded5fcdc3c3df) Move preview panel to CMS module (Damian Mooyman)
|
||
* 2016-09-13 [190ed628b](https://github.com/silverstripe/silverstripe-framework/commit/190ed628bc14f8da67b21e77ded01ab060a09574) PreviewThumbnail now uses ScaleMaxWidth (Christopher Joe)
|
||
* 2016-09-12 [ab7e5944d](https://github.com/silverstripe/silverstripe-framework/commit/ab7e5944d1f5e8cd2896fd132a6bfa87e8440a5f) Derive BASE_PATH from composer autoloader (Sam Minnee)
|
||
* 2016-09-07 [9cb9a05ec](https://github.com/silverstripe/silverstripe-framework/commit/9cb9a05ec0b0478e6228f9ea72e94dcafa036112) Removed duplicated thirdparty deps (Ingo Schommer)
|
||
* 2016-09-07 [0a380a94c](https://github.com/silverstripe/silverstripe-framework/commit/0a380a94cd6470f860300ba793f4e6c9d406004b) Removed unused UMD builds of individual JS files (Ingo Schommer)
|
||
* 2016-09-05 [efb004b72](https://github.com/silverstripe/silverstripe-framework/commit/efb004b72aab74c65871c3dbd268a8c453a353d7) use injector for DataObject::newClassInstance() (Damian Mooyman)
|
||
* 2016-09-05 [fc353dc17](https://github.com/silverstripe/silverstripe-framework/commit/fc353dc17a092aa6e8114cf78ad87a8342d4267d) Allow has_many fixtures to be declared with array format as well as many_many (#5944) (Damian Mooyman)
|
||
* 2016-09-01 [5f7b13ee4](https://github.com/silverstripe/silverstripe-framework/commit/5f7b13ee4971d0433278691d95fde0922a5e0c28) Removed unused images across CMS UI (Ingo Schommer)
|
||
* 2016-08-31 [b599095a](https://github.com/silverstripe/silverstripe-cms/commit/b599095a50cc97d3f181a44adee3771e1c82deb8) Remove AssetAdmin (moved to asset-admin module) (Ingo Schommer)
|
||
* 2016-08-31 [5ddd8c331](https://github.com/silverstripe/silverstripe-framework/commit/5ddd8c3318a4b449ee0619cc752be2b77f191159) Adapt File/Folder getCMSFields() to new AssetAdmin (Ingo Schommer)
|
||
* 2016-08-29 [710509949](https://github.com/silverstripe/silverstripe-framework/commit/710509949754c28975dabcaa00e5880dbd88a016) behaviour of filter API to support injected search filter classes (Damian Mooyman)
|
||
* 2016-08-23 [8e89d08e7](https://github.com/silverstripe/silverstripe-framework/commit/8e89d08e7b1889d93ca8e1763dff2146252b5ae0) Remove js/css requirements include from form fields. (Sam Minnee)
|
||
* 2016-08-23 [c9b6e9bac](https://github.com/silverstripe/silverstripe-framework/commit/c9b6e9bac0aaf78e3b2963c9e6ad38ad27fa46f1) Update template lookup to late resolution for performance reasons (Damian Mooyman)
|
||
* 2016-08-21 [2e577ddb1](https://github.com/silverstripe/silverstripe-framework/commit/2e577ddb1d68e52e990f0f89222fe03ad6deb7ca) Use Webpack (Sam Minnee)
|
||
* 2016-08-18 [8dd644d25](https://github.com/silverstripe/silverstripe-framework/commit/8dd644d25d4e01b6853922164440f8ac9c824f22) Namespace all classes (Damian Mooyman)
|
||
* 2016-08-12 [a96ab15a](https://github.com/silverstripe/silverstripe-reports/commit/a96ab15af33a3ac38a61fc7b261c290fac8e4f7a) issue with namespaced reports (Damian Mooyman)
|
||
* 2016-08-11 [90aff08d](https://github.com/silverstripe/silverstripe-cms/commit/90aff08df75386899665cc7d2f868da97dc68cb7) remove obsolete template (Damian Mooyman)
|
||
* 2016-08-10 [afdae4937](https://github.com/silverstripe/silverstripe-framework/commit/afdae4937ecfecb16442c228f3d04457e6b64f8d) Add CMSMenu::remove_menu_class to remove items by class instead of code (Damian Mooyman)
|
||
* 2016-08-09 [cb1f4335a](https://github.com/silverstripe/silverstripe-framework/commit/cb1f4335a09113feff1707dbe3fff777e3736779) remove DataFormatter class and all subclasses (Damian Mooyman)
|
||
* 2016-08-09 [cf6f882e2](https://github.com/silverstripe/silverstripe-framework/commit/cf6f882e2931d229ec621b5ed7d61b2de989a605) Ensure that i18n plural / singular names use shortname prior to namespaced translations (Damian Mooyman)
|
||
* 2016-08-04 [19b81155](https://github.com/silverstripe/silverstripe-cms/commit/19b811555cbdc9ebdbd6995d1215e3e055fcd730) Move NestedController from cms to framework (Damian Mooyman)
|
||
* 2016-08-04 [1c3ec1935](https://github.com/silverstripe/silverstripe-framework/commit/1c3ec1935377e9a1469d44ecb083622b996e5343) Move NestedController from cms to framework (Damian Mooyman)
|
||
* 2016-08-04 [6005a1c2b](https://github.com/silverstripe/silverstripe-framework/commit/6005a1c2b2abba919cc660dc2fd2a5fc0becbbd6) Upgrade for silverstripe CMS namespace changes (Damian Mooyman)
|
||
* 2016-08-04 [59539578](https://github.com/silverstripe/silverstripe-reports/commit/59539578816c2f77ca689c9a17f4f2415a9d51dc) Update for SilverStripe\CMS namespace (Damian Mooyman)
|
||
* 2016-08-02 [4ca3d1dc9](https://github.com/silverstripe/silverstripe-framework/commit/4ca3d1dc9487be2dadd1722823f75f7146bd7a60) Allow custom 'type' option for scripts (Damian Mooyman)
|
||
* 2016-07-28 [9188628ae](https://github.com/silverstripe/silverstripe-framework/commit/9188628ae335fb6ea3c377013ec3e64f24d2260d) Add $action parameter to Controller::Link (Damian Mooyman)
|
||
* 2016-07-26 [c556b0107](https://github.com/silverstripe/silverstripe-framework/commit/c556b010718c7bfdb5eba58913868bb9388a1b4c) Update core templates for CompositeField / SelectionGroup.ss (Damian Mooyman)
|
||
* 2016-07-25 [5e8e8c87](https://github.com/silverstripe/silverstripe-siteconfig/commit/5e8e8c87b2468b69fc2065bcfabaa73d11b977f6) Remove theme selector (#31) (Damian Mooyman)
|
||
* 2016-07-25 [93f4dd1](https://github.com/silverstripe/silverstripe-installer/commit/93f4dd17642fc8b55057b1179248109de1c4e318) Support nested themes API (#129) (Damian Mooyman)
|
||
* 2016-07-25 [ff07a2e2](https://github.com/silverstripe/silverstripe-cms/commit/ff07a2e2641eaa11c48425b16bddf484742c758f) Convert CMS forms to bootstrap (Damian Mooyman)
|
||
* 2016-07-25 [a809e80d0](https://github.com/silverstripe/silverstripe-framework/commit/a809e80d015786bd448652f859e3d6cff6e5bc09) Convert CMS forms to bootstrap (Damian Mooyman)
|
||
* 2016-07-24 [c7387ff45](https://github.com/silverstripe/silverstripe-framework/commit/c7387ff45f294b2a652dee11838eda60539ed025) Upgrade to SilverStripe\CMS namespace (Damian Mooyman)
|
||
* 2016-07-24 [4d007cd1](https://github.com/silverstripe/silverstripe-cms/commit/4d007cd13cf3b7d843c6e177b6252e861d99c6d2) remove obsolete CMSMain::buildbrokenlinks() (Damian Mooyman)
|
||
* 2016-07-24 [70179c8b](https://github.com/silverstripe/silverstripe-cms/commit/70179c8b873676cf2408afc1e5af9fb9e8e9e6c2) Better behaviour for virtualised controller (Damian Mooyman)
|
||
* 2016-07-24 [886d65ad](https://github.com/silverstripe/silverstripe-cms/commit/886d65ad37c33c14dfdd2922092fb524ad2e5f53) Remove obsolete Folder_UsusedAssetsField (Damian Mooyman)
|
||
* 2016-07-24 [b135c256](https://github.com/silverstripe/silverstripe-cms/commit/b135c2566c1807fddfedd3ce80af4fcaf10648ec) remove obsolete UpgradeSiteTreePermissionSchemaTask (Damian Mooyman)
|
||
* 2016-07-19 [20daf1f8e](https://github.com/silverstripe/silverstripe-framework/commit/20daf1f8e11746ef6dc4f925c75754c3b6063106) Abstract ThemeManifest into ThemeList (Damian Mooyman)
|
||
* 2016-07-19 [4b4aa4e91](https://github.com/silverstripe/silverstripe-framework/commit/4b4aa4e91c31b930e664527994840895fe176466) Exclude templates in 'themes' directories from $default theme (#5820) (Damian Mooyman)
|
||
* 2016-07-14 [6e68f38ef](https://github.com/silverstripe/silverstripe-framework/commit/6e68f38efb6443ebe04ac7036678deca627dedfb) Update react sections to use react-router instead of page.js (#5796) (Damian Mooyman)
|
||
* 2016-07-13 [b8b4e98ac](https://github.com/silverstripe/silverstripe-framework/commit/b8b4e98ac2a157992be0a5f679bf3902d0d16991) Theme stacking (Hamish Friedlander)
|
||
* 2016-07-12 [26d46517a](https://github.com/silverstripe/silverstripe-framework/commit/26d46517aca15ff02281ec5cbac9888d21084652) Remove custom DBHTMLText::exists() custom behaviour (Damian Mooyman)
|
||
* 2016-07-07 [859acf571](https://github.com/silverstripe/silverstripe-framework/commit/859acf571e0328a5d6e49264acae6a8ba2936d41) mute frontend debugging by default (#5777) (Damian Mooyman)
|
||
* 2016-07-07 [628455f7](https://github.com/silverstripe/silverstripe-siteconfig/commit/628455f723b12801f3b8e0d5dd4d7ac9e984ba3f) Apply SilverStripe\Security namespace (#28) (Damian Mooyman)
|
||
* 2016-07-07 [39b6d129](https://github.com/silverstripe/silverstripe-reports/commit/39b6d12969053ad97b04dc70d022643a94901cff) Apply SilverStripe\Security namespace (#35) (Damian Mooyman)
|
||
* 2016-07-06 [5cb4ab4a8](https://github.com/silverstripe/silverstripe-framework/commit/5cb4ab4a82993d5b16fa0316e008f547f38d8e98) Add PopoverField for extra-actions popup in react (Damian Mooyman)
|
||
* 2016-07-06 [9e1b12a89](https://github.com/silverstripe/silverstripe-framework/commit/9e1b12a8918b121c9f66d9491e5506aa3248ed0c) Support composite react formfields (Damian Mooyman)
|
||
* 2016-06-22 [25e4cad1](https://github.com/silverstripe/silverstripe-cms/commit/25e4cad1645f17f2a4c60511cec71de5f1281bee) Apply SilverStripe\Security namespace (Damian Mooyman)
|
||
* 2016-06-22 [af22a8316](https://github.com/silverstripe/silverstripe-framework/commit/af22a83166a088311805cf9dc301f8eaca5b46b7) Apply Framework\Security namespace (Damian Mooyman)
|
||
* 2016-06-22 [80e5b9149](https://github.com/silverstripe/silverstripe-framework/commit/80e5b9149e3b207b07cbb98f7d3454f4887067a7) Move dependency on model class from form schema API (Damian Mooyman)
|
||
* 2016-06-17 [b7ac5c564](https://github.com/silverstripe/silverstripe-framework/commit/b7ac5c564d212cd2616e8062919da77182fb73c6) / BUG Fix DBField summary methods (Damian Mooyman)
|
||
* 2016-06-16 [ab819611](https://github.com/silverstripe/silverstripe-reports/commit/ab81961115f2ec19d1e54608263e354b836d27a5) Apply SilverStripe\ORM namespace (Damian Mooyman)
|
||
* 2016-06-16 [fbc90e10](https://github.com/silverstripe/silverstripe-siteconfig/commit/fbc90e1070060c90164074e499d58c3083ad63a2) Update for new SilverStripe\ORM namespace (Damian Mooyman)
|
||
* 2016-06-16 [e378332f](https://github.com/silverstripe/silverstripe-cms/commit/e378332ff3c781cda167d5f39a680448cbe8cf96) Update for new SilverStripe\ORM namespace (Damian Mooyman)
|
||
* 2016-06-16 [83308689d](https://github.com/silverstripe/silverstripe-framework/commit/83308689d5cfb3ecd228cdea775573ebd0a9779e) Initialise React controllers via routes (#5436) (David Craig)
|
||
* 2016-06-15 [80d4af6b6](https://github.com/silverstripe/silverstripe-framework/commit/80d4af6b6e00b39fd5fefddfb87a52708baf714e) Apply Framework\ORM Namespace to model (Hamish Friedlander)
|
||
* 2016-06-13 [c50bc917](https://github.com/silverstripe/silverstripe-cms/commit/c50bc91772af2b400dbcd664f187730b25ba148b) Cleanup inconsistent SiteTree::duplicate API (Damian Mooyman)
|
||
* 2016-06-03 [5c9044a00](https://github.com/silverstripe/silverstripe-framework/commit/5c9044a007d3e0e49d5a57f8794c71717a5aa5d1) Enforce default_cast for all field usages (Damian Mooyman)
|
||
* 2016-05-25 [5e8ae41d4](https://github.com/silverstripe/silverstripe-framework/commit/5e8ae41d4772f750f8ce14103ed45a697a147f6d) Refactor dataobject schema management into separate service (Damian Mooyman)
|
||
* 2016-05-23 [04e617d6](https://github.com/silverstripe/silverstripe-cms/commit/04e617d65def656d66f0920c9ad13b27861160b7) Allow extensions to influence canCreate, canEdit, canView, canDelete, and canAddChildren even for admins. (Damian Mooyman)
|
||
* 2016-05-10 [7f03b88e5](https://github.com/silverstripe/silverstripe-framework/commit/7f03b88e5e1826da662bba1fbfc36221232215f5) Add empty campaign layout (Damian Mooyman)
|
||
* 2016-05-09 [8b94dd83d](https://github.com/silverstripe/silverstripe-framework/commit/8b94dd83dfb8a31f79cd001fc1672d76aa82ffab) Add CSRF to Campaign delete (Damian Mooyman)
|
||
* 2016-05-09 [3edbfd944](https://github.com/silverstripe/silverstripe-framework/commit/3edbfd944ebb6035c9ca681fa153dd1c3e017b05) Implement breadcrumbs via controllable state (Damian Mooyman)
|
||
* 2016-05-04 [65eb0bde6](https://github.com/silverstripe/silverstripe-framework/commit/65eb0bde6a25fbdd84a5c369eaa591df8ed9d523) Look for templates of namespaced classes in subfolders. (Sam Minnee)
|
||
* 2016-05-03 [8ce3d90e1](https://github.com/silverstripe/silverstripe-framework/commit/8ce3d90e18050519c2b94f0cf529e0864a372713) Injector dependencies no longer inherit from parent classes automatically (Damian Mooyman)
|
||
* 2016-05-03 [8d2cc91](https://github.com/silverstripe/silverstripe-installer/commit/8d2cc913e9d4ee1db68e8641da3c784c38fb55be) Include asset-admin module in installer (Damian Mooyman)
|
||
* 2016-05-02 [8b1146be9](https://github.com/silverstripe/silverstripe-framework/commit/8b1146be9adac324e1487ca7f0af159ab201c542) Implement campaign item edit button (Damian Mooyman)
|
||
* 2016-05-02 [6948267c4](https://github.com/silverstripe/silverstripe-framework/commit/6948267c41c486eb501049555df95903fb6573ec) LeftAndMain::menu_title can be overridden (#5423) (Damian Mooyman)
|
||
* 2016-05-02 [0d4c71f39](https://github.com/silverstripe/silverstripe-framework/commit/0d4c71f393a9d73981b9cf25287e3213ffddeb1a) Filtering on invalid relation is no longer a silent error (Damian Mooyman)
|
||
* 2016-05-01 [46f69b0c](https://github.com/silverstripe/silverstripe-cms/commit/46f69b0c0dd484d7c4ed007158b77cbcc2306cf6) set menu title without editing transifex masters (Damian Mooyman)
|
||
* 2016-04-27 [72fcfbf4b](https://github.com/silverstripe/silverstripe-framework/commit/72fcfbf4bc3344a3992a8e99ce9d0d506acac5bc) Campaign preview for images (Damian Mooyman)
|
||
* 2016-04-27 [1aa54924](https://github.com/silverstripe/silverstripe-cms/commit/1aa54924108a877e40fb3048eb87919b64028ac0) Cleanup SilverStripeNavigator and CMSPreview (Damian Mooyman)
|
||
* 2016-04-27 [4be5e7c96](https://github.com/silverstripe/silverstripe-framework/commit/4be5e7c961f7041dd5babb10d6d5550766f8c7be) Implement basic preview behaviour (Damian Mooyman)
|
||
* 2016-04-25 [daf538583](https://github.com/silverstripe/silverstripe-framework/commit/daf53858331179badd4ad6ab6e37e30dc56e2192) in behaviour to flysystem reporting for root folders (Damian Mooyman)
|
||
* 2016-04-22 [241cdfed1](https://github.com/silverstripe/silverstripe-framework/commit/241cdfed1bb7ef9a1cab70f309283a8110bcbd4e) Allow actions to declare they are exempt from validation themselves (Hamish Friedlander)
|
||
* 2016-04-20 [e463fcce6](https://github.com/silverstripe/silverstripe-framework/commit/e463fcce6eaa80719a4f14d59dca9ee56d1f3d12) redux-logger respects ss environment (Damian Mooyman)
|
||
* 2016-04-19 [19de22f42](https://github.com/silverstripe/silverstripe-framework/commit/19de22f42714874abcebfe7ece192546f4d8dd1a) Moved frontend assets into admin/client/ (Ingo Schommer)
|
||
* 2016-04-19 [e2afcd0ac](https://github.com/silverstripe/silverstripe-framework/commit/e2afcd0acb1c65810b5a90ca2a9921f902c6a8e0) Implement back end for saving forms via react (Damian Mooyman)
|
||
* 2016-04-18 [dbd17bd49](https://github.com/silverstripe/silverstripe-framework/commit/dbd17bd49a04a61d7b11d98f28f1b7307d25541c) Remove routing from silverstripe-component (Damian Mooyman)
|
||
* 2016-04-18 [2e9003577](https://github.com/silverstripe/silverstripe-framework/commit/2e900357713a54803d5ae5ed2649d99bf23b1514) Campaign publish button (Damian Mooyman)
|
||
* 2016-04-12 [31247a67b](https://github.com/silverstripe/silverstripe-framework/commit/31247a67bd8cfb34023421da46f59786d49811a0) Replace baked-in and modified Chosen 0.9.8 with npm'ed in Chosen 1.5.1 (Hamish Friedlander)
|
||
* 2016-04-11 [590089375](https://github.com/silverstripe/silverstripe-framework/commit/590089375327aa80c6c92007462b9bfa439ad207) Implement campaign list view (Damian Mooyman)
|
||
* 2016-04-11 [2d16d69dd](https://github.com/silverstripe/silverstripe-framework/commit/2d16d69ddb863b55de3a94fd83a49a3f666354af) Use base data class for ChangeSetItem#ObjectClass, not just ClassName (Hamish Friedlander)
|
||
* 2016-04-07 [05973cee5](https://github.com/silverstripe/silverstripe-framework/commit/05973cee55a9a80b30421c88a3c12baddb63a4f0) Add i18n pluralisation (Damian Mooyman)
|
||
* 2016-04-05 [db6251a9](https://github.com/silverstripe/silverstripe-cms/commit/db6251a9b74886ddb2f15bcb28b393c2c9ae0a73) Update to use new travis-artifacts (Damian Mooyman)
|
||
* 2016-04-01 [3c2b53157](https://github.com/silverstripe/silverstripe-framework/commit/3c2b53157e6f064ebac2269dc9950db2b36501ec) Update Versioned methods (Damian Mooyman)
|
||
* 2016-04-01 [716baa6b](https://github.com/silverstripe/silverstripe-cms/commit/716baa6b1fb55c25112066a6b1a3c10a6be38c0b) Support renamed Versioned API (Damian Mooyman)
|
||
* 2016-03-30 [87ee4365e](https://github.com/silverstripe/silverstripe-framework/commit/87ee4365e7f51089742d1ca24687e25c3b251fb8) Implement ChangeSets for batch publishing (Damian Mooyman)
|
||
* 2016-03-30 [64b7a84bb](https://github.com/silverstripe/silverstripe-framework/commit/64b7a84bb2be4de93a21a7263dc8529085a3eba3) SapphireTest::logInWithPermission now supports multiple permissions (Damian Mooyman)
|
||
* 2016-03-30 [29c5eff43](https://github.com/silverstripe/silverstripe-framework/commit/29c5eff433ff7a62bbf66c7dd3bd0e31b6a368ed) Add $context method to DataObject::can for consistency with canCreate() (Damian Mooyman)
|
||
* 2016-03-30 [501b2f180](https://github.com/silverstripe/silverstripe-framework/commit/501b2f180913cb6d3454fdebc868a929ccb89f28) CMSMenu::get_cms_classes() is now sorted (Damian Mooyman)
|
||
* 2016-03-28 [d22ad706](https://github.com/silverstripe/silverstripe-cms/commit/d22ad706a99504680ca1fdf8ef482e13a7441ab4) Support new DataObject::can() signature (Damian Mooyman)
|
||
* 2016-03-27 [b2e4e9622](https://github.com/silverstripe/silverstripe-framework/commit/b2e4e9622b2dd3a65b4ed7e994f38c8965dd58e9) Remove deprecated caching behaviour from ViewableData (closes #4063) (Loz Calver)
|
||
* 2016-03-23 [8abede133](https://github.com/silverstripe/silverstripe-framework/commit/8abede13395ca97d52e6a8d6cb82106da37127fb) Add SS_Database::withTransaction for nice enclosed transactions (Damian Mooyman)
|
||
* 2016-03-22 [094745ec0](https://github.com/silverstripe/silverstripe-framework/commit/094745ec0ffe24ffd9c5b36d0188ec90ad2bb8b5) Formally support custom ownership relations (Damian Mooyman)
|
||
* 2016-03-21 [2d56ea278](https://github.com/silverstripe/silverstripe-framework/commit/2d56ea278aaeebf49be80b4a40f718caf7cffba2) Move ss buttons plugin out of thirdparty (Damian Mooyman)
|
||
* 2016-03-17 [4cc7b080](https://github.com/silverstripe/silverstripe-cms/commit/4cc7b0806d12166c72f1e1bdf829d0c14e7beaf2) Update to use new Versioned API (Damian Mooyman)
|
||
* 2016-03-09 [067d44ac](https://github.com/silverstripe/silverstripe-cms/commit/067d44ac6ca2bf6353a8efdbc8e00266bd42fa9f) Update link tracking for image shortcodes (Damian Mooyman)
|
||
* 2016-03-08 [8ae794ee9](https://github.com/silverstripe/silverstripe-framework/commit/8ae794ee99b17bed83d969005be03a6621a4ccad) TinyMCE Image shortcodes (Ingo Schommer)
|
||
* 2016-03-07 [14d74f7a](https://github.com/silverstripe/silverstripe-siteconfig/commit/14d74f7ae369483edab421b679d39c3c2955e888) Refactor for removal of CMSForm class (Damian Mooyman)
|
||
* 2016-03-02 [0848aca46](https://github.com/silverstripe/silverstripe-framework/commit/0848aca4625954be8ffc4818be3e3df633f521fd) Massive refactor of Versioned (Damian Mooyman)
|
||
* 2016-02-26 [8366d22](https://github.com/silverstripe/silverstripe-installer/commit/8366d22a1930e0171179b084afce1baaac666e2b) Replace old assets/.htaccess with better default (Damian Mooyman)
|
||
* 2016-02-25 [b196d33bf](https://github.com/silverstripe/silverstripe-framework/commit/b196d33bfa067e11c8a74771ef0aa6898548136a) Ownership API (Damian Mooyman)
|
||
* 2016-02-25 [c275c2105](https://github.com/silverstripe/silverstripe-framework/commit/c275c21057f8739e6d881625812a5d6fe39af663) Extensible::invokeWithExtension has same method signature as Extensible::extend (Damian Mooyman)
|
||
* 2016-02-21 [de6db9f5](https://github.com/silverstripe/silverstripe-cms/commit/de6db9f5c6f32eb8b6efd72e78d7ff2fe212c772) Mark image tracking as owned (Damian Mooyman)
|
||
* 2016-02-16 [99394a84](https://github.com/silverstripe/silverstripe-cms/commit/99394a84d0ae1611754353423723a96601cfa2f0) Remove references to class aliases; Use correct classname (Damian Mooyman)
|
||
* 2016-02-12 [f20ad434c](https://github.com/silverstripe/silverstripe-framework/commit/f20ad434ce66d0102a4bd43c66df517ef385aa2b) Update TinyMCE to 4.x (Damian Mooyman)
|
||
* 2016-01-27 [829135a85](https://github.com/silverstripe/silverstripe-framework/commit/829135a85a0f97d5c4387ed2b66ee7cef7d7d7ad) remove Object::useCustomClass (Damian Mooyman)
|
||
* 2016-01-26 [1c907dd2](https://github.com/silverstripe/silverstripe-cms/commit/1c907dd227a41be8cd25ba0c751f6aa7a308ebfe) Support versioned File management (Damian Mooyman)
|
||
* 2016-01-26 [510c55673](https://github.com/silverstripe/silverstripe-framework/commit/510c55673972ea5aeaca40bc6ef9166fb2b339c3) File has Versioned extension (Damian Mooyman)
|
||
* 2016-01-25 [9662d938f](https://github.com/silverstripe/silverstripe-framework/commit/9662d938f385a24c00d8613fef9bd9340081fd44) remove obsolete class loaders from test listeners (Damian Mooyman)
|
||
* 2016-01-25 [17ee318d](https://github.com/silverstripe/silverstripe-cms/commit/17ee318d06edb37229634206a5f1dd4e032bcdd8) VirtualPage permissions now can be set independently of the mirrored page (Damian Mooyman)
|
||
* 2016-01-21 [e77389d0c](https://github.com/silverstripe/silverstripe-framework/commit/e77389d0c88225e68098fa8250a6b2ccdbf8a4ac) Standardise SS_List::map() implementation (Damian Mooyman)
|
||
* 2016-01-21 [c9764707](https://github.com/silverstripe/silverstripe-cms/commit/c97647078b065b962d2d1d5fd7ae85db40216e15) Refactor out Page default classname hack (Damian Mooyman)
|
||
* 2016-01-21 [5138bf1b7](https://github.com/silverstripe/silverstripe-framework/commit/5138bf1b7fe9a660574444d77ac5324b5687f40d) Refactor out Page default classname hack (Damian Mooyman)
|
||
* 2016-01-14 [8e1ae55ff](https://github.com/silverstripe/silverstripe-framework/commit/8e1ae55ff67647c495c4e1d528907d280d78ad37) Enable single javascript files to declare that they include other files (Damian Mooyman)
|
||
* 2015-12-21 [99de74d69](https://github.com/silverstripe/silverstripe-framework/commit/99de74d69e1bf39a43890487bee3e441b8b01105) Add isDisabledValue to SelectField (Damian Mooyman)
|
||
* 2015-12-09 [037467bea](https://github.com/silverstripe/silverstripe-framework/commit/037467beae90b92598500c27ecfe5d1fcbfea883) Asset Access Control implementation (Damian Mooyman)
|
||
* 2015-11-30 [c13b5d989](https://github.com/silverstripe/silverstripe-framework/commit/c13b5d989f4267e457fb08e0ff0ccdfdd77aa7fe) Enable advanced configuration options for requirements combined files (Damian Mooyman)
|
||
* 2015-11-26 [c50dc064](https://github.com/silverstripe/silverstripe-cms/commit/c50dc06401b7ea08bee4eef81b33586a2e2c1bbd) Update ErrorPage to use FilesystemGeneratedAssetHandler (Damian Mooyman)
|
||
* 2015-11-26 [ce28259c5](https://github.com/silverstripe/silverstripe-framework/commit/ce28259c5f21620db2a61f79fd6479be60a2d8c4) Replace CacheGeneratedAssetHandler with FlysystemGeneratedAssetHandler (Damian Mooyman)
|
||
* 2015-11-09 [369f3dda](https://github.com/silverstripe/silverstripe-cms/commit/369f3dda8d46d846c66bfc4e0c55fef7fcdf90d0) Remove deprecated ListboxField::setMultiple() (Damian Mooyman)
|
||
* 2015-11-09 [0b897477](https://github.com/silverstripe/silverstripe-siteconfig/commit/0b8974774781ab611e02a50318486472709263be) Remove deprecated setMultiple() (Damian Mooyman)
|
||
* 2015-10-29 [641c26299](https://github.com/silverstripe/silverstripe-framework/commit/641c26299ce9bce5c63f36277d8626aa3c1fe6e8) Enable linear-only restriction for DataList::applyRelation (Damian Mooyman)
|
||
* 2015-10-23 [e17a49f8a](https://github.com/silverstripe/silverstripe-framework/commit/e17a49f8a50ad1cf6539b41baedfde34277956c8) Restore JS Minification (Damian Mooyman)
|
||
* 2015-10-19 [d1ea74e40](https://github.com/silverstripe/silverstripe-framework/commit/d1ea74e40d7558e2ba8fef4c0fa5cecd0a98650b) Implement AssetField to edit DBFile fields (Damian Mooyman)
|
||
* 2015-10-14 [2bd9d00d](https://github.com/silverstripe/silverstripe-cms/commit/2bd9d00da0187558b7c76cd0bdc9d9664c140572) Remove filesystem sync (Damian Mooyman)
|
||
* 2015-10-13 [227e2ba1](https://github.com/silverstripe/silverstripe-cms/commit/227e2ba1628cc8969a5367e6aab3e20f253c7a82) Move ErrorPage to new generated files API (Damian Mooyman)
|
||
* 2015-10-12 [f9892c628](https://github.com/silverstripe/silverstripe-framework/commit/f9892c628c8709333969acb3c8ace4cb820b9987) Generated files API (Damian Mooyman)
|
||
* 2015-09-23 [f26c220d8](https://github.com/silverstripe/silverstripe-framework/commit/f26c220d865786725f85860d7848cbd8d137c6c0) Support trait loading (Damian Mooyman)
|
||
* 2015-09-16 [2b1e5ee07](https://github.com/silverstripe/silverstripe-framework/commit/2b1e5ee071e72494c02a1c04a508b54e401afe35) Enable DataList::sort to support composite field names (similar to filter) (Damian Mooyman)
|
||
* 2015-09-15 [be239896d](https://github.com/silverstripe/silverstripe-framework/commit/be239896d32a6d4437d53ce67e1ccf71847cc845) Refactor of File / Folder to use DBFile (Damian Mooyman)
|
||
* 2015-09-14 [051c69ba3](https://github.com/silverstripe/silverstripe-framework/commit/051c69ba3217d464a18270704364590ca752303c) (minor): Freshening up SS_Log API documentation and removed $extras param which was not being used anyway. (Patrick Nelson)
|
||
* 2015-09-10 [10dece653](https://github.com/silverstripe/silverstripe-framework/commit/10dece653f36d65a5649014464d40df85833c49f) Consolidate DataObject db methods (Damian Mooyman)
|
||
* 2015-09-04 [ee639deed](https://github.com/silverstripe/silverstripe-framework/commit/ee639deedbc3330ea419ee20a6bcd6a04e576bd2) showqueries=1 now shows parameters (Damian Mooyman)
|
||
* 2015-09-04 [9872fbef4](https://github.com/silverstripe/silverstripe-framework/commit/9872fbef4d3ae8f649451febb9d0e30ed6dcf843) Refactor CompositeDBField into an abstract class (Damian Mooyman)
|
||
* 2015-09-03 [ac27836d2](https://github.com/silverstripe/silverstripe-framework/commit/ac27836d2b3ebe286464744105e8628ec170f236) Implementation of RFC-1 Asset Abstraction (Damian Mooyman)
|
||
* 2015-08-30 [aeccb8b8e](https://github.com/silverstripe/silverstripe-framework/commit/aeccb8b8e05f1b26d5ee77075809d330fcedbb4a) Move DBField subclasses into SilverStripe\Model\FieldType namespace (Sam Minnee)
|
||
* 2015-07-31 [3e7eecf97](https://github.com/silverstripe/silverstripe-framework/commit/3e7eecf9784b21f7c0fcac14ed58172c575884e0) Remove SQLQuery (Damian Mooyman)
|
||
* 2015-07-23 [1b8d29576](https://github.com/silverstripe/silverstripe-framework/commit/1b8d2957673f50ec7c7e52bfb70980aa28519634) Shift to Monolog for error reporting and logging (Sam Minnee)
|
||
* 2015-07-16 [40cc567c3](https://github.com/silverstripe/silverstripe-framework/commit/40cc567c368cc8bc633c2486ca2c420bb1256924) Force resampling by default (Jonathon Menz)
|
||
* 2015-07-16 [d1af214ef](https://github.com/silverstripe/silverstripe-framework/commit/d1af214ef5efb817c14b85b639525104d94ef2d9) Removed custom dev/tests/ execution (Ingo Schommer)
|
||
* 2015-07-16 [a16588aac](https://github.com/silverstripe/silverstripe-framework/commit/a16588aac3b5b3ea0228d13f5c1f9cf437ac9582) Removed JSTestRunner (Ingo Schommer)
|
||
* 2015-06-17 [4aa84f3d](https://github.com/silverstripe/silverstripe-cms/commit/4aa84f3dd2856fb0caa597018a7f668f6e1265eb) make DataObject::validate public (Damian Mooyman)
|
||
* 2015-06-17 [55170a0b7](https://github.com/silverstripe/silverstripe-framework/commit/55170a0b746e09c59fc6a0d78f2461bfea5f835c) make DataObject::validate public (Damian Mooyman)
|
||
* 2015-06-12 [513f0191f](https://github.com/silverstripe/silverstripe-framework/commit/513f0191fba490275bb15e1a5d5f3c4b0c9cb5a5) default behaviour for Director::getAbsoluteUrl (Damian Mooyman)
|
||
* 2015-06-08 [3bc76e69](https://github.com/silverstripe/silverstripe-cms/commit/3bc76e69fb7e6da4803707c235431a80652da4f3) Formalise new DataObject::canCreate argument (Damian Mooyman)
|
||
* 2015-06-08 [e9d486382](https://github.com/silverstripe/silverstripe-framework/commit/e9d4863828882c12f0cb94d90affa43e6bef45bc) Formalise new additional arguments to DataObject::canCreate, DataExtension::augmentSQL, and DataObject::extendedCan (Damian Mooyman)
|
||
* 2015-05-19 [922d02f53](https://github.com/silverstripe/silverstripe-framework/commit/922d02f5356d5904debaf10003477cdd00306192) Enable filters to perform 'IS NULL' or 'IS NOT NULL' checks (Damian Mooyman)
|
||
* 2015-03-25 [7f5608c59](https://github.com/silverstripe/silverstripe-framework/commit/7f5608c599106a2b15509168cd575e1f62b133a5) Public visibility on DataQuery::selectField (Uncle Cheese)
|
||
* 2015-02-13 [bdb1a9575](https://github.com/silverstripe/silverstripe-framework/commit/bdb1a957583662fb0c463f61fee70cfefd26c988) Cleanup and refactor of select fields (Damian Mooyman)
|
||
* 2015-02-10 [dc8d4ffe](https://github.com/silverstripe/silverstripe-cms/commit/dc8d4ffe0bfa98043e23d24899f2fcf8c74cdd09) Refactor usages of HTMLText -> HTMLFragment (Daniel Hensby)
|
||
|
||
### Features and Enhancements
|
||
|
||
* 2017-10-30 [0c178f934](https://github.com/silverstripe/silverstripe-framework/commit/0c178f934de942b8b3f6b8fda78b1228656d9906) Adjust tinymce footer, remove branding and restore path (Damian Mooyman)
|
||
* 2017-10-26 [f6b7cf888](https://github.com/silverstripe/silverstripe-framework/commit/f6b7cf88893fdc5bc50f1c10d59696b41f924dc2) disable current user from removing their admin permission (Christopher Joe)
|
||
* 2017-10-24 [324bdad48](https://github.com/silverstripe/silverstripe-framework/commit/324bdad48c7ad3c3faa75388e22a34dfdf7ae4b9) Ensure DBVarchar scaffolds text field with TextField with appropriate max length (Damian Mooyman)
|
||
* 2017-10-19 [04b4596be](https://github.com/silverstripe/silverstripe-framework/commit/04b4596bec408f04f1f8f2ba08872d0cf95b7d27) Don't fail immediately on imagick install (Damian Mooyman)
|
||
* 2017-10-16 [78f39e6b](https://github.com/silverstripe/silverstripe-cms/commit/78f39e6b1167e94cc39a123bece8cb02b4ca0ca8) hide tree view icon when searching (Christopher Joe)
|
||
* 2017-10-12 [7e97f04e4](https://github.com/silverstripe/silverstripe-framework/commit/7e97f04e47a1adf3848589269fbdba6c2b3737e1) Allow extensions to intercept incorrect deletes on unpublish (Damian Mooyman)
|
||
* 2017-10-10 [11b2c7453](https://github.com/silverstripe/silverstripe-framework/commit/11b2c74533f8c646085b1e1921b81525a3a6b194) Improve upgrade experience for beta3 -> beta4 upgrade (Damian Mooyman)
|
||
* 2017-10-05 [cdf6ae45a](https://github.com/silverstripe/silverstripe-framework/commit/cdf6ae45a3a7d5bcd44c85d684a2aa2c4c75fb80) Ensure changePassword is called by onBeforeWrite for a consistent API (Robbie Averill)
|
||
* 2017-10-03 [43ec2f87e](https://github.com/silverstripe/silverstripe-framework/commit/43ec2f87eda5e8e2dbacc5679520da6eac3a8610) Implement accept attribute in FileField (closes #7279) (Loz Calver)
|
||
* 2017-10-03 [6b5241269](https://github.com/silverstripe/silverstripe-framework/commit/6b52412693eaf13d0ae60bb807180069d9cb7eec) Make Member::changePassword extensible (Robbie Averill)
|
||
* 2017-09-29 [f4b141761](https://github.com/silverstripe/silverstripe-framework/commit/f4b1417612426e1f7e26c3b31f2be5a403a2a1e3) Use less expensive i18n defaults in Member::populateDefaults() (Damian Mooyman)
|
||
* 2017-09-27 [36397c787](https://github.com/silverstripe/silverstripe-framework/commit/36397c787ccef002c7bba793e2e255112a8652c1) add notice for MigrateFileTask if FileMigrationHelper doesn't exist (Christopher Joe)
|
||
* 2017-09-27 [90d0361a6](https://github.com/silverstripe/silverstripe-framework/commit/90d0361a6ca3805370c21e9699bb602eb5c272e4) update set_themes to not update config (Christopher Joe)
|
||
* 2017-09-26 [28552155c](https://github.com/silverstripe/silverstripe-framework/commit/28552155c33f82d834d25cead433d4683fff0d42) Add actWithPermission to SapphireTest for shortcut to perform actions with specific permissions (Daniel Hensby)
|
||
* 2017-09-21 [fa57deeba](https://github.com/silverstripe/silverstripe-framework/commit/fa57deeba4099d74a8746909e3ba1767353c465b) Allow vendor modules with url rewriting (Damian Mooyman)
|
||
* 2017-09-21 [7e92b053f](https://github.com/silverstripe/silverstripe-framework/commit/7e92b053f4c01593539a18b3796c41ad0683ad46) Add setter and getter for certain classes, so that LeftAndMain no longer updates config during init (Christopher Joe)
|
||
* 2017-09-19 [261302a12](https://github.com/silverstripe/silverstripe-framework/commit/261302a12150b88068a70f829f7265f31e57f551) Don't force all class names to lowercase (Damian Mooyman)
|
||
* 2017-09-13 [04b1bb816](https://github.com/silverstripe/silverstripe-framework/commit/04b1bb816e8f3f6aa79e147179d53b0e9a8fff04) RateLimiter for Security controller (Daniel Hensby)
|
||
* 2017-09-05 [c707fccf6](https://github.com/silverstripe/silverstripe-framework/commit/c707fccf69cfb6683d7f905d0e440ffa35874e5a) Allow GridFieldEditButton to have configurable HTML classes. Change edit icon. (Sacha Judd)
|
||
* 2017-08-29 [98c10b089](https://github.com/silverstripe/silverstripe-framework/commit/98c10b089c0c3a9315f075dc44ab46bbe361369a) Allow <% include %> to fallback outside of the Includes folder (Damian Mooyman)
|
||
* 2017-08-28 [0b34066f0](https://github.com/silverstripe/silverstripe-framework/commit/0b34066f0cec8de2c1afdd717613ffab201d02a8) incorrect scalar types in doc blocks, add chainable returns in setters (Robbie Averill)
|
||
* 2017-08-23 [2c34af72e](https://github.com/silverstripe/silverstripe-framework/commit/2c34af72e18c7ba577591d389ca1eff2c4bc9eaf) Log user constants during CI for debugging improvements (Damian Mooyman)
|
||
* 2017-08-14 [0eebeedd0](https://github.com/silverstripe/silverstripe-framework/commit/0eebeedd0325609bd6785c4e1990109ea3052f23) Test php 7.2 (Sam Minnee)
|
||
* 2017-08-10 [9dc11eff4](https://github.com/silverstripe/silverstripe-framework/commit/9dc11eff4362f91c56ad63cf042cf4936f8ae7d3) Add a path option for the schema data, so a full tree is not required for this data (Christopher Joe)
|
||
* 2017-08-03 [8577ad128](https://github.com/silverstripe/silverstripe-framework/commit/8577ad128059f4c508f03df4e5566c09fe161be5) Added SSL support for MySQLi Connector (fixes #7242) (John)
|
||
* 2017-08-03 [417caf29](https://github.com/silverstripe/silverstripe-cms/commit/417caf29724c1bd6df286d4a0ef9bad71152bf2f) Allow insert links with display link text (Saophalkun Ponlu)
|
||
* 2017-08-03 [06efd2ac1](https://github.com/silverstripe/silverstripe-framework/commit/06efd2ac12d92bdfb08d23bcc317a83e9c369cd3) Ensure flush destroys temp tinymce files (Damian Mooyman)
|
||
* 2017-08-02 [2f9bfae1f](https://github.com/silverstripe/silverstripe-framework/commit/2f9bfae1f9f6bb2d33e3f979601e0abae243a7f6) Added MySQL SSL PDO Support (John)
|
||
* 2017-08-01 [ae97c15e4](https://github.com/silverstripe/silverstripe-framework/commit/ae97c15e4206f70bbdf6028365cb86373d8329ee) Soft-code CSS explicit height and compute against rows (Damian Mooyman)
|
||
* 2017-07-26 [74873096b](https://github.com/silverstripe/silverstripe-framework/commit/74873096bdd2cbc3ca1ed9a777987c595431dfb4) getSummary() API for SearchContext (Aaron Carlino)
|
||
* 2017-07-21 [392cda15f](https://github.com/silverstripe/silverstripe-framework/commit/392cda15f67dd6935a125483f66584051a3bd140) Add updateRules extension point to Director::handleRequest (Robbie Averill)
|
||
* 2017-07-20 [78d4d0d5d](https://github.com/silverstripe/silverstripe-framework/commit/78d4d0d5dd2811047833d5f3624fc1a3bf63c855) add support for TreeMultiselectField in react (Christopher Joe)
|
||
* 2017-07-16 [ac851f3a](https://github.com/silverstripe/silverstripe-siteconfig/commit/ac851f3afa1e46a35e355d04ce6cc91c05bd1589) Upgrade to Behat 3, remove old feature contexts, update Travis configuration (Robbie Averill)
|
||
* 2017-07-16 [12310d5d](https://github.com/silverstripe/silverstripe-siteconfig/commit/12310d5d2bc81605f4ec7ed2ea834fc84b799dfe) Change "only these people" to "only these groups" in permissions (Robbie Averill)
|
||
* 2017-07-16 [2dd5bb4d1](https://github.com/silverstripe/silverstripe-framework/commit/2dd5bb4d19a8f226e3179f89e7bb9514c630db84) Add Behat CMS header tab context methods (Robbie Averill)
|
||
* 2017-07-14 [6fc1491f](https://github.com/silverstripe/silverstripe-cms/commit/6fc1491f0b823ae43f86354d843ba3cd3a4cfbb1) Add edit command and its url test for page insert (Saophalkun Ponlu)
|
||
* 2017-07-13 [1cf8a67f](https://github.com/silverstripe/silverstripe-cms/commit/1cf8a67f21563c99044bccd78af6c7f02b1ebb81) Use injector for creating SSViewer (Robbie Averill)
|
||
* 2017-07-12 [f367a0aa6](https://github.com/silverstripe/silverstripe-framework/commit/f367a0aa62baef0969091cc766c41822ad305087) add web accessible colours to web view dev/build (Sacha Judd)
|
||
* 2017-07-10 [823e49526](https://github.com/silverstripe/silverstripe-framework/commit/823e49526fe43b554e1b05a098ddff498bb52210) Allow SSViewer and SSViewer_FromString to be injectable (Robbie Averill)
|
||
* 2017-07-04 [b347ab86](https://github.com/silverstripe/silverstripe-cms/commit/b347ab866d50a589a598fa4f27fef787a24d9879) Add version provider configuration (Robbie Averill)
|
||
* 2017-07-04 [ee4d8b4d4](https://github.com/silverstripe/silverstripe-framework/commit/ee4d8b4d4e22a25b86c90785c45cc480f8423861) Add new SilverStripeVersionProvider to provider module versions (Robbie Averill)
|
||
* 2017-07-04 [bd5782adc](https://github.com/silverstripe/silverstripe-framework/commit/bd5782adcaf46e4a7281b778504a38e4dc6badf3) Allow index type to be configured per DBField instance (Robbie Averill)
|
||
* 2017-07-03 [4c1dbd40](https://github.com/silverstripe/silverstripe-cms/commit/4c1dbd402b69093c069ffa12d8e01e4e5a816d83) Change "only these people" to "only these groups" in permissions (Robbie Averill)
|
||
* 2017-06-27 [ce730319](https://github.com/silverstripe/silverstripe-cms/commit/ce730319ecdf9f0c93c0ea4001d120fe238e9250) Remove use of MODULE_DIR constants (Sam Minnee)
|
||
* 2017-06-27 [8bb53215](https://github.com/silverstripe/silverstripe-siteconfig/commit/8bb5321546dfe289d29a970d0ba7d7ccd4527674) Remove use of MODULE_DIR constants (Sam Minnee)
|
||
* 2017-06-23 [c9c439061](https://github.com/silverstripe/silverstripe-framework/commit/c9c43906191511bce8ef6f4dc8b84600eebaebf2) Ensure polymorphic has_one fields are indexed (Robbie Averill)
|
||
* 2017-06-23 [ccc86306b](https://github.com/silverstripe/silverstripe-framework/commit/ccc86306b6a0d6eb9bbb8b41b209b8595393d591) Add TrustedProxyMiddleware (Sam Minnee)
|
||
* 2017-06-23 [c4d038f20](https://github.com/silverstripe/silverstripe-framework/commit/c4d038f20dfcba582c7ab35b596b106ae0938075) Add HTTPRequest::getScheme()/setScheme() (Sam Minnee)
|
||
* 2017-06-23 [4d89daac7](https://github.com/silverstripe/silverstripe-framework/commit/4d89daac786ac501a4c651d4bbe62d8eac701388) Register Injector::inst()->get(HTTPRequest) (Sam Minnee)
|
||
* 2017-06-23 [d3d426bdf](https://github.com/silverstripe/silverstripe-framework/commit/d3d426bdfc021b8bf1ae801674a1f9efa7ecfd57) restored Extension::__construct() (Franco Springveldt)
|
||
* 2017-06-23 [72a7655e9](https://github.com/silverstripe/silverstripe-framework/commit/72a7655e95f89aa63fe9ed7b3bce3d7fd32cd989) Moved allowed-hosts checking to a middleware. (Sam Minnee)
|
||
* 2017-06-23 [db080c060](https://github.com/silverstripe/silverstripe-framework/commit/db080c0603a14a4a134a83400d46cbf34d19bae5) Move session activation to SessionMiddleware. (Sam Minnee)
|
||
* 2017-06-23 [254204a3a](https://github.com/silverstripe/silverstripe-framework/commit/254204a3a66045e97ed076dc27910f85721177a9) Replace AuthenticationRequestFilter with AuthenticationMiddleware (Sam Minnee)
|
||
* 2017-06-23 [e85562289](https://github.com/silverstripe/silverstripe-framework/commit/e85562289045cdc7c5c0c619811444e4b1f4dcd9) Replace FlushRequestFilter with FlushMiddleware (Sam Minnee)
|
||
* 2017-06-22 [26b9bf11e](https://github.com/silverstripe/silverstripe-framework/commit/26b9bf11edcc2cb5a27a681ab52ad0f8299df81a) Allow “%$” prefix in Injector::get() (Sam Minnee)
|
||
* 2017-06-15 [a990c99d6](https://github.com/silverstripe/silverstripe-framework/commit/a990c99d6e6f477ab6e973ada13f9dff234682f5) suffix subfolder in silverstripe-cache with php-version (#6810) (Lukas)
|
||
* 2017-06-15 [5d27dccd6](https://github.com/silverstripe/silverstripe-framework/commit/5d27dccd6013d3d2ae8e26db74469c6b5f22ecdd) Add CSRF token to logout action (Loz Calver)
|
||
* 2017-06-11 [7178caf4a](https://github.com/silverstripe/silverstripe-framework/commit/7178caf4a947cf48f3785b2b1b6ec658a2ce146a) show the path which threw the error (Christopher Joe)
|
||
* 2017-06-01 [9a0e01d4a](https://github.com/silverstripe/silverstripe-framework/commit/9a0e01d4a083514c70992d8c7625c6cfedd6e54a) DB Driver defaults to PDO (Daniel Hensby)
|
||
* 2017-05-31 [0f90c5b63](https://github.com/silverstripe/silverstripe-framework/commit/0f90c5b63fdd5dedf0d5689c78208f44ddb4b4c1) Update style of CMSLogin form (Damian Mooyman)
|
||
* 2017-05-31 [844420df](https://github.com/silverstripe/silverstripe-cms/commit/844420df40c18fed97976da75265297e6386852a) Translation strings updated (Christopher Joe)
|
||
* 2017-05-24 [e327bf3c7](https://github.com/silverstripe/silverstripe-framework/commit/e327bf3c70a5f0510e579016ffce85f1efadaef1) add contribution notes about releasing to NPM (Christopher Joe)
|
||
* 2017-05-18 [c2841b6d6](https://github.com/silverstripe/silverstripe-framework/commit/c2841b6d64d2c756f4ad046bb1ef6eacf9d861ea) Remove "Remove link" button from the editor's main toolbar (Saophalkun Ponlu)
|
||
* 2017-05-18 [3e556b596](https://github.com/silverstripe/silverstripe-framework/commit/3e556b59660b1126a4079bd99e030415780997e2) Move index generation to DataObjectSchema and solidify index spec (Daniel Hensby)
|
||
* 2017-05-16 [9a31b19e](https://github.com/silverstripe/silverstripe-cms/commit/9a31b19ed28c4fc530dc4a231031313943a14799) RedirectorPage extensions can now modify fields (Damian Mooyman)
|
||
* 2017-05-11 [6869e450a](https://github.com/silverstripe/silverstripe-framework/commit/6869e450a0f98fdf44ec888308ee85262210ab60) added customisable emptyTitle and a showRootOption property in TreeDropdownField (Christopher Joe)
|
||
* 2017-05-10 [7fa47e234](https://github.com/silverstripe/silverstripe-framework/commit/7fa47e234f9082d770e4618a4e78ea2c5f74c80b) API for minified files using injectable service (Aaron Carlino)
|
||
* 2017-05-08 [afd157526](https://github.com/silverstripe/silverstripe-framework/commit/afd157526777b6f3a62644c800155c4286401e30) GridField passes in context for canCreate (Aaron Carlino)
|
||
* 2017-05-07 [f9ea752ba](https://github.com/silverstripe/silverstripe-framework/commit/f9ea752bae7344ea9df1eeef56e7e8259e65fbcb) Add AuthenticationHandler interface (Sam Minnee)
|
||
* 2017-05-05 [edcb220e4](https://github.com/silverstripe/silverstripe-framework/commit/edcb220e4afd99d294e105c2363fac3fbf0beb62) add EmailLink form factory server-side (Christopher Joe)
|
||
* 2017-05-04 [f4179d60](https://github.com/silverstripe/silverstripe-cms/commit/f4179d608de86f04cdc7d1d4211901d31ded3d52) Simplify test runs. (Sam Minnee)
|
||
* 2017-05-04 [1691e90fb](https://github.com/silverstripe/silverstripe-framework/commit/1691e90fbd4ef15fdf2514ba8da2e0500e0c7b29) Allow SapphireTest::objFromFixture() to accept either table or class (Sam Minnee)
|
||
* 2017-05-04 [2ee0d9980](https://github.com/silverstripe/silverstripe-framework/commit/2ee0d99806daca5e1fdcd033e5046a91785bfcac) switch FormFactories to use RequestHandler instead of Controller (Christopher Joe)
|
||
* 2017-04-24 [b6d4eb3e](https://github.com/silverstripe/silverstripe-cms/commit/b6d4eb3e77d3f7dd68067b1e46c93e391809290b) module-based JS translation keys (Aaron Carlino)
|
||
* 2017-04-20 [d51c4891e](https://github.com/silverstripe/silverstripe-framework/commit/d51c4891e2f585bf89c67071d9ad665c0c97151a) namespaced i18n keys (Uncle Cheese)
|
||
* 2017-04-20 [29805ee4](https://github.com/silverstripe/silverstripe-cms/commit/29805ee4462b5cc7620040864312d707e4a8d191) namespaced i18n keys (Uncle Cheese)
|
||
* 2017-04-13 [a58416b6](https://github.com/silverstripe/silverstripe-reports/commit/a58416b6f67b48651960368bbc513b92fed786f6) style travis tests (Ingo Schommer)
|
||
* 2017-04-03 [b8db4505](https://github.com/silverstripe/silverstripe-cms/commit/b8db45055ca8f08291d5d2ba4317a755339917a7) Refactor archive message to a separate method (Saophalkun Ponlu)
|
||
* 2017-04-03 [8b1c020b9](https://github.com/silverstripe/silverstripe-framework/commit/8b1c020b9f1890ba5818206baa7b51ee38ec1cb3) Downgrade MSSQL from commercially supported to community supported (Sam Minnee)
|
||
* 2017-03-31 [5b90141c](https://github.com/silverstripe/silverstripe-cms/commit/5b90141c03208873fc15e2a1e807ede52868ac41) Update archive warning message (Saophalkun Ponlu)
|
||
* 2017-02-27 [fc54fa160](https://github.com/silverstripe/silverstripe-framework/commit/fc54fa160064e50c6234dfbd17df13fee1c5984c) Add class to clear underline styling for fieldholders (Christopher Joe)
|
||
* 2017-02-02 [0982f77ec](https://github.com/silverstripe/silverstripe-framework/commit/0982f77ec70bfa69cd88767204fac55e677e4bc2) /aggregate data filters (#6553) (Aaron Carlino)
|
||
* 2017-02-02 [3952769ea](https://github.com/silverstripe/silverstripe-framework/commit/3952769ea390cdecf831c9c6fd653a7355a6d4af) More helpful error when .env is missing. (Sam Minnee)
|
||
* 2017-01-30 [06b4758](https://github.com/silverstripe/silverstripe-installer/commit/06b475896d69738541d3033690ed3768f8f42955) Add .env support (Daniel Hensby)
|
||
* 2017-01-30 [8c8231c03](https://github.com/silverstripe/silverstripe-framework/commit/8c8231c03e3fd1fea8d91da3c03676d59ed0847c) Director::host() to determine host name of site (Daniel Hensby)
|
||
* 2017-01-30 [873fd8c5b](https://github.com/silverstripe/silverstripe-framework/commit/873fd8c5bc03a848aae84f39b7d73af67b661798) replace _ss_environment.php with .env and environment vars (Daniel Hensby)
|
||
* 2017-01-16 [87ac3e397](https://github.com/silverstripe/silverstripe-framework/commit/87ac3e3971381945b2039c9e90934a6aa3dcb4a7) Display warning on always_populate_raw_post_data not being -1 in php 5 (#6507) (Damian Mooyman)
|
||
* 2017-01-13 [3ea5015f8](https://github.com/silverstripe/silverstripe-framework/commit/3ea5015f8bbed1a88b5ea9ba27c5fe33cf75ff36) Move to SwiftMailer powered Emails (#6466) (Daniel Hensby)
|
||
* 2017-01-11 [b52a963ed](https://github.com/silverstripe/silverstripe-framework/commit/b52a963ed7e6bea244ac08f83636db632f242c64) Remove jquery-ui button() api from default HTML editor dialog (Damian Mooyman)
|
||
* 2016-12-23 [ed26b251c](https://github.com/silverstripe/silverstripe-framework/commit/ed26b251c830bd7b096cd717bc1baeb6c2d4c590) Better output type detection for debugging (Damian Mooyman)
|
||
* 2016-12-21 [cf5c055de](https://github.com/silverstripe/silverstripe-framework/commit/cf5c055dede91a0da362aef8b3a9e5465af16de4) Campaign admin publish button styles missing (Paul Clarke)
|
||
* 2016-12-20 [e893fc4c5](https://github.com/silverstripe/silverstripe-framework/commit/e893fc4c5164b6cba9a1ea67b4651410b6cb01d1) improve secondary action colours (Paul Clarke)
|
||
* 2016-12-14 [d8843c6fe](https://github.com/silverstripe/silverstripe-framework/commit/d8843c6fe2bfd4a7116c327ba3be6d9926072227) Split out the fetch call easier mocking (Christopher Joe)
|
||
* 2016-12-13 [ddc9a9c6d](https://github.com/silverstripe/silverstripe-framework/commit/ddc9a9c6d6d48b9a689e3d3e0588aae07d344547) up buttons within gridfield search (Will Rossiter)
|
||
* 2016-12-12 [7b90ee137](https://github.com/silverstripe/silverstripe-framework/commit/7b90ee137dcd589c3c31d9683f4804f7f2607717) resize icon to sit inline and increase size of search icon and Upload icon (Paul Clarke)
|
||
* 2016-12-08 [085c8f5a4](https://github.com/silverstripe/silverstripe-framework/commit/085c8f5a43636cbb0c09d7a6cbeb218a8a7128e9) 2x increase in scanning of files for ConfigManifest (Jake Bentvelzen)
|
||
* 2016-12-07 [2a25a525c](https://github.com/silverstripe/silverstripe-framework/commit/2a25a525cb53a1f4158f87481a1658aa25e0c51f) Move temporary JSON block into standard component (Damian Mooyman)
|
||
* 2016-12-05 [6ec780493](https://github.com/silverstripe/silverstripe-framework/commit/6ec780493202c4a06165c9dafe0c2d7961de33a1) Add icon size for 14px icons and table padding for asset list (Paul Clarke)
|
||
* 2016-11-30 [cb6ec11f1](https://github.com/silverstripe/silverstripe-framework/commit/cb6ec11f1b179acadc0dd52d902aa52ca1284f2a) Implement import CSV icon and tidy up import forms (Will Rossiter)
|
||
* 2016-11-29 [0e92ecea0](https://github.com/silverstripe/silverstripe-framework/commit/0e92ecea0c1dc57ccde5b1b152934a880960375a) Prevent test DBs persisting after testing (Damian Mooyman)
|
||
* 2016-11-22 [8ab382ed7](https://github.com/silverstripe/silverstripe-framework/commit/8ab382ed78031a0da43417f3020e18c878bd92cb) Insert media modal in react (Damian Mooyman)
|
||
* 2016-11-21 [35e313de1](https://github.com/silverstripe/silverstripe-framework/commit/35e313de17acbf88a6b1c33c74f07136e25310cc) height for modal in IE10 (Paul Clarke)
|
||
* 2016-11-21 [0d788ddf](https://github.com/silverstripe/silverstripe-cms/commit/0d788ddfbc8be0e00d54b4316bf544104cb4cbdb) Code Coverage via CodeCov.io (#1631) (Ingo Schommer)
|
||
* 2016-11-01 [5650254b5](https://github.com/silverstripe/silverstripe-framework/commit/5650254b53a7ab25872657cdd6932ef5e63afdf3) es to allow code files in src/ folder. (Damian Mooyman)
|
||
* 2016-11-01 [213cf8841](https://github.com/silverstripe/silverstripe-framework/commit/213cf8841b5675c59a1578f36a3af9dd397d2eae) Test webpack build as part of NPM test run. (Sam Minnee)
|
||
* 2016-11-01 [e9d2f2f73](https://github.com/silverstripe/silverstripe-framework/commit/e9d2f2f733343bff29f5bab0fc94263d02119f0b) Use composer autoloader to set the right include path. (Sam Minnee)
|
||
* 2016-11-01 [7a10c194b](https://github.com/silverstripe/silverstripe-framework/commit/7a10c194bdd751f74669c07836befecc1fde400e) Move code files into src/ folder. (Sam Minnee)
|
||
* 2016-10-31 [741c515c](https://github.com/silverstripe/silverstripe-cms/commit/741c515cb2f5ed07d429cbcdcff32331aedb5d64) Improved behaviour for flexbox on smaller screens (Damian Mooyman)
|
||
* 2016-10-28 [bf9939e3](https://github.com/silverstripe/silverstripe-cms/commit/bf9939e32c1e624fdff4de8b0ca213531093a496) Refactor test bootstrap to be more modular. (Sam Minnee)
|
||
* 2016-10-26 [c47a1d909](https://github.com/silverstripe/silverstripe-framework/commit/c47a1d9091c4cba52109c7fa9d9a46ac57d4ea93) Simplified test runs. (Sam Minnee)
|
||
* 2016-10-24 [added212](https://github.com/silverstripe/silverstripe-cms/commit/added2129f7c91812442cc6ebfc01c72b9f68605) Simplified travis run (Sam Minnee)
|
||
* 2016-09-17 [b19475d74](https://github.com/silverstripe/silverstripe-framework/commit/b19475d748a8f3039605a5b63f8ef829688044a3) Ignore npm-shrinkwrap for greenskeeper-provided PRs. (Sam Minnee)
|
||
* 2016-09-17 [c2ebff5c1](https://github.com/silverstripe/silverstripe-framework/commit/c2ebff5c19ada06110f6422e9a74ffde8dacb182) Use sass-lint over scss-lint (Sam Minnee)
|
||
* 2016-09-15 [f700d8655](https://github.com/silverstripe/silverstripe-framework/commit/f700d86557375a0f7510344274337bb58b37e68f) Run JS/CSS linting in Travis. (Sam Minnee)
|
||
* 2016-09-14 [cebcf7fb8](https://github.com/silverstripe/silverstripe-framework/commit/cebcf7fb8c4bedb45cf8360978e95c11a831ff8b) More flexible theme resolution for framework and cms. (Sam Minnee)
|
||
* 2016-09-13 [07396e443](https://github.com/silverstripe/silverstripe-framework/commit/07396e4437064ace9cad66bedc5ea07eced78bf5) Move Travis behat test to run locally. (Sam Minnee)
|
||
* 2016-09-13 [96126323d](https://github.com/silverstripe/silverstripe-framework/commit/96126323d24349ade5900f68a3f3ea13e226ff77) themedCSS() and themedJavascript() work with any file layout. (Sam Minnee)
|
||
* 2016-09-12 [9dd5ebee8](https://github.com/silverstripe/silverstripe-framework/commit/9dd5ebee8cd04fd5b7544c7ca7cad0d065e7b8ed) Don’t set up SilverStripe project for test run (Sam Minnee)
|
||
* 2016-09-12 [6b847d361](https://github.com/silverstripe/silverstripe-framework/commit/6b847d36144a5d10aa2eb1bf691a641efa82f73f) Allow project root to be treated as a module. (Sam Minnee)
|
||
* 2016-09-08 [3d827543](https://github.com/silverstripe/silverstripe-cms/commit/3d827543a8d7d419bba5ac79d398614f31b296a7) Allow pages to specify the controller they use (Loz Calver)
|
||
* 2016-05-21 [a9eebdc7e](https://github.com/silverstripe/silverstripe-framework/commit/a9eebdc7edc31023cb7272ed3fff2ca6f31de0b1) Allow namespaces in template include statements. (Sam Minnee)
|
||
* 2016-04-11 [21a106532](https://github.com/silverstripe/silverstripe-framework/commit/21a106532922fb9533c6be3c156015ba0149c2e3) Add createEndpointFetcher to backend (Sam Minnee)
|
||
* 2016-04-03 [a17c5cb14](https://github.com/silverstripe/silverstripe-framework/commit/a17c5cb148cbf08b59b846586fc6707cf6da5b1b) Expose silverstripe-backend for modules to access. (Sam Minnee)
|
||
* 2016-03-02 [ae3161969](https://github.com/silverstripe/silverstripe-framework/commit/ae3161969567215670574f0cca273a124586fa40) styles for main nav (Paul Clarke)
|
||
* 2016-02-04 [bab1f230b](https://github.com/silverstripe/silverstripe-framework/commit/bab1f230bfccf8f7fcc66bc38630eb4b2c1c2c4a) Cross device "Remember Me" feature (Jean-Fabien Barrois)
|
||
* 2015-08-28 [53ffc1a0d](https://github.com/silverstripe/silverstripe-framework/commit/53ffc1a0dbac52ad682a150d387b104c1dc0616f) Defining byID functions in SS_Filterable (Daniel Hensby)
|
||
* 2015-08-27 [52ca089d0](https://github.com/silverstripe/silverstripe-framework/commit/52ca089d0bb01a8a588ecaecbf841f92e9cec050) Ensure php7 builds pass. (Sam Minnee)
|
||
* 2015-07-29 [a1f7dcafa](https://github.com/silverstripe/silverstripe-framework/commit/a1f7dcafa23380ed9f357d3574dd6aea4bffd653) Add ‘calls’ section to Injector configs. (Sam Minnee)
|
||
* 2015-07-27 [ebc3900c4](https://github.com/silverstripe/silverstripe-framework/commit/ebc3900c4af39ff3c46a0127b0cf681c829666a6) Replace DebugView’s writeX() functions with renderX() functions. (Sam Minnee)
|
||
* 2015-05-27 [223466a8b](https://github.com/silverstripe/silverstripe-framework/commit/223466a8b8554046a0525de5b794c702cb56fdae) Configurable file version prefix (Jonathon Menz)
|
||
* 2015-05-01 [9f91b4782](https://github.com/silverstripe/silverstripe-framework/commit/9f91b4782513b703926a9ff90d6248bf4dc3059d) Update SS_ConfigStaticManifest to use Reflection (micmania1)
|
||
* 2014-07-05 [533d5dbd4](https://github.com/silverstripe/silverstripe-framework/commit/533d5dbd4b79c307d8b6289f8c6fb28ae743a9ca) Admin url can now be customized (Thierry François)
|
||
|
||
### Bugfixes
|
||
|
||
* 2017-11-07 [8497b9e1e](https://github.com/silverstripe/silverstripe-framework/commit/8497b9e1e6f2710733a22d210b2b7f3d79c287ff) Disable directory index with missing slash (Damian Mooyman)
|
||
* 2017-11-03 [1929ec46b](https://github.com/silverstripe/silverstripe-framework/commit/1929ec46bba443c870b0a756df791520a485e352) Prevent logOut() from clearing site stage during bootstrapping due to flushed session (Damian Mooyman)
|
||
* 2017-11-02 [6a73466b4](https://github.com/silverstripe/silverstripe-framework/commit/6a73466b41a1fbc1947bf2608c5ea35f78934f50) Fix basicauth (Damian Mooyman)
|
||
* 2017-11-02 [1b190de7](https://github.com/silverstripe/silverstripe-cms/commit/1b190de7e1844f817caa0f65d3bfe5fdff31d264) Fix regression to cancel draft changes (Christopher Joe)
|
||
* 2017-11-02 [a61ce077c](https://github.com/silverstripe/silverstripe-framework/commit/a61ce077c64851fdf5dd4aa041cfd74509590011) Sessions must be destroyed on logout (Daniel Hensby)
|
||
* 2017-11-02 [27907304](https://github.com/silverstripe/silverstripe-cms/commit/27907304c16950ccd3b9e4a81e6952dad96ee64b) Ensure we publish pages to update permissions during testing (Damian Mooyman)
|
||
* 2017-11-01 [df50c8da0](https://github.com/silverstripe/silverstripe-framework/commit/df50c8da03033c3282a9589b292b00002f4f08e8) Use parse_str in place of guzzle library (Damian Mooyman)
|
||
* 2017-11-01 [897cba55c](https://github.com/silverstripe/silverstripe-framework/commit/897cba55cbf6bf2fae6ec0bc2f464b4b61b4dd22) Move Member log out extension points to non-deprecated methods (Robbie Averill)
|
||
* 2017-11-01 [c331deda](https://github.com/silverstripe/silverstripe-cms/commit/c331dedae929478c971348a5cfd431d99ea09bbd) Fix ambiguous query for content report (Christopher Joe)
|
||
* 2017-10-30 [4fb53060](https://github.com/silverstripe/silverstripe-cms/commit/4fb5306008328f38886c7ddb7b0b2a31addffc47) Safely check for is_site_url before parsing a shortcode (Damian Mooyman)
|
||
* 2017-10-29 [26dc7373](https://github.com/silverstripe/silverstripe-reports/commit/26dc7373bae2fde3889f67103bd2db2c59d70afb) Add primary button class to 'Filter' button (Robbie Averill)
|
||
* 2017-10-27 [4d063289](https://github.com/silverstripe/silverstripe-cms/commit/4d0632892bf1c4bc56041881fccb9e0ff9c1d5db) Add warning state to revert action in CMS page history (Robbie Averill)
|
||
* 2017-10-26 [9d3277f3d](https://github.com/silverstripe/silverstripe-framework/commit/9d3277f3d3937845d893ce9a93863a63b99b4546) Fix forceWWW and forceSSL not working in _config.php (Damian Mooyman)
|
||
* 2017-10-26 [68c3279fd](https://github.com/silverstripe/silverstripe-framework/commit/68c3279fd9b342f9664146c0131d185ca17c340a) Ensure readonly tree dropdown is safely encoded (Damian Mooyman)
|
||
* 2017-10-25 [8725672ea](https://github.com/silverstripe/silverstripe-framework/commit/8725672eaec2a85bfb1e6af05c37ad0e8a6e1790) changelog anchors (Ingo Schommer)
|
||
* 2017-10-25 [da4989e8f](https://github.com/silverstripe/silverstripe-framework/commit/da4989e8f624247cb3618c1244d7c19055672a6c) Do not escape the readonly values since they get escaped when rendered (Robbie Averill)
|
||
* 2017-10-25 [d6c528b](https://github.com/silverstripe/silverstripe-installer/commit/d6c528b8bc433914cadb60ce4435c011c861fa59) test paths (Damian Mooyman)
|
||
* 2017-10-25 [2f82d0846](https://github.com/silverstripe/silverstripe-framework/commit/2f82d084600cabc51bbadd9ae8c63b755087a8f7) Fix env loading in installer (Damian Mooyman)
|
||
* 2017-10-24 [d56c75607](https://github.com/silverstripe/silverstripe-framework/commit/d56c75607429229867a4d8d5b14ad13617661754) ed changelog indentation (Ingo Schommer)
|
||
* 2017-10-20 [4caf34506](https://github.com/silverstripe/silverstripe-framework/commit/4caf34506af4725a0e8ddcbdda68d6d72366051e) switch to using the Convert class for decoding (Christopher Joe)
|
||
* 2017-10-19 [689c198f](https://github.com/silverstripe/silverstripe-cms/commit/689c198fbecefe7fb73e035184314bb0fa21af06) revert to this button after archiving (Christopher Joe)
|
||
* 2017-10-18 [bb9501797](https://github.com/silverstripe/silverstripe-framework/commit/bb9501797f9f96bd7a5dc702ea6c5c084c6f4fde) Use isolated scope when requiring files for module activation (Loz Calver)
|
||
* 2017-10-18 [dabdc905c](https://github.com/silverstripe/silverstripe-framework/commit/dabdc905ce849583b7818751db461c81832d5496) Fix enable email subclasses to use their respective templates (Christopher Joe)
|
||
* 2017-10-18 [0b3363d0a](https://github.com/silverstripe/silverstripe-framework/commit/0b3363d0a05bf45dfe20003b7ba7d67d39558574) Fix documentation for permissions (Christopher Joe)
|
||
* 2017-10-17 [77b26b36](https://github.com/silverstripe/silverstripe-cms/commit/77b26b36fdfc28538f8050e877b8a46ec0b00478) Fix page icons in vendor modules (Damian Mooyman)
|
||
* 2017-10-17 [884fdd61b](https://github.com/silverstripe/silverstripe-framework/commit/884fdd61b18d9669c7b45c2465eef0260d8377ad) Ensure sake works when called from any directory (Damian Mooyman)
|
||
* 2017-10-16 [199f8377](https://github.com/silverstripe/silverstripe-cms/commit/199f83775ce10a3f7dd3cecb993766a11b729fa1) standardise "cms-content-header" content with ModalAdmin layout (Christopher Joe)
|
||
* 2017-10-16 [b9cb1e69e](https://github.com/silverstripe/silverstripe-framework/commit/b9cb1e69e6f20fa17522aec68a137d79f075ae5d) Replace phpdotenv with thread-safe replacement (Damian Mooyman)
|
||
* 2017-10-16 [076d7d78c](https://github.com/silverstripe/silverstripe-framework/commit/076d7d78c652be7fc041bc67873110f3a5411743) cache the cacheKey in TreeDropdownField, so it doesn't need to query for it multiple times in the same request (Christopher Joe)
|
||
* 2017-10-12 [7ff707df7](https://github.com/silverstripe/silverstripe-framework/commit/7ff707df7388c5c8d62784d4cf87c98036958a53) Fixed issue on windows where the BASE_URL constant would get set wrong if the site was in a sub-folder of the web root (UndefinedOffset)
|
||
* 2017-10-12 [a930d7ae](https://github.com/silverstripe/silverstripe-cms/commit/a930d7ae2e9d9a1f59eea74960700958f0ae896b) Fix up markup and classes to work better with flexbox (Christopher Joe)
|
||
* 2017-10-12 [6fe1e2c5](https://github.com/silverstripe/silverstripe-reports/commit/6fe1e2c5b2d5300a478eaec1e3c959e77300a600) align heading properly (Christopher Joe)
|
||
* 2017-10-12 [5ccbabd36](https://github.com/silverstripe/silverstripe-framework/commit/5ccbabd36ca9072b008f0ae444982de57ce6eb19) Fix sake path lookup to find vendor framework (Damian Mooyman)
|
||
* 2017-10-10 [c8f95182](https://github.com/silverstripe/silverstripe-cms/commit/c8f95182cbd46d2a8c0cf3fb4bf2ba95c9f97d25) icon urls (Damian Mooyman)
|
||
* 2017-10-10 [6a55dcfc1](https://github.com/silverstripe/silverstripe-framework/commit/6a55dcfc16eacf3210fa8d630953d588433275d5) references to resource paths / urls (Damian Mooyman)
|
||
* 2017-10-09 [9d873db9](https://github.com/silverstripe/silverstripe-cms/commit/9d873db976751c5ea3fc8172dbbbd3b842c359ca) paths in Install_successfullyinstalled.ss (Damian Mooyman)
|
||
* 2017-10-09 [fd630a99b](https://github.com/silverstripe/silverstripe-framework/commit/fd630a99b0226f9581268627c07a96ab36be98c5) Fix decimal scaffolding (Damian Mooyman)
|
||
* 2017-10-09 [f34f7cb66](https://github.com/silverstripe/silverstripe-framework/commit/f34f7cb6689c3fd991fe325242f45ec1c06fb551) surname behat test (Christopher Joe)
|
||
* 2017-10-08 [6bc716d7c](https://github.com/silverstripe/silverstripe-framework/commit/6bc716d7c98e723aa4c72da305c2be39d104b17c) ed incorrect statement on ID generation (Sam Minnée)
|
||
* 2017-10-08 [89db5870b](https://github.com/silverstripe/silverstripe-framework/commit/89db5870bc71d08966e9ecb43cd493512b21e0d8) typo in docs (Christopher Joe)
|
||
* 2017-10-08 [504e762c6](https://github.com/silverstripe/silverstripe-framework/commit/504e762c6eab9746990f1fb08020530f310a9ff4) Fix missing property in requirements minificaction docs (Damian Mooyman)
|
||
* 2017-10-06 [bd874ca91](https://github.com/silverstripe/silverstripe-framework/commit/bd874ca91f84b75594c3dab2232d43134f715659) ed docs paths (fixes #7075) (Ingo Schommer)
|
||
* 2017-10-06 [578f3f208](https://github.com/silverstripe/silverstripe-framework/commit/578f3f208c82fd9789990fe2a986d40ea474f49c) behat test (Christopher Joe)
|
||
* 2017-10-05 [3bdc8c7e6](https://github.com/silverstripe/silverstripe-framework/commit/3bdc8c7e65c6f6ecb9992042a83043f65658cb0d) Trim whitespace off names in Injector (Robbie Averill)
|
||
* 2017-10-05 [e07658ef5](https://github.com/silverstripe/silverstripe-framework/commit/e07658ef50d737f60c3234222d17fe1a9a46659c) linting issues and fix doc (Christopher Joe)
|
||
* 2017-10-05 [a1a834192](https://github.com/silverstripe/silverstripe-framework/commit/a1a834192940c01144c310bae2fc663d59fdb954) refactor TreeMultiselectField to be clearable if nothing is selected (Christopher Joe)
|
||
* 2017-10-04 [ca60b94f](https://github.com/silverstripe/silverstripe-reports/commit/ca60b94f2e982a7b42a74c15c6aa3431c8f2f153) Fix vendor bootstrap path (Damian Mooyman)
|
||
* 2017-10-04 [924e2a714](https://github.com/silverstripe/silverstripe-framework/commit/924e2a714f0e85ff28b2a2e00e1e7a14ff4fb1c7) sake path relative to vendor (Ingo Schommer)
|
||
* 2017-10-04 [f6ce07dc8](https://github.com/silverstripe/silverstripe-framework/commit/f6ce07dc889897516ff07d72e7cf4df1de38ddfe) behat bootstrap path (Ingo Schommer)
|
||
* 2017-10-04 [1b6d0144c](https://github.com/silverstripe/silverstripe-framework/commit/1b6d0144c5f330c8bf1cc9a180152c80af6f0f6b) Fix resource mapping for TinyMCE (Damian Mooyman)
|
||
* 2017-10-03 [2fc3f80f](https://github.com/silverstripe/silverstripe-cms/commit/2fc3f80f1f48b322acaeed0522ca6ee1a94f1d25) tinymce issue (Damian Mooyman)
|
||
* 2017-10-03 [ab4044e2](https://github.com/silverstripe/silverstripe-siteconfig/commit/ab4044e23e91db6c6108fb00ab1d271d9745262c) CI config (Damian Mooyman)
|
||
* 2017-10-03 [f4a77649a](https://github.com/silverstripe/silverstripe-framework/commit/f4a77649a4a77e506ad4b5de91f32a66bf96f803) requirements tests (Damian Mooyman)
|
||
* 2017-10-03 [5ffe64f02](https://github.com/silverstripe/silverstripe-framework/commit/5ffe64f024ba2f9b15517af6a01d433136e3648e) tinymce plugins (Damian Mooyman)
|
||
* 2017-10-02 [e1b98d154](https://github.com/silverstripe/silverstripe-framework/commit/e1b98d154e672aacf137798f906ec43d4861567f) tinymce operation for resource paths (Ingo Schommer)
|
||
* 2017-10-02 [7de2e07](https://github.com/silverstripe/silverstripe-installer/commit/7de2e07139352c7d332945e9b9db5fc65a8a507e) main.php path in install.php (Ingo Schommer)
|
||
* 2017-10-02 [8e49b563a](https://github.com/silverstripe/silverstripe-framework/commit/8e49b563a9184e1fdb9578bc05d3d9d5580bd577) installer paths for vendorised module (Ingo Schommer)
|
||
* 2017-10-02 [e88f765](https://github.com/silverstripe/silverstripe-installer/commit/e88f7654da811df43be6fa6bd2070619d774f717) main.php path (Ingo Schommer)
|
||
* 2017-10-02 [85255891b](https://github.com/silverstripe/silverstripe-framework/commit/85255891be79588407bc750527bea6c83a79c5be) test environment type (Damian Mooyman)
|
||
* 2017-10-02 [a2f0a79b](https://github.com/silverstripe/silverstripe-cms/commit/a2f0a79b21ab99e5b821f824e7290eb11d5d0e9c) test environment type (Damian Mooyman)
|
||
* 2017-10-02 [26f7f0482](https://github.com/silverstripe/silverstripe-framework/commit/26f7f0482cfb87086e7c984e9583026985c0128b) typos in FilesystemCacheFactory (Christopher Joe)
|
||
* 2017-09-29 [e2750c03f](https://github.com/silverstripe/silverstripe-framework/commit/e2750c03fc5569f33395f33637d278bfea2dbcd1) Restore SS_USE_BASIC_AUTH env var (Damian Mooyman)
|
||
* 2017-09-27 [53b2fcd1e](https://github.com/silverstripe/silverstripe-framework/commit/53b2fcd1ea7efa7b7b4e6fcd91a397075f40a21b) amend TinyMCE combined generator's unit test to be more lenient with encoding (Christopher Joe)
|
||
* 2017-09-27 [51ac297c5](https://github.com/silverstripe/silverstripe-framework/commit/51ac297c599ade6a964c395f5f631f4f15ba3e5a) es to ratelimiter and new features (Daniel Hensby)
|
||
* 2017-09-27 [c7cbbb29f](https://github.com/silverstripe/silverstripe-framework/commit/c7cbbb29f4a06bc4edf1cee0cad3c4953c11d2b4) links on paginated lists when there are GET vars (Andrew O'Neil)
|
||
* 2017-09-27 [4dbd72720](https://github.com/silverstripe/silverstripe-framework/commit/4dbd72720629f4cda578ae2efc077382992ef03d) Config updates are now applied after middleware not before (Damian Mooyman)
|
||
* 2017-09-26 [33ae463e5](https://github.com/silverstripe/silverstripe-framework/commit/33ae463e5b982214fbb1871c04cbaa0ed68440a6) Class name in _t() call in installer and run text collector (Robbie Averill)
|
||
* 2017-09-25 [b8e5a2ce3](https://github.com/silverstripe/silverstripe-framework/commit/b8e5a2ce322eb1f0c7d54111a69a8fdf01dbf9bf) readonly PermissionCheckboxSetField (Mike Cochrane)
|
||
* 2017-09-21 [fe4688b93](https://github.com/silverstripe/silverstripe-framework/commit/fe4688b9325d60c92a7e51c6f1344794bb672c5f) gridfield button title alignment (Saophalkun Ponlu)
|
||
* 2017-09-20 [f1a12e15b](https://github.com/silverstripe/silverstripe-framework/commit/f1a12e15be6546ebe9a7c3deec17d5bd9e1d65a4) Fix sub-template lookup for includes (Damian Mooyman)
|
||
* 2017-09-20 [265f91060](https://github.com/silverstripe/silverstripe-framework/commit/265f91060c2a8da61cb3e3a0de3f2d867809bcda) phpcs error (Christopher Joe)
|
||
* 2017-09-19 [f5b97b18](https://github.com/silverstripe/silverstripe-siteconfig/commit/f5b97b18bbdceca88d12d95d6587437f9d98ac8a) Update translation default from "only these people" to "only these groups" to match CMS (Robbie Averill)
|
||
* 2017-09-19 [09b3a24f3](https://github.com/silverstripe/silverstripe-framework/commit/09b3a24f30ec7da01a081f6c6aaa7080ddf0248b) Detect, warn, and fix invalid SS_BASE_URL (Damian Mooyman)
|
||
* 2017-09-18 [cda78e2d](https://github.com/silverstripe/silverstripe-reports/commit/cda78e2d887de13bb6143fba47a4d6a6153af7df) add space below report filter form (Saophalkun Ponlu)
|
||
* 2017-09-15 [68128b46](https://github.com/silverstripe/silverstripe-cms/commit/68128b46c3b5945fd1875f79caa2709fd65912c4) toolbar title layou (Saophalkun Ponlu)
|
||
* 2017-09-15 [df957681](https://github.com/silverstripe/silverstripe-siteconfig/commit/df9576814e48e9d492cc069a183a4381c3fb4c27) toolbar title layout (Saophalkun Ponlu)
|
||
* 2017-09-15 [5351ba67](https://github.com/silverstripe/silverstripe-reports/commit/5351ba670f64dc1f426420a9d4b7115b6dedd34d) toolbar title layout (Saophalkun Ponlu)
|
||
* 2017-09-13 [919831365](https://github.com/silverstripe/silverstripe-framework/commit/919831365846995e42b89de3fbb0920371f36bf0) HTTP Headers are case insensitive (Daniel Hensby)
|
||
* 2017-09-13 [f8ef97c16](https://github.com/silverstripe/silverstripe-framework/commit/f8ef97c1672e72508a7db946fac06c01a299e54a) Fix import modal (Damian Mooyman)
|
||
* 2017-09-12 [1892a0207](https://github.com/silverstripe/silverstripe-framework/commit/1892a02076b9c1a4deb823577cd6ff869921ad70) Fix gridfield print styles (Damian Mooyman)
|
||
* 2017-09-12 [0aac4ddb](https://github.com/silverstripe/silverstripe-cms/commit/0aac4ddb7ecf0f17eda8add235017c10c9f57255) Default LoginForm generated from default_authenticator (Daniel Hensby)
|
||
* 2017-09-12 [e15373ba](https://github.com/silverstripe/silverstripe-cms/commit/e15373ba0edbd5d0812b1c2485da57a478b6a635) ed linting errors and tests (Christopher Joe)
|
||
* 2017-09-12 [6613826ed](https://github.com/silverstripe/silverstripe-framework/commit/6613826ed8022c6feb112524b7835ea2bee73d74) SSViewer::add_themes() to properly prepend (Andrew Aitken-Fincham)
|
||
* 2017-09-12 [2b2cdb4c](https://github.com/silverstripe/silverstripe-cms/commit/2b2cdb4c4418bdc61668fbf2e28d933c93809657) Fix yarn build (Damian Mooyman)
|
||
* 2017-09-12 [905c4e04d](https://github.com/silverstripe/silverstripe-framework/commit/905c4e04d55c1dabca47154e4ee0ac15eb28e896) Incorrect path for requirements file (Damian Mooyman)
|
||
* 2017-09-12 [12480633b](https://github.com/silverstripe/silverstripe-framework/commit/12480633bfc3976940aba1c708f662a015fddde6) grid field button styles (Saophalkun Ponlu)
|
||
* 2017-09-11 [4f3b4f76](https://github.com/silverstripe/silverstripe-cms/commit/4f3b4f762616677cf5c5ca13d2d826c6b1cd769a) Fine-tune button styles (Saophalkun Ponlu)
|
||
* 2017-09-11 [d18568c3](https://github.com/silverstripe/silverstripe-cms/commit/d18568c3951051a8fbf4624cd0b758d268efa58c) Ensure client config merging includes existing parent "form" attributes (Robbie Averill)
|
||
* 2017-09-07 [49fd3391](https://github.com/silverstripe/silverstripe-cms/commit/49fd3391fec06dbac72a92329e2eae454119c64c) Prevent icons CSS being included twice (Damian Mooyman)
|
||
* 2017-09-06 [2dde7771](https://github.com/silverstripe/silverstripe-cms/commit/2dde77713206f6709a5ffa6a5b758a3c1abd7a5f) Add styles for url segment field (Sacha Judd)
|
||
* 2017-09-06 [dc240ce7f](https://github.com/silverstripe/silverstripe-framework/commit/dc240ce7f32a398400df541d22d46ebc0d1e1eaa) use correct namespaces for middleware injection (Andrew Aitken-Fincham)
|
||
* 2017-09-05 [25380eb45](https://github.com/silverstripe/silverstripe-framework/commit/25380eb45406b417482a03b047a5f337b3c61cbb) permission check for admin role (Christopher Joe)
|
||
* 2017-09-05 [3669f30e](https://github.com/silverstripe/silverstripe-cms/commit/3669f30e4eae880e6219d16994992f02707d1e50) Fix race condition with change detection / loading animation (Damian Mooyman)
|
||
* 2017-09-05 [2f7f4e73d](https://github.com/silverstripe/silverstripe-framework/commit/2f7f4e73d9490c4fb524a03ef78506ed20a68011) toolbar button margin and spacing (Saophalkun Ponlu)
|
||
* 2017-09-04 [4b26ed6a](https://github.com/silverstripe/silverstripe-cms/commit/4b26ed6a838b3c20b75916aa667d9a83a13afc16) Prevent treeview loading repeatedly on each page edit form (Damian Mooyman)
|
||
* 2017-09-04 [afda58c51](https://github.com/silverstripe/silverstripe-framework/commit/afda58c515d8caeb90086618b99a437e9d2356ea) add schema to the "auto" parts request (Christopher Joe)
|
||
* 2017-09-01 [eaa0a2a4](https://github.com/silverstripe/silverstripe-cms/commit/eaa0a2a4cba9bfe037800fd339d666a133225241) Update unused button classes for url segment field (Sacha Judd)
|
||
* 2017-08-31 [acc58c2b6](https://github.com/silverstripe/silverstripe-framework/commit/acc58c2b689f334bf754b23af80a27976f55b216) incorrect $has_one documentation (Matt Peel)
|
||
* 2017-08-31 [806ffb934](https://github.com/silverstripe/silverstripe-framework/commit/806ffb934e32644ddefc0dfb470d76218bd39334) Ensure installer.php works nicely with .env files (Damian Mooyman)
|
||
* 2017-08-31 [1c321019](https://github.com/silverstripe/silverstripe-cms/commit/1c321019c46538b73c1364388e1b76abd52e1ede) icons in right click menu (Christopher Joe)
|
||
* 2017-08-30 [1273059b](https://github.com/silverstripe/silverstripe-cms/commit/1273059b4cf90e444f6352ed32e661b6c58716a6) campaign form validation errors (Damian Mooyman)
|
||
* 2017-08-28 [e4b506cbe](https://github.com/silverstripe/silverstripe-framework/commit/e4b506cbe724d0c690b588a7b5846dbff50af967) add combinedFiles to clear logic (Christopher Joe)
|
||
* 2017-08-25 [8c15e451c](https://github.com/silverstripe/silverstripe-framework/commit/8c15e451c61a5bb721ccc5bcbd61077b82846039) Removed unnecessary database_is_ready call. (Sam Minnee)
|
||
* 2017-08-24 [9350b4a4](https://github.com/silverstripe/silverstripe-cms/commit/9350b4a425ac4ab714eec322972aa44e1131e919) Fix inconsistent breadcrumbs in CMS section (Damian Mooyman)
|
||
* 2017-08-24 [d0fd96d4](https://github.com/silverstripe/silverstripe-cms/commit/d0fd96d4e69b7f34e332256d2ff9752d4988f566) Remove entry points to tree in search mode (Saophalkun Ponlu)
|
||
* 2017-08-24 [5a9131a11](https://github.com/silverstripe/silverstripe-framework/commit/5a9131a1165ce59b99b62a67fedceca28d381df9) Do not try and access sessions when they are not ready (Robbie Averill)
|
||
* 2017-08-24 [c4ff9df1b](https://github.com/silverstripe/silverstripe-framework/commit/c4ff9df1b0b5b837a1f6e57997403ab14a9f2743) Use correct bootstrap class or GridFieldDetailForm delete button (Robbie Averill)
|
||
* 2017-08-24 [6efb35fb](https://github.com/silverstripe/silverstripe-cms/commit/6efb35fbcfbfa42ae6c151475165e1ec7809425c) Fix “Show unpublished versions” (#1930) (Damian Mooyman)
|
||
* 2017-08-24 [80cf096a6](https://github.com/silverstripe/silverstripe-framework/commit/80cf096a6eb07d620c86eedc76906da7fbd496df) Prioritise SS_BASE_URL over flakey SCRIPT_FILENAME check (Damian Mooyman)
|
||
* 2017-08-23 [d03edb20](https://github.com/silverstripe/silverstripe-cms/commit/d03edb208e4f386a6f59e9c1865e32e0231e9d9f) Search in page edit should now redirect to (full) table view (Saophalkun Ponlu)
|
||
* 2017-08-23 [1b087221d](https://github.com/silverstripe/silverstripe-framework/commit/1b087221d221523c76755e5a684f5b408c306ef7) Fix BASE_URL on CLI (Damian Mooyman)
|
||
* 2017-08-22 [47fced888](https://github.com/silverstripe/silverstripe-framework/commit/47fced88806935a65fb281951f14bc053b49bd97) Capture errors after a reload token redirect to login url (Damian Mooyman)
|
||
* 2017-08-21 [fc2a60391](https://github.com/silverstripe/silverstripe-framework/commit/fc2a6039154d6691468b31453f74cb2cf9bc5cc3) Don’t construct extension_instances on objects that never use them (Damian Mooyman)
|
||
* 2017-08-21 [c50cd34df](https://github.com/silverstripe/silverstripe-framework/commit/c50cd34df67d81cf048515bf7f9e07f5cf77d3f4) Prevent repeated lookup of obj.dependencies by Injector (Sam Minnee)
|
||
* 2017-08-21 [249c7048d](https://github.com/silverstripe/silverstripe-framework/commit/249c7048d9d488fcc7082d2926fe1fe45435fd66) trim accept header parts (Christopher Joe)
|
||
* 2017-08-16 [ce5e15df6](https://github.com/silverstripe/silverstripe-framework/commit/ce5e15df6ea37ffc2c43476ecc2ddbb757343c68) Fix issue with multiple editors breaking plugins (Damian Mooyman)
|
||
* 2017-08-15 [02cd72074](https://github.com/silverstripe/silverstripe-framework/commit/02cd72074835a61ce9f81db217f8f73d6687e8dd) Remove deprecated assert() usage. (Sam Minnee)
|
||
* 2017-08-14 [0926b0451](https://github.com/silverstripe/silverstripe-framework/commit/0926b04512c3ab9fc667d66b60dd7e69847032df) Fix latent bug in DataObject (Sam Minnee)
|
||
* 2017-08-14 [d469a2dc](https://github.com/silverstripe/silverstripe-cms/commit/d469a2dc8832d821296bb40767958d8706488bd7) regressions from tinymce upgrade (#1923) (Damian Mooyman)
|
||
* 2017-08-08 [1a4a006d0](https://github.com/silverstripe/silverstripe-framework/commit/1a4a006d09e4397c3126fcf32c61692f90834b8a) PDOConnector ssl_cipher bug fixes #7258 (John)
|
||
* 2017-08-07 [5d5fac745](https://github.com/silverstripe/silverstripe-framework/commit/5d5fac7450bf6403ad25375ba60d8bc4cbd9938f) Throw exception when "value" is used to define indexes. Update docs. (Robbie Averill)
|
||
* 2017-08-07 [c164fcfe5](https://github.com/silverstripe/silverstripe-framework/commit/c164fcfe54dc7f170a617293a4502831ca101f09) reference to IE10 when it should be IE11 (Christopher Joe)
|
||
* 2017-08-07 [068156710](https://github.com/silverstripe/silverstripe-framework/commit/06815671023b0e86ff85dfa4513d62f5a37b69a3) Fix flushing on live mode (#7241) (Damian Mooyman)
|
||
* 2017-08-06 [f7bebdd8f](https://github.com/silverstripe/silverstripe-framework/commit/f7bebdd8f8ef17a5d3caca717f442cf4206a10cd) Fix install issue with IIS (Damian Mooyman)
|
||
* 2017-08-03 [b6a8e4588](https://github.com/silverstripe/silverstripe-framework/commit/b6a8e458882cd8f3d0a7a2e36ffbafc76ea04ffd) Ensure mocked controller has request assigned (Damian Mooyman)
|
||
* 2017-08-02 [e64acef53](https://github.com/silverstripe/silverstripe-framework/commit/e64acef53a68fae99978147cfbb2ea8ad33f37b1) Fix invalid i18n yaml (Damian Mooyman)
|
||
* 2017-08-02 [841801145](https://github.com/silverstripe/silverstripe-framework/commit/8418011456b12c1f2b5c39ba9f9b1a3ae637037e) linting issues (Damian Mooyman)
|
||
* 2017-08-01 [685320450](https://github.com/silverstripe/silverstripe-framework/commit/6853204504e869f525d24be32b66ab0d7e1e9883) Fix ajax loading wait for behat tests (Damian Mooyman)
|
||
* 2017-07-31 [424b1c0](https://github.com/silverstripe/silverstripe-installer/commit/424b1c04dd21bcf10d05378d08837dc54e24c251) Include .env.example and .editorconfig in git export (Sam Minnee)
|
||
* 2017-07-28 [53a0206b](https://github.com/silverstripe/silverstripe-cms/commit/53a0206b1d1216bde067435d0c58fb905a19fe51) check if parent context is SiteTree instance (Nic Horstmeier)
|
||
* 2017-07-28 [980d6b7ef](https://github.com/silverstripe/silverstripe-framework/commit/980d6b7ef77052bbf99158c072cfd36235c7aa8b) ?showqueries=inline failed on PDO databases (fixes #7199) (Loz Calver)
|
||
* 2017-07-28 [a85bc86fd](https://github.com/silverstripe/silverstripe-framework/commit/a85bc86fd320aaa3d3cfbcfb8546947d61dbcbc6) behat tree dropdown trigger (Damian Mooyman)
|
||
* 2017-07-27 [4e222fc18](https://github.com/silverstripe/silverstripe-framework/commit/4e222fc1896d864c000e547dc162f97614aaf34c) add function for selecting a value in the new tree dropdown in behat using react (Christopher Joe)
|
||
* 2017-07-27 [3ef9ca69d](https://github.com/silverstripe/silverstripe-framework/commit/3ef9ca69d1b4d284eabf94ff6044dea3fe7eb430) DBComposite doesn't allow arbitrary property assignment (Aaron Carlino)
|
||
* 2017-07-27 [47f24ce05](https://github.com/silverstripe/silverstripe-framework/commit/47f24ce05befd3b97686baafb0386bed22593be8) up test linting (Damian Mooyman)
|
||
* 2017-07-24 [980bf83](https://github.com/silverstripe/silverstripe-installer/commit/980bf834b7aee202becec2bbe0cdf854d723f9de) recipe plugin version constraint (Damian Mooyman)
|
||
* 2017-07-21 [d49a5f5a](https://github.com/silverstripe/silverstripe-cms/commit/d49a5f5af37819efc71d8eaf99174877ee82fbff) Yaml syntax (Daniel Hensby)
|
||
* 2017-07-21 [5bf9ccc23](https://github.com/silverstripe/silverstripe-framework/commit/5bf9ccc235cdce7155a6430ba074f1b425fc11b9) Deprecated yml syntax (Daniel Hensby)
|
||
* 2017-07-21 [2385b7385](https://github.com/silverstripe/silverstripe-framework/commit/2385b738550c8d9678c87cc09f2d40a4d8c078c4) fix config rules to match updated `Except` (Damian Mooyman)
|
||
* 2017-07-20 [db5f81d3](https://github.com/silverstripe/silverstripe-cms/commit/db5f81d39308fbb79acbd4189049360f60139596) behat tests (Saophalkun Ponlu)
|
||
* 2017-07-20 [cc6b4422](https://github.com/silverstripe/silverstripe-cms/commit/cc6b44223ec2e606ccc2fc19b60679c5e9862884) ContentController still using global $project; (Aaron Carlino)
|
||
* 2017-07-20 [6fd6a3894](https://github.com/silverstripe/silverstripe-framework/commit/6fd6a38949a7ac524defbc917e7ebcca86e10522) Fix unassigned nestedFrom (Damian Mooyman)
|
||
* 2017-07-19 [8aeec9208](https://github.com/silverstripe/silverstripe-framework/commit/8aeec92087d2815b71901652ff1b3c95ef12295f) FulltextSearchable DB engine not set correctly (Daniel Hensby)
|
||
* 2017-07-18 [fca3ba73](https://github.com/silverstripe/silverstripe-cms/commit/fca3ba73f52e2712b40538b015ebf250407edbd0) Pages search now defaults to list view (Saophalkun Ponlu)
|
||
* 2017-07-18 [ac388a559](https://github.com/silverstripe/silverstripe-framework/commit/ac388a5591bdf38adaa29aedad4e5845831cafd1) Exclude thirdparty dir from code coverage (Robbie Averill)
|
||
* 2017-07-18 [a5ca4ecb5](https://github.com/silverstripe/silverstripe-framework/commit/a5ca4ecb596cc5b0d7c706e849a864153854d60f) Log in as someone else returns user back to login screen (Robbie Averill)
|
||
* 2017-07-18 [fb6e6162](https://github.com/silverstripe/silverstripe-cms/commit/fb6e6162ca5f9991f536c14824e94339c0349a47) Use better inheritance based logic for deciding which active tab to display in edit page (Robbie Averill)
|
||
* 2017-07-17 [e8c77463](https://github.com/silverstripe/silverstripe-cms/commit/e8c77463c53e2329b1875c9c1cde9593538b047d) Use injection for CMSMain in tests (Robbie Averill)
|
||
* 2017-07-17 [ba9ad5527](https://github.com/silverstripe/silverstripe-framework/commit/ba9ad55274de9412f0a2112d1f57eda784615c2f) Base URL defaults to a slash in currentURL if not defined already (Robbie Averill)
|
||
* 2017-07-17 [da4e46e4d](https://github.com/silverstripe/silverstripe-framework/commit/da4e46e4de6142c463e7bf2c039b64f5ffe5e0da) Use merge and set instead of update for config calls (Robbie Averill)
|
||
* 2017-07-17 [c3cda42b](https://github.com/silverstripe/silverstripe-cms/commit/c3cda42b92729c448e81e0cb0f7fc9be00a6bc2a) Use merge or set instead of update for config calls (Robbie Averill)
|
||
* 2017-07-17 [ea4181166](https://github.com/silverstripe/silverstripe-framework/commit/ea4181166fa023e88c96c1311b972886a0636313) Ensure phpdbg calls are registered by SilverStripe core as a CLI call (Robbie Averill)
|
||
* 2017-07-16 [dd4d5740](https://github.com/silverstripe/silverstripe-cms/commit/dd4d5740b81ead5ece1042139799714ad831ff8f) Ensure tab states are reflected when switching on page edit screen (Robbie Averill)
|
||
* 2017-07-16 [85c79d4e](https://github.com/silverstripe/silverstripe-reports/commit/85c79d4e662706760bfa2c05e661d6194fcf420e) Re-enable code coverage runs with phpdbg (Robbie Averill)
|
||
* 2017-07-16 [8b12e97d7](https://github.com/silverstripe/silverstripe-framework/commit/8b12e97d7a6da351740ae4ec5db5b2372e255601) Enable code coverage builds with phpdbg and 7.1.7 (Robbie Averill)
|
||
* 2017-07-15 [1a38feff2](https://github.com/silverstripe/silverstripe-framework/commit/1a38feff2259c35f7a24af98d58bedaef8a59a80) Version provider uses early bound config getter, move LeftAndMain config to admin module (Robbie Averill)
|
||
* 2017-07-14 [844462108](https://github.com/silverstripe/silverstripe-framework/commit/844462108ec4398cf176b174f54986e842611dc3) diff reference (Damian Mooyman)
|
||
* 2017-07-13 [b726d64d1](https://github.com/silverstripe/silverstripe-framework/commit/b726d64d1d1516b4a22c173f924e08a1fb358f6d) SearchEngine to use quoted table names (martimiz)
|
||
* 2017-07-13 [b16896f22](https://github.com/silverstripe/silverstripe-framework/commit/b16896f22bc70457bf53d48ac71c30e40c2ad660) Ignore exceptions thrown when deleting test databases (Robbie Averill)
|
||
* 2017-07-13 [5fcd7d084](https://github.com/silverstripe/silverstripe-framework/commit/5fcd7d084fb6c4af92873af470ccf3032fbbf212) Fix registered shutdown function not handling responsibility for outputting redirection response (Damian Mooyman)
|
||
* 2017-07-13 [16b66440c](https://github.com/silverstripe/silverstripe-framework/commit/16b66440c22595ebd1db7e57af342b38ef2e84ef) Incorrect module delimiter (Aaron Carlino)
|
||
* 2017-07-13 [4898c0a4a](https://github.com/silverstripe/silverstripe-framework/commit/4898c0a4ad8402632748ebdbe388a3051501f316) Incorrect module delimited (Damian Mooyman)
|
||
* 2017-07-13 [3cf9910f](https://github.com/silverstripe/silverstripe-cms/commit/3cf9910fe4a4957c331e0c1ce86f48ea42c5d04c) Incorrect module delimited (Damian Mooyman)
|
||
* 2017-07-06 [85359ad59](https://github.com/silverstripe/silverstripe-framework/commit/85359ad59eedd6a5bc9a9b25aa702e4bc78d4817) Ensure that installer can create an initial admin account (Damian Mooyman)
|
||
* 2017-07-05 [55dc3724d](https://github.com/silverstripe/silverstripe-framework/commit/55dc3724dbfbf286dc2e04232afb71cbb87f6cb3) Invalid composer.json (Damian Mooyman)
|
||
* 2017-07-04 [c836a2e2d](https://github.com/silverstripe/silverstripe-framework/commit/c836a2e2d288d10e601a29003bcc30a9fb7a3d94) Module resource regex does not allow ports (Aaron Carlino)
|
||
* 2017-07-04 [f14e6bae2](https://github.com/silverstripe/silverstripe-framework/commit/f14e6bae2c353468f1e9f0dfb3e2af64b3061402) numeric field for null values (John Milmine)
|
||
* 2017-07-04 [4b2320583](https://github.com/silverstripe/silverstripe-framework/commit/4b23205838a8bb16d64a3e44a069731b235ca6ca) unnamespaced i18n keys (Damian Mooyman)
|
||
* 2017-07-03 [fdbd6015](https://github.com/silverstripe/silverstripe-reports/commit/fdbd6015d820a2c866051a3cbc5698eb94591ab8) dependencies (Damian Mooyman)
|
||
* 2017-07-03 [8bb325f3](https://github.com/silverstripe/silverstripe-cms/commit/8bb325f3cac0f14400d49811d94675c8bc640507) upgrade paths (Damian Mooyman)
|
||
* 2017-07-03 [63ba09276](https://github.com/silverstripe/silverstripe-framework/commit/63ba092765be08303ce6708bc5d20179de8038dc) Add namespaces in markdown docs (#7088) (Saophalkun Ponlu)
|
||
* 2017-07-03 [f65e3627d](https://github.com/silverstripe/silverstripe-framework/commit/f65e3627dcdab37073a4c136169f9840ae911654) Implement or exclude all pending upgrader deltas (Damian Mooyman)
|
||
* 2017-06-30 [363394769](https://github.com/silverstripe/silverstripe-framework/commit/3633947699e0a6130e21b94f001b01c8705982a4) Fix broken installer assets and session crash (Damian Mooyman)
|
||
* 2017-06-30 [99f9d4a2](https://github.com/silverstripe/silverstripe-cms/commit/99f9d4a2d3f9ef6f8eac477044c9eb21979263a7) assertions (Damian Mooyman)
|
||
* 2017-06-29 [0200e2b62](https://github.com/silverstripe/silverstripe-framework/commit/0200e2b62aee0366f513403477408fd7c9d43303) Fix travis artifacts paths (Damian Mooyman)
|
||
* 2017-06-29 [061393a09](https://github.com/silverstripe/silverstripe-framework/commit/061393a0980784d0b6e1e3eee9add906bd390f8f) enable ?flush rather than just ?flush=1 (Christopher Joe)
|
||
* 2017-06-29 [522af3f2](https://github.com/silverstripe/silverstripe-cms/commit/522af3f29db2cf6fa573aa4546ba66be4b97015e) Test updates to comply with https://github.com/silverstripe/silverstripe-framework/pull/7083 (Sam Minnee)
|
||
* 2017-06-29 [2c8790ca7](https://github.com/silverstripe/silverstripe-framework/commit/2c8790ca7d03461c682083cd651e6c2a2020b013) DataObject::get_one() misses return null, not false (Sam Minnee)
|
||
* 2017-06-28 [b2f3b218a](https://github.com/silverstripe/silverstripe-framework/commit/b2f3b218a330a343a2377d246db87d3a2f4fbb61) Fix incorrect $database autoinit (Damian Mooyman)
|
||
* 2017-06-28 [8078ee08f](https://github.com/silverstripe/silverstripe-framework/commit/8078ee08f2726677c52860ad154d1f3c1adf3208) Fix folder urls getting mtime querystring appended (Damian Mooyman)
|
||
* 2017-06-27 [b8750d9](https://github.com/silverstripe/silverstripe-installer/commit/b8750d9399112de32265463a808a0b27e226b2d1) Delete Page_Controller from SS4 compat branch (Robbie Averill)
|
||
* 2017-06-27 [af1654ed](https://github.com/silverstripe/silverstripe-cms/commit/af1654eda3dd9306a9828e5e5c7ac784a8ec47c6) Don’t click hidden button (Damian Mooyman)
|
||
* 2017-06-27 [ab0b3d8a](https://github.com/silverstripe/silverstripe-reports/commit/ab0b3d8a2f2d500513e7dd2e1be796119a3d99df) namespaces in docs (Saophalkun Ponlu)
|
||
* 2017-06-26 [b34519e7](https://github.com/silverstripe/silverstripe-cms/commit/b34519e7e8bdc29195cdff7a40e2594a1663a9ed) insert link modal to work with new injector API (#1860) (Chris Joe)
|
||
* 2017-06-25 [3c35d25a6](https://github.com/silverstripe/silverstripe-framework/commit/3c35d25a646d187c40878e40fbf558922e4dd9ae) Allow DB::setConfig() in _config.php (Sam Minnee)
|
||
* 2017-06-25 [67887febc](https://github.com/silverstripe/silverstripe-framework/commit/67887febc55a05e4c3613b3428d295b3e2eff5af) - session now uses request (Sam Minnee)
|
||
* 2017-06-23 [95a266c6b](https://github.com/silverstripe/silverstripe-framework/commit/95a266c6b97c82588a3342eebfac61fc23932891) Add tests for middleware (Sam Minnee)
|
||
* 2017-06-22 [ad347af7](https://github.com/silverstripe/silverstripe-cms/commit/ad347af76f825ca9fd8af2973db6502025068a64) linter (Ingo Schommer)
|
||
* 2017-06-22 [fa568e333](https://github.com/silverstripe/silverstripe-framework/commit/fa568e333e31f075fda57e4bb6da01bf7a19141f) ed linting errors (Ingo Schommer)
|
||
* 2017-06-22 [c2ad41ef](https://github.com/silverstripe/silverstripe-cms/commit/c2ad41ef1b13da2b29ed6d3b26aa7a092bfecd9c) Allow RedirectorPage to have non-redirected actions, move redirection to index (Robbie Averill)
|
||
* 2017-06-22 [8d23cfc2](https://github.com/silverstripe/silverstripe-cms/commit/8d23cfc2aaa2b57fa8687062ce546095a3a5e2a3) Ensure LoginForm on ContentController can load the member authenticator correctly (Robbie Averill)
|
||
* 2017-06-22 [12c2edc1d](https://github.com/silverstripe/silverstripe-framework/commit/12c2edc1d573452451f46c660704dde2e335afc0) DeprecationTest (Ingo Schommer)
|
||
* 2017-06-22 [ad54e7eb3](https://github.com/silverstripe/silverstripe-framework/commit/ad54e7eb30be0632c00c81feaa33b61f79f0327d) ImportButton not opening the modal (Will Rossiter)
|
||
* 2017-06-22 [fb09e0b65](https://github.com/silverstripe/silverstripe-framework/commit/fb09e0b65fe983397fa57046816e3d210f4930d9) merge error (Ingo Schommer)
|
||
* 2017-06-22 [e592bed3e](https://github.com/silverstripe/silverstripe-framework/commit/e592bed3e5287b766f646a0b9db226d1731f3b96) ed merge error (Ingo Schommer)
|
||
* 2017-06-21 [8cebb275](https://github.com/silverstripe/silverstripe-cms/commit/8cebb2758d5e49e22ebf780ecfd73264ec1026ce) behat issues (Damian Mooyman)
|
||
* 2017-06-21 [b05dbc91](https://github.com/silverstripe/silverstripe-siteconfig/commit/b05dbc91f0b23da3166f3cb23c4c435e918325ff) module tests (Damian Mooyman)
|
||
* 2017-06-21 [288de2eb1](https://github.com/silverstripe/silverstripe-framework/commit/288de2eb14f38effdd90428eaf9903b8ada83b68) Add flag on form whether to notify user when there's unsaved changes (Saophalkun Ponlu)
|
||
* 2017-06-21 [c2c75aa9](https://github.com/silverstripe/silverstripe-cms/commit/c2c75aa9e3a897bc810d348f29459cff891de8bf) and upgrade all tests (Damian Mooyman)
|
||
* 2017-06-21 [7a7e8003](https://github.com/silverstripe/silverstripe-siteconfig/commit/7a7e80030f9ca32afd1e79aacc6eea732e00487c) Use double escapes backslashes in translation string (Robbie Averill)
|
||
* 2017-06-15 [54879402c](https://github.com/silverstripe/silverstripe-framework/commit/54879402ce74e609f8f129a38ded715a2635ff87) Removed reserved / removed / invalid country codes (Damian Mooyman)
|
||
* 2017-06-15 [957d238ca](https://github.com/silverstripe/silverstripe-framework/commit/957d238caa1a3ee63bc3645e8c3868cfd65b2b34) Remove reference to removed method parseIndexSpec (Damian Mooyman)
|
||
* 2017-06-15 [fdbe38d4](https://github.com/silverstripe/silverstripe-cms/commit/fdbe38d44483d3b990e447efaa3d3407433fe04b) SS4 Right click, add page fails (Antony Thorpe)
|
||
* 2017-06-11 [0dcfa5fa9](https://github.com/silverstripe/silverstripe-framework/commit/0dcfa5fa9df60f159380d4ddb5471171518c951c) CMSSecurity doesn't have Authenticators assigned. (Damian Mooyman)
|
||
* 2017-06-10 [3fe837dad](https://github.com/silverstripe/silverstripe-framework/commit/3fe837dad7d887f52096ba1adb26102f3a16754c) for CMS Authenticator. Should only apply to CMSSecurity (Simon Erkelens)
|
||
* 2017-06-09 [10196e4f](https://github.com/silverstripe/silverstripe-cms/commit/10196e4f75f99b01752a625d62c4ad2e674a77ff) composer requirements (Christopher Joe)
|
||
* 2017-06-02 [d12c986dd](https://github.com/silverstripe/silverstripe-framework/commit/d12c986dd544877bb566bcdf4920e4df466d37e0) es printing from crashing (Christopher Joe)
|
||
* 2017-06-02 [e267d29b9](https://github.com/silverstripe/silverstripe-framework/commit/e267d29b9ad1ecb192e6b6c54ca674ff4e651cef) Consistent return values for first and last methods (Saophalkun Ponlu)
|
||
* 2017-05-30 [13ee3148d](https://github.com/silverstripe/silverstripe-framework/commit/13ee3148d95f88190df6dfbefa0bc24eabd45388) Bracket should implement TestOnly (Daniel Hensby)
|
||
* 2017-05-30 [3c7c6399](https://github.com/silverstripe/silverstripe-cms/commit/3c7c639901d8854b3dfa3c972308b4d59d4708ed) remove temp external entries (Christopher Joe)
|
||
* 2017-05-29 [acb74a857](https://github.com/silverstripe/silverstripe-framework/commit/acb74a8577dc02a1e25ac9572d4d3a7157732480) $class variable from being clobbered (Nick)
|
||
* 2017-05-29 [db59e51c4](https://github.com/silverstripe/silverstripe-framework/commit/db59e51c4a3342ec3a8ffa3f0070e64da436d172) es a bug with split file names during CSV import (Colin Tucker)
|
||
* 2017-05-25 [9c63a8c8c](https://github.com/silverstripe/silverstripe-framework/commit/9c63a8c8ce2910b7690c3cfb0ed70f95d8a1d205) Fix race conditions in DatetimeFieldTest (Damian Mooyman)
|
||
* 2017-05-24 [0cd40ca6e](https://github.com/silverstripe/silverstripe-framework/commit/0cd40ca6e50cecf582eda952d3a7a0a3788a5397) Fix minor accessors of legacy ->class property (Damian Mooyman)
|
||
* 2017-05-22 [09164e7e2](https://github.com/silverstripe/silverstripe-framework/commit/09164e7e2a32accd56ade5e1552fe839c55ebcb8) Better error checking for non-writable temp paths (Sam Minnee)
|
||
* 2017-05-22 [40d9bbfd6](https://github.com/silverstripe/silverstripe-framework/commit/40d9bbfd69dc5e6c83616d2dca3359a57a011f54) Don’t assume posix_getpwuid is available. (Sam Minnee)
|
||
* 2017-05-22 [f7e7fa584](https://github.com/silverstripe/silverstripe-framework/commit/f7e7fa5847beb995c43364971b042348d5df0108) linting issues (Damian Mooyman)
|
||
* 2017-05-19 [c034ead6](https://github.com/silverstripe/silverstripe-cms/commit/c034ead6df933665247539e8a9d8b36492859fa9) beforeUpdateCMSFields added to ErrorPage and VirtualPage (Franco Springveldt)
|
||
* 2017-05-19 [a29f4f88](https://github.com/silverstripe/silverstripe-siteconfig/commit/a29f4f88df92cbfaf5f8814d5c6e22d74caa1ffe) Remove legacy translation behaviour in template (Robbie Averill)
|
||
* 2017-05-19 [31578d477](https://github.com/silverstripe/silverstripe-framework/commit/31578d4771eec4b5f4ecb5d8e1103bb9b21adcd9) Parent treedropdownfield for an orphaned page is broken (Mike Cochrane)
|
||
* 2017-05-19 [fc036208](https://github.com/silverstripe/silverstripe-cms/commit/fc0362087e42d66d7d4a138c9fd52be0be0d9f50) Remove legacy sprintf style translations in favour of placeholders (Robbie Averill)
|
||
* 2017-05-17 [dddf88278](https://github.com/silverstripe/silverstripe-framework/commit/dddf88278c48eaa2e67442d1087fbed76fd4d69b) a typo in comment (Nick)
|
||
* 2017-05-17 [0534a5ec0](https://github.com/silverstripe/silverstripe-framework/commit/0534a5ec0c79ff4ee3412eaf58d476614763179e) TreeDowndropField copying (Christopher Joe)
|
||
* 2017-05-16 [eebae1f7](https://github.com/silverstripe/silverstripe-cms/commit/eebae1f76684f2dbcea9ce2ca8dd9c9229d0789c) Fix insert link behat command (Damian Mooyman)
|
||
* 2017-05-16 [7a7e8e5f9](https://github.com/silverstripe/silverstripe-framework/commit/7a7e8e5f94f68dd6e25a8880ea6257670efc4f12) Fix artifacts index.html download path (Damian Mooyman)
|
||
* 2017-05-16 [6c5e0f82](https://github.com/silverstripe/silverstripe-cms/commit/6c5e0f829a9b5771585fc076265d324ea2e721c7) Ensure logs are saved to artifacts (Damian Mooyman)
|
||
* 2017-05-16 [0b24e02d](https://github.com/silverstripe/silverstripe-cms/commit/0b24e02db462fbca2cb68ac88dbdcb35b46d1116) Fix missing path to travis-upload-artifacts.php (Damian Mooyman)
|
||
* 2017-05-16 [287ad35f0](https://github.com/silverstripe/silverstripe-framework/commit/287ad35f0dca7e1b53219b58b39eb4221abb0e78) change API to hasEmptyDefault() to be inline with SingleSelectField (Christopher Joe)
|
||
* 2017-05-15 [1ec7c4e52](https://github.com/silverstripe/silverstripe-framework/commit/1ec7c4e523f1f40dbdb9f8e865daf4a40bbf8fb2) lint error (Saophalkun Ponlu)
|
||
* 2017-05-15 [3927e7e24](https://github.com/silverstripe/silverstripe-framework/commit/3927e7e24868f7feba42669613161f7a456e48be) added cache key for TreeDropdownField cache (Christopher Joe)
|
||
* 2017-05-12 [6939841e4](https://github.com/silverstripe/silverstripe-framework/commit/6939841e47666080785b8513e20c5569358ce6ef) update ss template FormActions to be closer to React's implementation (Christopher Joe)
|
||
* 2017-05-12 [e2b7ca2e](https://github.com/silverstripe/silverstripe-cms/commit/e2b7ca2e796a56a5ac541820a768c23eee51ddf6) for save and publish buttons shrinking (Christopher Joe)
|
||
* 2017-05-12 [de079154](https://github.com/silverstripe/silverstripe-cms/commit/de079154f4e82ca0eaf4ddc42272a6e92e35db9e) Webpack dev config was overwriting plugins rather than concatenating (Aaron Carlino)
|
||
* 2017-05-11 [43a122cc3](https://github.com/silverstripe/silverstripe-framework/commit/43a122cc36a5d12f31758afc05e679bf39e842b7) for meta closing tags (Ralph Slooten)
|
||
* 2017-05-09 [4373bdb99](https://github.com/silverstripe/silverstripe-framework/commit/4373bdb991c9b2f57084e8c867b5bf5037940d6b) Prevent infinite loop (Mike Cochrane)
|
||
* 2017-05-09 [17ddfab87](https://github.com/silverstripe/silverstripe-framework/commit/17ddfab87749b13e3bac249ed39442cea5a79beb) Test form factories use the new interface (Christopher Joe)
|
||
* 2017-05-09 [f3b442e9](https://github.com/silverstripe/silverstripe-cms/commit/f3b442e9b4e52da63bdd527cd44a10bdedf38268) behat tests for insert link to work with react implementation (Christopher Joe)
|
||
* 2017-05-05 [11b8926c](https://github.com/silverstripe/silverstripe-cms/commit/11b8926c1a5956959e8d44be9d1293429fb63858) up - prefer-stable necessary to avoid armageddon (Sam Minnee)
|
||
* 2017-05-05 [6ddd7534](https://github.com/silverstripe/silverstripe-cms/commit/6ddd753471184299648ce299667b744759633b0e) up - fix behat.paths.base reference (Sam Minnee)
|
||
* 2017-05-04 [e2271d1b](https://github.com/silverstripe/silverstripe-cms/commit/e2271d1b0a2d4771b15b52d0dbd239cb01acb7ac) up - make behat work (Sam Minnee)
|
||
* 2017-05-04 [c1b3d87b](https://github.com/silverstripe/silverstripe-cms/commit/c1b3d87b58dd15301c589b34db50fb06ffc3ea5c) up - don't need to explicitly include testsession (Sam Minnee)
|
||
* 2017-05-04 [a05958b3e](https://github.com/silverstripe/silverstripe-framework/commit/a05958b3ea7511553f94527a28e6b7ce9b64a668) i18n test fixtures stricter for Symfony3 (Sam Minnee)
|
||
* 2017-05-04 [4332d2fa](https://github.com/silverstripe/silverstripe-reports/commit/4332d2fa8e8914aa999950d7699cfbd4d245e5c3) Drop php5.5, add php7.1, simplify build (Sam Minnee)
|
||
* 2017-05-04 [c58dc97d3](https://github.com/silverstripe/silverstripe-framework/commit/c58dc97d3927c41ab4681d2d148830eabca5a65d) optional $id param because of how methodSchema passes a parameter (Christopher Joe)
|
||
* 2017-05-04 [1f8de20ce](https://github.com/silverstripe/silverstripe-framework/commit/1f8de20ce755e75b3cd54fe2663e6630f6470f37) FormSchemaTest.php linting issues (Damian Mooyman)
|
||
* 2017-05-03 [0c52ea067](https://github.com/silverstripe/silverstripe-framework/commit/0c52ea067c65aa1f0d5064e1fadd5b81ff9ee659) Fix incorrect text collection of __CLASS__ following an Name::class constant (#6868) (Damian Mooyman)
|
||
* 2017-05-02 [8b9f41d4f](https://github.com/silverstripe/silverstripe-framework/commit/8b9f41d4f444b281aa86402c00e8babd68a035a3) Fix ApcuCache and MemCache namespace (Damian Mooyman)
|
||
* 2017-04-30 [8dd3f4ce1](https://github.com/silverstripe/silverstripe-framework/commit/8dd3f4ce1de9f014c617e6a20b331bb81979aff9) template localisation namespaces (#6852) (Damian Mooyman)
|
||
* 2017-04-29 [391901df8](https://github.com/silverstripe/silverstripe-framework/commit/391901df87b94c2727f4f5a291a258d94193d38c) quote outside the if statement. (Simon Erkelens)
|
||
* 2017-04-28 [9147fa44](https://github.com/silverstripe/silverstripe-cms/commit/9147fa44ba7d64351fe5781aa3c1134af4eae3e1) source file encoding (Damian Mooyman)
|
||
* 2017-04-28 [699d5d6a4](https://github.com/silverstripe/silverstripe-framework/commit/699d5d6a42a8485f35567a9abb7f630e82210699) i18nTextCollector handling of special string characters (Damian Mooyman)
|
||
* 2017-04-27 [daed727ac](https://github.com/silverstripe/silverstripe-framework/commit/daed727accb205c5a8fc46026c03539707aa2d2c) ed form schema validation (Ingo Schommer)
|
||
* 2017-04-27 [a2ee6a76a](https://github.com/silverstripe/silverstripe-framework/commit/a2ee6a76a0dfed5bb738852c932d04a91545614c) ed formschematest (Ingo Schommer)
|
||
* 2017-04-27 [3a372a1f4](https://github.com/silverstripe/silverstripe-framework/commit/3a372a1f41a9a1612beb83bd628282aba550391b) IntlLocales::validate when lang and region are the same e.g. de_DE (Robbie Averill)
|
||
* 2017-04-27 [c95c6c466](https://github.com/silverstripe/silverstripe-framework/commit/c95c6c466f70e48f9c53e37ce4c7ef6ff9f4b502) Regression from 3.x: allow $required_extensions to have arguments (Robbie Averill)
|
||
* 2017-04-27 [2ae8fde2d](https://github.com/silverstripe/silverstripe-framework/commit/2ae8fde2d352882fd90c7ea1a5ac7aac3405aab8) tests (Damian Mooyman)
|
||
* 2017-04-27 [cbe534c67](https://github.com/silverstripe/silverstripe-framework/commit/cbe534c67523bb5e0bdb019e353a1efa6c35b345) ed component capitalisation (Ingo Schommer)
|
||
* 2017-04-26 [1f74221c2](https://github.com/silverstripe/silverstripe-framework/commit/1f74221c2d603bf4010d954e6746865b759979ce) unit tests (Christopher Joe)
|
||
* 2017-04-26 [1ec2abe75](https://github.com/silverstripe/silverstripe-framework/commit/1ec2abe75f9f3541fa8866361e20a3d939249358) ed timezone and normalised ISO handling (Ingo Schommer)
|
||
* 2017-04-24 [4c772c80c](https://github.com/silverstripe/silverstripe-framework/commit/4c772c80c3bff06e46bcafdece10e63a03b2e61c) Show detailed errors on CLI for live environments (Sam Minnee)
|
||
* 2017-04-21 [cf2b0417](https://github.com/silverstripe/silverstripe-cms/commit/cf2b0417cb3d6fb5ad7c3fd6913b85f4eb488947) coding conventions (Ingo Schommer)
|
||
* 2017-04-21 [4b19987a](https://github.com/silverstripe/silverstripe-cms/commit/4b19987ad211fb1dc2eeff807dd76c52a4c97784) tweak visibility around the slideDown/slideUp animation (Christopher Joe)
|
||
* 2017-04-21 [3b69a471](https://github.com/silverstripe/silverstripe-cms/commit/3b69a4715843d9836285d624187a9c8588ea9c5e) Hidden listbox #1785 (Ishan Jayamanne)
|
||
* 2017-04-20 [19974fe1](https://github.com/silverstripe/silverstripe-reports/commit/19974fe1f2a94272dd6a16f3397d0e4222bcecf9) PHPDoc for Report::add_excluded_reports method. (Garion Herman)
|
||
* 2017-04-20 [0d5e84d0b](https://github.com/silverstripe/silverstripe-framework/commit/0d5e84d0b8a58bf35496fa8dde4216b64569a358) Add PHP extension requirements to composer. (Sam Minnee)
|
||
* 2017-04-20 [dba1f61f1](https://github.com/silverstripe/silverstripe-framework/commit/dba1f61f133f22cba1ecd1fe07f4838a61a1486d) tests related to date time (Saophalkun Ponlu)
|
||
* 2017-04-20 [403f4db14](https://github.com/silverstripe/silverstripe-framework/commit/403f4db14d2892d0af7c791e4bd6c64c60952a3e) change titles to return schema values in schema (Christopher Joe)
|
||
* 2017-04-19 [9d7eef7cf](https://github.com/silverstripe/silverstripe-framework/commit/9d7eef7cf3de62c5b1c50ee74b54c3ac521c3a2b) datetime field validation for the refactor (Saophalkun Ponlu)
|
||
* 2017-04-13 [8318e20c2](https://github.com/silverstripe/silverstripe-framework/commit/8318e20c25cf17ed5c48d1e3b409dd3715431eb8) close button placement (Christopher Joe)
|
||
* 2017-04-12 [8999f70ac](https://github.com/silverstripe/silverstripe-framework/commit/8999f70acc0fa9853c94786da8c3b5c713f8a359) ing broken search in SecurityAdmin Groups field (Sean Harvey)
|
||
* 2017-04-11 [03a2a907](https://github.com/silverstripe/silverstripe-cms/commit/03a2a907cea7d857a210c1b974df8d4fe61c2153) whitespace in templates causing double arrows (Damian Mooyman)
|
||
* 2017-04-11 [9cad8ba0](https://github.com/silverstripe/silverstripe-cms/commit/9cad8ba01b4e8ebfca229ad53a4e2853f2eb5598) ed linting (Ingo Schommer)
|
||
* 2017-04-11 [1ca51eb57](https://github.com/silverstripe/silverstripe-framework/commit/1ca51eb57a933964e9640c02697a78c068a8c462) Ensure that mysite test boostrap configuration is loaded after core and before the database connection (Robbie Averill)
|
||
* 2017-04-05 [f9f61cb](https://github.com/silverstripe/silverstripe-installer/commit/f9f61cbce286b8685ccd6f81a7d2a3c4a4478b2d) Fix cow release config (Damian Mooyman)
|
||
* 2017-04-05 [8cbdfa456](https://github.com/silverstripe/silverstripe-framework/commit/8cbdfa4561036a63e8b93fa7ddbd485188b40c3c) invalid json file (Damian Mooyman)
|
||
* 2017-04-05 [e12a2709](https://github.com/silverstripe/silverstripe-cms/commit/e12a2709d0dc92f684f5056d20f9bc0981736cb4) syntax error in selector (Christopher Joe)
|
||
* 2017-04-03 [e3fbd1dca](https://github.com/silverstripe/silverstripe-framework/commit/e3fbd1dcac3ab911542f82772bd39ee2d76851ff) ed coding conventions (Ingo Schommer)
|
||
* 2017-04-03 [e9693467b](https://github.com/silverstripe/silverstripe-framework/commit/e9693467bf341b66bfd45fe3fb633ef108eecced) ed tests (Ingo Schommer)
|
||
* 2017-04-03 [a70de91b3](https://github.com/silverstripe/silverstripe-framework/commit/a70de91b330cc87305327b038dcd1760faffcb76) DatetimeFieldTest (Ingo Schommer)
|
||
* 2017-04-03 [bb880a325](https://github.com/silverstripe/silverstripe-framework/commit/bb880a32576451e6b0b35b47961cc521f22ea338) Clarify PHP 5.6 support for 4.x (Sam Minnee)
|
||
* 2017-03-30 [3b89d704](https://github.com/silverstripe/silverstripe-siteconfig/commit/3b89d704f201849f92e49baa0ed95d0408ea7660) Fix test run, remove 5.5, add 7.1 (Sam Minnee)
|
||
* 2017-03-30 [227ba8dcc](https://github.com/silverstripe/silverstripe-framework/commit/227ba8dcc44e71a30f607d3e9e63bfe467ab4e50) illegal_extensions in unit tests not being removed (Mike Cochrane)
|
||
* 2017-03-29 [9cdcb339e](https://github.com/silverstripe/silverstripe-framework/commit/9cdcb339e952b6567acd2d34c143ce9c67594f7f) Fix test breakage in most recent change. (Sam Minnee)
|
||
* 2017-03-29 [b1b0c6af](https://github.com/silverstripe/silverstripe-cms/commit/b1b0c6af6316aa02ef1111fb9cf29da319f70c8c) Ensure all CMS forms include full ID / VersionID in path (Damian Mooyman)
|
||
* 2017-03-28 [538a5838](https://github.com/silverstripe/silverstripe-siteconfig/commit/538a58381f259831143d5425a81baa9d105972ab) Rename license file to match module standard. (Sam Minnee)
|
||
* 2017-03-28 [59a9ff84](https://github.com/silverstripe/silverstripe-reports/commit/59a9ff845915e4b6335b79ef2a1f8645df96ed17) Rename license file to match module standard. (Sam Minnee)
|
||
* 2017-03-28 [ae5b5a95](https://github.com/silverstripe/silverstripe-cms/commit/ae5b5a95ce26065bc9b310fb958656d22f71ccd8) Rename license file to match module standard. (Sam Minnee)
|
||
* 2017-03-28 [0828b03dc](https://github.com/silverstripe/silverstripe-framework/commit/0828b03dc627985d6892578f57d02dc4be5e087d) Add separate license file to match module standard. (Sam Minnee)
|
||
* 2017-03-28 [6396310](https://github.com/silverstripe/silverstripe-installer/commit/639631013fa03f208cd80ffcaa5d3c74d27d5e48) Split licence into separate file to match standard. (Sam Minnee)
|
||
* 2017-03-28 [ede549a6e](https://github.com/silverstripe/silverstripe-framework/commit/ede549a6edf8a1d10ae54eb75020b521b400d0cc) illegalExtensions are optional, requiredExtensions are mandatory with useful error messages. (Damian Mooyman)
|
||
* 2017-03-28 [bd14f6db9](https://github.com/silverstripe/silverstripe-framework/commit/bd14f6db9e574a6f57440e45ad7f327291b1a743) Update config API reference in FulltextSearchable and use namespaced imports for class names (Robbie Averill)
|
||
* 2017-03-28 [4a8bd1a07](https://github.com/silverstripe/silverstripe-framework/commit/4a8bd1a07d1cd260b25efb9f6394b10d4bfcddcf) Remove campaign related classes from upgrade map - moved to campaign-admin (Robbie Averill)
|
||
* 2017-03-28 [59a5eb430](https://github.com/silverstripe/silverstripe-framework/commit/59a5eb430844132da3116ced5d89007e6980b2e4) Don't mistake \ for _ in dev/build (Sam Minnee)
|
||
* 2017-03-24 [6b4a72dee](https://github.com/silverstripe/silverstripe-framework/commit/6b4a72dee83deed73c39d9b9edc52fd1babd42fe) ing deprecated PHPUnit APIs (Daniel Hensby)
|
||
* 2017-03-20 [e4c68bc2b](https://github.com/silverstripe/silverstripe-framework/commit/e4c68bc2bfd3ef24a9f4320ec61a9e5888a95da2) and test pluralisation usages (Damian Mooyman)
|
||
* 2017-03-16 [53b98284f](https://github.com/silverstripe/silverstripe-framework/commit/53b98284fe5f9ee9b3b4e013eef66d21c170cce5) Remove undefined var from installer (Daniel Hensby)
|
||
* 2017-03-16 [66b1c72d4](https://github.com/silverstripe/silverstripe-framework/commit/66b1c72d4adf64ce0a18c6f31651c107033abb93) dev CI builds (Damian Mooyman)
|
||
* 2017-03-16 [61e5b38](https://github.com/silverstripe/silverstripe-installer/commit/61e5b3836e3cc29057201491a9c4c0d3e10759cf) dev dependencies for root project (Damian Mooyman)
|
||
* 2017-03-14 [3ec5a5b03](https://github.com/silverstripe/silverstripe-framework/commit/3ec5a5b0359622719c2993db83623b62d0f0e133) ed upgrading path references (Ingo Schommer)
|
||
* 2017-03-13 [bd409bfd](https://github.com/silverstripe/silverstripe-cms/commit/bd409bfd3092189c5133b059f04074891d8726c1) Fix PHPUNIT_COVERAGE_TEST by moving to php 5 build (Damian Mooyman)
|
||
* 2017-03-10 [d3177ef94](https://github.com/silverstripe/silverstripe-framework/commit/d3177ef94c8f01fb07bd71e706631fa9515545bf) work-around for form property on formfields not working (Damian Mooyman)
|
||
* 2017-03-09 [cb955f08](https://github.com/silverstripe/silverstripe-cms/commit/cb955f08f7230939c38c1980de8810fe10e205a6) non_virtual_fields being ignored (Mike Cochrane)
|
||
* 2017-03-08 [09d7493a4](https://github.com/silverstripe/silverstripe-framework/commit/09d7493a4fec79df75acad2b3ad2f121e15405c6) webpack location for font files (Damian Mooyman)
|
||
* 2017-03-07 [9c9443602](https://github.com/silverstripe/silverstripe-framework/commit/9c9443602df8847c3926eb6e0bcc66373e54b9f3) Installer no longer causes recursion in yml config (Daniel Hensby)
|
||
* 2017-03-03 [263e747d0](https://github.com/silverstripe/silverstripe-framework/commit/263e747d071a6f11814a9be9ede890cc83c792e0) for APCu cache otherwise you get 'Cache key must be string, "boolean" given' (Lee Bradley)
|
||
* 2017-03-02 [abe967f23](https://github.com/silverstripe/silverstripe-framework/commit/abe967f23560094068eccea4ecab84605627cd98) /pass arguments directly (not in array) (Andrew Aitken-Fincham)
|
||
* 2017-03-02 [b6d9b34ce](https://github.com/silverstripe/silverstripe-framework/commit/b6d9b34ce4c00798295a9fe219f388da8a0198c2) Mark $instance as internal to prevent being saved to config (Damian Mooyman)
|
||
* 2017-02-28 [6ed98a3a9](https://github.com/silverstripe/silverstripe-framework/commit/6ed98a3a949ac99f17931e154557d9f7ee462fa9) Prevent obsolete class cache breaking autoload (Damian Mooyman)
|
||
* 2017-02-28 [dfe25c27](https://github.com/silverstripe/silverstripe-cms/commit/dfe25c27f0f2758e3533f5d382f1ea69573fd71f) Fix allowedChildren() and link tracking (Damian Mooyman)
|
||
* 2017-02-28 [ac685e4](https://github.com/silverstripe/silverstripe-installer/commit/ac685e4d38d0e970fa8729e2438dcfd76f9e7996) remove the wildcard After condition in config.yml (Christopher Joe)
|
||
* 2017-02-28 [2fafff08](https://github.com/silverstripe/silverstripe-cms/commit/2fafff084f425a7d47197f2fed72064cc424ee2e) history comparison fields will now show diff properly, rather than escaped html diff (Christopher Joe)
|
||
* 2017-02-27 [0c47bc3e](https://github.com/silverstripe/silverstripe-cms/commit/0c47bc3e62cee59ea7b6c86baa8b0d1ae3e33ddf) viewer and editor groups to only show when the last option is selected (Christopher Joe)
|
||
* 2017-02-27 [badf7d3a7](https://github.com/silverstripe/silverstripe-framework/commit/badf7d3a73af24696b4e3bf77fca33c2fdce297b) Add quotes to constants in YAML to ensure syntax validity (Robbie Averill)
|
||
* 2017-02-27 [45a7fbd38](https://github.com/silverstripe/silverstripe-framework/commit/45a7fbd387b033609b1cab36af0f5b5c925fcd27) Confirm delete actions in React GridFields (e.g. Campaign admin) (Robbie Averill)
|
||
* 2017-02-27 [e64e8d151](https://github.com/silverstripe/silverstripe-framework/commit/e64e8d151f2f50b4b665959e9ec588e7ed96208f) Remove duplicated tab "active" state in Security admin (Robbie Averill)
|
||
* 2017-02-27 [cbc5aca26](https://github.com/silverstripe/silverstripe-framework/commit/cbc5aca26a8740b850e54d5d8aa6a97ce9454c09) add fieldgroup specific flexbox styles to the inner fields (Christopher Joe)
|
||
* 2017-02-27 [ff47bc03d](https://github.com/silverstripe/silverstripe-framework/commit/ff47bc03d74a6b3a483467ac47163add13f55c02) Remove reference to $_SERVER within FakeController (Damian Mooyman)
|
||
* 2017-02-27 [695194546](https://github.com/silverstripe/silverstripe-framework/commit/695194546db8a55d78d9ea3bb37a5d102e9670fe) Ensure test fixture uses test module manifest (Damian Mooyman)
|
||
* 2017-02-26 [b7123abf2](https://github.com/silverstripe/silverstripe-framework/commit/b7123abf22121767ee2015dbc6d0d0c2e4bc4f56) prevent unsaved changes alert when clicking a save button (Christopher Joe)
|
||
* 2017-02-26 [423b1d4ee](https://github.com/silverstripe/silverstripe-framework/commit/423b1d4eee0334747176b9c1c7778f35248fbbf8) Fix modeladmin scrollable height cropping pagination (Damian Mooyman)
|
||
* 2017-02-26 [c9e2c249](https://github.com/silverstripe/silverstripe-reports/commit/c9e2c249c2f4fd31ac2f47a7dfa9df6370ba17c3) Allow pre-release versions of SS4. (Sam Minnee)
|
||
* 2017-02-26 [240c3638](https://github.com/silverstripe/silverstripe-siteconfig/commit/240c3638b334d95f9e7ca4fc208ecdda6ebc9d46) Allow pre-release versions of SS4. (Sam Minnee)
|
||
* 2017-02-26 [6befcee3](https://github.com/silverstripe/silverstripe-cms/commit/6befcee3c5be1a327700910968ab3ac104bc73b0) issue with CI installing non-dev dependencies (Damian Mooyman)
|
||
* 2017-02-26 [3983b4d1b](https://github.com/silverstripe/silverstripe-framework/commit/3983b4d1b13d39f2ed43465f98568cd070df0e49) cache used in ModuleManifest (Damian Mooyman)
|
||
* 2017-02-23 [8b5fcd333](https://github.com/silverstripe/silverstripe-framework/commit/8b5fcd3336f30e981a82c8b93f8de07429205fca) download file link works with the new TreeDropdown (Christopher Joe)
|
||
* 2017-02-21 [036119426](https://github.com/silverstripe/silverstripe-framework/commit/0361194267a5f2228f03224136e30f6daf481eff) es for issues introduced in 5e19d905 (Lee Bradley)
|
||
* 2017-02-17 [f6f19908d](https://github.com/silverstripe/silverstripe-framework/commit/f6f19908dea76cae453769f9d3636d81a0cd1805) for bug introduced in #5e19d905 (Lee Bradley)
|
||
* 2017-02-15 [a9f2e9e73](https://github.com/silverstripe/silverstripe-framework/commit/a9f2e9e73d168935f99695d82486cd9ad3e27842) ed DateFieldSeparated docs (Ingo Schommer)
|
||
* 2017-02-07 [b8a0944bd](https://github.com/silverstripe/silverstripe-framework/commit/b8a0944bda00e572e0e62369cabf9f9ab9be15ea) /load fields if lazy ones exists (Andrew Aitken-Fincham)
|
||
* 2017-02-04 [e307f067e](https://github.com/silverstripe/silverstripe-framework/commit/e307f067edfa741e1387eabc40da308a8b08614a) Replace deprecated %s placeholders in translations with named placeholders (Robbie Averill)
|
||
* 2017-02-02 [f63b741e4](https://github.com/silverstripe/silverstripe-framework/commit/f63b741e465fe39a80f0215405fe9ee5f4108b63) Improve DebugView’s display of non-header information. (Sam Minnee)
|
||
* 2017-01-30 [d8fe6d02](https://github.com/silverstripe/silverstripe-cms/commit/d8fe6d020ff8513dd4465cbd33f5478d8ed448e2) Remap redirector and virtual page class names during build (Robbie Averill)
|
||
* 2017-01-29 [232b218df](https://github.com/silverstripe/silverstripe-framework/commit/232b218dfbfa183c74e83491c360e6a8bd9677e6) Ensure that Zend_ classes can still be autoloaded (Robbie Averill)
|
||
* 2017-01-25 [7b26b4a1f](https://github.com/silverstripe/silverstripe-framework/commit/7b26b4a1f3e2c20df902893a87511fcbd1fd87be) Ensure that tests run with flush=1 clean Flushables (Damian Mooyman)
|
||
* 2017-01-25 [732b1f0a](https://github.com/silverstripe/silverstripe-cms/commit/732b1f0a5794506ca3f7993678aeb0082f2bb93f) Fix reference to Install_deleteinstallfiles (Damian Mooyman)
|
||
* 2017-01-24 [5d6c90361](https://github.com/silverstripe/silverstripe-framework/commit/5d6c90361c680f3d0e05bc1c06a31f0538465c18) Ensure root path of any local adapter is safely created and mapped from symlink (Damian Mooyman)
|
||
* 2017-01-24 [00de0989](https://github.com/silverstripe/silverstripe-cms/commit/00de0989f4fb8c2fbfa483baad067fbc59e89e64) Javascript .addAttr() doesn't exist (Mike Cochrane)
|
||
* 2017-01-23 [3c8a56f9](https://github.com/silverstripe/silverstripe-reports/commit/3c8a56f904d180e7a0b6ca7e9cd53d836c28dec0) Fix missing default on _t(‘GridField.Filter’) (Damian Mooyman)
|
||
* 2017-01-19 [5e19d905f](https://github.com/silverstripe/silverstripe-framework/commit/5e19d905f8e946a10a634ce1ed6d26c6f1e5f4ff) loading indicator position (fixes #6153) (Zac Pullar-Strecker)
|
||
* 2017-01-18 [b0512abf](https://github.com/silverstripe/silverstripe-cms/commit/b0512abfb63508d126bd3a5f3d566c58369f5bae) es load indicator position (fixes #1625) (Reid Hokai)
|
||
* 2017-01-17 [d192a4f86](https://github.com/silverstripe/silverstripe-framework/commit/d192a4f86fd4bc8e23e8492cff99d229776f7e3b) Fix root folder getFilename() returning incorrect path (#6510) (Damian Mooyman)
|
||
* 2017-01-16 [7ad02787e](https://github.com/silverstripe/silverstripe-framework/commit/7ad02787e8cc65d54c8bd117ed099974ae658ca1) Regression in CompositeField displaying fields in their holders (Robbie Averill)
|
||
* 2017-01-16 [09f967bf6](https://github.com/silverstripe/silverstripe-framework/commit/09f967bf67e04910435aebea2b697b5d20d9c306) Prevent type-loss of graphql variables by using JSON.stringify (Damian Mooyman)
|
||
* 2017-01-16 [96bd4edce](https://github.com/silverstripe/silverstripe-framework/commit/96bd4edce5157dbcedc47415d22b58e1d6e0424d) things not aligning well in the toolbar (Christopher Joe)
|
||
* 2017-01-13 [ccf349938](https://github.com/silverstripe/silverstripe-framework/commit/ccf3499380eccefe91791abc45f36d9b2a5740f0) fix: calling full method name to pass attributes (Neil Gladwin)
|
||
* 2017-01-13 [c707a9120](https://github.com/silverstripe/silverstripe-framework/commit/c707a9120637caeb79e501fa9676f5d4ed07b8d5) shift graphql to use post data due to php-5.6.10+ deprecation message (Christopher Joe)
|
||
* 2017-01-12 [30d125f14](https://github.com/silverstripe/silverstripe-framework/commit/30d125f144910817aaffdca1b8a561d322ae9c28) MySQLQuery::seek() failed to return a row (Loz Calver)
|
||
* 2017-01-12 [a4bc9f49d](https://github.com/silverstripe/silverstripe-framework/commit/a4bc9f49d10daf302be336da826cabb798a3bac1) Regression in using template_main to render the Security area (Robbie Averill)
|
||
* 2017-01-11 [54c2afd01](https://github.com/silverstripe/silverstripe-framework/commit/54c2afd0191b8598a76fd0500e0b9a5e0d1d846e) regression issues in campaigns (Christopher Joe)
|
||
* 2017-01-11 [2d1d2aea7](https://github.com/silverstripe/silverstripe-framework/commit/2d1d2aea796ff73457a6cf3331f3f255e899a0aa) Remap versioned ClassNames during build process (Robbie Averill)
|
||
* 2017-01-11 [773c848c](https://github.com/silverstripe/silverstripe-cms/commit/773c848c0f81e88f7156d609483386cf8fb1b39b) Separate PageController fixture into its own file (PSR-2 compat) (Robbie Averill)
|
||
* 2017-01-11 [6fc50cae5](https://github.com/silverstripe/silverstripe-framework/commit/6fc50cae5c2794e576392eec8c0a3b34a80d9af3) Refactor TestMailer to better be base class (Sam Minnee)
|
||
* 2017-01-11 [4e257435d](https://github.com/silverstripe/silverstripe-framework/commit/4e257435df513d587a524b352faf52bb3092925f) Shift react breadcrumbs to use flexbox for placement (Christopher Joe)
|
||
* 2017-01-10 [62eb0e614](https://github.com/silverstripe/silverstripe-framework/commit/62eb0e61422de7e59c335eed4c789587e225f13c) Rename template parser from .inc to .peg so PHP doesn't include it automatically (Robbie Averill)
|
||
* 2017-01-10 [ae2861d48](https://github.com/silverstripe/silverstripe-framework/commit/ae2861d487a905ca687f8cca61df66141fcbf4b3) Fix frameworkpath (Damian Mooyman)
|
||
* 2017-01-10 [4ea614f04](https://github.com/silverstripe/silverstripe-framework/commit/4ea614f04cc80b0b01039303e674ba8b9dac16f9) linting issues (Damian Mooyman)
|
||
* 2017-01-10 [63cb343cf](https://github.com/silverstripe/silverstripe-framework/commit/63cb343cf5e47829685622b32b1ed58e4c0809cb) Fix modal animations (Damian Mooyman)
|
||
* 2017-01-10 [8badad90d](https://github.com/silverstripe/silverstripe-framework/commit/8badad90df2177453f5e872ee476308611c49515) Make sure image backends implement method getImageResource (Daniel Hensby)
|
||
* 2017-01-10 [b62f9b60a](https://github.com/silverstripe/silverstripe-framework/commit/b62f9b60a02ae8823226101f6659eedb4926366d) Fix broken member / group import (Damian Mooyman)
|
||
* 2017-01-10 [9959ef63](https://github.com/silverstripe/silverstripe-cms/commit/9959ef63f276ca9cc4ed93c76a355baa21f2ae93) double-escaped ampersands in CMSMain_TreeView and CMSMain::LinkPageAdd (Colin Tucker)
|
||
* 2017-01-09 [87fbd5f78](https://github.com/silverstripe/silverstripe-framework/commit/87fbd5f7816ce0924edf544bd3d165d21888c88f) for v4: Admin returns "Too many pages" for subpages below top level (#6464) (Lee Bradley)
|
||
* 2017-01-09 [cdd86aaf5](https://github.com/silverstripe/silverstripe-framework/commit/cdd86aaf53caeb4717f351b3f1caecb8c261cc45) breadcrumbs search results text sometimes disappearing (Christopher Joe)
|
||
* 2017-01-05 [cf3a74ec](https://github.com/silverstripe/silverstripe-cms/commit/cf3a74ec571717252596449c3c31e7d9a31d0521) Remove deprecation tests, bump deprecation version to 5.0 (Robbie Averill)
|
||
* 2016-12-29 [6fb49224b](https://github.com/silverstripe/silverstripe-framework/commit/6fb49224b979f33a5b74c79d83fd918e4dfa6e33) SSViewer should resolve templates with or without underscores (Robbie Averill)
|
||
* 2016-12-29 [d41ebbaaf](https://github.com/silverstripe/silverstripe-framework/commit/d41ebbaaff405c6b970e1b43bd00102c7462f9f9) Correct namespaes for test classes in upgrade.yml (Robbie Averill)
|
||
* 2016-12-29 [6f4162ed7](https://github.com/silverstripe/silverstripe-framework/commit/6f4162ed74f6e7e07242a1b378d9f1142a93097b) PHP 7.x should use random_bytes for entropy ahead of deprecated mcrypt lib (Robbie Averill)
|
||
* 2016-12-29 [7448622a1](https://github.com/silverstripe/silverstripe-framework/commit/7448622a1a19889a34864b2d6fcf91c46f957302) Replace ini casting to int with explicit split and cast for PHP 7.1. Add tests. (Robbie Averill)
|
||
* 2016-12-28 [fc45e9e0](https://github.com/silverstripe/silverstripe-cms/commit/fc45e9e0abcf72b5e1204663533825c1ef38e80e) ing tests (Daniel Hensby)
|
||
* 2016-12-23 [947c1fe1](https://github.com/silverstripe/silverstripe-cms/commit/947c1fe156d0c8646bd7bc9735020986cfd59767) broken unit test (Christopher Joe)
|
||
* 2016-12-23 [8118448a9](https://github.com/silverstripe/silverstripe-framework/commit/8118448a9c12578f3f940da4daae56f53f678112) PHP linting issues (Christopher Joe)
|
||
* 2016-12-20 [2d5aa7ce0](https://github.com/silverstripe/silverstripe-framework/commit/2d5aa7ce0e4b4344172901d6990ca75156f83ed2) Campaign List toggle (Fixes #6067) (Will Rossiter)
|
||
* 2016-12-20 [7c76d2cb0](https://github.com/silverstripe/silverstripe-framework/commit/7c76d2cb09bf4135f89cd284076ae1742b7d79d3) show formatting help not appearing (#6423) (Will Rossiter)
|
||
* 2016-12-19 [8ad030bab](https://github.com/silverstripe/silverstripe-framework/commit/8ad030baba0ce7c13bf09dfba31907bd7599cd98) Make GridField filter button selector more specific (Robbie Averill)
|
||
* 2016-12-19 [fae005554](https://github.com/silverstripe/silverstripe-framework/commit/fae0055544d524c8d3ca32f7f892c15205bd235a) Fix missing TRAVIS_NODE_VERSION (#6419) (Damian Mooyman)
|
||
* 2016-12-16 [eb0a27406](https://github.com/silverstripe/silverstripe-framework/commit/eb0a27406998cb8b5af988cf5f0ccd1fb84d8ba5) Update links to docs.ss for default template (Robbie Averill)
|
||
* 2016-12-09 [fcf1eedee](https://github.com/silverstripe/silverstripe-framework/commit/fcf1eedee475ae9dfca80cfeb7937692f3828806) getting fileSize shouldn't give a "NaN" (Christopher Joe)
|
||
* 2016-12-04 [fdb1bed0](https://github.com/silverstripe/silverstripe-siteconfig/commit/fdb1bed018e1eac792cb26aefb8f55a06200edff) Fix crash when installed with framework-only (Damian Mooyman)
|
||
* 2016-11-13 [00c9c2c77](https://github.com/silverstripe/silverstripe-framework/commit/00c9c2c775aa1041f2ba3756c2a8220e14cc942c) Fix DataObject::dbObject assigning incorrect table to DBField instance (Damian Mooyman)
|
||
* 2016-11-13 [22cb3d0d7](https://github.com/silverstripe/silverstripe-framework/commit/22cb3d0d74feae7f3470e469a8e0a54d79b2776e) various ORM test issues (Damian Mooyman)
|
||
* 2016-11-10 [804ff7c2](https://github.com/silverstripe/silverstripe-reports/commit/804ff7c247b69bf590a4f2e6c38acc5aa1e84e8f) Fixing test errors (Daniel Hensby)
|
||
* 2016-11-08 [9dbb5c0a1](https://github.com/silverstripe/silverstripe-framework/commit/9dbb5c0a1a2199fe1bcc0650db1eeecbe9bf97d8) safari tabs active border (Paul Clarke)
|
||
* 2016-11-07 [aca9deed2](https://github.com/silverstripe/silverstripe-framework/commit/aca9deed23295472445b5c9b5a94ac866408aebb) for safari scroll in campaign area (Paul Clarke)
|
||
* 2016-11-07 [962519c6](https://github.com/silverstripe/silverstripe-cms/commit/962519c6a715e71c9d08a7f9d5280232bba4adce) for safari height in main container – shows action bar (Paul Clarke)
|
||
* 2016-11-04 [f18ef75c3](https://github.com/silverstripe/silverstripe-framework/commit/f18ef75c3dbc843ad13e2769663eedb7d0f2593f) Fixed crash when BASE_PATH is set by assuming the location of Constants.php (UndefinedOffset)
|
||
* 2016-11-04 [8bd5349e](https://github.com/silverstripe/silverstripe-cms/commit/8bd5349e4204540431471eda07be10b35105c3e2) Fixed issue on windows where the CMS_DIR constant would be set containing a backslash causing a crash in the cms (UndefinedOffset)
|
||
* 2016-11-04 [c5fb7127](https://github.com/silverstripe/silverstripe-cms/commit/c5fb7127ac7a0d1705ea850661f2b51476317a35) Page History 'Comparing versions' banner missing (Mike Cochrane)
|
||
* 2016-11-03 [cc451d9ca](https://github.com/silverstripe/silverstripe-framework/commit/cc451d9ca43fc47e077ba45fdcb6c9f7cc223662) Fix crash when re-ordering pages (#6281) (Damian Mooyman)
|
||
* 2016-11-03 [eefecc21f](https://github.com/silverstripe/silverstripe-framework/commit/eefecc21fc79a383c9b354cc5cb46e114810d4ff) Fix incorrect include paths in tests and railsyml (#6279) (Damian Mooyman)
|
||
* 2016-11-02 [4ee78fc29](https://github.com/silverstripe/silverstripe-framework/commit/4ee78fc29d93793bbe3d16f7aeea602d7394809c) Restore travis artifacts (#6277) (Damian Mooyman)
|
||
* 2016-11-02 [3449d5df0](https://github.com/silverstripe/silverstripe-framework/commit/3449d5df0f4dcfce785e6ee070252eed652445e1) Fix broken promise handling (Damian Mooyman)
|
||
* 2016-11-02 [0901de299](https://github.com/silverstripe/silverstripe-framework/commit/0901de2995686a315a279969d85e1743763b708e) Fix php schema generation (Christopher Joe)
|
||
* 2016-11-02 [019e99dd4](https://github.com/silverstripe/silverstripe-framework/commit/019e99dd4dbcf957b457db8385b47d8a2a7562c5) Fix regressions from src folder creation (#6272) (Damian Mooyman)
|
||
* 2016-11-01 [51a9fdf](https://github.com/silverstripe/silverstripe-installer/commit/51a9fdf5d1e3e41974e31b9a40716912f8161edc) Fix test listener path (Damian Mooyman)
|
||
* 2016-11-01 [6da36a9ed](https://github.com/silverstripe/silverstripe-framework/commit/6da36a9ed102080a3b6957b86f7554492b5a6129) some issues with tests (Damian Mooyman)
|
||
* 2016-11-01 [c0c219e17](https://github.com/silverstripe/silverstripe-framework/commit/c0c219e178c13b2a6978656995014ead759403ca) invalid files_path (Damian Mooyman)
|
||
* 2016-11-01 [38fdafb47](https://github.com/silverstripe/silverstripe-framework/commit/38fdafb474e8204077849e83267ee3308b701afe) tinymce breaking in non-typical install location (Damian Mooyman)
|
||
* 2016-10-31 [81087ce15](https://github.com/silverstripe/silverstripe-framework/commit/81087ce15c6c6c94d482903820b63cdc1e7c397c) restore CMS build as required in framework tests (Damian Mooyman)
|
||
* 2016-10-30 [4cc6cc315](https://github.com/silverstripe/silverstripe-framework/commit/4cc6cc3151973ec77082df8864dc7178b17a7d47) position of back button on empty preview within campaigns (Paul Clarke)
|
||
* 2016-10-30 [17ef686f](https://github.com/silverstripe/silverstripe-cms/commit/17ef686f61bc6bc48941b4ba108c897180131fc8) for History versions extending outside collapsed panel (Paul Clarke)
|
||
* 2016-10-28 [bb2cb3d48](https://github.com/silverstripe/silverstripe-framework/commit/bb2cb3d487643a671efde3ed2b5d1f7e7cdc5dcc) webpack css config, removes duplicate css files that were generated (Christopher Joe)
|
||
* 2016-10-28 [7d18cda7](https://github.com/silverstripe/silverstripe-cms/commit/7d18cda7eed7d94f46f3a24e3066d589d6423b85) Test fixes needed for the new simplified test run structure. (Sam Minnee)
|
||
* 2016-10-28 [eef14c1a](https://github.com/silverstripe/silverstripe-cms/commit/eef14c1afc52af0db740e11342985fb9adaf4b96) Fix behat tests. (Sam Minnee)
|
||
* 2016-10-28 [a5d3dccd3](https://github.com/silverstripe/silverstripe-framework/commit/a5d3dccd37d7bb69ae6535112e04c5ecc35b59a2) for preview being under toolbar (Paul Clarke)
|
||
* 2016-10-28 [d7ed308e1](https://github.com/silverstripe/silverstripe-framework/commit/d7ed308e17192b9df0ed250ade63a19dcc97d7b7) Fix minor html encoding issue in SecurityAdmin (#6240) (Damian Mooyman)
|
||
* 2016-10-28 [1df533298](https://github.com/silverstripe/silverstripe-framework/commit/1df533298d17a48689f6280727a6d251046caa35) abstract HTMLEditorConfig instantiates (#6244) (Michael Strong)
|
||
* 2016-10-27 [d0619c1f](https://github.com/silverstripe/silverstripe-cms/commit/d0619c1f0f97253770b53d3e749855ab912c4f75) for double scroll in history area (Paul Clarke)
|
||
* 2016-10-27 [e386c6a15](https://github.com/silverstripe/silverstripe-framework/commit/e386c6a1534f1184bbf9480e67294eb910a1fa5c) Refactor bootstrap.php to allow for code sharing with cms bootstrap (Damian Mooyman)
|
||
* 2016-10-27 [c4d748cb](https://github.com/silverstripe/silverstripe-cms/commit/c4d748cb7d7cfdc89abeab59514c968b32f3e3c3) Fix firefox compatibility (Damian Mooyman)
|
||
* 2016-10-26 [02bac8c4b](https://github.com/silverstripe/silverstripe-framework/commit/02bac8c4bc591329e4a3b2451e8bc3f985423454) Fix missing loading overlay (Damian Mooyman)
|
||
* 2016-10-26 [42096bb41](https://github.com/silverstripe/silverstripe-framework/commit/42096bb41b6a634a03772c2f280ffbf84d11e1f4) Prevent pagination wrapping (Damian Mooyman)
|
||
* 2016-10-26 [f7fd4ffae](https://github.com/silverstripe/silverstripe-framework/commit/f7fd4ffae14eb1e8417e61f0920d78d08ecb5683) Fix incorrect change detection on checkbox fields (Damian Mooyman)
|
||
* 2016-10-26 [4bf4fca4](https://github.com/silverstripe/silverstripe-cms/commit/4bf4fca416b1aedbc41c7fac6f37e673473b2021) Prevent archived pages from having add to campaign action (Damian Mooyman)
|
||
* 2016-10-26 [040ae2e6a](https://github.com/silverstripe/silverstripe-framework/commit/040ae2e6a30f30c5277a9d572ee50ce7e5b53cbb) Fix clicking "No items found" from causing ajax error (Damian Mooyman)
|
||
* 2016-10-26 [513c7aebc](https://github.com/silverstripe/silverstripe-framework/commit/513c7aebc79b3406c21e6741bcb4408077a9f8ac) HtmlEditorField.js indentation (Damian Mooyman)
|
||
* 2016-10-26 [015411307](https://github.com/silverstripe/silverstripe-framework/commit/015411307d7e9a6479914cfb8832da558188c4af) Require php7 support. (Sam Minnee)
|
||
* 2016-10-26 [424008cf](https://github.com/silverstripe/silverstripe-cms/commit/424008cff47ab35b00f7b9850a5f381540b29836) Fix installer for 4.0 (#1644) (Damian Mooyman)
|
||
* 2016-10-26 [c80417a94](https://github.com/silverstripe/silverstripe-framework/commit/c80417a949c7f2821ab4ce1f76ccbc5b6649fcaf) Fix ViewableData::__isset() for getXXX() getters. (Sam Minnee)
|
||
* 2016-10-26 [7b44fc7bc](https://github.com/silverstripe/silverstripe-framework/commit/7b44fc7bce54fc6dca9161dda7d3def25a1be23e) Fix SSViewerTest in PHP7 (Sam Minnee)
|
||
* 2016-10-26 [e5550dd6](https://github.com/silverstripe/silverstripe-cms/commit/e5550dd68022641b3e50edfd18f7b91ae751ec9e) Fix search not respecting view mode (Damian Mooyman)
|
||
* 2016-10-26 [a0d31e86d](https://github.com/silverstripe/silverstripe-framework/commit/a0d31e86d6427bfa7acf3863c3cbcf1d98ba78f2) helperPath in _register_database.php (David Alexander)
|
||
* 2016-10-25 [75b18509](https://github.com/silverstripe/silverstripe-cms/commit/75b185092e86b80bf6751f6f769368c1f89f6c90) Remove reference to Object class. (#1634) (Sam Minnée)
|
||
* 2016-10-24 [d946a3b2](https://github.com/silverstripe/silverstripe-cms/commit/d946a3b240f99b856cc4a14eeecbaa3c5fd2f01e) Allow CMS_DIR at the root. (Sam Minnee)
|
||
* 2016-10-24 [e83f3962a](https://github.com/silverstripe/silverstripe-framework/commit/e83f3962a1c6d3f16cb66f70187f8297059a316f) Prevent intermittent "Element is not currently visible and so may not be interacted with" (Damian Mooyman)
|
||
* 2016-10-17 [84c0df3db](https://github.com/silverstripe/silverstripe-framework/commit/84c0df3db0578ea726314733c3b91ae0080f98d8) double forward slash link in campaign admin (Christopher Joe)
|
||
* 2016-10-13 [0ebde90dd](https://github.com/silverstripe/silverstripe-framework/commit/0ebde90dd040c77eea2adddc231f79a58bf631f5) flexbox 'fill-height' overflowing container (Loz Calver)
|
||
* 2016-10-12 [5df58057](https://github.com/silverstripe/silverstripe-cms/commit/5df580578a064d3955baf53681d7149563ff147c) double nested alert message (Christopher Joe)
|
||
* 2016-10-11 [72fd3b949](https://github.com/silverstripe/silverstripe-framework/commit/72fd3b949e447fccf3bc817b1ae655c1b134e671) linting issues (Damian Mooyman)
|
||
* 2016-10-11 [5a5d62fa2](https://github.com/silverstripe/silverstripe-framework/commit/5a5d62fa272823cb164a98fd85e2ef8905648e6e) profile layout (Christopher Joe)
|
||
* 2016-10-11 [20cee7358](https://github.com/silverstripe/silverstripe-framework/commit/20cee735832060e192cf7d0c328d0241a91fdb7f) pages background (Damian Mooyman)
|
||
* 2016-10-11 [7b36df286](https://github.com/silverstripe/silverstripe-framework/commit/7b36df286ec395f07fef45c490516c31e33fb9b0) split mode disappearing as an option (Christopher Joe)
|
||
* 2016-10-11 [26e0ff806](https://github.com/silverstripe/silverstripe-framework/commit/26e0ff806618fbf5ce387511284701c591d378bc) Fix installer for 4.0 (Damian Mooyman)
|
||
* 2016-10-10 [712849c7](https://github.com/silverstripe/silverstripe-cms/commit/712849c732d3e0998a35f492c73eaf8137630b20) page form layout (Christopher Joe)
|
||
* 2016-10-09 [7acb3b5fc](https://github.com/silverstripe/silverstripe-framework/commit/7acb3b5fc25b1e9e6a9e4c7d66ce4eb0bcd005d4) selected view mode not reflected on button (Christopher Joe)
|
||
* 2016-10-07 [89150c48e](https://github.com/silverstripe/silverstripe-framework/commit/89150c48e7d111278ac2286efb33bfb01e2d9cc3) preview in pages section (Christopher Joe)
|
||
* 2016-10-06 [21dc23868](https://github.com/silverstripe/silverstripe-framework/commit/21dc238685537b9ce05d7791587f90ce59f54ef4) ed classes that weren't matching icon (Christopher Joe)
|
||
* 2016-10-02 [ebbb0258d](https://github.com/silverstripe/silverstripe-framework/commit/ebbb0258ddf544d50132c87385823f9837d88b73) linting issue (Damian Mooyman)
|
||
* 2016-09-30 [963445e74](https://github.com/silverstripe/silverstripe-framework/commit/963445e74373e33d22a5864f36aa456c4d0e47b7) tab link on top panel changes even when "cancel to browse" was selected (Christopher Joe)
|
||
* 2016-09-30 [dd7d1d26a](https://github.com/silverstripe/silverstripe-framework/commit/dd7d1d26af073a39f91543995b0ab0b9c15d15d5) Prevent missing records crashing ChangeSetItem (Damian Mooyman)
|
||
* 2016-09-29 [30d161625](https://github.com/silverstripe/silverstripe-framework/commit/30d161625ffeb3c29310db4a62e1de55b6fef3b1) unmock qs module, Backend-test refactored to not time out on error (Christopher Joe)
|
||
* 2016-09-27 [fe0ca63c](https://github.com/silverstripe/silverstripe-reports/commit/fe0ca63c7a7bed3977ef89733f9da9ebff457409) Remove referencies to Object::$class (Sam Minnee)
|
||
* 2016-09-27 [11888a00](https://github.com/silverstripe/silverstripe-cms/commit/11888a006ad9a978dea0cf7083dcac1886263a24) Remove references to Object::$class (Sam Minnee)
|
||
* 2016-09-26 [ad79b5c88](https://github.com/silverstripe/silverstripe-framework/commit/ad79b5c88c6919b70d422b6dec6e91eab52db97c) ing bad folder caseing (Daniel Hensby)
|
||
* 2016-09-26 [ce91c3820](https://github.com/silverstripe/silverstripe-framework/commit/ce91c3820e090da11b9ca79157a437929cc78816) IX: Fix regression causing the admin to crash on windows due to FRAMEWORK_DIR being prefixed by a backslash (UndefinedOffset)
|
||
* 2016-09-26 [9cb33ea5b](https://github.com/silverstripe/silverstripe-framework/commit/9cb33ea5bfd7cdc7befe59eb21bc324961b6f93f) ed @covers namespaces (Ingo Schommer)
|
||
* 2016-09-23 [cbe0ac850](https://github.com/silverstripe/silverstripe-framework/commit/cbe0ac8507f94ea3e35680a97f44b58a296e168e) Fix invalid import form requirements (#6071) (Damian Mooyman)
|
||
* 2016-09-23 [ffe85db3](https://github.com/silverstripe/silverstripe-cms/commit/ffe85db33fbdacda117619c077b93118b6eabd35) Fix incorrect search form (Damian Mooyman)
|
||
* 2016-09-22 [c52adad1f](https://github.com/silverstripe/silverstripe-framework/commit/c52adad1fec6ad5fcb4a99623fbc73d033688517) Graceful degradation if obsolete classnames in ChangeSetItem (fixes #6065) (Sam Minnee)
|
||
* 2016-09-22 [aa7a9565c](https://github.com/silverstripe/silverstripe-framework/commit/aa7a9565ce237c75e538690fa8efa74d136b1d63) Fix incorrect ssviewertest path (#6060) (Damian Mooyman)
|
||
* 2016-09-22 [4301fa8](https://github.com/silverstripe/silverstripe-installer/commit/4301fa850d38cca76c0e0a73e85080b7a002bca7) Fix incorrect backslash escaping in htaccess template (#140) (Damian Mooyman)
|
||
* 2016-09-22 [65ff0a4d3](https://github.com/silverstripe/silverstripe-framework/commit/65ff0a4d38d2a276ff785d542785781288d8111b) Fix incorrect backslash escaping in htaccess template (Damian Mooyman)
|
||
* 2016-09-22 [4b2c6b05](https://github.com/silverstripe/silverstripe-cms/commit/4b2c6b05035de2b309ebd2fa4136aff7e2e7e85a) Break dist javascript and onto newlines. (Ingo Schommer)
|
||
* 2016-09-22 [9a9cd97bc](https://github.com/silverstripe/silverstripe-framework/commit/9a9cd97bc36a55b30798bfa7c9fecbe5ae6ccf89) Fix invalid file uploads not being validated (Damian Mooyman)
|
||
* 2016-09-21 [c24201b5f](https://github.com/silverstripe/silverstripe-framework/commit/c24201b5f391ef251921895dccdf069f32817477) Break dist javascript and onto newlines. (Sam Minnee)
|
||
* 2016-09-21 [51ef36963](https://github.com/silverstripe/silverstripe-framework/commit/51ef369630f9436e853c6d3896b4a183204f7ad4) stringify api call body to work for IE10 (#6032) (Chris Joe)
|
||
* 2016-09-20 [4d52d655f](https://github.com/silverstripe/silverstripe-framework/commit/4d52d655fdec88205b78b9ba233a6be7f2e20ed4) for spacing of sitetree panel, reportAdmin, and toggle on Member details page (#5955) (Paul)
|
||
* 2016-09-20 [2e054af7b](https://github.com/silverstripe/silverstripe-framework/commit/2e054af7b1cdd8c647d88cfb0c452b683257c068) Throw more helpful error if tests are run badly. (Sam Minnee)
|
||
* 2016-09-20 [3ea23ce2b](https://github.com/silverstripe/silverstripe-framework/commit/3ea23ce2b7ab877a279e8b03deb307ea5c39a69b) Make PR builds work. (Sam Minnee)
|
||
* 2016-09-20 [53f251e4](https://github.com/silverstripe/silverstripe-siteconfig/commit/53f251e42e44bfd154b2974a0b54e69f4ea1bbcc) fix incorrect CMSTabSet reference (Damian Mooyman)
|
||
* 2016-09-20 [18939157](https://github.com/silverstripe/silverstripe-cms/commit/18939157f0e595217556c9dfe86d68b6b1cd989b) Fix pages level up link (Damian Mooyman)
|
||
* 2016-09-19 [ef88619d2](https://github.com/silverstripe/silverstripe-framework/commit/ef88619d2fa31e832e7474bd6e0dc5cfcc45437d) Fix error in campaign area (Damian Mooyman)
|
||
* 2016-09-19 [82e72d062](https://github.com/silverstripe/silverstripe-framework/commit/82e72d062f99880c0b3dc74cf8c3384c430d4afd) prevent form data / validation persisting in state when using form schema (Damian Mooyman)
|
||
* 2016-09-17 [b61c5a56d](https://github.com/silverstripe/silverstripe-framework/commit/b61c5a56de334d8f60b9e2b0992431c311262fbc) sass-lint styleguide fixes (Sam Minnee)
|
||
* 2016-09-15 [30174db45](https://github.com/silverstripe/silverstripe-framework/commit/30174db4594d81ddb01bbcdb42769e1f266ca0be) i18n JS regression about locale selection (Ingo Schommer)
|
||
* 2016-09-15 [cd3ae42c](https://github.com/silverstripe/silverstripe-cms/commit/cd3ae42c1df97719590bc145383eda64c0c7fbf3) ed jquery.js path (Ingo Schommer)
|
||
* 2016-09-14 [5415afe8b](https://github.com/silverstripe/silverstripe-framework/commit/5415afe8bf0a1d5ade9a78be071e4e39692bc2a7) ed react-bootstrap tabs warnings (Ingo Schommer)
|
||
* 2016-09-14 [abaebbe1d](https://github.com/silverstripe/silverstripe-framework/commit/abaebbe1d791634f50edd9c15ef6f50a67cec2d5) Manually fix issue in jquery-ui 1.9 (Damian Mooyman)
|
||
* 2016-09-12 [61d7c3af2](https://github.com/silverstripe/silverstripe-framework/commit/61d7c3af28d7b657721bb39c7c9632169ec97497) Fix tests when running directly from framework. (Sam Minnee)
|
||
* 2016-09-12 [6b640f81f](https://github.com/silverstripe/silverstripe-framework/commit/6b640f81f2ed4ffdbac6036f5fb099a2c7f47e51) Don’t double-include composer autoloader (Sam Minnee)
|
||
* 2016-09-12 [93a0122c0](https://github.com/silverstripe/silverstripe-framework/commit/93a0122c0f61b487cf0cc9d010913e3cdf655597) Don’t treat URLs as root relative when FRAMEWORK_DIR = “” (Sam Minnee)
|
||
* 2016-09-10 [701c700d4](https://github.com/silverstripe/silverstripe-framework/commit/701c700d4c132dca835ed624d81fb2bd423957e4) ed UploadField JS dependencies (Ingo Schommer)
|
||
* 2016-09-10 [68c6137f2](https://github.com/silverstripe/silverstripe-framework/commit/68c6137f293efc5ab0f1562031913254dc8f58bd) GroupedDropdownField include namespace (Ingo Schommer)
|
||
* 2016-09-09 [5a786624a](https://github.com/silverstripe/silverstripe-framework/commit/5a786624aa13b9a275d6fdf48656d3bff71fe805) Remove unnecessary manual includes (Sam Minnee)
|
||
* 2016-09-09 [dbf78243](https://github.com/silverstripe/silverstripe-cms/commit/dbf782436797de4b6ef847fcd53d3807ff04a148) SiteTreeURLSegmentField.ss in wrong location (fixes #1607) (Loz Calver)
|
||
* 2016-09-08 [a12d52a1](https://github.com/silverstripe/silverstripe-cms/commit/a12d52a1611129b42da17b5838339643525592af) Fix some namespace class errors (Damian Mooyman)
|
||
* 2016-09-08 [d4de776a4](https://github.com/silverstripe/silverstripe-framework/commit/d4de776a45b5499887dd91f999bb6836b00d3540) fix core include (Damian Mooyman)
|
||
* 2016-09-08 [d2229ce8a](https://github.com/silverstripe/silverstripe-framework/commit/d2229ce8a6479e29bbdbba88b0e01db00a09fb89) Fix issue with Folder::validate() failing on allowed_extensions (Damian Mooyman)
|
||
* 2016-09-08 [eaac95724](https://github.com/silverstripe/silverstripe-framework/commit/eaac957248d2f9e40f093c49531901c803e955d8) case of required paths (Damian Mooyman)
|
||
* 2016-09-08 [77d167730](https://github.com/silverstripe/silverstripe-framework/commit/77d16773043797dbbb70e3f0845e0a1d82d1b6f0) issue with core/Core.php includes (Damian Mooyman)
|
||
* 2016-09-06 [f7f1cf0e8](https://github.com/silverstripe/silverstripe-framework/commit/f7f1cf0e878d037aaa15d983ff3b55dc6f85d512) SingleSelectField readonly view (Ingo Schommer)
|
||
* 2016-09-06 [b53ce4c19](https://github.com/silverstripe/silverstripe-framework/commit/b53ce4c19041fb8a11b3060b45fa4c3848628a9c) Button loading indicator (Ingo Schommer)
|
||
* 2016-09-05 [9c48b939](https://github.com/silverstripe/silverstripe-cms/commit/9c48b9398323450a3cae83b8ed33e32d7ef0925f) Ensure changes in class write to an instance of the new class, not the old one (Damian Mooyman)
|
||
* 2016-09-04 [cbdf3eb72](https://github.com/silverstripe/silverstripe-framework/commit/cbdf3eb7257b85ccc4102f5c665c1b4d3d300010) Show formatting help toggle link (Robbie Averill)
|
||
* 2016-09-01 [c9d964ff0](https://github.com/silverstripe/silverstripe-framework/commit/c9d964ff0d6e10e2c962df6eda60766fd8093d85) HTMLEditorField image reference (Ingo Schommer)
|
||
* 2016-09-01 [ecaed8c08](https://github.com/silverstripe/silverstripe-framework/commit/ecaed8c08d38ff23452024055aeae8b2be031748) ed icon regression in <Breadcrumb> (Ingo Schommer)
|
||
* 2016-08-30 [fa5e6bbd6](https://github.com/silverstripe/silverstripe-framework/commit/fa5e6bbd692ef22b406d69054e515c3b79d8fe37) ed breadcrumb icon spacing (Ingo Schommer)
|
||
* 2016-08-29 [a6f1fa3](https://github.com/silverstripe/silverstripe-installer/commit/a6f1fa3b9193fb97f100f9226407dcef5736be4b) use 1.0.x-dev for asset-admin composer contraint (Robbie Averill)
|
||
* 2016-08-28 [b509f9199](https://github.com/silverstripe/silverstripe-framework/commit/b509f9199df32c01d4dd681cdc0df61ada7d0fc2) Modal response positioning (Christopher Joe)
|
||
* 2016-08-26 [1b527fca3](https://github.com/silverstripe/silverstripe-framework/commit/1b527fca3f59e2aa577162eb8f4547fd57971fb3) Webpack handles images & fonts. (Sam Minnee)
|
||
* 2016-08-23 [b77d21c25](https://github.com/silverstripe/silverstripe-framework/commit/b77d21c25a7d70eeabfed03a40cd36818d075328) pages add to campaign, improved FormActions error handling, Popover focus highlight and refactored AddToCampaignModal to FormBuilderModal (Christopher Joe)
|
||
* 2016-08-23 [c411c500](https://github.com/silverstripe/silverstripe-cms/commit/c411c500a5325af1a5d07cb4e7d2106b4598f91d) for pages admin add to campaign modal (Christopher Joe)
|
||
* 2016-08-21 [a6049ec38](https://github.com/silverstripe/silverstripe-framework/commit/a6049ec383f313f448431d2e55173178927eead1) Use chosen from npm package. (Sam Minnee)
|
||
* 2016-08-21 [beef8fa0](https://github.com/silverstripe/silverstripe-cms/commit/beef8fa072db896c548c3e8f88857b4f1aef18b7) Switch gulp JavaScript generation to Webpack (Sam Minnee)
|
||
* 2016-08-19 [a49456df2](https://github.com/silverstripe/silverstripe-framework/commit/a49456df208ebd30fd1fbaca2fed24b790390e66) for batch actions not postponed under toolbar on open/close (Paul Clarke)
|
||
* 2016-08-18 [5c2e8d129](https://github.com/silverstripe/silverstripe-framework/commit/5c2e8d1299a7b23a1a2533b980c3599ca4ae2248) form attr merging order (Ingo Schommer)
|
||
* 2016-08-17 [a9bdf33ca](https://github.com/silverstripe/silverstripe-framework/commit/a9bdf33ca8df700097615ecfc3cec6b638153dd2) SingleSelect styling, added add to campaign documentation (Christopher Joe)
|
||
* 2016-08-12 [b4435027](https://github.com/silverstripe/silverstripe-siteconfig/commit/b443502777e223a445e9cf8e09d58c30d3e5fc55) issues with templates (Damian Mooyman)
|
||
* 2016-08-11 [ed7fe6515](https://github.com/silverstripe/silverstripe-framework/commit/ed7fe65156c13e612b6fb59506d2fa7b33a425ee) Fix usage of $this as closure argument (Damian Mooyman)
|
||
* 2016-08-11 [041d1212](https://github.com/silverstripe/silverstripe-cms/commit/041d12129adf30405706bbaeb3c4078e4a9b7450) regressions from namespacing (Damian Mooyman)
|
||
* 2016-08-10 [59efd280a](https://github.com/silverstripe/silverstripe-framework/commit/59efd280adafc04581899a4eb6e54ac5bbee9a49) issues with CMS permission codes (Damian Mooyman)
|
||
* 2016-08-05 [7026da20d](https://github.com/silverstripe/silverstripe-framework/commit/7026da20dbc8fca6b9cc14f41aa31e5535b68e3e) Make template lookup use 'type' correctly (Damian Mooyman)
|
||
* 2016-08-04 [01a13dcba](https://github.com/silverstripe/silverstripe-framework/commit/01a13dcba970f9f641fb7f239b7e99582701c76d) Fix incorrect use of baseClass as baseTable (Damian Mooyman)
|
||
* 2016-08-02 [7448fb7ba](https://github.com/silverstripe/silverstripe-framework/commit/7448fb7baebef7c7d6d8d1efb491c8b6f9b90b03) batch action permissions not applied to new nodes loaded (Christopher Joe)
|
||
* 2016-08-01 [ab60850a](https://github.com/silverstripe/silverstripe-cms/commit/ab60850a281c849e32b958d43bad2f64a9282ea0) Fix incorrect route registration order (Damian Mooyman)
|
||
* 2016-08-01 [7c151321](https://github.com/silverstripe/silverstripe-cms/commit/7c151321b4eb93a769a957c14b391c654b25c535) Fix issue with old asset-admin repeating "level up" button (Damian Mooyman)
|
||
* 2016-08-01 [12adba3d3](https://github.com/silverstripe/silverstripe-framework/commit/12adba3d3484248599bdaf420fe1bed64ef04db3) Fix `[buttons]` appearing instead of actual buttons when uploading files (Damian Mooyman)
|
||
* 2016-08-01 [9d31bb05](https://github.com/silverstripe/silverstripe-reports/commit/9d31bb0542d1d3913be7c3aa12f88d9498847e48) Fix broken form actions on parent and nested gridfields (Damian Mooyman)
|
||
* 2016-07-29 [06ae50e4f](https://github.com/silverstripe/silverstripe-framework/commit/06ae50e4f52082e6d1f58f233dd4984c1d474479) Fix hash link navigation in CMS (Damian Mooyman)
|
||
* 2016-07-28 [c54b8b5a](https://github.com/silverstripe/silverstripe-reports/commit/c54b8b5a6c7c12b872096cd0cd6653c9341afed5) link formatting (Damian Mooyman)
|
||
* 2016-07-28 [d2142f25](https://github.com/silverstripe/silverstripe-reports/commit/d2142f252e4f50a063747d12babf6cfa4e8e762b) psr-2 formatting (Damian Mooyman)
|
||
* 2016-07-28 [4d2fd04c6](https://github.com/silverstripe/silverstripe-framework/commit/4d2fd04c6451d051d5659184e8df58fc328c24d1) Behat preview mode finder being too specific (#5846) (Hamish Friedlander)
|
||
* 2016-07-28 [d15b19d20](https://github.com/silverstripe/silverstripe-framework/commit/d15b19d2083075a99662c9e57c08f1823395b336) merge regressions in add-link fixes (Damian Mooyman)
|
||
* 2016-07-28 [a868ecdbf](https://github.com/silverstripe/silverstripe-framework/commit/a868ecdbfa166ea4792125203a3a28b42321c81e) Correct include paths for legacy JS files (Damian Mooyman)
|
||
* 2016-07-28 [1f8c2f781](https://github.com/silverstripe/silverstripe-framework/commit/1f8c2f781bda8b2b16d453160eeb1247de426a2c) "Insert Link" dialog in HTMLEditorField. CSS still needs work. (Hamish Friedlander)
|
||
* 2016-07-28 [6e74b57c3](https://github.com/silverstripe/silverstripe-framework/commit/6e74b57c36816f3ba763ea0f8fb862306a362506) Fix issue with gulpfile.js not compiling client/src/legacy dir (Damian Mooyman)
|
||
* 2016-07-26 [d7fa0026](https://github.com/silverstripe/silverstripe-cms/commit/d7fa00267eb8b1c796fa5497b549ef951a6b0e69) field casting (Damian Mooyman)
|
||
* 2016-07-25 [f9b487258](https://github.com/silverstripe/silverstripe-framework/commit/f9b4872583aa3c9750f29d111ac073ab9ddf631d) Remap obsolete ClassName values. (Sam Minnee)
|
||
* 2016-07-21 [7c2470380](https://github.com/silverstripe/silverstripe-framework/commit/7c24703804f31d9ef1eab749a7bb5527f7d52624) Fix regressions in custom admin url from #3274 (Damian Mooyman)
|
||
* 2016-07-18 [761cbf0d](https://github.com/silverstripe/silverstripe-reports/commit/761cbf0dc2ce98e7db6ce7df3913330b8f79c380) Use new admin_url (Daniel Hensby)
|
||
* 2016-07-18 [0a7437db](https://github.com/silverstripe/silverstripe-cms/commit/0a7437db40bbca078a4c7518d8f907228bf03462) Allow changing admin URLs (Daniel Hensby)
|
||
* 2016-07-18 [b89fcfa18](https://github.com/silverstripe/silverstripe-framework/commit/b89fcfa1884140e3b972cd44516825974f6148c5) Fix regression with uploadfield casting (Damian Mooyman)
|
||
* 2016-07-15 [0f950800](https://github.com/silverstripe/silverstripe-cms/commit/0f950800ef7009806e241914becf16157879000d) wrongly named themes after themestack API change (#1548) (Hamish Friedlander)
|
||
* 2016-07-14 [2d47fed7](https://github.com/silverstripe/silverstripe-reports/commit/2d47fed75dc8771e1d7754d117440fed3e40b84a) ReportAdmin::Link() not returning correct home url (#38) (Damian Mooyman)
|
||
* 2016-07-14 [83c2af72c](https://github.com/silverstripe/silverstripe-framework/commit/83c2af72ca32b73c405876a2a7daec370ea99492) Fix some regressions from #5653 (#5806) (Damian Mooyman)
|
||
* 2016-07-13 [f8b1c27e](https://github.com/silverstripe/silverstripe-cms/commit/f8b1c27e3c7eb418fa091f465b04ce57390c42fc) Fix regressions from https://github.com/silverstripe/silverstripe-framework/pull/5653 (Damian Mooyman)
|
||
* 2016-07-13 [fb6f8a0a0](https://github.com/silverstripe/silverstripe-framework/commit/fb6f8a0a049154da82c5bf4a4330d519727f0713) Fix Security page showing double escaped HTML (Damian Mooyman)
|
||
* 2016-07-13 [e78bf010b](https://github.com/silverstripe/silverstripe-framework/commit/e78bf010b0c1135c242c0686da8e5b7aaff2b8fa) Fix augmentWriteVersioned (Damian Mooyman)
|
||
* 2016-07-13 [7d82304bb](https://github.com/silverstripe/silverstripe-framework/commit/7d82304bb09b5391bd9e95d1446b3bd938022f5e) Fix route invoking multiple handleStateChanges on single navigation actions (Damian Mooyman)
|
||
* 2016-07-06 [dfe375e87](https://github.com/silverstripe/silverstripe-framework/commit/dfe375e87e8bac103a4445ce7a146374750179e1) MemberDatetime helper description, and shifted them to templates (#5766) (Chris Joe)
|
||
* 2016-07-06 [59d4b51d](https://github.com/silverstripe/silverstripe-cms/commit/59d4b51d8ef873e0fbe23ef5ab5b2ca94996cd4c) Fix missing tabs layout in pages view (Damian Mooyman)
|
||
* 2016-07-04 [1931ed497](https://github.com/silverstripe/silverstripe-framework/commit/1931ed497f7e702f13d95a58ceab5216be1307c6) unit test for xml content check (Christopher Joe)
|
||
* 2016-07-04 [4a22c2bd7](https://github.com/silverstripe/silverstripe-framework/commit/4a22c2bd788d491e8a687dbe12296948bafcad9c) Revert incorrect class rename (#5765) (Damian Mooyman)
|
||
* 2016-07-01 [efef02502](https://github.com/silverstripe/silverstripe-framework/commit/efef0250277b83484536546763931c6646cb852d) Fix missing use statements (Damian Mooyman)
|
||
* 2016-06-30 [06623537c](https://github.com/silverstripe/silverstripe-framework/commit/06623537c48c9d317aa647bf4021c4d846375fb9) Don't hard-code folder into treedropdownfield search hint (Damian Mooyman)
|
||
* 2016-06-30 [abda4dc2](https://github.com/silverstripe/silverstripe-cms/commit/abda4dc2d854c6bb1f73e1f16c10f023ca8eb9df) Restore SiteTree::canPublish method to resolve incorrect fallback to SiteTreeExtension (Damian Mooyman)
|
||
* 2016-06-24 [6d835a64a](https://github.com/silverstripe/silverstripe-framework/commit/6d835a64adfcf0154bfa457c49e6f284d373108a) Saving null values to the _versions table. (Frank Mullenger)
|
||
* 2016-06-22 [e0c829f47](https://github.com/silverstripe/silverstripe-framework/commit/e0c829f471f464d4ab23ab5b18775f2d16ccba6e) es issue 5188: X-Forwarded Proto (Ian Walls)
|
||
* 2016-06-17 [6a7c1056f](https://github.com/silverstripe/silverstripe-framework/commit/6a7c1056fe54afa94641b4f1a0c3455c66d5f9e3) Fix shortcode parsing in HTMLEditorField::getanchors() (Damian Mooyman)
|
||
* 2016-06-17 [009f2de17](https://github.com/silverstripe/silverstripe-framework/commit/009f2de17ca1d435aba0f0945f3f76f575fb91d2) Fix incorrect enum string parsing (Damian Mooyman)
|
||
* 2016-06-03 [a0213aa2b](https://github.com/silverstripe/silverstripe-framework/commit/a0213aa2bfb500060d9e82a0b0ea5321065aedab) Fix HTTP url rewriting (Damian Mooyman)
|
||
* 2016-05-27 [5cace7c69](https://github.com/silverstripe/silverstripe-framework/commit/5cace7c693640cd10e6a05aaea64fbbc91f8623d) ed javascript/ docs references (#5599) (Ingo Schommer)
|
||
* 2016-05-23 [092c8986](https://github.com/silverstripe/silverstripe-cms/commit/092c8986cbfebc4a7394b62bb411fdb43dddf07c) Query string not built properly (Daniel Hensby)
|
||
* 2016-05-23 [88321f5d5](https://github.com/silverstripe/silverstripe-framework/commit/88321f5d56ff59091395ae7f7619b6bc8be0cdf9) CleanupTestDatabasesTask permission failure response (Loz Calver)
|
||
* 2016-05-23 [ad213b35](https://github.com/silverstripe/silverstripe-cms/commit/ad213b3576e7eccb38311011b2ae2e683f0faeac) Fix rollback page crash (Damian Mooyman)
|
||
* 2016-05-23 [0f646ba3](https://github.com/silverstripe/silverstripe-cms/commit/0f646ba375150bd334d05668517ccfdb06d687da) undefined index error (Damian Mooyman)
|
||
* 2016-05-20 [90397c94](https://github.com/silverstripe/silverstripe-cms/commit/90397c945d2eec1ea07ecfee7a4adab15279dac9) fix missing install image (Damian Mooyman)
|
||
* 2016-05-12 [a61d0a2f0](https://github.com/silverstripe/silverstripe-framework/commit/a61d0a2f0babedd4cc8bc639e5c4890eaf0d3351) Persistant Loading... indicator when no campaigns yet in admin (Hamish Friedlander)
|
||
* 2016-05-12 [73939958](https://github.com/silverstripe/silverstripe-cms/commit/7393995836de89509aa7643d64b322c289ff6b7a) preview in Asset Admin (Hamish Friedlander)
|
||
* 2016-05-09 [1263bf8a](https://github.com/silverstripe/silverstripe-cms/commit/1263bf8a04d4873037b9fee5fecf7d1a5b8c2f70) Not being able to save when viewing page settings (Hamish Friedlander)
|
||
* 2016-05-09 [2af63a84](https://github.com/silverstripe/silverstripe-cms/commit/2af63a84efd1b0a91985ea877fc65447c198ea02) add_i18n_javascript calls not being updated after JS move (Hamish Friedlander)
|
||
* 2016-05-09 [b2786c228](https://github.com/silverstripe/silverstripe-framework/commit/b2786c228b2384acab7ef99b6fce66e352895f15) add_i18n_javascript calls not being updated after JS move (Hamish Friedlander)
|
||
* 2016-05-06 [0b295137c](https://github.com/silverstripe/silverstripe-framework/commit/0b295137c21da6b0aea58678b07702bb2d03b7d4) unguarded JS check in LeftAndMain.Preview.js (Ingo Schommer)
|
||
* 2016-05-06 [83d70c441](https://github.com/silverstripe/silverstripe-framework/commit/83d70c4414f7f416c68317abac1d9fc19073907c) es font used for add page steps and alignment (Paul Clarke)
|
||
* 2016-05-06 [261ca9378](https://github.com/silverstripe/silverstripe-framework/commit/261ca9378e8e3465be5a5961b96aa3e5e6cf3cf4) es campaign thumbnail left alignment issue (Paul Clarke)
|
||
* 2016-05-05 [b4cd617ee](https://github.com/silverstripe/silverstripe-framework/commit/b4cd617ee339ab1ecdf927523724136fe68096d9) Renaming to HTMLEditorConfig. (Frank Mullenger)
|
||
* 2016-05-05 [9ba362065](https://github.com/silverstripe/silverstripe-framework/commit/9ba362065eb091c78f87a493b82e4fa970e3d94d) loading icon bug on IE (Scott Hutchinson)
|
||
* 2016-05-05 [c251fab9a](https://github.com/silverstripe/silverstripe-framework/commit/c251fab9af82b3779188c5ab67f39ba1a37f08ae) ed more SCSSLint errors, disabled some files (Ingo Schommer)
|
||
* 2016-05-04 [e04fb5b98](https://github.com/silverstripe/silverstripe-framework/commit/e04fb5b986ca0f55194a0930765c890fcd154078) es missing actions on responsive gridfield, cleanup indentation (#5446) (Paul)
|
||
* 2016-05-04 [4b8e98b35](https://github.com/silverstripe/silverstripe-framework/commit/4b8e98b351ad617fad0f5a8b6c1aa1d8919fca37) for scss linting issues in new scss (#5448) (Paul)
|
||
* 2016-05-02 [f88d708ee](https://github.com/silverstripe/silverstripe-framework/commit/f88d708ee997804e5a7b0490e8d5b80cf3736566) Fix GridFieldAddExistingAutocompleter and GridFieldExportButton (Damian Mooyman)
|
||
* 2016-05-01 [e7d5c92ec](https://github.com/silverstripe/silverstripe-framework/commit/e7d5c92ec1b05323694f8dde172d137eb897ef4c) merge regressions (Damian Mooyman)
|
||
* 2016-05-01 [8d2f063f0](https://github.com/silverstripe/silverstripe-framework/commit/8d2f063f0c40cbb1ec39c05fc653486efe7c867f) eslint errors (#5411) (Damian Mooyman)
|
||
* 2016-04-29 [baa3d4e7d](https://github.com/silverstripe/silverstripe-framework/commit/baa3d4e7d7ae12e63953801397ae1e1987e3afa4) trailing spaces on merge (Damian Mooyman)
|
||
* 2016-04-26 [cb723a684](https://github.com/silverstripe/silverstripe-framework/commit/cb723a684ab75b22142137e30e9b99f3c51dd95e) ed docs wording (Ingo Schommer)
|
||
* 2016-04-26 [fc8d94d78](https://github.com/silverstripe/silverstripe-framework/commit/fc8d94d789c8e849989be4ff69a30d20d7ef6824) for toolbar-south width (#5391) (Paul)
|
||
* 2016-04-26 [43f2680af](https://github.com/silverstripe/silverstripe-framework/commit/43f2680af8042b5577980b53faa86407107800b3) Fix missing return in ReadonlyField (Damian Mooyman)
|
||
* 2016-04-26 [778ed1257](https://github.com/silverstripe/silverstripe-framework/commit/778ed1257db81b5650fa885988e102a51a8f278e) campaign section cancel buttons (David Craig)
|
||
* 2016-04-25 [7e7946e50](https://github.com/silverstripe/silverstripe-framework/commit/7e7946e50a91f62ff6b6cd496da59b06ab1bda73) ed case sensitive naming regressions (David Craig)
|
||
* 2016-04-25 [c66a45c8b](https://github.com/silverstripe/silverstripe-framework/commit/c66a45c8b899b0390a3f0aa0a17acd934a191cfc) ed GridField JS test warnings (Ingo Schommer)
|
||
* 2016-04-22 [9a4b93a05](https://github.com/silverstripe/silverstripe-framework/commit/9a4b93a058ee06a66867d64264d9720a1f5cde85) Fix baseurl in IE missing leading / (Damian Mooyman)
|
||
* 2016-04-22 [2f7a7c3a5](https://github.com/silverstripe/silverstripe-framework/commit/2f7a7c3a5cf889d462669adaf6bbb5422bdb5a64) GridFieldComponent not rendering all records (David Craig)
|
||
* 2016-04-21 [fa8075367](https://github.com/silverstripe/silverstripe-framework/commit/fa8075367d79a6cc146c9a66dbe6682e346e435d) Fix routing tests (Damian Mooyman)
|
||
* 2016-04-21 [85fb0803](https://github.com/silverstripe/silverstripe-cms/commit/85fb080319c3b9a43c627f64f2d1c9a691cdf11c) font-icon regression on tree view (David Craig)
|
||
* 2016-04-21 [d376944d4](https://github.com/silverstripe/silverstripe-framework/commit/d376944d483338f1ac74cc970f081b4f081cc67e) regression with font-icon styles (David Craig)
|
||
* 2016-04-21 [8c63ae3d6](https://github.com/silverstripe/silverstripe-framework/commit/8c63ae3d68e65e75a8c63efa086858be0eaf9089) AssetAdmin icon reference (Ingo Schommer)
|
||
* 2016-04-21 [b2e8fd96e](https://github.com/silverstripe/silverstripe-framework/commit/b2e8fd96ec20b4b1709b89d920ad99d3093f8093) Fix form schema to use correct ID values (Damian Mooyman)
|
||
* 2016-04-20 [95e441528](https://github.com/silverstripe/silverstripe-framework/commit/95e4415288c9bd29674be9ae53435178c22c42da) for IE, added ability to adjust panel height based on the amount of toolbars (Paul Clarke)
|
||
* 2016-04-20 [8cf38720b](https://github.com/silverstripe/silverstripe-framework/commit/8cf38720b5de1133c676a12d3f878b8c2a74d418) Chosen.js selector for Behat feature (Ingo Schommer)
|
||
* 2016-04-19 [a7e5da822](https://github.com/silverstripe/silverstripe-framework/commit/a7e5da82286fefe4e914ea23f6a29a680675a5e1) for height (Paul Clarke)
|
||
* 2016-04-19 [0bd62735b](https://github.com/silverstripe/silverstripe-framework/commit/0bd62735bc6e20774aa4e8fd3dfd611240031c61) Fix issue with Requirements mangling custom scripts (#5337) (Damian Mooyman)
|
||
* 2016-04-19 [ddfe660f0](https://github.com/silverstripe/silverstripe-framework/commit/ddfe660f0a5ac8f4606b14fcd1b0d6ccd02da7ab) variable references when debugging (David Craig)
|
||
* 2016-04-19 [6ccfbb7c5](https://github.com/silverstripe/silverstripe-framework/commit/6ccfbb7c521df3d4f728327e2a843656aa68e795) ed breadcrumbs test (Ingo Schommer)
|
||
* 2016-04-19 [47ca88956](https://github.com/silverstripe/silverstripe-framework/commit/47ca889567556ebe706d65e07a5b98f8670ae435) for Add campaign button spacing (Paul Clarke)
|
||
* 2016-04-17 [90e352ca7](https://github.com/silverstripe/silverstripe-framework/commit/90e352ca7d2ebfc9958e184b0131952eac30652f) "urlencoded" HTTP header notation (Ingo Schommer)
|
||
* 2016-04-15 [9a5db5f76](https://github.com/silverstripe/silverstripe-framework/commit/9a5db5f760c835f8d6b7a5801f4b9b584b15543d) ChangeSet test mixing Object ID and ChangeSetItem ID up (Hamish Friedlander)
|
||
* 2016-04-13 [7e37abeb](https://github.com/silverstripe/silverstripe-cms/commit/7e37abeb217cd0e214ad1e291d6e965fc2b40cce) Fix chosen dropdown on settings being cropped (Damian Mooyman)
|
||
* 2016-04-13 [5f2edb4e9](https://github.com/silverstripe/silverstripe-framework/commit/5f2edb4e91117b7018c332116fe8d7d4d7dbaf6a) ESLint issues, shrinkwrap, and missing image (Damian Mooyman)
|
||
* 2016-04-12 [f7237a993](https://github.com/silverstripe/silverstripe-framework/commit/f7237a9936d873ffcf81f227649485911a738ecb) <FormAction> external and prop definition (Ingo Schommer)
|
||
* 2016-04-12 [2983dd58f](https://github.com/silverstripe/silverstripe-framework/commit/2983dd58ff9d152d641deffa519aa10b966d03b8) admin area after upgrade to Chosen 1.5 (Hamish Friedlander)
|
||
* 2016-04-11 [5d29d3011](https://github.com/silverstripe/silverstripe-framework/commit/5d29d30118025d67a80b929c4832c05d98f533d5) ed silverstripe-backend GET use regression (Ingo Schommer)
|
||
* 2016-04-11 [d7eed8fe8](https://github.com/silverstripe/silverstripe-framework/commit/d7eed8fe8d4eb7079656cc01cc4ddd71593524e1) gulpfile.js ESLint syntax (Ingo Schommer)
|
||
* 2016-04-11 [cc897d0f8](https://github.com/silverstripe/silverstripe-framework/commit/cc897d0f855ddffdc8bcb23cd18b6f16f409dfb2) for add page steps and 1px out in southbar (Paul Clarke)
|
||
* 2016-04-10 [ce8ac58dd](https://github.com/silverstripe/silverstripe-framework/commit/ce8ac58ddbe8b4ccaead8b22953ba2980960f295) React DOM warnings about <form> attrs (Ingo Schommer)
|
||
* 2016-04-07 [0aec89d0c](https://github.com/silverstripe/silverstripe-framework/commit/0aec89d0c8f0a6402122a3aec0f338cd84658dec) for #5279 Addressing only a few PSR-2 items in one file, but primarily targeting Director::is_https() and invalid URL's. (Patrick Nelson)
|
||
* 2016-04-05 [7337f26d3](https://github.com/silverstripe/silverstripe-framework/commit/7337f26d3ae877dbfee288f868da408a3720a8ae) non-standard url encoding in CMS search form (Ingo Schommer)
|
||
* 2016-04-05 [5a86f4232](https://github.com/silverstripe/silverstripe-framework/commit/5a86f4232e42232bcb5fa61e4383561a64133070) Fix error when using search bar (Damian Mooyman)
|
||
* 2016-04-04 [c4a97207](https://github.com/silverstripe/silverstripe-cms/commit/c4a97207308396190bb2c0719429f9c84d134d68) IE support by using babelify transforms (Ingo Schommer)
|
||
* 2016-04-04 [0fadd7a15](https://github.com/silverstripe/silverstripe-framework/commit/0fadd7a15a6b256322639b44ba687bafb506f1da) IE compat through babelify (Ingo Schommer)
|
||
* 2016-04-03 [640691f54](https://github.com/silverstripe/silverstripe-framework/commit/640691f544d21ca86b8c995892fbb3dda45f6bdf) fix missing language on non-global configs (Damian Mooyman)
|
||
* 2016-03-31 [d8d005d1e](https://github.com/silverstripe/silverstripe-framework/commit/d8d005d1e27d0105fade2c4758f2a695cb09a4e4) move test file to correct folder and fix class_exists (Damian Mooyman)
|
||
* 2016-03-31 [e8a68c42c](https://github.com/silverstripe/silverstripe-framework/commit/e8a68c42ce022f46c25688c3538e081c30d50a19) Prevent live manifest loading files from nested test directories (Damian Mooyman)
|
||
* 2016-03-30 [c69e55c49](https://github.com/silverstripe/silverstripe-framework/commit/c69e55c49c1a9310f1c6739444bd101b474ba3c6) Fix issue with SapphireTest::assertDOSEquals incorrectly passing on empty set (Damian Mooyman)
|
||
* 2016-03-22 [46b35ecb](https://github.com/silverstripe/silverstripe-cms/commit/46b35ecb0e4336991e374226983f3916834af1df) Changes to support php7 and new DBFields (Sam Minnee)
|
||
* 2016-03-21 [8ae289489](https://github.com/silverstripe/silverstripe-framework/commit/8ae289489001448f8866a2e5dd10959b7617f45d) form schema ID getter (Ingo Schommer)
|
||
* 2016-03-16 [6b1444709](https://github.com/silverstripe/silverstripe-framework/commit/6b1444709fe38ece828e30f43fd248e856c9a55d) menu dropdown icon (scott1702)
|
||
* 2016-03-15 [d4ad1504a](https://github.com/silverstripe/silverstripe-framework/commit/d4ad1504a979a478dc96944f7639cd706de6c215) bottom toolbar height (David Craig)
|
||
* 2016-03-13 [7769f03cc](https://github.com/silverstripe/silverstripe-framework/commit/7769f03ccc0300510daffdfe2bce7723f2193ee1) Remove duplicate extension hook (Damian Mooyman)
|
||
* 2016-03-09 [e2a377e21](https://github.com/silverstripe/silverstripe-framework/commit/e2a377e21ea7a91e3b289d41947ab4ce952dbe0c) Fix CleanupTestDatabaseTask (Damian Mooyman)
|
||
* 2016-03-09 [3673a5e14](https://github.com/silverstripe/silverstripe-framework/commit/3673a5e14116b60601a3fce1eae9eb5c786a4e08) Inserting a 'Download a file' without selecting an image (Mike Cochrane)
|
||
* 2016-03-09 [0b81bbef2](https://github.com/silverstripe/silverstripe-framework/commit/0b81bbef22a0145e1972973761248070f0bd1c66) attempt to access https iframe from http interface (Mike Cochrane)
|
||
* 2016-03-09 [a3ee9ece9](https://github.com/silverstripe/silverstripe-framework/commit/a3ee9ece90f17eda2f9d2021f8e47c74af8d3890) avoid javascript error when preview is https (Mike Cochrane)
|
||
* 2016-03-09 [70062ebc](https://github.com/silverstripe/silverstripe-cms/commit/70062ebc9cef301f2742ee08d2fade1bb7a41866) 'Settings' fields being overwritten by 'Content' fields (Mike Cochrane)
|
||
* 2016-03-06 [3d99ed24a](https://github.com/silverstripe/silverstripe-framework/commit/3d99ed24ac3bfcd7afaa7210b654b65c978a8817) Better filtering of versionable tables during SQL augmentation (Damian Mooyman)
|
||
* 2016-03-06 [627fbf905](https://github.com/silverstripe/silverstripe-framework/commit/627fbf9051845dd0be1f1711a1d68762e5eceab7) ed merge regression (Ingo Schommer)
|
||
* 2016-03-03 [4b5bd2d74](https://github.com/silverstripe/silverstripe-framework/commit/4b5bd2d744c4db7e49c65a21023024d22913b1f6) cleaner can* methods for Member (Nicolaas)
|
||
* 2016-03-02 [8eede847c](https://github.com/silverstripe/silverstripe-framework/commit/8eede847cdf3638bfcdd5cf8bf450237c13eddbd) i18n.sprintf() parameters being off by one (Mike Cochrane)
|
||
* 2016-03-01 [3317d3427](https://github.com/silverstripe/silverstripe-framework/commit/3317d342769e7f94d063a9cf29ce1f4350326243) Prevent fatal errors during test failure halt tests (Damian Mooyman)
|
||
* 2016-02-26 [40723aaa5](https://github.com/silverstripe/silverstripe-framework/commit/40723aaa58fcee4496b25ac82ebc55eaefa3fb4d) undeclared variable in UploadField.js (David Craig)
|
||
* 2016-02-24 [beba0f25](https://github.com/silverstripe/silverstripe-cms/commit/beba0f2551f368a04edc8a9dd4d7446e77778c20) Fix behat tests for asset abstraction (Damian Mooyman)
|
||
* 2016-02-23 [0ee156489](https://github.com/silverstripe/silverstripe-framework/commit/0ee1564896be9a1da97d61f5141d6cffe416a7e5) Fix deprecated API usage in DataFormatter API and DataObjectTest (Damian Mooyman)
|
||
* 2016-02-19 [7580d35be](https://github.com/silverstripe/silverstripe-framework/commit/7580d35be816ad73ca6d9434f7992301c000d0fa) ability to edit files immeditately after upload (scott1702)
|
||
* 2016-01-25 [d031f53e](https://github.com/silverstripe/silverstripe-reports/commit/d031f53e7314498c900c84923f94f66e4aa3303a) incorrect version dependency (Damian Mooyman)
|
||
* 2016-01-21 [8872ed51](https://github.com/silverstripe/silverstripe-siteconfig/commit/8872ed51931efcab859c9d6f148c8dc61aa4509f) Fix broken travis yml (Damian Mooyman)
|
||
* 2016-01-21 [6cebffd89](https://github.com/silverstripe/silverstripe-framework/commit/6cebffd89bce5e4ed15d4fbd2ceb7680ec74894a) Fix SSViewerTest not restoring old requirements (Damian Mooyman)
|
||
* 2016-01-05 [45dc510da](https://github.com/silverstripe/silverstripe-framework/commit/45dc510da7051c03c6ac71cdac688b7462142d1c) ing typo (Peter Thaleikis)
|
||
* 2015-12-22 [b6627a2f7](https://github.com/silverstripe/silverstripe-framework/commit/b6627a2f7c045c040ab51512af981dad08780418) Change Requirements::include_in_response() to not add empty (Jacob Buck)
|
||
* 2015-12-15 [31888735b](https://github.com/silverstripe/silverstripe-framework/commit/31888735bdd665dd33f0b08e5fdfc9d033072b66) Fix incorrect error page handling (Damian Mooyman)
|
||
* 2015-12-02 [ed76b3f5](https://github.com/silverstripe/silverstripe-siteconfig/commit/ed76b3f56c9cf4b81a51b144a843130f89bd6e1d) Fix yml and behat (Damian Mooyman)
|
||
* 2015-12-02 [387eb227](https://github.com/silverstripe/silverstripe-siteconfig/commit/387eb2277bd76e53aca9e43e249c90bf95923f91) Fix CI (Damian Mooyman)
|
||
* 2015-12-02 [d0ee35c5](https://github.com/silverstripe/silverstripe-cms/commit/d0ee35c540f7b980cb2ee6a8ea32c81821e45ef0) composer dependencies (scott1702)
|
||
* 2015-11-12 [03169a429](https://github.com/silverstripe/silverstripe-framework/commit/03169a429fe0a408078a39e1c1d8d3e0dae96aab) typo (Nabil Kadimi)
|
||
* 2015-10-22 [fe3d23f0d](https://github.com/silverstripe/silverstripe-framework/commit/fe3d23f0d4c381040f47d24c4dcc9b27768a06b8) Fix GeneratedAssetHandler crashing on expired resources (Damian Mooyman)
|
||
* 2015-10-19 [d7dcb41b](https://github.com/silverstripe/silverstripe-cms/commit/d7dcb41b271e6b5d5e74988a979a286185a0093e) Remove tab - invalid YAML (Loz Calver)
|
||
* 2015-10-18 [c8a0347b7](https://github.com/silverstripe/silverstripe-framework/commit/c8a0347b78af0e643b1fd3032d100f8e7ed55ee2) Monolog constant use (Ingo Schommer)
|
||
* 2015-10-15 [27a8afe78](https://github.com/silverstripe/silverstripe-framework/commit/27a8afe78bae34a4e0cbd6fb225840312dc8fa5f) Fix regressions in fulltextsearch (Damian Mooyman)
|
||
* 2015-10-14 [d884c859d](https://github.com/silverstripe/silverstripe-framework/commit/d884c859d189a0803974636fa6f699cbc474233a) Fix file link tracking for new asset abstraction (Damian Mooyman)
|
||
* 2015-10-06 [c13dfc2fa](https://github.com/silverstripe/silverstripe-framework/commit/c13dfc2fa0d84fab40d01f38441295d40d2d1df5) ing phpdoc blocks to refering to Objects to built-in types of PHP (Peter Thaleikis)
|
||
* 2015-09-28 [1f632a10c](https://github.com/silverstripe/silverstripe-framework/commit/1f632a10c9661d7f7eb27bd1fcf7e03081e8010e) Replace direct reference to $_REQUEST['url'] with request object getter (Damian Mooyman)
|
||
* 2015-09-28 [8e3f549b](https://github.com/silverstripe/silverstripe-cms/commit/8e3f549b19bd4930f2fa80a7fa6a528cdc5e4011) Fix regressions in CMS from db field changes (Damian Mooyman)
|
||
* 2015-09-09 [60e75cbd](https://github.com/silverstripe/silverstripe-cms/commit/60e75cbd990669dade21633a475ff845e089a1d6) travis php version back to 5.4 (Damian Mooyman)
|
||
* 2015-09-09 [143e4eae5](https://github.com/silverstripe/silverstripe-framework/commit/143e4eae5fe293735b82f22c09e8bc2b541d2a10) travis php version back to 5.4 (Damian Mooyman)
|
||
* 2015-09-09 [812b5ecb6](https://github.com/silverstripe/silverstripe-framework/commit/812b5ecb629c839cb582477fb95628be7db8caf2) merge regressions (Damian Mooyman)
|
||
* 2015-09-04 [fa8702f0c](https://github.com/silverstripe/silverstripe-framework/commit/fa8702f0c8b22581e1cbe48fc3741a146b546bc9) Fix reference to missing Debug::loadErrorHandlers() (Damian Mooyman)
|
||
* 2015-08-28 [f5af0c85b](https://github.com/silverstripe/silverstripe-framework/commit/f5af0c85bade63174d282162a6c99fb37461b433) Don’t use SplFixedArray in PHP 7. (Sam Minnee)
|
||
* 2015-08-27 [8518fc142](https://github.com/silverstripe/silverstripe-framework/commit/8518fc142556c3992d0a485c4b3e90e2095f4c0c) Clarify PHP7-incompatible call styles. (Sam Minnee)
|
||
* 2015-08-27 [083799ec0](https://github.com/silverstripe/silverstripe-framework/commit/083799ec03899b8388352849cbdc42e4c74fbf4d) Minimal data-model changes to support PHP7. (Sam Minnee)
|
||
* 2015-08-27 [12a83d70a](https://github.com/silverstripe/silverstripe-framework/commit/12a83d70aef7a36c5b5b403b86d4864402275eaa) Removed PHP4 syntax from Diff.php (Sam Minnee)
|
||
* 2015-08-27 [680b19a1d](https://github.com/silverstripe/silverstripe-framework/commit/680b19a1da75aa940da4ce4283710eff337139c6) Correct PHP4-style constructors in SimpleTest. (Sam Minnee)
|
||
* 2015-08-25 [5fa3c8528](https://github.com/silverstripe/silverstripe-framework/commit/5fa3c852804d3c627d5d2f8db6fd4b73da698531) for #4417: Ensuring ->removeValidation() is defined on instances of Validator. Setup new API for enabling/disabling validation. Documentation and better type handling. (Patrick Nelson)
|
||
* 2015-08-17 [bf6a84bd](https://github.com/silverstripe/silverstripe-cms/commit/bf6a84bd2fd0c16f040902dcd7902538a6c9bf50) ing behat regression (Daniel Hensby)
|
||
* 2015-08-14 [e13aebc3d](https://github.com/silverstripe/silverstripe-framework/commit/e13aebc3d701b30667d7df23edbff2ce2418a4f0) for #4502 Prevents JSON.parse() from scrambling sorted results from server-side. (Patrick Nelson)
|
||
* 2015-08-04 [053c47499](https://github.com/silverstripe/silverstripe-framework/commit/053c47499ee00c984f85ee83bcb389175b0b11ea) datefield to work with other form markup (hex0id)
|
||
* 2015-04-28 [cadc02b63](https://github.com/silverstripe/silverstripe-framework/commit/cadc02b63b1f8248a5518e202da6f948ffa5064e) for #4129: Ensure belongsToComponent() and hasManyComponent() methods return null instead of false, to be consistent with other relation component methods. (Patrick Nelson)
|
||
* 2015-04-28 [512b3db0](https://github.com/silverstripe/silverstripe-siteconfig/commit/512b3db0153306d8ff591eefd00418f619de58f7) Fix SiteTree / SiteConfig permissions (Ingo Schommer)
|
||
* 2015-03-10 [622ad54c5](https://github.com/silverstripe/silverstripe-framework/commit/622ad54c5b21dc4e12914181e74dacfb47b8e151) Fix yaml generation to conform to version 1.1, accepted by transifex (Damian Mooyman)
|
||
* 2015-02-23 [e04e992c](https://github.com/silverstripe/silverstripe-cms/commit/e04e992c73cfd329cec535e2ed4bccf82356b589) es relating to Controller cleanup (Daniel Hensby)
|
||
* 2015-02-12 [83db2f2d3](https://github.com/silverstripe/silverstripe-framework/commit/83db2f2d30067dd81eb3af233a2beec3971c6bc6) ed "Removed DataObject::$allowed_actions #3880" on master (Aden Fraser)
|
||
* 2015-02-11 [0223b6164](https://github.com/silverstripe/silverstripe-framework/commit/0223b6164cb661e71dd8d84485e7209d6685a340) ed " Image_Backend interface constructor needs updating (master) #3477 " on both the Image_Backend Model and Imagick_Backend filesystem class (Aden Fraser)
|
||
* 2014-12-15 [1f7e627a5](https://github.com/silverstripe/silverstripe-framework/commit/1f7e627a50a769a0ebc00dbf8c2b8adb686e5afe) How to folder on forms (Cam Findlay)
|
||
* 2014-12-10 [6ff6c6f5](https://github.com/silverstripe/silverstripe-cms/commit/6ff6c6f572e2981df136d2665dcfe0e8a241451c) Removed multifile thirdparty library which isn't used any more in ss. (micmania1)
|
||
* 2014-12-08 [ddd83304c](https://github.com/silverstripe/silverstripe-framework/commit/ddd83304ceef3ce46b511daafa3becbb1449b5a1) Feedback to name the fields section to "field types" to make it clearer what the section is about. (Cam Findlay)
|
||
* 2014-12-08 [1f181a65c](https://github.com/silverstripe/silverstripe-framework/commit/1f181a65c920f3f650889bb3df2be4f93f8a8d35) use GFMD code blocks to fix code formatting consistency. (Cam Findlay)
|
||
* 2014-12-04 [00e029f57](https://github.com/silverstripe/silverstripe-framework/commit/00e029f574f09e47f059d314d35392ecde3d9092) check for suite existence in endCurrentTest (Will Morgan)
|
||
* 2014-11-20 [6ace5641](https://github.com/silverstripe/silverstripe-cms/commit/6ace56418e82d4f6dcb82c84836860bc98e667c5) dependency on framework master branch (Damian Mooyman)
|
||
* 2014-06-02 [e732aee6e](https://github.com/silverstripe/silverstripe-framework/commit/e732aee6eb4132aba85ecb3e1e3e72543ea2003c) es #3182 Fixes lazy loading of fields when query was created in default stage (Craig Weber)
|