Releases: mirekmarek/php-jet
Releases · mirekmarek/php-jet
v2026.02
v2026.01
Jet Core
- PHP 8.0 and 8.1 support dropped
- Deprecated Data_Listing component dropped
- Validator subsystem added
- Entity_Validator subsystem added
- InputCatcher subsystem added
- Entity_InputCatcher subsystem added
- Form subsystem is using InputCatcher and Validator subsystems now
- Zxcvbn password check added
- Http_Request::headerValue( string $header_name ) : ?string method added
- Http_Request::headerExists( string $header_name ) : bool
- Class IO_UploadedFile added
- Class Form_Field_File_UploadedFile is now just a descendant of class IO_UploadedFile
- A few minor code quality improvements
js/JetAjaxForm
- Minor bug fix
Jet Example App
- New test modules: Test.InputCatchers, Test.Validators
Jet Studio
- Adapting to core changes
v2025.18
Jet Core
- Jet\Form_Definition: #[Form_Definition(validator:callable)] attribute added
- Jet\Form_Field_Email -> domain MX record validation added
- Jet\Cache_Files: all delete calls uses native PHP functions insteadof IO_Files - because of performance and possible IO concurrency on project with huge traffic
v2025.17
Jet Core
- New method Data_Text::emojiToHTMLEntities( string $html ): string
- DataModel ORM: TYPE_LOCALE is default NULL
- Form_Field_Textarea and Form_Field_WYSIWYG: Data_Text::emojiToHTMLEntities applied
Jet Example App
- Application_Web::init(): $router->tryDirectFiles() call updated
v2025.16
Jet Core
- Application modules: New interface Application_Module_HasEmailTemplates_Interface
- Application modules: New trait Application_Module_HasEmailTemplates_Trait
- Application modules: New method Application_Modules::getModuleNameByClassName( string $class_name ): string
- ACL: New class Auth_AvailablePrivilegeProvider
- ACL: New method Auth_Role_Interface::getAvailablePrivilegesList( bool $translate = true, ?Locale $translate_locale=null ): array<Auth_AvailablePrivilegeProvider>;
- ACL: Auth_Controller is nullable now. If auth controller is null then system works but all authentication and authorization is false
- Bug fix: IO_File::send - Application::end() call after file sent
- Bug fix: Mailing_Backend_Default->sendEmail( Mailing_Email $email ): bool - email subject encoding
- MVC: Base: New feature - redirect to the default URL switcher:
- New method: MVC_Base_Interface and MVC_Base: setRedirectToDefaultURL, getRedirectToDefaultURL - MVC: Router: New feature: ublic function tryDirectFiles( ?array $allowed_files=null ) : bool; - $allowed_files is nullable. If $allowed_files===null then scan page root dir for files that could be send
- Logger: Logger is nullable now. Is logger is null then system works but event logging is simply not activated
Example App
- Total refactoring, strict using of application modules
Example Installer
- Adjustments reflecting changes in the application
Tools - Jet Studio
- Adjustments reflecting changes in the application
v2025.15
Jet Core
- Jet\Data_Image - Refactoring, WEBP and AVIF formats supports added
- Jet\Data_Image::typeIsSupported( int $type ) : bool method added
- Jet\Data_Image::getSupportedMimeTypes() : array method added
- Jet\Form_Field_FileImage->getAllowedMimeTypes() is using Jet\Data_Image::getSupportedMimeTypes() for default value now
v2025.14
Jet Core
- Jet\Db_Backend_PDO - Added the ability to automatically reconnect. This is important for long-running service scripts.
- Jet MVC dispatch - bug fix: The current dictionary must also be set during the resolving process.
v2025.13
Jet Core
- New class Application_Service_List
- Refactoring of Jet\Cache* classes
- Translator backend refactoring: performance improvements
- Attributes: bug fix - inheritance is now applicable to interfaces as well as abstract classes
Jet Example app
- New and more comprehensible organization of sample application services
- config\Jet: Turning the profiler on and off is now independent of switching between production and development environments
v2025.12
Jet Core, Jet Example app, Jet Installer
- Code quality improvements by another static analysis. THANKS! @phpstan.
- BugFix: PackageCreator_CSS_Default: "url(data:" supported now
Jet Example App
- Three different loggers redesigned into one universal logger (for better clarity of the example application).
v2025.11
🚀🎆🎇
🎇 Jet Core + Jet Example app
- Application service refactoring (one base class, service meta info)
- Application services are configurable now
🎆 Jet Example app
- Example application structure reorganized for better understanding
🚀 Jet Studio
- New setup tool subsystem added
- DataModel module: setup tool created
- SyncProjectFilesClient: setup tool created
🇪🇺 Common
- Default locale en_US replaced by en_EU