Skip to content

Commit 889261e

Browse files
authored
Release/5.0.0 (#10)
- Rework the aggregate roots (event-sourced and eventual) with aggregate versioning, reflection-based reconstitution, and snapshot support. - Rework domain events, event records, revisions, and upcasting. - Add the Utc, Uuid, and Ordinal value objects with their dedicated exceptions and comparison behavior. - Add the tiny-blocks Claude skills, rules, and CLAUDE.md. - Refresh the CI workflows, tooling config, and README.
1 parent 027ea9c commit 889261e

99 files changed

Lines changed: 3417 additions & 1532 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.claude/CLAUDE.md

Lines changed: 0 additions & 16 deletions
This file was deleted.

.claude/rules/php-library-architecture.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@ outputting.
3838
concept.
3939
11. Test fixtures representing domain concepts live in `tests/Models/`. Test doubles for system
4040
boundaries live at the root of `tests/Unit/` or `tests/Integration/`. No dedicated `Mocks/`
41-
or `Doubles/` subdirectory exists. `tests/Drivers/<Vendor>/` is permitted when the library
42-
exposes a port exercised against multiple third-party implementations (PSR adapters,
43-
framework integrations). Each `<Vendor>/` subdir holds tests against one specific
44-
implementation.
41+
or `Doubles/` subdirectory exists. Vendor compatibility (driver) tests, verifying the
42+
library against specific external libraries/frameworks, are optional and have no `src/`
43+
counterpart. They exist only as tests, under `tests/Integration/Drivers/<Vendor>/`,
44+
grouped by vendor. Never a top-level `Drivers/` under `tests/`.
4545
12. The `tests/Integration/` folder exists only when the library interacts with external
4646
infrastructure (filesystem, database, network). Otherwise, the folder is absent.
4747

@@ -68,6 +68,8 @@ tests/
6868
│ ├── <SomeMock>.php # test doubles at root of Unit/
6969
│ └── <SomeSpy>.php
7070
└── Integration/ # only present when the library interacts with infrastructure
71+
├── Drivers/ # only present when the library exposes vendor-specific drivers
72+
│ └── <Vendor>/ # tests against one specific third-party implementation
7173
└── <SomeMock>.php # test doubles at root of Integration/ when needed
7274
```
7375

.claude/rules/php-library-code-style.md

Lines changed: 423 additions & 79 deletions
Large diffs are not rendered by default.

.claude/rules/php-library-commits.md

Lines changed: 0 additions & 111 deletions
This file was deleted.

0 commit comments

Comments
 (0)