ezsystems/ezplatform-kernel

ezsystems/ezplatform及其衍生品使用的内核。提供内容库、其API以及应用程序的Symfony框架集成。

v4.0.0-alpha2 2021-10-29 13:08 UTC

This package is auto-updated.

Last update: 2024-08-26 08:29:24 UTC


README

本包是Ibexa DXP的一部分 Ibexa DXP

要使用此包,请安装Ibexa DXP

此包包含一个高级内容模型,允许在可预测的内容库中结构化任何类型的内容或类似内容的数据。Ibexa Kernel还旨在为MVC层(Symfony)提供附加功能,以提高您的生产力 Ibexa DXP

当前组织

MVC层

后端

  • eZ/Publish/API - 定义PHP 公共 API的稳定接口,主要是内容 仓库API
  • eZ/Publish/SPI/Persistence - 还未冻结的一层,这意味着它可能在不同版本之间发生变化。这些是存储引擎的持久性接口。
  • eZ/Publish/SPI - (除了持久性之外的任何内容)已冻结,并承诺向后兼容服务提供者接口(SPI),这意味着从消费和实现的角度来看都没有破坏性更改。
  • eZ/Publish/Core - API和SPI的实现;命名旨在与它们实现的接口名称对应。例如,Core\Persistence\LegacySPI\Persistence的实现。

本地测试

此内核包含一套全面的单元、功能和集成测试。在撰写本文时,有9k个单元测试,8k个集成测试,以及几个功能测试。

依赖项

  • PHP 7模块:php7_intl php7_xsl php7_gd php7_sqlite (即 pdo\_sqlite
  • 数据库:sqlite3,可选:mysql/postgres 如果需要,请确保已安装相关的pdo模块

要为此捆绑包做出贡献,您应该确保运行单元测试和集成测试。

  1. 在本地设置此存储库

    # Note: Change the line below to the ssh format of your fork to create topic branches to propose as pull requests
    git clone https://github.com/ezsystems/ezplatform-kernel.git
    cd ezplatform-kernel
    composer install
  2. 运行单元测试

    在这个时候,您应该能够运行单元测试

    php -d memory_limit=-1 vendor/bin/phpunit
  3. 运行集成测试

    # If you want to test against mysql or postgres instead of sqlite, define one of these with reference to an empty test db:
    # export DATABASE="mysql://root@localhost/$DB_NAME"
    # export DATABASE="pgsql://postgres@localhost/$DB_NAME"
    php -d memory_limit=-1 vendor/bin/phpunit -c phpunit-integration-legacy.xml

    要运行针对Solr的集成测试,请参阅Ibexa DXP的Solr搜索引擎捆绑包

版权

版权所有(C)1999-2021 Ibexa AS(原名eZ Systems AS)。保留所有权利。

许可证

此源代码可根据以下许可证单独获得

《A - Ibexa商业使用许可协议(Ibexa BUL),版本2.4或更高版本(许可条款可能会不时更新)》,通过拥有有效的Ibexa DXP(原名eZ Platform Enterprise)订阅获得许可,详情请参阅:[https://www.ibexa.co/product](https://www.ibexa.co/product)(不遵循、不索引、无弹窗、外部、用户生成内容)。有关完整的Ibexa BUL许可协议文本,请参阅:[https://www.ibexa.co/software-information/licenses-and-agreements](https://www.ibexa.co/software-information/licenses-and-agreements)(适用最新版本)。

并且

《B - GNU通用公共许可证,版本2》授予一个具有绝对无保证的开源copyleft许可证。有关完整的GPL许可协议文本,请参阅:[https://www.gnu.org/licenses/old-licenses/gpl-2.0.html](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html)。