Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Public API #3236

Closed
sebastianbergmann opened this issue Aug 3, 2018 · 7 comments
Closed

Public API #3236

sebastianbergmann opened this issue Aug 3, 2018 · 7 comments

Comments

@sebastianbergmann
Copy link
Owner

@sebastianbergmann sebastianbergmann commented Aug 3, 2018

In order to define a Backward Compatibility Promise we need to make it explicit which parts of PHPUnit's API are considered to be public.

We should start by adding @internal to all classes, interfaces, and traits. Then we need to figure which units of code must be public (and remove @internal from them) for being able to use PHPUnit.

@keradus
Copy link
Contributor

@keradus keradus commented Aug 3, 2018

just in case - i can help with adding @internal everywhere with PHP CS Fixer

Loading

@sebastianbergmann
Copy link
Owner Author

@sebastianbergmann sebastianbergmann commented Aug 3, 2018

I know, thanks.

Loading

@DavertMik
Copy link

@DavertMik DavertMik commented Oct 16, 2018

Hi, Sebastian.
There are quite a lot o projects which may use PHPUnit via its current API and it would be nice to keep it stable. Codeception is one of them. I'd kindly ask to make all APIs used here https://github.com/Codeception/phpunit-wrapper to be considered as public API.

Also, I know that JetBrains also heavily relies on PHPUnit internals to make their integration working.
Not sure of issues on their side but I think we can invite them for the discussion.

Loading

@sebastianbergmann
Copy link
Owner Author

@sebastianbergmann sebastianbergmann commented Oct 17, 2018

JetBrains does not rely on PHPUnit internals, not since the TeamCity test listener was added to PHPUnit.

Loading

@keradus
Copy link
Contributor

@keradus keradus commented Oct 17, 2018

Nice thing with public API is that if sth is not marked as part of it, it can always become part of it.
But if it's already marked as public, taking it down is BC breaker.

Saying that - if we will make public API too narrow, we can always make it wider with any release (minor or even patch)

Loading

@wbars
Copy link
Contributor

@wbars wbars commented Oct 22, 2018

I confirm, starting with PHPUnit 5.0 PhpStorm PHPUnit integration relies only on output of TeamCity.php atm

Loading

@keradus
Copy link
Contributor

@keradus keradus commented Jan 20, 2019

Loading

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants