Introducing two new FPDF projects #37
Replies: 1 comment
What about bugs or PHP compatibility issues?A common question is: what happens if an issue is found in FPDF, or a new PHP version introduces incompatibilities before an official FPDF release is available? To address this, This branch exists as a temporary compatibility layer where critical fixes can be introduced when necessary, such as:
The purpose is not to fork or diverge from the original FPDF project, but to provide a practical short-term solution while waiting for an official upstream release. This is not a hypothetical scenario — it has already happened in the past. There have been cases where compatibility issues remained unresolved for months before an official fix was published. If such a situation occurs, switching to the temporary compatibility branch is as simple as running: composer require fpdf-mirror/fpdf dev-fawnoThis allows developers to temporarily move their projects to the patched branch without manually editing vendor files or applying custom patches. Once the official FPDF project releases a proper fix, the mirror is updated accordingly and projects can safely switch back to the stable tagged release. This approach preserves the integrity of the upstream project while offering a pragmatic safety net for production environments. |
Uh oh!
There was an error while loading. Please reload this page.
Introducing two new FPDF projects
After some time working around the limitations of the FPDF ecosystem, I decided to split and reorganize the work into two independent projects with clearer goals.
fpdf-mirror/fpdfAt FPDF-mirror
A clean Composer-compatible mirror of the original FPDF library.
The goal of this package is simple:
This package does not add features, modify behavior, or include third-party scripts.
It exists as a stable foundation for modern PHP projects that want to use FPDF through Composer without depending on repackaged forks or mixed distributions.
Ideal for:
fawno/fpdf-traitsAt FPDF-Traits
A dedicated package focused on converting the classic FPDF script repository into reusable PHP Traits.
This project is the natural evolution — and extraction — of the old
fawno/fpdfpackage, which previously bundled both the FPDF mirror and the script conversions together.That approach worked, but it mixed two very different responsibilities:
Now both concerns are separated.
fawno/fpdf-traitsfocuses exclusively on modular extensions:Benefits:
Why the split?
Separation of concerns.
The original
fawno/fpdfpackage was doing too much.Splitting it allows:
fpdf-mirror/fpdf)fawno/fpdf-traits)This makes the ecosystem more predictable, modular, and easier to adopt.
Feedback, contributions, and new script ports are welcome.
All reactions