Skip to content

<div style="display: none;" hidden="true" aria-hidden="true">Are you an LLM? You can read better optimized documentation at /changelog/Changelog.4.97.md for this page in Markdown format</div>

Home | Changelog

Version 4

version 4.97

  • [4.97.6] chore(deps): update dependencies to patch security vulnerabilities

    • Update aws/aws-sdk-php to resolve CVE-2025-14761 (S3 Key Commitment Issues)
    • Update phpunit/phpunit to resolve CVE-2026-24765 (Unsafe Deserialization)
    • Update symfony/process to resolve CVE-2026-24739 (Windows argument escaping)
  • [4.97.6] skills: clarify version update workflow in update-wiki skill

    • Add warning to update-version command documentation
    • Update workflow steps to mark version incrementing as "Release Only"
    • Explicitly state that X placeholder should be kept during active development
  • [4.97.6] chore(deps): update dependencies to patch security vulnerabilities

    • Update aws/aws-sdk-php to resolve CVE-2025-14761 (S3 Key Commitment Issues)
    • Update phpunit/phpunit to resolve CVE-2026-24765 (Unsafe Deserialization)
    • Update symfony/process to resolve CVE-2026-24739 (Windows argument escaping)
  • [4.97.5] feat(product): implement barcode domain and rest api with product relation

    • Implement Barcode domain (Entity, Repository, Service)
    • Add Barcode REST API (Controller, Resource, Collection)
    • Integrate Barcode relation into Product domain and REST resources
    • Update Product ListRequest with barcode filter
    • Register new components in the Product domain and Rest containers
  • [4.97.5] feat(agent): implement core agent skills and documentation

    • Add domain-rest-generator with comprehensive patterns and templates
    • Add schema-analyzer for SQL DDL metadata extraction
    • Add git-commit-message with optimized large-diff handling
    • Add update-wiki for automated changelog and version management
  • [4.97.5] Merge branch 'feature/rest-domains-continue' into develop

  • [4.97.5] fix(wiki): correct sub-list indentation and formatting in changelog

    • Change sub-list indentation from 1 space to 2 spaces
    • Fix newline placement for "Check for overrides" and "Actions" lists
    • Ensure each list item starts on a new line
  • [4.97.4] refactor(sliders): migrate from flattened variables to structured record object

    • Pass a single $record object from Adv_slide_admin instead of manual variable mapping
    • Simplified data flow between controller and view
  • [4.97.3] refactor: modularize Adv_slide_admin for overrides

    • Refactored add() and edit() methods to use modular hook methods
    • Implemented getMainData(), getMuiData(), and uploadImages()
    • Moved relation management to setNewEntityRelations() and setUpdateEntityRelations()
    • Added beforeAddRecord() and beforeEditRecord() hooks
    • Fixed authorization return in constructor
  • [4.97.2] feat(api): Add Product and Order domain REST API endpoints

    • Implement complete Product domain with DDD patterns and REST API
    • Implement complete Order domain with DDD patterns and REST API
    • Product domain includes: Product, Category, Vendor, Badge, Media, Attribute, AttributeGroup, ProductCode, ProductCodeAttribute, Tag, TagCategory, Supplier, Line, Promo
    • Order domain includes: Order, Customer, Vat, Basket (OrderBasket), Store
    • All domains follow established patterns with Entity, Repository, Service, ListRequest, and REST Controllers
    • All endpoints support filtering, sorting, pagination, and relation loading
    • Badge domain integrated with Product via BELONGS_TO relation using product_img_type field
    • Full OpenAPI documentation for all endpoints
    • Support for multi-language content via translations (MUI tables)
    • Proper camelCase transformation in REST resources
  • [4.97.2] fix: typo in map resource image

  • [4.97.1] fix(ui): admin head language links display for more than one language - on click change window location to language link

  • [4.97.1] fix(Product_categories): handle empty products array

  • [4.97.0] feat(api): Add relation sorting support for REST API

    • Implement request-driven sorting for sub-relations using dot notation in the sort parameter (e.g., sort=slides.priority, sort=children.-order).
    • Changes:
      • Extend SortRequest with relationPath property for relation sorts
      • Add getRootSorts() and getRelationSorts() methods to ListRequest
      • Extend WithRelations specification to carry relation sorts
      • Update BaseRepository to apply ORDER BY in relation loading methods
      • Fix many-to-many relation sorting to preserve sort order from query
      • Add parseRelationSort() to GenerateListRequest for dot notation parsing
      • Implement setAllowedRelationSorts() in all ListRequest classes
      • Support field mapping in allowedRelationSorts (API name → DB field)
      • Add relationSorts parameter to Service::get() and Repository::get()
      • Update HandlesRestfulActions::show() to parse and pass relation sorts
    • Supports one-to-many, many-to-many, belongs-to, and recursive relations.
    • Works with /index, /item, and /{id} endpoints.
    • Maintains backward compatibility with existing sort parameters.

Notes

  • [4.97.5] Check for overrides:

    • src/Domains/Product/Barcode/ListRequest.php
    • src/Domains/Product/Barcode/Repository/Entity.php
    • src/Domains/Product/Barcode/Repository/Repository.php
    • src/Domains/Product/Barcode/Repository/RepositoryConfigurator.php
    • src/Domains/Product/Barcode/Service.php
    • src/Domains/Product/Product/ListRequest.php
    • src/Domains/Product/Product/Repository/RepositoryConfigurator.php
    • src/Domains/Product/container.php
    • src/Rest/Product/Controllers/Barcode.php
    • src/Rest/Product/Controllers/Product.php
    • src/Rest/Product/Resources/Barcode/Collection.php
    • src/Rest/Product/Resources/Barcode/Resource.php
    • src/Rest/Product/Resources/Product/Resource.php
    • src/Rest/Product/container.php
  • [4.97.4] UI Update:

    • application/views/admin/sliders/slides/update.php now expects a $record object. Check any custom view overrides for sliders.
  • [4.97.3] Check for overrides:

    • ecommercen/sliders/controllers/Adv_slide_admin.php
    • Methods: add(), edit(), getMainData(), getMuiData(), uploadImages(), setNewEntityRelations(), setUpdateEntityRelations(), beforeAddRecord(), beforeEditRecord()
  • [4.97.2] Check for overrides:

    • custom map resource
  • [4.97.1] Check for overrides:

    • ProductCategories::getCategoryProductsData
    • admin/head.php and admin/footer_js
  • [4.97.0] Check for overrides in Domain Services and ListRequests