PHPackages                             skaut/doctrine-nullable-embeddables - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. skaut/doctrine-nullable-embeddables

AbandonedArchivedLibrary[Database &amp; ORM](/categories/database)

skaut/doctrine-nullable-embeddables
===================================

Mechanism for nullable embeddables in Doctrine 2.5+

1.1.1(3y ago)052↓66.7%MITPHPPHP ^7.0|^8.0

Since Jan 15Pushed 3y agoCompare

[ Source](https://github.com/skaut/doctrine-nullable-embeddables)[ Packagist](https://packagist.org/packages/skaut/doctrine-nullable-embeddables)[ RSS](/packages/skaut-doctrine-nullable-embeddables/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (4)Versions (3)Used By (0)

Doctrine nullable embeddables
=============================

[](#doctrine-nullable-embeddables)

[![Build Status](https://camo.githubusercontent.com/236cade81e7097a6dcdabe4d9320334338f60c0a1ba4ee9bf093dfec38d8cfb4/68747470733a2f2f7472617669732d63692e6f72672f666d6173612f646f637472696e652d6e756c6c61626c652d656d6265646461626c65732e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/fmasa/doctrine-nullable-embeddables)[![Coverage Status](https://camo.githubusercontent.com/396f9db5f627972b2e2a084275a2ff2214dab165ac7ab871faba26ab3cad7d1d/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f6769746875622f666d6173612f646f637472696e652d6e756c6c61626c652d656d6265646461626c65732f62616467652e7376673f6272616e63683d6d6173746572)](https://coveralls.io/github/fmasa/doctrine-nullable-embeddables?branch=master)

This package serves as workaround for Doctrine's lack of support of nullable embeddables due to implementation of embeddables in Doctrine 2.5+ For more informations about the issue see [doctrine/doctrine2](https://github.com/doctrine/doctrine2/issues/4568).

Installation
------------

[](#installation)

The best way to install fmasa/doctrine-yaml-annotations is using [Composer](https://getcomposer.org/):

```
$ composer require fmasa/doctrine-nullable-embeddables

```

There are several conditions that has to be met:

- Property with nullable embeddable must use `Fmasa\DoctrineNullableEmbeddables\Annotations\Nullable` annotation.
- Every property in nullable embeddable must be nullable (or must use `Nullable` annotation if it's embeddable)

Now all you have to do is register `Fmasa\DoctrineNullableEmbeddables\Subscriber` and you have nullable embeddables working:

```
/* @var $annotationReader Doctrine\Common\Annotations\Reader */
/* @var $em Doctrine\ORM\EntityManager */

$evm->addEventSubscriber(new Fmasa\DoctrineNullableEmbeddables\Subscriber($annotationReader));
```

### But I'm using YAML for mapping!

[](#but-im-using-yaml-for-mapping)

See [fmasa/doctrine-yaml-annotations](https://github.com/fmasa/doctrine-yaml-annotations) to make extensions like this work with YAML mapping.

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 92% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

1211d ago

PHP version history (2 changes)1.1.0PHP ^7.0|8.0

1.1.1PHP ^7.0|^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/9b60d297a3d9192482fc306c3e127adaf49158c900c0ff482ab693a68a6eddd6?d=identicon)[sinacek](/maintainers/sinacek)

---

Top Contributors

[![fmasa](https://avatars.githubusercontent.com/u/5658260?v=4)](https://github.com/fmasa "fmasa (23 commits)")[![sinacek](https://avatars.githubusercontent.com/u/1140123?v=4)](https://github.com/sinacek "sinacek (2 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/skaut-doctrine-nullable-embeddables/health.svg)

```
[![Health](https://phpackages.com/badges/skaut-doctrine-nullable-embeddables/health.svg)](https://phpackages.com/packages/skaut-doctrine-nullable-embeddables)
```

###  Alternatives

[scienta/doctrine-json-functions

A set of extensions to Doctrine that add support for json query functions.

58523.9M35](/packages/scienta-doctrine-json-functions)[damienharper/auditor-bundle

Integrate auditor library in your Symfony projects.

4542.8M](/packages/damienharper-auditor-bundle)[sonata-project/entity-audit-bundle

Audit for Doctrine Entities

644989.8k1](/packages/sonata-project-entity-audit-bundle)[pixelfederation/doctrine-resettable-em-bundle

Symfony bundle for decorating default entity managers using a resettable decorator.

20113.5k](/packages/pixelfederation-doctrine-resettable-em-bundle)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1022.4k](/packages/rcsofttech-audit-trail-bundle)[ahmed-bhs/doctrine-doctor

Runtime analysis tool for Doctrine ORM integrated into Symfony Web Profiler. Unlike static linters, it analyzes actual query execution at runtime to detect performance bottlenecks, security vulnerabilities, and best practice violations during development with real execution context and data.

813.1k](/packages/ahmed-bhs-doctrine-doctor)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
