gram news
Аватар канала Yii3 Chronicles

Yii3 Chronicles

@yii3chronicles_en

A first-hand description of the framework development process 😎 Discussion: https://t.me/yii3en Docs: https://yiisoft.github.io/docs Help financially: https://www.yiiframework.com/donate

ПроектыPT

102подписчиков

Открыть канал

Последние посты

  • Yii3 Chronicles

    31 дек. 2025 г., 11:51

    #news🚀 Yii3 is now available!• Yii3 landing page • Official announce • Documentation • Application templates: Web, API, Console • Demo applications: Blog (Layered DDD), Diary (Vertical slices, Active Record)Thank you for your support and patience! We did it together. All the core team members, community contributors, and backers 🤝We're pretty sure the Yii3 codebase will serve us well in at least the next 10 years or even more.Merry Christmas and Happy New Year! Enjoy! 🎉
  • Yii3 Chronicles

    28 дек. 2025 г., 12:53

    #yiisoftDemoDiary✨ Demo "Diary"We have prepared another demo application, "Diary", built on Yii3. It runs on PHP 8.5 with an SQLite database.Functionally, the application fully mirrors the "Blog" demo, but it is implemented differently internally: it uses a "vertical slices" architecture and Active Record.Running via Docker# Clone the repository git clone https://github.com/yiisoft/demo-diary.git# Navigate to the application directory cd demo-diary# Prepare the application for launch (image, packages) make init# Apply migrations
  • Yii3 Chronicles

    14 дек. 2025 г., 07:05

    #yiisoftYiiDataview #FirstRelease #MajorRelease #Release🎁 Yii DataView 1.0The first stable release of a powerful set of data displaying widgets is now available.Yii DataView provides three flexible widgets for presenting data in web applications:• ListView — display data as a customizable list.• GridView — present data in a feature-rich grid with sorting, filtering, and pagination.• DetailView — show detailed information about a single record.Data Source Independence Works seamlessly with database, CSV, REST API, or any data source through the Yii Data package.Built-in Pagination Handle large datasets efficiently with integrated pagination controls.
  • Yii3 Chronicles

    13 дек. 2025 г., 17:26

    #yiisoftDataDb #FirstRelease #MajorRelease #Release🎁 Yii Data DB 1.0Yii Data DB, a database query adapter for Yii Data, is now available.This package provides a data reader implementation that bridges Yii DB with the Yii Data reading interface, making it easy to work with database queries in a flexible and consistent way.• QueryDataReader Wraps database queries to provide pagination, sorting, and filtering capabilities.• Field Mapping Map data reader field names to database columns for clean API design.• Batch Processing Process large datasets efficiently with configurable batch sizes.• Multi-Database Support Tested with SQLite, MySQL, PostgreSQL, Microsoft SQL Server, and Oracle.
  • Yii3 Chronicles

    13 дек. 2025 г., 15:30

    #yiisoftData #MajorRelease #Release🎁 Yii Data 2.0Yii Data 2 is now available, bringing major improvements and modernization to this package that provides generic data abstractions for reading, writing, and processing.• PHP 8.1+ required: modernized codebase with readonly properties and improved type safety.• Enhanced filtering: added Stringable support, nested value filtering, case-sensitive Like filter with matching modes, and new All/None filters.• Improved pagination: new LimitableDataInterface, nextPage()/previousPage() methods, PageToken class, and better limit handling in paginators.• Better developer experience: comprehensive Psalm annotations, PageNotFoundException for clearer error handling, and OrderHelper for low-level order operations.For a complete list of changes, see the CHANGELOG.md.
  • Yii3 Chronicles

    9 дек. 2025 г., 07:26изменён

    #yiisoftActiveRecord #FirstRelease #MajorRelease #Release🎁 Yii Active Record 1.0We are pleased to present the first stable release of Yii Active Record — an implementation of the Active Record pattern for PHP.The package is built on top of Yii DB, which means it comes with out-of-the-box support for major relational databases: PostgreSQL, MySQL, MSSQL, Oracle, SQLite.⭐️ Flexible Model Property Handling• Dynamic properties — fast prototyping with #[\AllowDynamicProperties] • Public properties • Protected properties — encapsulation via getters/setters • Private properties • Magic properties⭐️ Powerful Relation System• One-to-one • One-to-many
  • Yii3 Chronicles

    5 дек. 2025 г., 15:00

    #yiisoftDb #yiisoftDbMssql #yiisoftDbMysql #yiisoftDbPgsql #yiisoftDbSqlite #yiisoftDbOracle #MajorRelease #Release🎁 Yii Database 2.0 🎁 Yii DB MSSQL Server 2.0 🎁 Yii DB MySQL 2.0 🎁 Yii DB PostgreSQL 2.0 🎁 Yii DB SQLite 2.0 🎁 Yii DB Oracle 2.0We're excited to announce Yii Database 2.0, a major release modernizing the database abstraction layer with PHP 8.1+ features, enhanced type safety, and powerful new capabilities. The drivers have been released as well.New Features- Implement ColumnInterface classes according to the data type of database table columns for type casting performance - ConnectionProvider for connection management - ColumnBuilder for column creation - CaseX expression for CASE-WHEN-THEN-ELSE statements - New conditions: All, None, ArrayOverlaps, JsonOverlaps - PHP backed enums support
  • Yii3 Chronicles

    2 окт. 2025 г., 13:41

    #yiisoftAppApi #FirstRelease #MajorRelease #Release🎁 API Application Template 1.0The first stable release of the API application template for Yii3.The template includes the essential things required to start API application development:• middleware dispatcher, • routing, • a set of response formats for APIs (success, error, collection, pagination, …), • exception handling, • console entry point, • tests and static analysis, • Docker, • and more...As an example, a simple API method and a console command are implemented. The template does not impose any restrictions on the architecture of the developed application and is open for integration with any PHP libraries.
  • Yii3 Chronicles

    24 сент. 2025 г., 10:26

    #yiisoftDemoBlog✨ Demo "Blog"We’ve prepared a demo application "Blog" based on Yii3, running on PHP 8.4 + SQLite database.Native run# Clone the repository git clone https://github.com/yiisoft/demo-blog.git# Go to the application folder cd demo-blog# Install composer packages composer install# Apply migrations ./yii migrate:up
  • Yii3 Chronicles

    25 авг. 2025 г., 13:49

    #yiisoftApp #FirstRelease #MajorRelease #Release🎁 Web application template 1.0The first stable release of the web application template for Yii3.The template helps you quickly start with a classic web application and already includes the essentials:• middleware dispatcher, • routing, • error handling, • asset support (CSS, images), • console entry point, • and more...As examples, it comes with a homepage handler and a simple console command. At the same time, the template imposes no restrictions: you are free to organize controllers, services, views, and other files in any structure you prefer.
  • Yii3 Chronicles

    24 дек. 2024 г., 06:55изменён

    🔥 #NewsWe’ve prepared the Yii3 roadmap!🖼 Yii3 RoadmapThe roadmap outlines what remains to be done before the release. This document is intended to be "live" and will be updated as tasks are completed, refined, or adjusted.
  • Yii3 Chronicles

    16 сент. 2024 г., 09:28

    🔥 #yiisoftActiveRecord #NewsIn the yiisoft/active-record package, class methods containing the word attribute have been renamed.- attributes() -> propertyNames() - hasAttribute() -> hasProperty() - getAttribute() -> get() - getAttributes() -> propertyValues() - getAttributesInternal() -> propertyValuesInternal() - getOldAttribute() -> oldValue() - getOldAttributes() -> oldValues() - getDirtyAttributes() -> dirtyValues() - markAttributeDirty() -> markPropertyDirty() - isAttributeChanged() -> isPropertyChanged() - setAttribute() -> set() - setAttributes() -> populateProperties() - populateAttribute() -> populateProperty() - setOldAttribute() -> assignOldValue() - setOldAttributes() -> assignOldValues() - updateAttributes() -> updateProperties()
  • Yii3 Chronicles

    15 мая 2024 г., 07:06

    🔥 #yiisoftActiveRecord #NewsMajor changes to yiisoft/active-record package are planned in the near future. If you are using this package, we recommend you to lock the current version.An example of how to do this via require section in composer.json:"require": { ... "yiisoft/active-record": "dev-master#f4966ccef816c1ed77741fa4c2945ce05ce37695", ... }
  • Yii3 Chronicles

    30 июн. 2023 г., 11:45

    #yiisoftProxyMiddleware #FirstRelease #MajorRelease #Release🎁 Proxy Middleware 1.0Proxy Middleware 1.0 has been released. The package contains proxy related middleware classes that implement PSR-15:- TrustedHeaderProtocolResolver. - TrustedHostsNetworkResolver.They were extracted from Yii Middleware package.TrustedHeaderProtocolResolverTrusted header protocol resolver sets a server request protocol based on special header you trust such as X-Forwarded-Proto.You can use it if your server is behind a trusted load balancer or a proxy that's always setting the special header itself discarding any header values provided by user.TrustedHostsNetworkResolver
    GitHubGitHub - yiisoft/proxy-middleware: Middleware to set request parameters based on headers provided by proxyMiddleware to set request parameters based on headers provided by proxy - yiisoft/proxy-middleware
  • Yii3 Chronicles

    22 мая 2023 г., 17:46изменён

    #yiisoftYiiMiddleware #FirstRelease #MajorRelease #Release🎁 Yii Middleware 1.0Yii Middleware 1.0 has been released. The package contains a set of the following middleware:- CorsAllowAll. Adds CORS headers to the response. - ForceSecureConnection Redirects insecure requests from HTTP to HTTPS, and adds headers necessary to enhance the security policy. - HttpCache. Implements client-side caching by utilizing the Last-Modified and ETag HTTP headers. - IpFilter. Allows access from specified IP ranges only and responds with 403 for all other IPs. - Locale. Supports locale-based routing and configures URL generator. - Redirect. Generates and adds a Location header to the response. - Subfolder. Supports routing when the entry point of the application isn't directly at the webroot. - TagRequest. Tags request with a random value that could be later used for identifying it.The code
    GitHubGitHub - yiisoft/yii-middleware: Yii-specific middlewareYii-specific middleware. Contribute to yiisoft/yii-middleware development by creating an account on GitHub.
  • Yii3 Chronicles

    6 апр. 2023 г., 06:33

    #yiisoftValidator #MinorRelease #Release🎁 Validator 1.1.0CHANGELOG.md
    GitHubGitHub - yiisoft/validator: Yii validator libraryYii validator library. Contribute to yiisoft/validator development by creating an account on GitHub.
  • Yii3 Chronicles

    14 мар. 2023 г., 08:28изменён

    🎁 Yii PSR-7 download response factory 1.0The first stable version of yiisoft/response-download was released.This package provides multiple methods for creating PSR-7 compatible response with downloadable content using PSR-17 compatible response factory and stream factory:- Send file by path. - Send string content as a file. - Send PSR-7 compatible stream as a file. - Send file by path using x-sendfile.Check README for more details.Psalm level is 1, the code coverage and MSI are 100%.
    GitHubGitHub - yiisoft/response-download: The package provides a factory to help forming file download PSR-7 responseThe package provides a factory to help forming file download PSR-7 response - yiisoft/response-download
  • Yii3 Chronicles

    22 февр. 2023 г., 12:06

    🎁 Yii Validator 1.0The first stable version of yiisoft/validator is released.This package allows to check data in any format - arrays, objects, scalar values, etc. An example for the case when data is an object:use Yiisoft\Validator\Rule\AtLeast; use Yiisoft\Validator\Rule\Email; use Yiisoft\Validator\Rule\Length; use Yiisoft\Validator\Rule\Number; use Yiisoft\Validator\Rule\Required; use Yiisoft\Validator\Validator;#[AtLeast(['email', 'phone'])] final class Person { public function __construct( #[Required] #[Length(min: 2)]
  • Yii3 Chronicles

    19 февр. 2023 г., 18:26

    Hello, community!Recently we have adopted naming conventions for config groups and released new versions of packages.Here's how to update your code in case you have already started with either app or app-api application templates.1. Adjust composer.json. Update package versions to latest releases in require and require-dev.2. In config-plugin do the replacements according to rename list below.3. Rename files in config according to rename list below.4. Run composer update.Rename list - common → di - web → di-web - console → di-console - providers → di-providers - providers-web → di-providers-web
  • Yii3 Chronicles

    23 февр. 2022 г., 11:07

    ⚡️ #yiisoftRbac #yiisoftRbacPhp #yiisoftDemo ✨ #yiisoftRbacRulesContainerYii Role-Based Access Control: rules creating and storing refined (PR).Now the rules are NOT stored in the store, but are created using the abstract factory RuleFactoryInterface. This allowed us to significantly simplify the code:- all methods related to rules has been removed from the ItemsStorageInterface storage;- the rules now have no names and, accordingly, the getName() method has been removed;- the abstract class Rule was removed, since it was needed only for the convenience of working with the name of the rule.Instead of the ClassNameRuleFactory factory in the new Yii RBAC Rules Container package, a RulesContainer (implements the RuleFactoryInterface) has been created that allows you to configure rules using the Yii Definitions syntax and use any PSR-11 container to resolve dependencies.Yii RBA