{"id":19693498,"url":"https://github.com/ezsystems/doctrine-dbal-schema","last_synced_at":"2025-10-05T16:50:43.314Z","repository":{"id":34221501,"uuid":"172096719","full_name":"ezsystems/doctrine-dbal-schema","owner":"ezsystems","description":null,"archived":false,"fork":false,"pushed_at":"2023-05-31T09:34:37.000Z","size":86,"stargazers_count":29,"open_issues_count":1,"forks_count":4,"subscribers_count":21,"default_branch":"1.0","last_synced_at":"2025-07-06T09:52:08.891Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ezsystems.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-22T16:17:02.000Z","updated_at":"2022-08-16T06:49:05.000Z","dependencies_parsed_at":"2024-06-18T17:13:07.834Z","dependency_job_id":null,"html_url":"https://github.com/ezsystems/doctrine-dbal-schema","commit_stats":{"total_commits":40,"total_committers":13,"mean_commits":3.076923076923077,"dds":0.75,"last_synced_commit":"66b16e81180c9a39e4fe0b8f54e9e1d82b3608cd"},"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/ezsystems/doctrine-dbal-schema","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ezsystems%2Fdoctrine-dbal-schema","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ezsystems%2Fdoctrine-dbal-schema/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ezsystems%2Fdoctrine-dbal-schema/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ezsystems%2Fdoctrine-dbal-schema/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ezsystems","download_url":"https://codeload.github.com/ezsystems/doctrine-dbal-schema/tar.gz/refs/heads/1.0","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ezsystems%2Fdoctrine-dbal-schema/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268378992,"owners_count":24240915,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-02T02:00:12.353Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T19:17:04.412Z","updated_at":"2025-10-05T16:50:38.273Z","avatar_url":"https://github.com/ezsystems.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Doctrine Schema Bundle\n\nThis Symfony Bundle provides basic abstraction layer for cross-DBMS schema import.\n\nIt introduces custom Yaml format for schema definition and provides autowired APIs.\n\n## Schema Builder\n\nProvided by APIs defined on the `\\EzSystems\\DoctrineSchema\\API\\SchemaImporter` interface,\nimports given Yaml source string or Yaml file into `\\Doctrine\\DBAL\\Schema` object.\n\n## Schema Exporter\n\nProvided by APIs defined on the `\\EzSystems\\DoctrineSchema\\API\\SchemaExporter` interface,\nexports given `\\Doctrine\\DBAL\\Schema` object to the custom Yaml format.\n\n## SchemaBuilder\n\nProvided by APIs defined on the `\\EzSystems\\DoctrineSchema\\API\\Builder\\SchemaBuilder` interface,\nis an extensibility point to be used by Symfony-based projects.\n\nThe `SchemaBuilder` is event-driven. To hook into the process of building schema, a custom `EventSubscriber` is required, e.g.\n\n```php\nuse EzSystems\\DoctrineSchema\\API\\Event\\SchemaBuilderEvent;\nuse EzSystems\\DoctrineSchema\\API\\Event\\SchemaBuilderEvents;\nuse Symfony\\Component\\EventDispatcher\\EventSubscriberInterface;\n\nclass BuildSchemaSubscriber implements EventSubscriberInterface\n{\n    /**\n     * @var string\n     */\n    private $schemaFilePath;\n\n    public function __construct(string $schemaFilePath)\n    {\n        $this-\u003eschemaFilePath = $schemaFilePath;\n    }\n\n    /**\n     * Returns an array of events this subscriber wants to listen to.\n     *\n     * @return string[]\n     */\n    public static function getSubscribedEvents()\n    {\n        return [\n            SchemaBuilderEvents::BUILD_SCHEMA =\u003e ['onBuildSchema', 200],\n        ];\n    }\n\n    /**\n     * @param \\EzSystems\\DoctrineSchema\\API\\Builder\\SchemaBuilderEvent $event\n     */\n    public function onBuildSchema(SchemaBuilderEvent $event)\n    {\n        $event\n            -\u003egetSchemaBuilder()\n            -\u003eimportSchemaFromFile($this-\u003eschemaFilePath);\n    }\n}\n```\n\nSchema provided in this way can be imported into Schema object by e.g.:\n\n```php\n    public function __construct(SchemaBuilder $schemaBuilder)\n    {\n        $this-\u003eschemaBuilder = $schemaBuilder;\n    }\n\n    public function importSchema()\n    {\n        $schema = $this-\u003eschemaBuilder-\u003ebuildSchema();\n        // ...\n    }\n```\n\n## COPYRIGHT\nCopyright (C) 1999-2021 Ibexa AS (formerly eZ Systems AS). All rights reserved.\n\n## LICENSE\nThis source code is available separately under the following licenses:\n\nA - Ibexa Business Use License Agreement (Ibexa BUL),\nversion 2.4 or later versions (as license terms may be updated from time to time)\nIbexa BUL is granted by having a valid Ibexa DXP (formerly eZ Platform Enterprise) subscription,\nas described at: https://www.ibexa.co/product\nFor the full Ibexa BUL license text, please see:\nhttps://www.ibexa.co/software-information/licenses-and-agreements (latest version applies)\n\nAND\n\nB - GNU General Public License, version 2\nGrants an copyleft open source license with ABSOLUTELY NO WARRANTY. For the full GPL license text, please see:\nhttps://www.gnu.org/licenses/old-licenses/gpl-2.0.html\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fezsystems%2Fdoctrine-dbal-schema","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fezsystems%2Fdoctrine-dbal-schema","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fezsystems%2Fdoctrine-dbal-schema/lists"}