Skip to content

Silverstripe 6 Compatibility Upgrade#10

Merged
jsirish merged 9 commits intomasterfrom
feature/silverstripe-6-upgrade
Oct 22, 2025
Merged

Silverstripe 6 Compatibility Upgrade#10
jsirish merged 9 commits intomasterfrom
feature/silverstripe-6-upgrade

Conversation

@jsirish
Copy link
Copy Markdown
Member

@jsirish jsirish commented Oct 22, 2025

Silverstripe 6 Compatibility Upgrade

This PR upgrades the module to be compatible with Silverstripe 6.

Changes Made:

  • Updated PHP requirement to ^8.3
  • Updated dnadesign/silverstripe-elemental to ^6.0
  • Updated jonom/focuspoint to ^6.0
  • Replaced silverstripe/framework with silverstripe/recipe-cms ^6.0
  • Added silverstripe/linkfield ^5.0 for SS6 compatibility
  • Updated development tools and testing framework
  • Updated README requirements documentation
  • Removed outdated Travis CI configuration
  • All dependencies resolve correctly with SS6

- Update PHP requirement to ^8.3
- Update dnadesign/silverstripe-elemental to ^6.0
- Update jonom/focuspoint to ^6.0
- Replace silverstripe/framework with silverstripe/recipe-cms ^6.0
- Add silverstripe/linkfield ^5.0 for SS6 compatibility
- Update silverstripe/recipe-testing to ^4
- Add development tools (PHPStan, CodeSniffer)
- Update allow-plugins configuration
- Remove unused Injector import from tests
- Update elemental requirement to ^6.0
- Update focuspoint requirement to ^6.0
- Add silverstripe/recipe-cms ^6.0 requirement
- Project now uses GitHub Actions via silverstripe/gha-ci workflow
- Travis CI config was using outdated PHP versions (5.6, 7.0, 7.1)
- No longer needed with modern CI setup
Copilot AI review requested due to automatic review settings October 22, 2025 05:16
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR upgrades the module to be compatible with Silverstripe 6, updating PHP requirements and core dependencies while removing outdated CI configuration.

Key Changes:

  • Upgraded PHP requirement to ^8.3 and all core Silverstripe dependencies to version 6
  • Added silverstripe/linkfield ^5.0 for SS6 compatibility
  • Removed Travis CI configuration and unused import statement

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
composer.json Updated PHP and dependency requirements to Silverstripe 6, added dev tools and composer plugin configuration
README.md Updated requirements documentation to reflect Silverstripe 6 dependencies
tests/Elements/ElementImageTest.php Removed unused Injector import
.travis.yml Removed outdated Travis CI configuration file

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

},
"config": {
"allow-plugins": {
"composer/installers": true,
Copy link

Copilot AI Oct 22, 2025

Choose a reason for hiding this comment

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

The allow-plugins configuration is missing the phpstan/extension-installer plugin, which is listed in require-dev. Add "phpstan/extension-installer": true to prevent composer warnings.

Suggested change
"composer/installers": true,
"composer/installers": true,
"phpstan/extension-installer": true,

Copilot uses AI. Check for mistakes.
- Add phpstan/extension-installer plugin to allow-plugins configuration
- Fixes GitHub Copilot review comment about missing plugin permission
- Prevents composer warnings during dependency installation
- Lock file updated with all SS6 compatible dependencies
- Includes dnadesign/silverstripe-elemental 6.0.4
- Includes jonom/focuspoint 6.0.0
- Includes silverstripe/framework 6.0.0-alpha1
- All dependencies successfully resolved and installed
@jsirish jsirish requested a review from Copilot October 22, 2025 05:33
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

composer.json Outdated
Comment on lines +52 to +66
"project-files-installed": [
".htaccess",
"app/.htaccess",
"app/_config/mimevalidator.yml",
"app/_config/mysite.yml",
"app/src/Page.php",
"app/src/PageController.php",
"behat.yml",
"phpunit.xml.dist"
],
"public-files-installed": [
".htaccess",
"index.php",
"web.config"
]
Copy link

Copilot AI Oct 22, 2025

Choose a reason for hiding this comment

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

The 'extra.project-files-installed' and 'extra.public-files-installed' sections appear to be project-specific configuration that is typically used in application-level composer.json files, not module/library packages. These sections list files that would be installed during initial project setup but are not relevant for a reusable module. Consider removing these sections as they don't apply to this package type.

Suggested change
"project-files-installed": [
".htaccess",
"app/.htaccess",
"app/_config/mimevalidator.yml",
"app/_config/mysite.yml",
"app/src/Page.php",
"app/src/PageController.php",
"behat.yml",
"phpunit.xml.dist"
],
"public-files-installed": [
".htaccess",
"index.php",
"web.config"
]

Copilot uses AI. Check for mistakes.
- Remove extra.project-files-installed and extra.public-files-installed sections
- These sections are for application-level composer.json, not module packages
- Fixes GitHub Copilot review comment about inappropriate configuration
- Module composer.json should only contain module-specific settings
- Added common SilverStripe project files to gitignore
- Prevents app/, public/, vendor/, etc. from being tracked
@jsirish jsirish requested a review from Copilot October 22, 2025 05:50
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 4 out of 5 changed files in this pull request and generated no new comments.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@jsirish jsirish requested a review from Copilot October 22, 2025 05:51
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

composer.json Outdated
"dnadesign/silverstripe-elemental": "^6.0",
"jonom/focuspoint": "^6.0",
"silverstripe/recipe-cms": "^6.0",
"silverstripe/linkfield": "^5.0",
Copy link

Copilot AI Oct 22, 2025

Choose a reason for hiding this comment

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

The silverstripe/linkfield dependency is added but not documented in the README requirements section. Consider adding this to the requirements list for completeness.

Copilot uses AI. Check for mistakes.
- Update silverstripe/vendor-plugin from ^2 to ^3
- Required by silverstripe/installer 6.0.x-dev
- Fixes composer dependency resolution failures in CI
@jsirish jsirish requested a review from Copilot October 22, 2025 05:56
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 4 out of 5 changed files in this pull request and generated 1 comment.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

composer.json Outdated
Comment on lines +25 to +26
"silverstripe/linkfield": "^5.0",
"silverstripe/vendor-plugin": "^3"
Copy link

Copilot AI Oct 22, 2025

Choose a reason for hiding this comment

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

[nitpick] The silverstripe/vendor-plugin is typically provided transitively by silverstripe/recipe-cms and doesn't need to be explicitly required. Consider removing this dependency unless there's a specific reason to pin this version.

Suggested change
"silverstripe/linkfield": "^5.0",
"silverstripe/vendor-plugin": "^3"
"silverstripe/linkfield": "^5.0"

Copilot uses AI. Check for mistakes.
- Provided transitively by silverstripe/recipe-cms
- Simplifies dependency management
@jsirish jsirish requested a review from Copilot October 22, 2025 06:02
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

Copilot reviewed 4 out of 5 changed files in this pull request and generated no new comments.


Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@jsirish jsirish merged commit 2af78c3 into master Oct 22, 2025
16 checks passed
@jsirish jsirish deleted the feature/silverstripe-6-upgrade branch October 22, 2025 06:06
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