🌐 US-Proxy
class="logged-out env-production page-responsive" style="word-wrap: break-word;" >
Skip to content

Add CI, apply drupal-extension-scaffold, and fix code style - #8

Merged
Decipher merged 3 commits into
8.x-1.xfrom
feature/3587949-add-gitlab-ci-and-fixes
Aug 3, 2026
Merged

Add CI, apply drupal-extension-scaffold, and fix code style#8
Decipher merged 3 commits into
8.x-1.xfrom
feature/3587949-add-gitlab-ci-and-fixes

Conversation

@Decipher

@Decipher Decipher commented Aug 3, 2026

Copy link
Copy Markdown
Owner

Summary

  • Adds .gitlab-ci.yml for Drupal.org GitLab CI (Julian Pustkuchen, Kieran Cott - MR !13)
  • Applies drupal-extension-scaffold v4.17.0 for standardized local dev/CI tooling
  • Resolves all PHPStan errors, adds strict_types throughout
  • Fixes D10/D11 cross-version PHPStan/Rector conflicts
  • Fixes DrupalCI-specific phpcs/phpstan/eslint compatibility gaps (confirmed via the gitlab.local DrupalCI mirror - all jobs pass on both Drupal 10 and 11)
  • Fixes cspell typos and D11 config schema errors

Resolves https://www.drupal.org/project/jsonapi_views/issues/3587949

Test plan

  • DRUPAL_VERSION=10 make build && make lint passes
  • DRUPAL_VERSION=11 make build && make lint passes
  • gitlab.local DrupalCI-mirror pipeline green: phpcs, phpstan, eslint, phpunit, cspell, composer-lint all pass

…alCI

Applies the drupal_extension_scaffold (v4.17.0) for standardized local
development and CI tooling, on top of Julian Pustkuchen's .gitlab-ci.yml
and Kieran Cott's DI refactor (MR !13), then makes the full pipeline
(phpcs, phpstan, rector, eslint, cspell, phpunit) actually pass:

- Remove legacy .circleci/ setup, replaced by .gitlab-ci.yml + .github/
- Resolve all PHPStan errors and add strict_types across the module
- Fix D10/D11 cross-version PHPStan/Rector conflicts (drupalCreateUser()
  return-type narrowing needed on D10 but redundant on D11; skip the two
  Rector rules that would convert PHPUnit annotations to attributes,
  which D10's PHPUnit 10 doesn't support)
- Remove DrevOps/PHPCompatibility/testVersion from phpcs.xml and exclude
  rector.php from phpstan.neon - sniffs/classes not available in
  DrupalCI's environment
- Drop the phpstan.neon ignoreErrors path restriction that never matched
  DrupalCI's checkout-root scan context (paths report without the
  web/modules/custom/ prefix there, unlike the local build/ tree)
- Exclude .devtools/ from phpcs (scaffold infrastructure, not module code)
- Drop .eslintrc.json's airbnb-base extend and .prettierrc.json's
  @homer0/prettier-plugin-jsdoc plugin - both fail to resolve under
  DrupalCI's core-only node_modules; keep yml/prettier plugin support
  since DrupalCI also lints this module's own YAML files
- Configure DrupalCI GitLab CI variables and add phpunit.gitlab-ci.xml
- Add cloudflared dev-tunnel scripts, wire DRUSH_URI into drush/login,
  and wire the missing start-/stop- hook calls into .devtools/start and
  .devtools/stop so the tunnel scripts actually run (the scaffold's
  .devtools/provision already called its provision- hook; start/stop
  never called theirs)

Confirmed all gitlab.local pipeline jobs pass (phpcs, phpstan, eslint,
phpunit, cspell, composer-lint) on both Drupal 10 and Drupal 11.
@Decipher
Decipher force-pushed the feature/3587949-add-gitlab-ci-and-fixes branch from fd52303 to 8c5dc7d Compare August 3, 2026 05:59
@codecov

codecov Bot commented Aug 3, 2026

Copy link
Copy Markdown

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

@Decipher
Decipher merged commit 2361bdf into 8.x-1.x Aug 3, 2026
16 checks passed
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.

2 participants