Skip to content

Drop old dependencies#50

Merged
JeroenDeDauw merged 1 commit intomasterfrom
v3
Sep 24, 2025
Merged

Drop old dependencies#50
JeroenDeDauw merged 1 commit intomasterfrom
v3

Conversation

@malberts
Copy link
Contributor

@malberts malberts commented Sep 24, 2025

Due to MW 1.44 support in #49.

CI has been failing for a while, so unrelated to this PR.

Summary by CodeRabbit

  • Documentation
    • Updated README: new minimums PHP 8.1+, MediaWiki 1.43+, Semantic MediaWiki 6.0+; added Version 3.0.0 release notes and installation guidance; composer examples updated to ~3.0.
  • Chores
    • Bumped extension to 3.0.0-dev and tightened dependency constraints (PHP >=8.1, MW >=1.43, SMW >=6.0).
    • Simplified CI matrix by dropping older MediaWiki entries and consolidating test targets around REL1_43 and master.

@coderabbitai
Copy link

coderabbitai bot commented Sep 24, 2025

📝 Walkthrough

Walkthrough

CI matrix simplified (dropped older MW entries, consolidated REL1_43); PHP requirement raised to >=8.1; extension bumped to 3.0.0-dev and MediaWiki/SMW minimums raised to 1.43.0 and 6.0.0; README and composer examples updated accordingly.

Changes

Cohort / File(s) Summary of Changes
CI workflow
.github/workflows/ci.yml
Trimmed CI matrix: removed REL1_39/REL1_41/REL1_42 entries; added a REL1_43 job (PHP 8.1, MySQL, SMW dev-master, experimental true); retained existing REL1_43 PHP 8.3 jobs and master entries; removed related inline comments.
Composer & PHP requirement
composer.json, composer.local.json
Raised PHP platform constraint from >=8.0 to >=8.1; updated composer example constraints to target ~3.0 in composer.local.json/README examples.
Extension metadata
extension.json
Bumped extension version to 3.0.0-dev; tightened requires: MediaWiki >=1.43.0 (was >=1.39.0), SemanticMediaWiki >=6.0.0 (was >=4.0.0).
Documentation & release notes
README.md
Updated platform requirements to PHP 8.1+, MediaWiki 1.43+, SMW 6.0+; added Release notes for 3.0.0; adjusted composer installation snippets to ~3.0.0.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • Add GitHub Actions CI #35 — Introduced/modified the CI workflow that this PR further trims and consolidates.
  • Make CI run #37 — Previous changes to the CI matrix (MW/SMW entries and flags) closely related to current CI edits.
  • Update README.md #47 — Earlier README/composer constraint updates; related to the composer/README version bumps here.

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title "Drop old dependencies" succinctly and accurately summarizes the primary change set—removing older CI entries and tightening platform requirements (PHP, MediaWiki, Semantic MediaWiki)—and is concise and focused enough for a teammate to understand the main intent at a glance.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch v3

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (6)
composer.json (1)

35-38: Consider simplifying composer/installers constraint

Given the new minimums, you likely no longer need Composer Installers v1. Consider dropping support for ^1.0.1 to reduce solver surface.

Apply:

-    "composer/installers": "^2|^1.0.1",
+    "composer/installers": "^2",
README.md (3)

43-46: Fix markdownlint MD010: replace hard tabs with spaces in JSON block

Use spaces to satisfy no-hard-tabs.

-{
-	"require": {
-		"professional-wiki/modern-timeline": "~3.0"
-	}
-}
+{
+  "require": {
+    "professional-wiki/modern-timeline": "~3.0"
+  }
+}

51-52: Fix markdownlint MD046: use fenced code block for the single-line snippet

Wrap the indented line in fences (and JSON hint).

-    "professional-wiki/modern-timeline": "~3.0"
+```json
+"professional-wiki/modern-timeline": "~3.0"
+```

173-182: Fix markdownlint MD034: avoid bare URL in release notes

Turn the bare URL into a markdown link.

-* Translation updates from https://translatewiki.net
+* Translation updates from [translatewiki.net](https://translatewiki.net)
.github/workflows/ci.yml (2)

16-36: Have at least one non-experimental gate in the matrix

All entries are experimental: true, meaning the test job won’t fail the build on regressions. Make the stable REL1_43 + PHP 8.3 + MySQL job non-experimental to gate merges.

-          - mw: 'REL1_43'
-            php: '8.3'
-            db: 'mysql'
-            smw: 'dev-master'
-            experimental: true
+          - mw: 'REL1_43'
+            php: '8.3'
+            db: 'mysql'
+            smw: 'dev-master'
+            experimental: false

16-36: Pin actions and service images for supply-chain safety

Pin GitHub Actions to SHAs and use a versioned MariaDB image to avoid unreviewed updates.

Example (apply across the workflow):

  • actions/checkout@v4 → actions/checkout@
  • actions/cache@v4 → actions/cache@
  • shivammathur/setup-php@v2 → shivammathur/setup-php@
  • codecov/codecov-action@v5 → codecov/codecov-action@
  • services.db.image: mariadb → mariadb:10.11
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 30bb67c and c770e61.

📒 Files selected for processing (4)
  • .github/workflows/ci.yml (1 hunks)
  • README.md (3 hunks)
  • composer.json (1 hunks)
  • extension.json (2 hunks)
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
README.md

43-43: Hard tabs
Column: 1

(MD010, no-hard-tabs)


44-44: Hard tabs
Column: 1

(MD010, no-hard-tabs)


51-51: Code block style
Expected: fenced; Actual: indented

(MD046, code-block-style)


181-181: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (4)
composer.json (1)

35-38: Aligns with platform bump to PHP 8.1

The PHP constraint matches the rest of the PR (MW ≥1.43, SMW ≥5.0). Looks good.

README.md (1)

21-23: “Tested up to” is inconsistent with 1.44 support

Release notes say 1.44 compat is fixed, yet the header says “tested up to 1.43”. Update if accurate.

Apply:

-* MediaWiki 1.43 or later (tested up to MediaWiki 1.43)
+* MediaWiki 1.43 or later (tested up to MediaWiki 1.44)
extension.json (2)

4-4: Version bump to 3.0.0-dev looks good

Matches README’s 3.0.0 section and the “drop old dependencies” objective.


21-26: Raised minimums to MW 1.43 and SMW 5.0 are appropriate

Consistent with CI and README changes.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (4)
README.md (4)

21-23: Align “tested up to” with 1.44 support claim

Release notes state 1.44 compatibility; suggest updating the tested note for consistency.

-* MediaWiki 1.43 or later (tested up to MediaWiki 1.43)
+* MediaWiki 1.43 or later (tested up to MediaWiki 1.44)

40-46: Fix markdownlint MD010 and add JSON syntax highlighting

Replace hard tabs with spaces and mark fence as JSON.

-```
+```json
 {
-	"require": {
-		"professional-wiki/modern-timeline": "~3.0"
-	}
+  "require": {
+    "professional-wiki/modern-timeline": "~3.0"
+  }
 }

---

`50-52`: **Fix MD046: use fenced code block for the single-line snippet**

Wrap the indented line in a fenced code block.


```diff
-    "professional-wiki/modern-timeline": "~3.0"
+```json
+"professional-wiki/modern-timeline": "~3.0"
+```

181-181: Avoid bare URL (MD034)

Use a markdown link.

-* Translation updates from https://translatewiki.net
+* Translation updates from [translatewiki.net](https://translatewiki.net)
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between c770e61 and 518fda4.

📒 Files selected for processing (4)
  • .github/workflows/ci.yml (1 hunks)
  • README.md (3 hunks)
  • composer.json (1 hunks)
  • extension.json (2 hunks)
🚧 Files skipped from review as they are similar to previous changes (3)
  • .github/workflows/ci.yml
  • extension.json
  • composer.json
🧰 Additional context used
🪛 markdownlint-cli2 (0.18.1)
README.md

43-43: Hard tabs
Column: 1

(MD010, no-hard-tabs)


44-44: Hard tabs
Column: 1

(MD010, no-hard-tabs)


51-51: Code block style
Expected: fenced; Actual: indented

(MD046, code-block-style)


181-181: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (1)
README.md (1)

23-23: SMW 6.0 bump LGTM

Matches prior suggestion in earlier review comments.

@JeroenDeDauw JeroenDeDauw merged commit 45fac22 into master Sep 24, 2025
4 of 13 checks passed
@JeroenDeDauw JeroenDeDauw deleted the v3 branch September 24, 2025 16:53
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