Clarify class/method API status

Created on 16 August 2025, 3 months ago

Problem/Motivation

Currently the API is undefined or not well defined.

Steps to reproduce

Proposed resolution

Bunny will operate on Internal by default. All classes are internal unless otherwise noted.
Classes that implement interfaces will comply to interface spec. The interface API status will indicate the reliability for the class unless otherwise noted (EG: Core interfaces are API for type-hinting but not API for implementation).
Classes/methods may be marked @internal to explicitly call out to others that the class/methods are not intended to be called outside of Bunny. Lack of an @internal marker does not make a class/method public.
Classes not intended to be extended by others will be declared final, or if not possible will be annotated @final

In general, https://symfony.com/doc/current/contributing/code/bc.html should be considered a guiding principal for design of what changes are allowed within the API spec.

Remaining tasks

User interface changes

None

API changes

Formal declaration of API.

Data model changes

None

πŸ“Œ Task
Status

Active

Version

2.0

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States cmlara

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

Production build 0.71.5 2024