Skip to content

Conversation

@GrahamCampbell
Copy link
Contributor

Removes circle and appveyor, and some of the travis jobs. Long term, we could probably remove travis, but this is not necessary yet. The purpose of this PR is to have fast robust testing across multiple PHP versions and OSs, and not for overkill consolidation, taking extra developer time without significant benefit.

Copy link
Member

@julienfalque julienfalque left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Damn, I was working on this too, but you were faster than me :)

@julienfalque
Copy link
Member

Shouldn't the jobs appear in the checks of this PR?

@GrahamCampbell
Copy link
Contributor Author

Related: PHPUnitGoodPractices/Traits#48.

@GrahamCampbell
Copy link
Contributor Author

Shouldn't the jobs appear in the checks of this PR?

No, not until this is merged.

@GrahamCampbell
Copy link
Contributor Author

Looks like the accessible object package is causing us issues. We need to mark it as compatible with PHP 8 and remove the HHVM conflict.

@GrahamCampbell
Copy link
Contributor Author

See PHP-CS-Fixer/AccessibleObject#3.

@GrahamCampbell
Copy link
Contributor Author

Looks like these tests have actually highlighted issues with our minimum symfony console versions.

@GrahamCampbell
Copy link
Contributor Author

This is passing, and could be merged right away. A follow up PR can remove the rest of the travis jobs.

@GrahamCampbell
Copy link
Contributor Author

@julienfalque
Copy link
Member

@GrahamCampbell The PR is still a draft, shall we mark it as ready for review?

@GrahamCampbell GrahamCampbell marked this pull request as ready for review November 21, 2020 21:41
@keradus
Copy link
Member

keradus commented Nov 22, 2020

@GrahamCampbell , can you talk to creator of #5268 and align how to achieve best outcome together ;)
We have 2 competitive PRs, let's avoid duplicating the effort in work on the job separately.

* @group auto-review
* @group covers-nothing
*/
final class TravisTest extends TestCase
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👎 for dropping
i would rather expecting to have those tests migrated to read github actions config than fully dropped.

Copy link
Contributor Author

@GrahamCampbell GrahamCampbell Nov 24, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you consider this a blocker for merging? I feel like the GitHub UI already makes it pretty clear if stuff is missing, with the human readable job names I have gone for.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes, I do

but pls, align with @sanmai to prepare single PR instead of putting more effort in one or another PR

Copy link
Contributor

@sanmai sanmai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a fine PR, but since it has a lot if if:s, and separate jobs for different OSes (where it should have just used matrix), it'll be a headache to support.

- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this required?

I haven't seen anything bad happen without these lines.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tests fail without I think.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Haven't seen this in other repos - can we try without this? Would be easier not to worry that this might affect some tests.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you sure? I have a workflow which does not fail without this on Windows.

- name: Set git to use LF
run: |
git config --global core.autocrlf false
git config --global core.eol lf
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Haven't seen this in other repos - can we try without this? Would be easier not to worry that this might affect some tests.

tools: composer:snapshot
coverage: none

- name: Setup problem matchers
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is this? Can you elaborate or link to some PR when it is run or better - failing a build for good reason?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shows test failures inline on diffs on github's ui.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, that stuff works properly. It's exactly as documented in https://github.com/shivammathur/setup-php#phpunit.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, the thing is I made a test to fail intentionally, added these matchers, and there's nothing. How can we verify that this thing actually works?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@GrahamCampbell why closing the thread? looks like the question is still open

run: PHP_CS_FIXER_FUTURE_MODE=1 PHP_CS_FIXER_IGNORE_ENV=1 php php-cs-fixer --diff --dry-run -v fix
if: "matrix.php == '8.0'"

windows:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need this? Why OS cannot be part of matrix?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Each OS is different, and in the end, trying to put it all into one single thing ends up an absolute mess. Sometimes duplication is least worst. Certainly makes the config file more readable.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@GrahamCampbell
Copy link
Contributor Author

uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
tools: composer
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is as redundant as before.

keradus added a commit that referenced this pull request Nov 26, 2020
This PR was merged into the 2.16 branch.

Discussion
----------

Add yamllint workflow, validates .yaml files

This has two effects:

- It will validate `.yaml` files for general correctness everywhere except `vendor` and `dev-tools/vendor`
- And as a side-effect, it might enable other workflows to happen. E.g. we will no longer need to consult with forks to see if  #5295 #5268 #5183 etc are working.

Commits
-------

f6cdee1 Add yamllint workflow
@GrahamCampbell
Copy link
Contributor Author

If someone else wants to finish this, they should take over from here.

@keradus
Copy link
Member

keradus commented Nov 29, 2020

Thanks for your effort on this PR, @GrahamCampbell .
It's a pity that we didn't manage to have single PR for GH actions.
Closing in favor of #5268, but let's treat #5268 as a starting point where we can all improve further, same time having CI for repo running

@keradus keradus closed this Nov 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants