-
Notifications
You must be signed in to change notification settings - Fork 59
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
Support baseline configuration #737
base: 8.4.x
Are you sure you want to change the base?
Conversation
@Nyholm although this uses a different name/format, it could be used to simplify https://github.com/Nyholm/roave-bc-check-docker 👍 |
I'll need to ponder on this: my preference would be to have either an XSD or a JSON schema, at least, and use those as documentation too 🤔 |
I totally understand. I didn't want to introduce new dependencies to the project (I did implicitly add Up to you, mate! |
a157044
to
0680f22
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
0680f22
to
c251f5a
Compare
f208c41
to
f9cb116
Compare
@lcobucci sorry, this is on my plate, didn't get to it though :( |
Wow, the GH ui went crazy there... Just wanted to ask a review from you two (not to spam both). No worries, we do what we can, whenever we can! |
That segfault seems to be unrelated... let me know if you need help with understanding why it's happening |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No idea what the segfault is for, but it's happening consistently 😬
f9cb116
to
c39d76d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice one! ❤️ love this change
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good!
My only last concern is reducing public API as a start, perhaps, but I also don't mind bumping major version, if the API needs to change due to different directions taken in future 💪
c39d76d
to
aeac38f
Compare
All done 👍 |
4dab6f3
to
e19974d
Compare
Some people - like me - have a tweaked/opinionated global Git configuration that forces GPG signatures everywhere, which basically breaks the tests. This standardises the expected configuration for tests, preventing unexpected breakages. Signed-off-by: Luís Cobucci <[email protected]>
PHPUnit 10.x only accepts static data providers, so... Signed-off-by: Luís Cobucci <[email protected]>
More info: sebastianbergmann/phpunit#5063 Signed-off-by: Luís Cobucci <[email protected]>
Signed-off-by: Luís Cobucci <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pristine job as usual, thanks @lcobucci! 💎
Hmm, the segfault part still requires a PHPUnit upgrade: checking that first then. |
Given the plans for laminas-continuous-integration-action v2 is to always ship PCOV, we can simply enable it here to allow us to detach the two processes. Signed-off-by: Luís Cobucci <[email protected]>
This adds (lazy) filtering capabilities to detected changes. Signed-off-by: Luís Cobucci <[email protected]>
This integrates the changes filter into the backward compatibility check command, parsing the configuration file prior to any process to ease the integration of new properties. Signed-off-by: Luís Cobucci <[email protected]>
This moves responsibilities around and introduces abstractions to support different file formats with less effort. Signed-off-by: Luís Cobucci <[email protected]>
This ships a parser and the expected schema to ease the validation of XML documents. Signed-off-by: Luís Cobucci <[email protected]>
Signed-off-by: Luís Cobucci <[email protected]>
Signed-off-by: Luís Cobucci <[email protected]>
e19974d
to
cdeca27
Compare
@@ -26,9 +29,9 @@ | |||
"require-dev": { | |||
"doctrine/coding-standard": "^11.0.0", | |||
"php-standard-library/psalm-plugin": "^2.2.1", | |||
"phpunit/phpunit": "^9.5.27", | |||
"phpunit/phpunit": "^10.0.14", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Depends on #741 to be merged
$output = Shell\execute(__DIR__ . '/../../../bin/roave-backward-compatibility-check', [ | ||
'--from=' . $this->versions[0], | ||
'--to=' . $this->versions[1], | ||
], $this->sourcesRepository, [], Shell\ErrorOutputBehavior::Append); | ||
|
||
self::assertStringContainsString( | ||
'.roave-backward-compatibility-check.xml" as configuration file', | ||
$output, | ||
); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you can use Shell\ErrorOutputBehavior::Packed
and [$stdout, $stderr] = Shell\unpack($data)
to ensure that the string is in stderr
not in stdout
.
as of now, if the output goes to stdout instead of stderr, this test will still pass.
This allows users to set a list of regexes to filter known BC-breaks from detected changes.