Merge branch '4.4' into 4

This commit is contained in:
Guy Marriott 2019-06-17 08:58:50 +12:00
commit bb5b610636
No known key found for this signature in database
GPG Key ID: A80F9ACCB86D3DA7
5 changed files with 30 additions and 15 deletions

View File

@ -11,6 +11,22 @@ from published content shown to your website visitors.
Versioning in SilverStripe is handled through the [Versioned](api:SilverStripe\Versioned\Versioned) class. As a [DataExtension](api:SilverStripe\ORM\DataExtension) it is possible to be applied to any [DataObject](api:SilverStripe\ORM\DataObject) subclass. The extension class will automatically update read and write operations done via the ORM via the `augmentSQL` database hook. Versioning in SilverStripe is handled through the [Versioned](api:SilverStripe\Versioned\Versioned) class. As a [DataExtension](api:SilverStripe\ORM\DataExtension) it is possible to be applied to any [DataObject](api:SilverStripe\ORM\DataObject) subclass. The extension class will automatically update read and write operations done via the ORM via the `augmentSQL` database hook.
<div class="notice" markdown="1">
There are two complementary modules that improve content editor experience around "owned" nested objects (e.g. elemental blocks).
Those are in experimental status right now, but we would appreciate any feedback and contributions.
You can check them out on github:
- https://github.com/silverstripe/silverstripe-versioned-snapshots
- https://github.com/silverstripe/silverstripe-versioned-snapshot-admin
The first one adds extra metadata to versions about object parents at the moment of version creation.
The second module extends CMS History UI adding control over nested objects.
<img width="600" src="../../_images/snapshot-admin.png" width="600">
*Example screenshot from versioned-snapshot-admin*
</div>
## Understanding versioning concepts ## Understanding versioning concepts
This section discuss how SilverStripe implements versioning and related high level concepts without digging into technical details. This section discuss how SilverStripe implements versioning and related high level concepts without digging into technical details.

View File

@ -1235,7 +1235,7 @@ has been added to assist in migration of existing files (see [file migration doc
./vendor/bin/sake dev/tasks/MigrateFileTask ./vendor/bin/sake dev/tasks/MigrateFileTask
``` ```
##### Rewriting asset references ##### Rewriting asset references{#tagtoshortcode}
Your `img` and `a` tag references to your assets may now be pointing to a location in your assets folder that has been moved. There is a task available which will look through all your tables containing `HTMLText` and `HTMLVarchar` fields looking for broken references and then rewrite them to the new location of the file. Your `img` and `a` tag references to your assets may now be pointing to a location in your assets folder that has been moved. There is a task available which will look through all your tables containing `HTMLText` and `HTMLVarchar` fields looking for broken references and then rewrite them to the new location of the file.

View File

@ -70,7 +70,7 @@ We have ironed out some edge cases since then:
* [Hash-less public asset URLs](#hash-less) * [Hash-less public asset URLs](#hash-less)
* [Legacy thumbnail locations](#legacy-thumb) * [Legacy thumbnail locations](#legacy-thumb)
* TODO Shortcode migration * [HTMLText short code migration](/Upgrading/Upgrading_projec#tagtoshortcode)
You can opt-in to performing these migration tasks on your already upgraded SilverStripe 4.x project. You can opt-in to performing these migration tasks on your already upgraded SilverStripe 4.x project.
@ -431,7 +431,6 @@ SilverStripe\Forms\GridField\GridFieldDetailForm_ItemRequest:
### API Changes ### API Changes
* 2019-05-06 [8ee50d2ba](https://github.com/silverstripe/silverstripe-framework/commit/8ee50d2ba7ff582bf317de7c1149d17bab1eb4fa) Remove DataObjectSchema::getFieldMap() (#8960) (Maxime Rainville)
* 2019-05-03 [5337e6d04](https://github.com/silverstripe/silverstripe-framework/commit/5337e6d04847c66d0a293e9c6c53a58d97aea3a1) Replace FormActions with anchors to enable panel-based loading in GridField navigation buttons (#8953) (Robbie Averill) * 2019-05-03 [5337e6d04](https://github.com/silverstripe/silverstripe-framework/commit/5337e6d04847c66d0a293e9c6c53a58d97aea3a1) Replace FormActions with anchors to enable panel-based loading in GridField navigation buttons (#8953) (Robbie Averill)
* 2019-04-30 [d325b8a](https://github.com/silverstripe/silverstripe-assets/commit/d325b8a6e0594ba50de1033edc5b99428ed6e5dd) Mark the FlysystemAssetStore FileResolutionStrategy getters and setters as internal (#255) (Maxime Rainville) * 2019-04-30 [d325b8a](https://github.com/silverstripe/silverstripe-assets/commit/d325b8a6e0594ba50de1033edc5b99428ed6e5dd) Mark the FlysystemAssetStore FileResolutionStrategy getters and setters as internal (#255) (Maxime Rainville)
* 2019-04-16 [3c6357d](https://github.com/silverstripe/silverstripe-assets/commit/3c6357d5856857fe21d893495071d989a8500bed) Add an extension to the regular AssetStore interface (Maxime Rainville) * 2019-04-16 [3c6357d](https://github.com/silverstripe/silverstripe-assets/commit/3c6357d5856857fe21d893495071d989a8500bed) Add an extension to the regular AssetStore interface (Maxime Rainville)

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

View File

@ -82,14 +82,14 @@ class Requirements_Backend
protected $customScript = array(); protected $customScript = array();
/** /**
* All custom CSS rules which are inserted directly at the bottom of the HTML <head> tag * All custom CSS rules which are inserted directly at the bottom of the HTML `<head>` tag
* *
* @var array * @var array
*/ */
protected $customCSS = array(); protected $customCSS = array();
/** /**
* All custom HTML markup which is added before the closing <head> tag, e.g. additional * All custom HTML markup which is added before the closing `<head>` tag, e.g. additional
* metatags. * metatags.
* *
* @var array * @var array
@ -148,8 +148,8 @@ class Requirements_Backend
protected $combinedFilesFolder = null; protected $combinedFilesFolder = null;
/** /**
* Put all JavaScript includes at the bottom of the template before the closing <body> tag, * Put all JavaScript includes at the bottom of the template before the closing `<body>` tag,
* rather than the default behaviour of placing them at the end of the <head> tag. This means * rather than the default behaviour of placing them at the end of the `<head>` tag. This means
* script downloads won't block other HTTP requests, which can be a performance improvement. * script downloads won't block other HTTP requests, which can be a performance improvement.
* *
* @var bool * @var bool
@ -522,7 +522,7 @@ class Requirements_Backend
/** /**
* Register the given JavaScript code into the list of requirements * Register the given JavaScript code into the list of requirements
* *
* @param string $script The script content as a string (without enclosing <script> tag) * @param string $script The script content as a string (without enclosing `<script>` tag)
* @param string $uniquenessID A unique ID that ensures a piece of code is only added once * @param string $uniquenessID A unique ID that ensures a piece of code is only added once
*/ */
public function customScript($script, $uniquenessID = null) public function customScript($script, $uniquenessID = null)
@ -547,7 +547,7 @@ class Requirements_Backend
/** /**
* Register the given CSS styles into the list of requirements * Register the given CSS styles into the list of requirements
* *
* @param string $script CSS selectors as a string (without enclosing <style> tag) * @param string $script CSS selectors as a string (without enclosing `<style>` tag)
* @param string $uniquenessID A unique ID that ensures a piece of code is only added once * @param string $uniquenessID A unique ID that ensures a piece of code is only added once
*/ */
public function customCSS($script, $uniquenessID = null) public function customCSS($script, $uniquenessID = null)
@ -570,7 +570,7 @@ class Requirements_Backend
} }
/** /**
* Add the following custom HTML code to the <head> section of the page * Add the following custom HTML code to the `<head>` section of the page
* *
* @param string $html Custom HTML code * @param string $html Custom HTML code
* @param string $uniquenessID A unique ID that ensures a piece of code is only added once * @param string $uniquenessID A unique ID that ensures a piece of code is only added once
@ -868,9 +868,9 @@ class Requirements_Backend
/** /**
* Given a block of HTML, insert the given scripts at the bottom before * Given a block of HTML, insert the given scripts at the bottom before
* the closing </body> tag * the closing `</body>` tag
* *
* @param string $jsRequirements String containing one or more javascript <script /> tags * @param string $jsRequirements String containing one or more javascript `<script />` tags
* @param string $content HTML body * @param string $content HTML body
* @return string Merged HTML * @return string Merged HTML
*/ */
@ -887,9 +887,9 @@ class Requirements_Backend
} }
/** /**
* Given a block of HTML, insert the given scripts inside the <body></body> * Given a block of HTML, insert the given scripts inside the `<body></body>`
* *
* @param string $jsRequirements String containing one or more javascript <script /> tags * @param string $jsRequirements String containing one or more javascript `<script />` tags
* @param string $content HTML body * @param string $content HTML body
* @return string Merged HTML * @return string Merged HTML
*/ */
@ -924,7 +924,7 @@ class Requirements_Backend
} }
/** /**
* Given a block of HTML, insert the given code inside the <head></head> block * Given a block of HTML, insert the given code inside the `<head></head>` block
* *
* @param string $jsRequirements String containing one or more html tags * @param string $jsRequirements String containing one or more html tags
* @param string $content HTML body * @param string $content HTML body