* NEW: Add Hierarchy::prepopulate_numchildren_cache()
API: Hierarchy::stageChildren() customisations must be applied to the base class and not include record-specific behaviour.
Adds the ability to prepopulate the cache for Hierarchy::numChildren()
in a batch.
Note that this optimisation means that stageChildren() is not called on
each record in order to calculate numChildren(). This means that the
structure of the stageChildren() query must be the same for all records
and the behaviour cannot be customised only for a subclass of the base
data class. For example, apply your customisations to SiteTree and not
a subclass.
This is an useful part of optimising the query count on tree generation.
See https://github.com/silverstripe/silverstripe-framework/issues/8379
* NEW: Add Hierarchy::prepopulateTreeDataCache()
This provides a more extensible way of preopulating caches for optimised
tree generation.
Fixes https://github.com/silverstripe/silverstripe-framework/issues/8391
They're already present in the new upgrading guide
Folded upgrading "list of changes" into 4.0.0 guide
They duplicate each other, and create confusion in the upgrading
doc because there's *both* an "overview" of changes at the top,
and "important changes" at the bottom - why are they at the bottom when they're important?
Added "skip" and "continue" anchor links
[ci skip]
🚧 Original upgrading doc.
I'm keeping it around just so I know what content hasn't been restructured.
🚧 Setting outline of new upgrading guide.
I'm just outlining the TOC here.
https://github.com/silverstripe/silverstripe-upgrader/issues/72🚧 Typo correction.
🚧 Move most of original content into new structure.
📝 Documenting how to recompose your dependencies.
📝 Finish documenting the reorganise command.
📝 Add a conlusion to upgrade
📝 Drafting environment upgrade doc
Move environment upgrade doc out of change log and integrating it into the upgrading guide.
📝 Document how to namespace project
🚧 Working on step 4.
📝 Adding doc for the upgrade step.
Finalise first draft of the upgrade guide.
Remove typo
Implementing feedback on the doc.
Implementing upgrade guide feedback.wq
Add refrence to upgrade guide into change log.
Implement specific upgrade guide peer review suggestion.
Wording tweaks.
Remove reference to ACME and rewrite overview.
The end of the upgrading guide tweaks ... I think.
- Stronger wording around "use composer"
- Consistent domain and email address naming
- Removed example for publishing non-composer modules (those shouldn't be encouraged)
- Removed instructions for installing modules from archives
[ci skip]
It's one of the most noteworthy manual changes,
let's not hide it from devs who will (correctly) start their upgrade process by looking at the 4.0.0 guide