On 18 May 2024 16:25:06 BST, Robert Landers <landers.rob...@gmail.com> wrote:
>I thought about that too, but in-general, a vendor has the knowledge
>and capability to ensure any two packages work together (like Doctrine
>plugins in your example).
How do they achieve that "knowledge and capability" other than documentation,
and tooling making use of that documentation?
Doctrine DBAL and Doctrine ORM are both large open-source codebases, which
happen to have a dependency relationship, and also happen to have the same
vendor namespace. Documentation and warnings about using internal
functions/classes of the DBAL would be just as useful to a developer of the ORM
as they would be to an application developer.
As another example, within the completely private codebase I work on
professionally, we have shared modules, parts of which are intended to be
implementation details and not subject to compatibility guarantees. It would be
really useful to get an automatic notification if those were used in other
parts of our codebase, but all of our code shares the same vendor namespace, so
a single-level #[Internal] attribute would be entirely useless.
Rowan Tommins
[IMSoP]