Releases: atk4/ui
Releases · atk4/ui
5.2.0
Major features
Breaking changes
Other changes
- Use native table introspect for Behat testing (#2207) @mvorisek
- Fix CI for PostgreSQL (#2206) @mvorisek
- Upgrade PHPStan to v1.11.1 (#2205) @DarkSide666
- Add phpunit v11 support 2/2 (#2202) @mvorisek
- Fix phpstan-strict-rules v1.5.3 (#2199) @mvorisek
- Remove unneeded VirtualPage "__atk_tab" code (#2197) @mvorisek
- Add phpunit v11 support 1/2 (#2196) @mvorisek
5.1.0
Major features
- Use View::$entity property for entity access (#2192) @mvorisek
- Impl. typecasting for non-display data (#1991) @mvorisek
- Render column HTML for each row individually (#2146) @mvorisek
- Always reload full executor container (#2142) @mvorisek
- Handle fatal error as exception (#2136) @mvorisek
Breaking changes
- Remove SSE abort handling (#2188) @mvorisek
- Remove model support from HtmlTemplate (#2171) @mvorisek
- Typecast ID for UI strictly using UI persistence (#2168) @mvorisek
- Remove SessionTrait trait from Wizard class (#2159) @mvorisek
- Unify Table\Column::getTag() params order (#2155) @mvorisek
- View::getJs() method returns JsBlock (#2152) @mvorisek
- Do not replace Lister::$model property during render (#2147) @mvorisek
- Explicit seed/class suffix in property names (#2145) @mvorisek
- Rename headerCss/contentCss to headerClass/contentClass properties (#2137) @mvorisek
- Drop Form::jsInput() shortcut method (#2120) @mvorisek
Other changes
- JsCallback always terminates with success (#2195) @mvorisek
- Fix form submit in wizard (#2193) @mvorisek
- Make "__atk_tab" GET param non-sticky (#2191) @mvorisek
- Move Fomantic-UI tab render from View/App to VirtualPage (#2190) @mvorisek
- Always assume browser SSE support (#2189) @mvorisek
- Fix SSE flush for Apache PHP FPM (#2187) @mvorisek
- Fix ob_end_flush() in JsSse init (#2175) @Vladzimir
- Fix nullable parameter type for PHP 8.4 (#2185) @mvorisek
- Remove no longer needed explicit field type in HasOne relations (#2184) @mvorisek
- Adjust for Reference::hasOne() strong return type (#2183) @mvorisek
- Improve templated closure types (#2182) @mvorisek
- Adjust for removed Reference::refModel() method (#2181) @mvorisek
- Adjust for model only properties (#2180) @mvorisek
- Adjust for renamed scope condition field property (#2179) @mvorisek
- Test CI using Oracle v18 until v23 NLS_COMP is fixed (#2177) @mvorisek
- Upgrade Fomantic-UI to 2.9.4-beta.35 (#2176) @mvorisek
- Fix number input type for values over 1000 (#2163) @mvorisek
- Simplify Model::getIdField() method uses (#2170) @mvorisek
- Fix missing typecast in DragHandler::onOrder() method (#2167) @mvorisek
- Infer Dropdown/Lookup field type from control seed (#2165) @mvorisek
- Fix missing bulk action input typecast (#2164) @mvorisek
- Fix "php-code-coverage" v11 compatibility (#2161) @mvorisek
- Fix docs build CI (#2160) @mvorisek
- Make checkbox /wo label in table column fitted (#2154) @mvorisek
- Fix Lookup initial change detection (#2092) @mkrecek234
- Upgrade JS deps (#2153) @mvorisek
- Prevent JsCallback chain to be evaluated twice (#2150) @mvorisek
- Minor table columns improvements (#2149) @mvorisek
- Allow Grid::addModalAction() button to be disabled (#1868) @mkrecek234
- Fix Table\Column\ActionButtons duplicate HTML IDs (#2148) @mvorisek
- Adjust for strongly typed name property (#2144) @mvorisek
- Fix CS v3.47.0 (#2140) @mvorisek
- Fix CS v3.46.0 (#2139) @mvorisek
- Fix CS v3.45.0 (#2138) @mvorisek
- Fix phpstan v1.10.50 (#2135) @mvorisek
- Upgrade Fomantic-UI to 2.9.4-beta.20 (#2134) @mvorisek
- Add override method attributes (#2130) @mvorisek
- Add phpunit v10 testing support (#2133) @mvorisek
- ErrorException should not be wrapped (#2132) @mvorisek
- Drop Behat CI for PHP 7.4 and 8.0 (#2131) @mvorisek
- Fix CI (#2127) @mvorisek
- Adjust to earlier typecasting exceptions (#2124) @mvorisek
- Fix grammar in README (#2123) @mudit-loya
- Fix grammar in README (#2122) @szepeviktor
- Run PostgreSQL tests with implicit order (#2121) @mvorisek
- Improve Multiline tests (#2105) @mvorisek
- Upgrade Fomantic-UI to 2.9.4-beta.11 (#2119) @mvorisek
- Prohibit error response caching (#2118) @mvorisek
- Fix demos readonly rollback with nested transactions (#2116) @mvorisek
- Remove func_num_args() checks in favor of phpstan only (#2115) @mvorisek
5.0.0
Major features
- Replace $_GET/$_POST/$_FILES with App::getRequestXxx() (#2101) @abbadon1334
- Convert docs to markdown (#2080) @mvorisek
- Add fractional seconds support for time/datetime form control (#2067) @mvorisek
- Impl. response using PSR-7 interface (#1706) @abbadon1334
- Multiple JS statements must be passed in JsBlock (#1997) @mvorisek
- No hardcoded template attributes (#1979) @mvorisek
- Move non-View JxXxx classes into Js namespace (#1872) @mvorisek
- Upgrade Vue.js to v3 and drop IE11 support (#1915) @mvorisek
Breaking changes
- Preserve full page path in App::url() method (#2095) @abbadon1334
- Drop $useRequestUrl param from App::url() method (#2107) @mvorisek
- Reintroduce App::$page as App::$urlBuildingIndexPage (#2096) @abbadon1334
- Require tag name in App::getTag() explicitly (#2102) @mvorisek
- View::set() can be used to set content property only (#2075) @mvorisek
- Narrow URL array phpdoc types (#2065) @mvorisek
- Rename Form\Control\Dropdown::isMultiple property (#2064) @mvorisek
- Remove Table\Column\Delete class (#2058) @mvorisek
- Rename "btn" to "button" (#2050) @mvorisek
- Remove default html type from Input control class (#2030) @mvorisek
- Rename Form::error/success methods to jsError/jsSuccess (#2001) @mvorisek
- Form\Control::onChange() should not accept JS code as string (#1999) @mvorisek
- Accept only string|null as template value strictly (#1989) @mvorisek
- Drop View::addStyle() method in favor of View::setStyle() (#1978) @mvorisek
- Drop Persistence\Post class (#1974) @mvorisek
- Drop AbstractView::initDefaultApp and App::init methods (#1968) @mvorisek
- Unimplement JsExpressionable from View (#1957) @mvorisek
- Unimplement JsExpressionable from JsCallback (#1955) @mvorisek
- View::js()/on() returns null when JS chain is explicitly given (#1944) @mvorisek
- Fix missing JS preventDefault/stopPropagation (#1942) @mvorisek
Other changes
- Fix Firefox Behat testing stability (#2113) @mvorisek
- Do not mutate App::$request during testing (#2111) @mvorisek
- Always assert request URL path starts with '/' (#2110) @mvorisek
- Add App::url() method tests (#2109) @mvorisek
- Unify App::url() code, convert string page to array early (#2108) @mvorisek
- Drop unused App portals code (#2106) @mvorisek
- Improve InlineEdit keyboard testing (#2104) @mvorisek
- Fix CS v3.26.0 (#2103) @mvorisek
- Replace call_user_func() calls as much as possible (#1625) @mvorisek
- Add PHP 8.3 support (#2100) @mvorisek
- Add Grid bulk action methods (#1920) @mhuser
- Fix CS v3.24.0 (#2098) @mvorisek
- Fix phpstan v1.10.31 (#2097) @mvorisek
- Rebase to latest develop branch (#2094) @mkrecek234
- Test docs build using CI (#2086) @mvorisek
- Fix CI for updated exception message (#2093) @mvorisek
- Extend Symfony dependency to 6.x (#2089) @abbadon1334
- Land major header/indent rst to md changes (#2085) @mvorisek
- Rename docs files from rst to md (#2083) @mvorisek
- Fix typos (#2077) @szepeviktor
- Fix Grid IPP selector (#2017) @mkrecek234
- Use camelCase in docs (#2074) @mvorisek
- Fix radio form control support (#2072) @mvorisek
- Bundle own flatpickr fork (#2071) @mvorisek
- Fix some phpmd advisories (#2066) @mvorisek
- Allow radio form control to be unchecked (#2063) @mvorisek
- Remove StepExecutorTrait::jsStepSubmit exception handling (#2062) @mvorisek
- Fix Fomantic-UI ":first-child" selectors for immediately closed form (#2061) @mvorisek
- Fix multi step executor args passing /wo preview (#2060) @mvorisek
- Upgrade JS deps (#2045) @mvorisek
- Always emit an exception when some expected POST param is not set (#2059) @mvorisek
- Fix JsCallbackExecutor execute args (#2056) @mvorisek
- Bundle highlight.js with GH dark style (#2057) @mvorisek
- Fix DockerFile read-only SQLite error in demos (#2055) @abbadon1334
- Fix redirect submit event to native form element (#2051) @mvorisek
- Add conditional form test (#2054) @mvorisek
- Fix CS v3.17.0 (#2048) @mvorisek
- Upgrade Fomantic-UI to v2.9.3-beta.35 (#2053) @mvorisek
- Improve form JS init selector (#2049) @mvorisek
- Fix CS to use self:: for phpunit static method calls (#2047) @mvorisek
- Unify Multiline expr calculation (#2046) @mvorisek
- Add various Behat tests (#2044) @mvorisek
- Add TreeItemSelector test (#2042) @mvorisek
- Drop Vue.js dynamic lookup as not supported by "vue-fomantic-ui" (#2041) @mvorisek
- Improve table column filter coverage (#2038) @mvorisek
- Fix Behat coverage collection when page navigates (#2037) @mvorisek
- Add InlineEdit autoSave test (#2036) @mvorisek
- Replace custom Selenium test driver with a forked package (#2035) @mvorisek
- Improve Behat testing stability with Firefox (#2033) @mvorisek
- Add cross-request RW demos Behat testing (#2031) @mvorisek
- Upgrade Fomantic-UI to 2.9.3-beta.20 (#2029) @mvorisek
- Add App::terminate() stream support (#2028) @DarkSide666
- Fix UploadImage::clearThumbnail default image reset (#2027) @DarkSide666
- Fix example code in readme (#2024) @DarkSide666
- Fix JsBlock refactor (#2019) @mkrecek234
- Fix JsBlock refactor (#2013) @mkrecek234
- Fix card section null description (#2014) @mkrecek234
- Fix CardDeck shared executor owner (#2012) @mvorisek
- Upgrade Fomantic-UI to 2.9.3-beta.4 (#2011) @mvorisek
- Unify CardDeck toast with Crud (#2010) @mkrecek234
- Always reload whole CardDeck after UA (#2007) @mvorisek
- Do not handle exception in UserAction ModalExecutor (#2008) @mvorisek
- Card with entity UA must not reload data again (#2005) @mvorisek
- Fix Card in CardDeck reload (#2004) @mvorisek
- Fix phpstan v1.10.0 (#2003) @mvorisek
- Fix Fomantic-UI proxied $.extend() (#1998) @mvorisek
- Share user action executor for multiple entities (#1980) @mvorisek
- Upgrade Fomantic-UI to v2.9.2 (#1971) @mvorisek
- Fix ScopeBuilder DateTime typecasting (#1995) @mvorisek
- Prevent object to JSON encode in App (#1993) @mvorisek
- Reintroduce #1981 - custom decimal separator for numeric types (#1987) @mvorisek
- Revert "#1981 - custom decimal separator for numeric types" (#1986) @mvorisek
- Fix CS v3.14.0 (#1982) @mvorisek
- Add support for custom decimal separator for numeric types (#1981) @mvorisek
- Fix unlimited user actions support in Card (#1977) @mvorisek
- Interpolate colors in ColorRating table column decorator on runtime (#1975) @mvorisek
- Upgrade to Fomantic-UI v2.9.1 (#1969) @mvorisek
- Optimize realpath() for template loading (#1967) @mvorisek
- Unify CardDeck menu to use native Menu (#1965) @mvorisek
- Reintroduce html viewport tag (#1962) @mvorisek
- Remove no longer needed JS API data clear (#1963) @mvorisek
- Upgrade Fomantic-UI to 2.9.1-beta.36 (#1964) @mvorisek
- Lint LESS files using Stylelint (#1948) @mvorisek
- Fix template caching, allow app to be released (#1961) @mvorisek
- Adjust to the latest atk4/data (#1960) @mvorisek
- Add country flag table column decorator (#1958) @DarkSide666
- Fix active filter column icon (#1951) @mvorisek
- Allow to search multiple words across multiple columns in Grid (#1946) @mkrecek234
- Remove redundant parentheses in JS (#1949) @mvorisek
- Fix sort click event added twice with dynamic scroll (#1943) @mvorisek
4.0.0
Major features
- Drop
$class
param fromView
constructor (#1791) @mvorisek - Use native font stack, drop external Lato font (#1784) @mvorisek
- Bundle all external assets (/wo twemoji) (#1785) @mvorisek
- Impl. transactional session management (#1740) @mvorisek
Breaking changes
- Parameter names must be always passed to JsFunction (#1927) @mvorisek
- Rename Modal::{show, hide} methods (#1912) @mvorisek
- Refactor JS code and improve coverage (#1894) @mvorisek
- Remove obsolete notify and spinner JS code (#1892) @mvorisek
- HTML5 void tag App::getTag() aware handling (#1884) @mvorisek
- Drop "atk.version()" JS function (#1885) @mvorisek
- Always observe Modal changes (#1881) @mvorisek
- Drop Form::addControls() method (#1871) @mvorisek
- Improve App::getTag() (#1839) @mvorisek
- Fix many missing/wrong types (#1831) @mvorisek
- Rename all properties to camelCase (#1814) @mvorisek
- Unify Control readOnly property case to camelCase (#1810) @mkrecek234
- Drop
$class
param fromView
constructor (#1791) @mvorisek - Adjust renamed "short_name" to "shortName" (#1775) @mvorisek
- Add/remove specific HTML class /w "class.xxx" seed (#1770) @mvorisek
- Remove View::id prop in favor of NameTrait::name (#1769) @mvorisek
- Fix and test nothing is GET sticky globally (#1671) @mvorisek
- Move SessionTrait from atk4/core and separate handler (#1733) @mvorisek
Other changes
- Fix Table\Column\Labels for null fields (#1939) @mkrecek234
- Add support for custom Fomantic-UI Modal.onHidden callback (#1938) @mvorisek
- Fix public path resolution with symlinks (#1936) @mvorisek
- Fix "this" in JS not rebound when wrapped in JS function twice (#1930) @mvorisek
- Fix Card with entity action, entity must not reload (#1929) @mvorisek
- Fix lister with JS paginator and JS table events (#1933) @mvorisek
- Throw early to prevent corrupted JS modal manager state (#1931) @mvorisek
- Fix modal error handling when opening (#1925) @mvorisek
- Fix DropdownCascade /w custom row render callback (#1926) @samsouthardjr
- Fix input tag boolean HTML attribute render (#1923) @mvorisek
- Fix no "use script" for empty/external script tag (#1922) @mvorisek
- No unneeded/nested jQuery.ready() wrap (#1919) @mvorisek
- Enforce global Fomantic-UI settings (#1917) @mvorisek
- Minor changes, fix phpstan for the latest atk4/data (#1916) @mvorisek
- Adjust to Field::type not null (#1914) @mvorisek
- Encode JS strings using single quotes (#1913) @mvorisek
- Fix modal exception when nested modal is already shown (#1903) @mvorisek
- Add drag and drop test (#1907) @mvorisek
- Enable JS strict mode for every script tag (#1906) @mvorisek
- Fix SQL multiply of 2 bind params in multiline demo for PostgreSQL (#1905) @mvorisek
- Upgrade vue with unified LF line breaks (#1904) @mvorisek
- Use non-minified CSS/JS files in Docker demos (#1902) @mvorisek
- Fix Multiline /w SQL expr (#1818) @mvorisek
- Fix demos Dockerfile (#1899) @abbadon1334
- Update JS deps (#1898) @mvorisek
- Improve jsdoc CS (#1897) @mvorisek
- Separate public files into css/ and js/ (#1895) @mvorisek
- Collect JS coverage from Behat testing (#1891) @mvorisek
- Add non-minified JS files and sourcemaps (#1890) @mvorisek
- Upgrade to Fomantic-UI v2.9.0 beta 326 (#1866) @mvorisek
- Validation exception can be rendered only if a form field exists (#1888) @mvorisek
- Fix accordion section animation smoothness (#1882) @mvorisek
- Fix implicit control field type (#1878) @mvorisek
- Fix Behat CoverageUtil for config with no excluded dir (#1876) @mvorisek
- Unify nowdoc CS (#1874) @mvorisek
- Bundle external shopify/draggable JS source (#1873) @mvorisek
- Fix phpunit provider coverage (#1870) @mvorisek
- Fix ID executor input UI typecast (#1864) @mvorisek
- Bundle twemoji svg country flags (#1867) @mvorisek
- Add external Fomantic UI files via "fomantic-ui" package (#1865) @mvorisek
- Fix nested accordion open (#1863) @mvorisek
- Fix click event bubbling in Table::onRowClick() II. (#1859) @mkrecek234
- Fix coverage drop from 1840 PR (#1852) @mvorisek
- Test CardDeck like Crud (#1851) @mvorisek
- Fix click event bubbling in Table::onRowClick() (#1655) @ibelar
- Fix 1836 AccordionSection activate (#1841) @mvorisek
- Fix Reference::getTheirFieldName getter usage (#1854) @mvorisek
- Add PHP 8.2 support (#1776) @mvorisek
- Fix CS v3.11.0 (#1850) @mvorisek
- Fix CardDeck action /w entity (#1845) @mkrecek234
- "icon" FUI CSS class is implied by icon component (#1842) @mvorisek
- Add table column filter support for JSON type (#1747) @DarkSide666
- Fix coverage static analysis cache and move util for reuse (#1840) @mvorisek
- Fix filesystem import demo (#1834) @mvorisek
- Enable phpstan bleading edge and strict rules (#1832) @mvorisek
- Improve ExecutorFactory and View::add phpstan types (#1830) @mvorisek
- Add imports for commonly used classes (#1829) @mvorisek
- Fix clickable data UserAction (#1828) @mvorisek
- Adjust atk4/data Model::tryLoad returning null (#1797) @mvorisek
- Delete Codefresh CI (#1806) @mvorisek
- Fix '0' instead of '' default value for Lookup (#1816) @mvorisek
- Minor CS cleanup (#1815) @mvorisek
- Adjust to renamed data field properties (#1808) @mvorisek
- Fix some phpstan findings (#1807) @mvorisek
- Adjust to updated Field::getReference() and renamed Model::getRef() (#1804) @mvorisek
- Use fixed PHP CS Fixer v3.9.4 (#1803) @mvorisek
- Do not use broken PHP CS Fixer v3.9.1 (#1801) @mvorisek
- Adjust for Model persistence getter/setter (#1800) @mvorisek
- Fix atk4_money typecast /w null and large numbers (#1798) @mvorisek
- Add custom decimal separator support for atk4_money type (#1763) @mkrecek234
- Add UI datetime timezone support (#1761) @mvorisek
- Adjust to the latest atk4/data (#1796) @mvorisek
- Cherrypick non-functional changes from 1687 PR (#1794) @mvorisek
- Fix
interactive/popup.php
cart demo (#1793) @mvorisek - Auto discover public URL of local resources (#1788) @mvorisek
- Test real upload in Behat (#1783) @mvorisek
- Fix "Unexpected output detected" displayed twice (#1779) @mvorisek
- Fix nested modal support (#1765) @mvorisek
- Add support for file drop for Upload control (#1383) @mvorisek
- Adjust to unimplemented NameTrait from TrackableTrait (#1774) @mvorisek
- Fix duplicated Modal code when loaded using AJAX (#1771) @mvorisek
- Remove /index.php (#1767) @mvorisek
- Fix cb_view param type from #1671 (#1768) @mvorisek
- Add health check to phpunit webserver (#1766) @mvorisek
- Add ability to pass defaults to Table\Column\Link formatter (#1755) @DarkSide666
- Fix placement of table column filter dropdowns (#1752) @DarkSide666
- Fix phpstan v1.4.7 (#1750) @mvorisek
- fix visible flag in CardTable (#1745) @DarkSide666
- Fix Lookup add new button (#1743) @mkrecek234
- Fix self-signed cert for MSSQL CI (#1739) @mvorisek
- Use CDN backed domain for stable resources (#1736) @mvorisek
- Test /w Oracle 18c (#1729) @mvorisek
- Remove Lock demo Models (#1725) @mvorisek
- Allow to suppress warning from non-Atk4 files (#1726) @mvorisek
- Fix write data action usage in demo (#1724) @mvorisek
- Compact/unify phpdoc CS (#1722) @mvorisek
- Fix user action usage /w entity (#1721) @mvorisek
3.1.0
What’s Changed
- Add late output error test (#1719) @mvorisek
- Remove unsafe script tag replace (#1716) @mvorisek
- Fix datetime grid filter bug on empty input (#1718) @mkrecek234
- Fix form2.php demo (#1711) @ibelar
- Setup Flatpickr locale from ui persistence data (#1714) @mvorisek
- Handle late error when exception handler is active (#1710) @mvorisek
- Fix no longer supported native MSSQL DSN for CI (#1712) @mvorisek
- Add filtering possibility for
float
andatk4_money
DBAL types (#1703) @mkrecek234 - Add test for unrecoverable App error (#1709) @mvorisek
- Handle unhandled Callback exception using custom exception (#1702) @mvorisek
- Adjust to renamed Model::onlyFields and Model::loaded methods (#1701) @mvorisek
- Adjust to EntityFieldPair generics for Phpstan (#1700) @mvorisek
- Align with the latest atk4/core (#1697) @mvorisek
- Allow Overriding table on grid (#1695) @ibelar
- Fix UI typecast for earlier nullable assertion (#1690) @mvorisek
- Upgrade phpstan to v1.0 (#1686) @mvorisek
- Fix DB config for CI webserver started with one env (#1683) @mvorisek
- Fix Behat for CI (#1682) @mvorisek
- Do not reuse Oracle connections for CI (#1678) @mvorisek
- Fix testing with a real DBs (#1675) @mvorisek
- Add Behat coverage (#1674) @mvorisek
- Fix all memory leaks (#1672) @mvorisek
- Fix some phpstan warnings (#1580) @mvorisek
- Adjust to CS fixer v3.2 rules (#1670) @mvorisek
- Feature/Panel Action Executor (#1650) @ibelar
- Fix UI typecasting (#1667) @mvorisek
- Allow to initialize CascadeDropdown values (#1659) @ibelar
- Test with PHP 8.1 (#1660) @mvorisek
- Rename "money" type to "atk4_money" type (#1665) @mvorisek
- Adjust to no "password" type (#1666) @mvorisek
- Fix spaces before/after "=>" in comments (#1663) @mvorisek
- Refactor callback url test (#1662) @mvorisek
- Fix Lookup form control (#1661) @ibelar
- Fix Multiline Model validate (#1658) @ibelar
- Fix #1645 (#1654) @abbadon1334
- [fix] Id generation when using Executor as Modal View (#1575) @ibelar
- Feature/Virtual Page Action Executor (#1649) @ibelar
- Refactor Behat\Context methods (#1652) @ibelar
- Fix JS lock file and JS CI lint (#1648) @mvorisek
- Fix debouce for Behat testing (fake jQuery.active) (#1524) @mvorisek
- Update JS and Fomantic UI to 2.8.8 (#1647) @ibelar
- Improve memory leak testing (#1642) @mvorisek
- Bump versions for the next release (#1637) @mvorisek
- [fix] Js Dependencies (#1636) @ibelar
Breaking Changes
3.0.0
Major Breaking Changes
- Drop PHP v7.3 support and upgrade CS Fixer to v3 (#1632) @mvorisek
- Upgrade atk4/data with strict entity model (#1623) @mvorisek
Breaking Changes
Other Changes
- Distribute Behat Context (#1628) @mvorisek
- Fix typo (#1633) @JosepBernad
- Upgrade phpstan to level 6 (#1630) @mvorisek
- Adjust code for removed Field::reference property (#1626) @mvorisek
- Adjust code for private Model::data prop (#1624) @mvorisek
- [fix] Demo lister template (#1622) @ibelar
- Adjust code for removed Model::newInstance() method (#1621) @DarkSide666
- Use "dev" version for development (#1620) @mvorisek
2.4.0
This release brings a lot of focus code-sense and hinting. If you are using modern PHP IDE, you will feel benefit of autocompletion almost everywhere.
Magical hintable fields
The hintable support is another major game changer in sense of cleaness and maintainability. Annotate model fields and used them magically as a real properties.
Usage
add Model class phpdoc:
/**
* @property string $name @Atk4\Field()
* @property int $age @Atk4\Field()
* @property Standard $mother @Atk4\RefOne()
*/
class X extends Model
{ ...
Use the properties either as standard value property:
$model->age // instead of $model->get('age')
$model->age = 25 // instead of $model->set('age', 25)
You will also notice that adding fields in examples is using a different syntax:
$this->addField($this->fieldName()->age); // instead of addField('age');
What’s Changed
- Fix path to /public/ in releases, use CDN (#1619) @mvorisek
- Update release builder (#1616) @mvorisek
- Use RefMany, strict checks relaxed in upstream (#1618) @mvorisek
- Update hintable dep to 1.2.x (#1617) @mvorisek
- Use loadOne for model from one ref (#1615) @mvorisek
- [fix] registerExecutor parameter type (#1613) @ibelar
- Use TraitUtil for trait detection (#1612) @mvorisek
- Use simpler model->getId() where possible (#1609) @mvorisek
- Prefix/test also all ID fields (#1595) @mvorisek
- Use also different actual name (#1593) @mvorisek
- [fix] VirtualPage inside VirtualPage (#1603) @ibelar
- [fix] - Demo Tutorial (#1600) @ibelar
- [fix] - Dropdown cascade (#1599) @ibelar
- Fix for nice captions (adjust for latest atk4/data) (#1594) @mvorisek
- Fix autoload for demos with classmap authoritative (#1585) @mvorisek
- Fix CS/Behat config (#1588) @mvorisek
- [fix] Demo using containsMany (#1586) @ibelar
- Update/Upgrade package dependency (#1572) @dependabot
- Fix for data 819/820 (#1583) @mvorisek
- Callback accepts \Closure only (#1582) @mvorisek
- Improve PHPStan to level 5 (#1581) @mvorisek
- Better hasOne usage (#1579) @mvorisek
- Fix all non-undefined PHPStan ignores 1/2 (#1554) @mvorisek
- Fix App::encodeJson regex backtrack limit issue (#1573) @mvorisek
- Fix strict types in App::getTag() (#1541) @PhilippGrashoff
- [fix] Multiline Typecase (#1571) @ibelar
- [fix] Property access for Modal Executor (#1565) @ibelar
- [fix] ReadMe link (#1566) @ibelar
- [fix] Lookup add condition after model is set (#1558) @ibelar
- Requiring atk4/data is enough (#1557) @mvorisek
- [fix] Card Deck demo (#1552) @ibelar
Breaking Changes
- Feature/Executor refactor (#1550) @ibelar
- [fix] - Js search and popupService (#1604) @ibelar
- [fix] VirtualPage (#1602) @ibelar
- Feature/ Add Lookup to Multiline (#1577) @ibelar
Major Features
2.3.5
FC for NS case update II.
2.3.2
FC for NS case update
2.3.1
Fix versioning