elcweb/common-bundle
Elcweb CommonBundle is a small Symfony bundle that adds a UTCDateTimeType Doctrine DBAL type, letting you store all DateTime values as UTC through a simple config.yml entry. Install via Composer and override the datetime type. MIT licensed.
The real scope is one class, not a framework. This is a Symfony bundle whose documented capability is a single Doctrine DBAL type (UTCDateTimeType) that forces all datetime columns to be read/written as UTC. Everything else in the repo is packaging. That reframes the decision from "adopt a common utilities bundle" to "decide our timestamp storage convention, and whether we write 20 lines or inherit a dependency."
Decisions this evaluation actually informs:
DateTimeType conversion signatures (platform argument, nullable return types). A 2020-era type is a plausible upgrade blocker for any DBAL 3 migration — i.e., this dependency can become the reason a platform upgrade stalls. Verify against our DBAL version before it enters a critical path.Consider it only if all of the following hold:
datetime handling today with zero implementation time.Look elsewhere — which is the recommendation — when any of these apply:
config/app.php timezone plus casting/accessor conventions, or a small custom Cast. A Symfony bundle is the wrong shape for the problem.Adoption verdict: reject as a dependency; adopt the underlying idea natively. Implement UTC-at-the-boundary internally, add a test asserting round-trip behavior across DST boundaries, and encode the convention in a written standard so no team reintroduces local-time storage by accident.
For executives — one line: This package encodes a genuinely good practice (store timestamps in UTC) in a fragile wrapper — zero users, no maintainer, last shipped in 2020 — so we should adopt the practice and skip the dependency.
For engineering — the substance: The package's only documented feature is a Doctrine UTCDateTimeType that forces datetime columns to persist as UTC. That is the right convention and worth standardizing. But we can reproduce it as a first-party type in well under a day, with tests we control, no Symfony-bundle coupling, and no exposure to the DBAL 3 signature change that a 2020-era type is likely to block. The repo shows 0 stars, 0 dependents, and no activity since November 2020 — there is no support contract, no security response, and no community to catch regressions.
The tradeoff in plain terms: Build cost is roughly one engineer-day, once. Buy cost is a permanent, unmaintained dependency in the persistence layer plus a likely blocker on our next Doctrine upgrade. The build is cheaper on both axes.
What I'm asking for: Approval to (1) standardize UTC-at-the-ORM-boundary as our timestamp convention, and (2) implement it internally rather than via elcweb/common-bundle. If the package is already present somewhere in our stack, I want it on the maintenance backlog for replacement with the internal type in the next routine sprint — small blast radius, cheap fix, removes a known dead dependency from the critical path.
How can I help you explore Laravel packages today?