v0.18.0
25 October 2026
find() returns one type of record, and the image pipeline has its own class.
Added
FieldType::absentIsValue()says whether a form that does not post the field means a value. Thebooleantype returnstrue, so an unchecked box saves.Dir::filesRecursive()andArr::lastKey().
Changed
$app->registry()->find(),$app->find()andPage::find()addtype=pagewhen the query names notype=.type=userreturns users, and any other type throwsInvalidArgumentException. Before, a query without a type also matched user rows and built them as pages. See Upgrading.- The image pipeline moved from
PageFilestoImage, reached as$app->pageFiles()->image.generateVariant()isgenerate(), andPageFiles::parseOptions()isImage::parseOptions(). Record::upload()replaces the separate copies onPageandUser.
Removed
RecordCollection::sort(),AddonCollection, andUser::root(),parent(),children()andurl().History::commit(). UsecommitIfDirty($page)orbatch($message, $fn).action(),message(),commitOwner()andresolveRevision()are private.- The template functions
cacheKey,cacheOfandcachePut.{cache}needs no template change.
Comments
No comments yet. Be the first!
Loading form…