com_componentbuilder
component
3.2.5
- Fix Save failed issue in dynamicGet. #1148
- Fix Checked Out to be null and not 0. (#1194)
- Fix created_by, modified_by, checked_out fields in the compiler of the SQL. (#1194)
- Fix the noticeboard to display Llewellyn's Joomla Social feed
- Add [AllowDynamicProperties] in the base view class for J5
- Added new import powers for custom import of spreadsheets.
- Add AllowDynamicProperties (Joomla 4+5) to view class to allow Custom Dynamic Get methods to work without issues.
- Add the DateHelper class and improve the date methods.
- Add simple SessionHelper class.
- Add first classes for the new import engine.
- Update the trashhelper layout to work in Joomla 5.
- Update all core date fields in table class. (#1188)
- Update created_by, modified_by, checked_out fields in table class.
- Remove all backward compatibility issues, so JCB will not need the [Backward Compatibility] plugin to run.
- Move the _prepareDocument above the display call in the base view class
- Move the setDocument and _prepareDocument above the display in the site view and custom admin view.
- Move all [TEXT, EDITOR, TEXTAREA] fields from [NOT NULL] to [NULL]
- Improve the [VDM Registry] to be Joomla Registry Compatible
- Move all registries to the [VDM Registry] class
- Implementation of the decentralized Super-Power CORE repository network. (#1190)
com_componentbuilder
component
4.0.0
- Fix the plug-in installer script builder bug #1067
- Fix Event triggers for Joomla 4 and 5 builds.
- Add fix to the update script, so that upgrading JCB from Joomla 3 to 4 will not fail.
- Fix plugin field selection
- Fix plugin params tab layout
- Fix repeatable layout #1076
- Fix customfilelist field to conform to the new namespacing conventions. #1094
- Fix [Set String Value] in placeholder table to store the value as a base64 string.
- Fix the search area layout.
- Fix the search area code line selection.
- Fix the input edit button for custom fields.
- Start fixing the field view in Joomla 4. #1096
- Fix the sql build feature. #1032
- Fix the CustomfolderlistField #1094
- Add view list and single name fix.
- Add component code name fix.
- Fix the media field size limitation. #1109
- Fix version_update column size.
- Fix autoloader timing, and loading.
- Fix the admin.css file loading on dashboard. #1112
- Fix dynamic get data-type default to 0. #1110
- Fix the missing model call. #1114
- Fix the wrong $date call. #1115
- Fix the customfolderlist field. #1120
- Add menus for languages, servers, get snippets to J4 #1095
- Add issue templates
- Add Factory class to the J5 Event class. #1093
- Add the new layout to list fields (GUI UPDATE)
- Add power path override option on component level.
- Add the compiler menu back.
- Add reset list of powers.
- Add Joomla powers for namespace dynamic management.
- Add fallback option to ensure that all JCB tables and fields exist.
- Add dynamic datatype update to schema field check.
- Add the BaseDatabaseModel use statement to custom site view controller. #1119
- Improved the Schema Table update engine.
- Improved the Schema Table update engine (more).
- Remove the SQL update, to only use the Schema updates of table columns to avoid collusion.
- Force autoloader to always load.
- Move the powers autoloader to its own file.
- Implement the Joomla Powers in JCB code, to move away from JClasses.
com_componentbuilder
component
4.0.1
- Fix auto build from SQL in Joomla 4.
- Fix permission issue for admin views.
- Fix registry class methods return type
- Fix Gitea Contents class functions
- Fix subform set methods
- Fix the metadata, metadesc, metakey database issue
- Fix function mismatch call in the compiler power class.
- Fix init feature to only add missing powers
- Fix controller postSaveHook function, for correct model class in Joomla 4 and 5
- Fix app instances (mismatch) in the install script and schema class when installing from CLI
- Fix subform layout of uikit in JCB
- Add in JCB gitea push feature to help maintain JCB core features.
- Add extending options to interfaces.
- Add repositories for better integration with gitea
- Add new Data classes
- Add new subform classes
- Add push options to Joomla Power
- Add option to use placeholders in Joomla Power namespaces.
- Change the extendsinterfaces field to allow null, #1139
- Update the Schema class to also update null mismatching if needed
- Refactored the Data classes
- Update all list and custom fields to use the new layouts
- Complete the Joomla Power Init and Reset features
- Improved the Joomla Power Push path
com_componentbuilder
component
4.0.2
- Fix site view form missing classes in J4+
- Fix permissions tab in items in J4+
- Fix site display controller checkEditId function in J4+
- Fix broken toolbar call in HtmlView in J4+
- Fix missing scripts and styles fields and methods in the site admin view model
- Fix helper area
- Fix database mySql update in J4+
- Fix abstract schema class function check default index warring
- Fix dynamicGet so that the table values will load again. #1155
- Add class methods to the HtmlView classes in J4+
- Add option to use powers in preflight event in the installer class
- Add more pure JS to the dynamic get area
- Add native plugin builder for Joomla 4 & 5
- Add basic API for admin views
- Update subform field layout across JCB for cleaner look
- Remove expansion feature
- Remove phpspreadsheet completely from Joomla 4+
com_componentbuilder
component
4.0.3
- Fix [Save as Copy] error in library. #1162
- Fix error when no components exist. #1164
- Fix search page error caused by File class.
- Fix usergrouplist compiler triggers. #1100
- Fix default database fields to allow NULL. #1169
- Fix power list field to enable search. #1167
- Fix missing working path in zip process.
- Fix dynamic get issue in demo site view.
- Fix demo site view to display files.
- Fix field type init message.
- Fix dynamic download for site area with correct namespace.
- Fix missing edit button on fields in related views.
- Fix dashboard display.
- Fix namespace issue that broke the linker.
- Add [push] option to powers area.
- Add power field type integration [init, reset, push].
- Expand the Demo component in JCB v4 to include more advanced features.
- Ensure type-agnostic comparisons by casting to CHAR in joins for dynamic get.
- Restore search option in [use] field of related views.
com_componentbuilder
component
4.1.0
- Fix Save failed issue in dynamicGet. #1148
- Fix Checked Out to be null and not 0. (#1194)
- Fix created_by, modified_by, checked_out fields in the compiler of the SQL. (#1194)
- Fix the noticeboard to display Llewellyn's Joomla Social feed
- Add [AllowDynamicProperties] in the base view class for J5
- Added new import powers for custom import of spreadsheets.
- Add AllowDynamicProperties (Joomla 4+5) to view class to allow Custom Dynamic Get methods to work without issues.
- Add the DateHelper class and improve the date methods.
- Add simple SessionHelper class.
- Add first classes for the new import engine.
- Add init_defaults option for dynamic form selection setup (to int new items with default values dynamically)
- Updated the admin-tab-fields in add-fields view. #1205
- Update the trashhelper layout to work in Joomla 5.
- Update all core date fields in table class. (#1188)
- Update created_by, modified_by, checked_out fields in table class.
- Update all JCB 4 tables to utf8mb4_unicode_ci collation if misaligned
- Remove all backward compatibility issues, so JCB will not need the [Backward Compatibility] plugin to run.
- Remove Custom Import Tab from admin view
- Move the _prepareDocument above the display call in the base view class
- Move the setDocument and _prepareDocument above the display in the site view and custom admin view.
- Move all [TEXT, EDITOR, TEXTAREA] fields from [NOT NULL] to [NULL]
- Improve the [VDM Registry] to be Joomla Registry Compatible
- Move all registries to the [VDM Registry] class
- Implementation of the decentralized Super-Power CORE repository network. (#1190)
- Started compiling JCB4 on Joomla 5 with PHP 8.2
- Move all internal ID linking to GUID inside of JCB 4
- Improved the customcode and placeholder search features
com_componentbuilder
component
4.1.1
- Fix issue with loading the Component Builder Wiki.
- Fix a bug in Dynamic Get JavaScript that causes table columns to not load.
- Adds option to export Language Translations.
- Adds library phpspreadsheet to JCB.
- Add import item example to demo component.
- Adds the Import Function to the Demo Component.
- Adds the Component Commands Plugin to the CLI for Import of spreadsheet data-sets.
- Add all needed Powers to the release package, to speed-up the build of the demo component.
- Adds new JCB package engine.
- Adds advanced version update notice to the Component Builder Dashboard.
- Adds Initialize, Reset, and Push functionality to the Repository entities.
- Updates the Superpower class with the GetRemote class in the plugin.
- Refactored initialization flow to accommodate future scalability and integration with all designated areas.
- Refactor the Creator Builders class.
- Completely refactors the class that builds the Component Dashboard. #1134
- Completely refactors the SQL teaks and SQL dump classes.
- Changes J4 fields to allow NULL.
- Refactor the FieldString and FieldXML classes.
- Move all banners to GitHub.
- Ensures the super power autoloader triggers the correct repositories.
- Resolves the Database Updating issue in the compiler. #1212,#1209
com_componentbuilder
component
4.1.2
- Fix the template and layout linker for packages.
- Fix auto-check(in) method for Joomla 4/5 compatibility
- Fix Custom Rule Validation Bug
- Fix issues in the site view HtmlView caused by the refactor, including missing class calls and outdated function references.
- Fix issue where the DatabaseSchemaCheckAll pulled all Component Builder tables into DB on install. #1253
- Fix issue in the Dynamic Get when the value key is 0 it wouldn't add the 'WHERE' statement to the generated code. #1254
- Fix issue where custom powers was not added to PowerloaderHelper. #1256
- Fix normalization issue when compiling on Windows systems. #1219
- Fix installer issue on Joomla 6 where components containing multiple plugins failed during installation.
- Add native module builder for Joomla 4/5
- Add Joomla 6 build option
- Adds check to ensure expert mode subforms in the Demo Component remain set and unchanged when user lacks edit permissions
- Add functionality to add component changelog into the package if configured.
- Add a default VARCHAR(36) length to easily create fields intended to store GUID values.
- Refactor dynamic get methods into dedicated classes
- Refactores event handling (contentPrepare, titlePrepare, contentBeforeDisplay, contentAfterDisplay) to use Joomla 5's native event dispatcher via the model's new getDispatcher() method.
- Updates table classes to properly support NULL values, both in the store() method and in table variable definitions. #1245
- Refactors the Compiler Model by dropping deprecated calls and adopting Joomla 5+ conventions
- Refactors Compiler Controller to remove deprecated usage and follow Joomla 5+ best practices
- Refactor PHP classes for building HTML view files in admin and site views to align with Joomla 5+ standards.
- Change radio buttons with a empty option to save Datatype CHAR instead of TINYINT as other radio buttons. #1252
- Refactor compiler Move file update to classes.
- Refactor compiler Move plugin and module fields and rules files mover to classes.
- Completely refactors the Compiler Dashboard to align with Joomla 5+ architecture and Bootstrap 5 standards.
- Update the file uploader in the Demo Component for more dynamic file display and naming.
- Update the SQL file dump generator to handle large SQL dumps in batches, ensuring safe and reliable database imports.
- Update example hints in the field expert mode options.
- Remove setDocumentTitle method from the admin view since it is not being used by Joomla. #1255
- Move Joomla DB handling into compiler injector flow
- Migrates view HTML classes to use getModel() directly instead of the deprecated magic get() calls to model methods.
- Extractes the setAutoCheckIn() and setCheckInCall() logic into a dedicated CheckInNow class for cleaner design.
- Replace all direct $app->input property calls with the recommended $app->getInput() method across the entire codebase.
- Unpublish Joomla 6 Backward Compatibility Plugin
- Improves validation handling of Fields by ensuring field validation rules are properly registered
- Replace StringHelper with the correct Super Power key so it loads in the Compiler Controller
com_componentbuilder
component
4.1.3
- Enhanced security in edit views by moving access validation into the model, ensuring protection even when Joomla bypasses the controller layer.
- Fix the linked [new] button to use the correct init_default params.
- Fix the Components list view to better display long website urls.
- Fix language text area css. #1264
- Add fix for empty currentFullPath in the Structuresingle class.
- Fix the buildSelectPart method to not access an empty select value in the Queries class.
- Fix that ensure that we always load and int into loadUserById.
- Fix the subform permission behaviour to use removeField.
- Fixed linked admin views with New and New & Close buttons to correctly initialize fields using global unique IDs and default conventions.
- Fixed a bug caused by missing option settings in the model configuration.
- Fix permission issue in the list view. #1266
- Fix an issue where the Email Helper send() function was executed twice.
- Fix a issue where layouts added to the PHP Ajax Model were not loaded during compilation.
- Fix the Compiler success message to display both build seconds and project weeks.
- Fix bug in the search editor in JCB Search Engine.
- Fix issue where Custom Gets linked to a Site view did not ship correctly with JCB packages. #1272
- Fix issue where the Icon linked to a Custom Admin Menu did not ship with JCB packages. #1271
- Fix and Improve Normalize Class to better handle different files Linked to JCB packages. #1274
- Fix an issue with the JCB version notice on Joomla 5.
- Fix an issue where components without a component image failed to compile successfully. #1282
- Fix issue where the Language Translations export button was not displayed due to recent toolbar changes.
- Fix a bug that caused language filters to malfunction because of a broken field configuration. #1278
- Fix issue where components without a layout added to the Component failed to compile correctly. #1132
- Resolved missing language strings when linked admin views are also configured as site edit views.
- Add version 5 to the version 4 update server, for easier upgrade path.
- Added user access verification logic in the model to prevent unauthorized direct item loading.
- Add method to unify getDatabase handling across Joomla versions and prevent undefined method calls. #1270
- Add Development Valuation Model to calculate JCB component pricing.
- Add functionality to push JCB packages to Self hosted Git system that uses a self signed SSL.
- Add functionality that will include Validation Rules linked to fields in JCB packages. #1273
- Add a Pull button to all main JCB entities, allowing a complete reset of a selected entity together with all entities linked to it.
- Add functionality to the Compiler to automatically pull missing entities from a remote repository when they are referenced by a component but not present locally in JCB.
- Add new Compiler Classes to modernise ancient tech previously embedded in the compiler and replace it with a clean, modern architecture.
- Add a dedicated CLI plugin to the JCB core, enabling direct interaction with JCB through the Joomla CLI console.
- Add structured CLI commands and options to Init, Reset, Push, and Pull JCB entities via the Joomla CLI.
- Add full support for compiling Components directly via the CLI, enabling automated and headless build workflows.
- Add functionality to place Super Power classes into the component src folder for both Admin and Site areas, using the correct namespaced structure.
- Add functionality to the CLI compiler to directly install compiled components and apply compiler options used during compilation.
- Add functionality to the compiler to automatically pull a missing component from a remote repository when a compilation is triggered and the component is not locally available.
- Add functionality to add and replace classes in module and plugin src folders that are linked to a component, when using correct namespace resolution.
- Add a Documentation tab to the Joomla Component Builder dashboard.
- Refactor the JS selText method.
- Refactored the view class to introduce a class constructor that initializes key dependencies more reliably.
- Began aligning the view class structure with Joomla 6's updated MVC architecture for future compatibility.
- Updated and refined the site view class for greater consistency with backend view logic.
- Refactor the list view buttons
- Refactor the getActions helper method
- Refactor toolbar into version-specific classes to resolve getToolbar errors. #1267
- Refactor and enhance the JCB Email Helper class for a more robust and maintainable design.
- Refactor and Improve Router Helper Class to new standard Site Router practice.
- Refactor and Improve JCB Search engine for better searching of JCB areas.
- Refactor Utilities/Response classes for Joomla 6+ compatibility and improved version-agnostic behavior.
- Refactor the File Upload Manager to achieve improved maintainability, greater customization flexibility, and easier extensibility.
- Refactor the Item Importer to improve data management, structural clarity, and long-term maintainability of the import process.
- Refactor the Packaging Engine into separate set and get classes to improve separation of concerns, readability, and overall maintainability.
- Refactor and restructure the demo console item import plugin to improve usability, maintainability, and reusability across other areas of JCB.
- Refactor the Compiler to remove deprecated code paths and legacy classes that are no longer maintained.
- Remove batch feature from JCB compiler Templates due to lack of use and outdated code.
- Corrected misconfiguration of the isModal property for site-linked views to default to false since modals are not yet supported on the site area.
- Improved initialization handling in the view to reduce dependency errors during rendering.
- Continued progressive improvements across view classes to ensure compatibility with Joomla's evolving MVC patterns.
com_componentbuilder
component
4.1.4
- Fix variable name mismatch for organization in the Network Resolve class. #1291
- Fix issue where Admin Field relations using custom code did not automatically include multiple fields as expected. #1293
- Fix issue where Admin Field relations did not correctly apply concatenation/glue options. #1294
- Fix deprecated warnings triggered in the JCB CLI.
- Fix resolve PHP syntax errors and PHP 8.4 deprecations across codebase.
- Fix four fatal parse/compile errors.
- Fix implicit nullable parameter deprecations.
- Refactor Compiler functions to improve maintainability and align with modern PHP coding best practices.
- Refactor the JCB Dashboard, introducing a modernized layout, improved usability, and full responsiveness across desktop, tablet, and mobile devices.
com_componentbuilder
component
4.1.5
- Fix the Field edit view to ensure full compliance with Joomla 6 standards and updated UI/UX conventions.
- Fix deprecated JText usage in Admin Custom Tabs area for Joomla 5+ compatibility. #1302
- Fix snippet loading for Joomla 6, improving reliability and removing legacy UIkit dependencies during migration.
- Add Health Check buttons to the JCB Compiler and Component list view to verify system PHP configuration.
- Add the Toolbar Custom Buttons subform to the Global Subform settings for improved usability and presentation.
- Complete Bootstrap 5 refactor of all primary views and core UI.
- Refactor the JavaScript waiting spinner to use solid, native JavaScript with improved page-loading handling.
- Continue phased removal of UIkit with full transition planned for upcoming releases.
- Remove all manually linked Bootstrap v4 assets from the component.
- Begin migration from UIkit to Bootstrap 5 to align JCB with Joomla 6+ standards.
- Introduced strict version-aware compilation to ensure libraries are only included when explicitly defined for Joomla 6.
- Disabled automatic UIkit injection for Joomla 6, preventing auto-loading across custom admin views, site views, templates, and layouts.
- Migrate Search view for J6 to use Bootstrap and Joomla-native HTML and JavaScript.
- Improve subform ordering fields for clearer display and better readability.
com_componentbuilder
component
4.2.0
- Fix Power namespace reconstruction to correctly preserve custom aliases and apply NamespacePrefix and ComponentNamespace placeholders.
- Fix duplicate Compile button submissions that could start concurrent builds and cause intermittent folder creation or deletion errors. #1318
- Fix Extrusion self-compilation by preserving runtime marker literals and align import authorization with native view-access permissions.
- Fix API record creation when IDs and GUIDs are omitted, generate record keys on the server, and preserve existing GUIDs during updates.
- Fix API item and list model selection, including resource names with irregular plural forms.
- Fix API read permissions to support read-only users and return native JSON:API access-denied responses instead of administrator redirects.
- Fix cross-site scripting risks in generated views through corrected text sanitization, Joomla-native HTML escaping, and field escape settings.
- Fix edit-own permission bypasses by checking stored record ownership and applying field permissions to the record being saved.
- Fix subform updates that could overwrite or reassign records belonging to another parent.
- Fix generated IIS library access configuration and add missing index.html files to compiled folders.
- Fix JCB Search to prevent matching records from being skipped when processing successive batches.
- Fix compilation of database-aware Joomla 4 modules caused by a missing utility class import.
- Fix CLI repository resolution to report unresolved repository GUIDs without triggering a fatal error.
- Fix PHP warnings when the compiler's placeholder report contains no results.
- Fix toolbar generation when descriptions are missing or null.
- Restore language strings and compiler placeholders in imported code, field XML, view markup, and SQL.
- Add a dedicated Extrusion view for importing existing Joomla components and PHP libraries into JCB.
- Add PHP class harvesting into JCB Powers, including automatic class matching and dependency linking.
- Add import pairing with Create, Update, and Skip controls, dry runs, and per-record change previews.
- Add Repair Existing Power Namespaces with automatic matching and namespace-only updates that preserve class code, GUIDs, and settings.
- Add API_ROUTES and API_ROUTES_METHOD placeholders for linked webservices plugins, supporting routes by record ID, GUID, and unique fields.
- Add read-only API resources for supported Site Views and Custom Admin Views using their existing Dynamic Gets.
- Detect unchanged records and avoid unnecessary writes during repeated Extrusion runs.
- Protect Extrusion imports against ambiguous matches, conflicting compiler paths, and stale change previews.
- Refactor the Power parser to use PHP's native lexer for reliable handling of modern syntax, multiline declarations, and complex types.
- Preserve original source line endings when compiler processing leaves the content unchanged.
- Unify component-folder and SQL-dump extrusion through a single engine.
- Improve SQL schema reconstruction to preserve column types, defaults, keys, indexes, and table configuration.
- Improve field imports to preserve XML settings, options, GUID relationships, and storage formats without double-encoding subform data.
- Reuse shared field definitions across views and preserve existing customizations during repeated imports.
- Improve Site View and Custom Admin View discovery, template recovery, and Dynamic Get relationships.
- Improve Power discovery performance with component-scoped matching, dependency indexes, and reusable parsing.
- Improve Extrusion error reporting and recovery after interrupted import requests.
- Improve the Extrusion interface with folder pickers, grouped filtering, bulk selection, responsive layouts, and a dedicated dashboard icon.
- Replace execution of imported SQL with static parsing and validate source paths without executing imported PHP.
- Complete JSON:API generation for API-enabled Admin Views, including CRUD operations, relationships, filtering, pagination, and field-level permissions.
- Include generated API files in component manifests so they are installed with compiled components.
- Strengthen file upload and deletion permissions with ownership and component permission checks.
- Block unsafe URL schemes in Markdown links and images.
- Use cryptographically secure randomness for generated passwords and upload names, and sanitize uploaded filenames.
- Complete extraction of generated-code logic from the legacy Fields, Interpretation, and Infusion helpers into dedicated compiler services.
- Consolidate shared compiler logic across Joomla versions while retaining version-specific generation where required.
com_componentbuilder
component
5.2.0
- Fix Power namespace reconstruction to correctly preserve custom aliases and apply NamespacePrefix and ComponentNamespace placeholders.
- Fix duplicate Compile button submissions that could start concurrent builds and cause intermittent folder creation or deletion errors. #1318
- Fix Extrusion self-compilation by preserving runtime marker literals and align import authorization with native view-access permissions.
- Fix API record creation when IDs and GUIDs are omitted, generate record keys on the server, and preserve existing GUIDs during updates.
- Fix API item and list model selection, including resource names with irregular plural forms.
- Fix API read permissions to support read-only users and return native JSON:API access-denied responses instead of administrator redirects.
- Fix cross-site scripting risks in generated views through corrected text sanitization, Joomla-native HTML escaping, and field escape settings.
- Fix edit-own permission bypasses by checking stored record ownership and applying field permissions to the record being saved.
- Fix subform updates that could overwrite or reassign records belonging to another parent.
- Fix generated IIS library access configuration and add missing index.html files to compiled folders.
- Fix JCB Search to prevent matching records from being skipped when processing successive batches.
- Fix compilation of database-aware Joomla 4 modules caused by a missing utility class import.
- Fix CLI repository resolution to report unresolved repository GUIDs without triggering a fatal error.
- Fix PHP warnings when the compiler's placeholder report contains no results.
- Fix toolbar generation when descriptions are missing or null.
- Restore language strings and compiler placeholders in imported code, field XML, view markup, and SQL.
- Add a dedicated Extrusion view for importing existing Joomla components and PHP libraries into JCB.
- Add PHP class harvesting into JCB Powers, including automatic class matching and dependency linking.
- Add import pairing with Create, Update, and Skip controls, dry runs, and per-record change previews.
- Add Repair Existing Power Namespaces with automatic matching and namespace-only updates that preserve class code, GUIDs, and settings.
- Add API_ROUTES and API_ROUTES_METHOD placeholders for linked webservices plugins, supporting routes by record ID, GUID, and unique fields.
- Add read-only API resources for supported Site Views and Custom Admin Views using their existing Dynamic Gets.
- Detect unchanged records and avoid unnecessary writes during repeated Extrusion runs.
- Protect Extrusion imports against ambiguous matches, conflicting compiler paths, and stale change previews.
- Refactor the Power parser to use PHP's native lexer for reliable handling of modern syntax, multiline declarations, and complex types.
- Preserve original source line endings when compiler processing leaves the content unchanged.
- Unify component-folder and SQL-dump extrusion through a single engine.
- Improve SQL schema reconstruction to preserve column types, defaults, keys, indexes, and table configuration.
- Improve field imports to preserve XML settings, options, GUID relationships, and storage formats without double-encoding subform data.
- Reuse shared field definitions across views and preserve existing customizations during repeated imports.
- Improve Site View and Custom Admin View discovery, template recovery, and Dynamic Get relationships.
- Improve Power discovery performance with component-scoped matching, dependency indexes, and reusable parsing.
- Improve Extrusion error reporting and recovery after interrupted import requests.
- Improve the Extrusion interface with folder pickers, grouped filtering, bulk selection, responsive layouts, and a dedicated dashboard icon.
- Replace execution of imported SQL with static parsing and validate source paths without executing imported PHP.
- Complete JSON:API generation for API-enabled Admin Views, including CRUD operations, relationships, filtering, pagination, and field-level permissions.
- Include generated API files in component manifests so they are installed with compiled components.
- Strengthen file upload and deletion permissions with ownership and component permission checks.
- Block unsafe URL schemes in Markdown links and images.
- Use cryptographically secure randomness for generated passwords and upload names, and sanitize uploaded filenames.
- Complete extraction of generated-code logic from the legacy Fields, Interpretation, and Infusion helpers into dedicated compiler services.
- Consolidate shared compiler logic across Joomla versions while retaining version-specific generation where required.