Skip to content

Commit 6c5e6bb

Browse files
committed
Merge branch 'master' into dev/4.0
2 parents 11e98fe + ec43207 commit 6c5e6bb

File tree

14 files changed

+113
-257
lines changed

14 files changed

+113
-257
lines changed

.gitattributes

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
/tests/ export-ignore
2-
/travis/ export-ignore
32
.github/ export-ignore
4-
.travis.yml export-ignore
53
.gitignore export-ignore
64
.gitattributes export-ignore
75
phpunit.xml.dist export-ignore

.github/workflows/tests.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,10 @@ on:
1616

1717
jobs:
1818
call-tests:
19+
name: Extension tests
1920
uses: phpbb-extensions/test-framework/.github/workflows/tests.yml@master
2021
with:
21-
EXTNAME: phpbb/skeleton # Your extension vendor/package name
22-
SNIFF: 1 # Run code sniffer on your code? 1 or 0
23-
IMAGE_ICC: 1 # Run icc profile sniffer on your images? 1 or 0
24-
EPV: 0 # Run EPV (Extension Pre Validator) on your code? 1 or 0
25-
EXECUTABLE_FILES: 1 # Run check for executable files? 1 or 0
22+
EXTNAME: phpbb/skeleton # Your extension vendor/package name
2623
CODECOV: 1 # Run code coverage via codecov? 1 or 0
27-
PHPBB_BRANCH: master # The phpBB branch to run tests on
2824
secrets:
2925
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} # Do not change this

CHANGELOG.md

Lines changed: 33 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,28 @@
11
# Changelog
22

3+
## 1.1.15 - 2025-04-30
4+
5+
- Added a header section to the Skeleton with key links to its documentation, phpBB’s coding guidelines, and extension policies.
6+
- Added direct documentation links to each section of the Skeleton’s interface for quicker access.
7+
- Updated GitHub Actions to generate a tests.yml using phpBB’s reusable test framework by default, while still supporting the original standalone tests.yml for custom setups.
8+
- Removed Travis CI, as it is no longer supported by phpBB and no longer free for open source projects.
9+
- Decoupled GitHub Actions workflow generation from PHPUnit test generation—each can now be created independently.
10+
11+
## 1.1.14 - 2025-04-20
12+
13+
- Updated GitHub action workflows to address compatibility and bug issues.
14+
315
## 1.1.13 - 2025-01-19
416

517
- Fixed an issue where test suite files failed to be located and created.
6-
- Minor code improvements and clean up.
18+
- Minor code improvements and cleanup.
719

820
## 1.1.12 - 2024-09-29
921

1022
- Updated GitHub action workflows to address compatibility and bug issues.
1123
- Added PHP 8.4 testing to GitHub action workflows.
1224
- Ensure Skeleton extension can only be installed on compatible versions of phpBB.
13-
- Minor code improvements and clean up.
25+
- Minor code improvements and cleanup.
1426

1527
## 1.1.11 - 2023-12-29
1628

@@ -22,7 +34,7 @@
2234
- Updated GitHub Actions workflow files.
2335
- Removed translation of *CP module page titles as it's not necessary.
2436
- Updated the Skeleton icon.
25-
- Minor code improvements and clean up.
37+
- Minor code improvements and cleanup.
2638

2739
## 1.1.9 - 2022-06-17
2840

@@ -33,25 +45,25 @@
3345
- Updated minimum requirements: PHP 5.6 and phpBB 3.2.3.
3446
- Fixed unexpected errors for phpBB and PHP version constraints using ">" and "<" characters.
3547
- Internally, some minor code improvements.
36-
- Internally, switched to NPM to manage 3rd party package dependencies.
48+
- Internally, switched to NPM to manage third party package dependencies.
3749
- Internally, implemented unit and functional test coverage for code reliability.
3850

3951
## 1.1.7 - 2021-05-28
4052

4153
- Added validation on user input for homepage URLs, author email addresses, and version requirement patterns.
42-
- Fixed validation of extension display name when using the CLI.
54+
- Fixed validation of the extension display name when using the CLI.
4355
- Internally moved the creation of extension composer.json from PHP logic to a TWIG template.
4456
- Updated default phpBB version max requirement to <4.0.0@dev.
4557

4658
## 1.1.6 - 2020-12-28
4759

48-
- Added option to generate GitHub Actions workflow for Continuous Integration testing.
60+
- Added an option to generate GitHub Actions workflow for Continuous Integration testing.
4961
- Fixed an issue that prevented dot-files and dot-directories from being generated.
5062
- Updated some syntax in the sample PHPUnit test files.
5163

5264
## 1.1.5 - 2020-09-11
5365

54-
- Make sure config created for cron by migration is dynamic.
66+
- Make sure the config created for cron by migration is dynamic.
5567
- Updated all PHP arrays to use modern shortened syntax.
5668
- Updated Travis config files.
5769
- Updated Read Me files.
@@ -70,7 +82,7 @@
7082
- Will now use Twig template namespaces for rendering template files in generated controller files.
7183
- Will now generate Travis-CI tests to run against phpBB 3.3.x (unless you specify an earlier version of phpBB as a maximum version constraint).
7284
- Will attempt to do a better job of creating the correct notification files, based on your phpBB version constraints.
73-
- Removed 3rd party Symfony components previously required in phpBB 3.1 installs, resulting in much faster performance.
85+
- Removed third party Symfony components previously required in phpBB 3.1 installations, resulting in much faster performance.
7486
- Loads of additional little code inspection fixes.
7587

7688
## 1.1.2 - 2019-07-13
@@ -81,7 +93,7 @@
8193

8294
- Added a new Permissions component to generate skeleton files that add and use permissions in an extension.
8395
- Improved the handling of special characters in the Display Name. Now &, < and > are displayed correctly, while double-quotes are strictly invalid.
84-
- Improved the generated sample migration file with a lot more documented examples of configs, config_text, permissions and custom functions.
96+
- Improved the generated sample migration file with a lot more documented examples of configs, config_text, permissions, and custom functions.
8597
- Improved the depends_on() values in generated migration files.
8698
- Improved the naming of generated control panel language variables.
8799
- Improved the generation of skeleton files so that only files for the selected components will be built.
@@ -95,9 +107,9 @@
95107
- Skeleton updates:
96108
- Skeleton files have dropped the use of "Acme" and "Demo" in favor of your own vendor and extension names.
97109
- Skeleton template files now use TWIG syntax instead of old phpBB 3.0 style template syntax.
98-
- Improved distinctions between skeletons designed to be compatible with phpBB >=3.1 vs >=3.2. For example, skeletons built to support 3.1 and above will still use the User object for language functions, while skeletons built for 3.2 and above will use the newer Language object for language functions.
110+
- Improved distinctions between skeletons designed to be compatible with phpBB >=3.1 vs. >=3.2. For example, skeletons built to support 3.1 and above will still use the User object for language functions, while skeletons built for 3.2 and above will use the newer Language object for language functions.
99111
- All skeleton files have been overhauled with improved DocBlock and sample code that exemplifies phpBB's coding guidelines and best practices.
100-
- ACP, UCP and MCP modules have been updated to utilise controller classes.
112+
- ACP, UCP, and MCP modules have been updated to utilise controller classes.
101113

102114
## 1.0.7 - 2018-03-14
103115

@@ -114,32 +126,32 @@
114126

115127
## 1.0.4 - 2017-05-04
116128

117-
- Updated generated composer.json files to include the composer/installers requirement.
118-
- Updated generated acp_demo_body.html template to follow a more correct ACP layout configuration.
119-
- Updated generated acp main_module.php to generate use the correct error flags in trigger_errors.
120-
- Switched skeleton's nav-bar icon to an SVG image for better style & retina display compatibility.
129+
- Updated the generated composer.json files to include the composer/installers requirement.
130+
- Updated the generated acp_demo_body.html template to follow a more correct ACP layout configuration.
131+
- Updated the generated acp main_module.php to generate use the correct error flags in trigger_errors.
132+
- Switched skeleton's nav-bar icon to an SVG image for better style and retina display compatibility.
121133

122134
## 1.0.3 - 2017-01-12
123135

124136
- Add support for UTF-8 characters in fields (extension full name, description, author info, etc.).
125137
- Only add information about unit testing to the README when testing components are selected.
126-
- Fix the extension name used in the generated build script component.
127-
- Fix undeclared class properties generated in the ACP module component.
128-
- Fix missing empty new line at the end of the generated composer.json file.
129-
- Increased minimum PHP requirement to PHP 5.4 to support proper JSON file generation (such as UTF-8 support).
138+
- Fixed the extension name used in the generated build script component.
139+
- Fixed undeclared class properties generated in the ACP module component.
140+
- Fixed the missing empty new line at the end of the generated composer.json file.
141+
- Increased the minimum PHP requirement to PHP 5.4 to support proper JSON file generation (such as UTF-8 support).
130142

131143
## 1.0.2 - 2016-11-19
132144

133145
- Re-organized some of the "Extension packaging" fields with clearer names and ordering.
134-
- Shortened the name of the nav-bar link in the web interface to "Skeleton Extension".
146+
- Shortened the name of the nav-bar link in the web interface to Skeleton Extension.
135147
- Helpful tooltips have been added to each of the checkboxes in the "Components" section of the web interface.
136148
- Added a link to Skeleton Extension's Documentation in the web interface.
137149
- Added warnings when trying to use 'phpbb' or 'core' as vendor and extension names.
138150
- Added view online page sample code to the event listener for the controller component.
139151
- Added a missing migration file to generated UCP components.
140152
- Fixed an issue where the controller component did not generate a correct event listener.
141153
- Fixed an issue where the controller component did not generate a template event listener for the controller's nav-bar link.
142-
- Fixed an issue where the notifications component did not generate a valid ext.php (references to the notification services will now have the correct vendor and ext names instead of "dev.dev").
154+
- Fixed an issue where the notification component did not generate a valid ext.php (references to the notification services will now have the correct vendor and ext names instead of "dev.dev").
143155
- Use the correct Symfony syntax for non-shared services: `scope: prototype` in phpBB 3.1.x and `shared: false` in phpBB 3.2.
144156

145157
## 1.0.1 - 2016-10-13

build.xml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,8 @@
1515
-->
1616
<delete dir="${dir}/.github" />
1717
<delete dir="${dir}/tests" />
18-
<delete dir="${dir}/travis" />
1918

2019
<delete file="${dir}/.gitignore" />
21-
<delete file="${dir}/.travis.yml" />
2220
<delete file="${dir}/build.xml" />
2321
<delete file="${dir}/composer.lock" />
2422
<delete file="${dir}/composer.phar" />

config/skeletons.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ services:
155155
- 'tests'
156156
- false
157157
- []
158-
- ['tests/controller/main_test.php', 'tests/dbal/fixtures/config.xml', 'tests/dbal/simple_test.php', 'tests/functional/view_test.php', 'phpunit.xml.dist']
158+
- ['tests/controller/main_test.php', 'tests/dbal/fixtures/config.xml', 'tests/dbal/simple_test.php', 'tests/functional/view_test.php', 'phpunit.xml.dist', '.github/workflows/tests.yml']
159159
- 'TEST_DEPLOY'
160160
tags:
161161
- { name: phpbb.skeleton.ext.skeleton }
@@ -165,19 +165,19 @@ services:
165165
arguments:
166166
- 'githubactions'
167167
- false
168-
- ['tests']
168+
- []
169169
- ['.github/workflows/tests.yml']
170170
- 'TEST_DEPLOY'
171171
tags:
172172
- { name: phpbb.skeleton.ext.skeleton }
173173

174-
phpbb.skeleton.ext.skeleton.travis:
174+
phpbb.skeleton.ext.skeleton.githubactions_custom:
175175
class: phpbb\skeleton\skeleton
176176
arguments:
177-
- 'travis'
177+
- 'githubactions_custom'
178178
- false
179-
- ['tests']
180-
- ['travis/prepare-phpbb.sh', '.travis.yml']
179+
- []
180+
- ['.github/workflows/tests.yml']
181181
- 'TEST_DEPLOY'
182182
tags:
183183
- { name: phpbb.skeleton.ext.skeleton }

helper/packager.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ public function get_component_dialog_values()
9595
$components[$service->get_name()] = [
9696
'default' => $service->get_default(),
9797
'dependencies' => $service->get_dependencies(),
98-
'files' => $service->get_files(),
98+
'files' => $service->get_files(),
9999
'group' => $service->get_group(),
100100
];
101101
}

language/en/common.php

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@
2424
$lang = array_merge($lang, [
2525
'CLI_DESCRIPTION_SKELETON_CREATE' => 'Create a basic skeleton extension',
2626
'PHPBB_SKELETON_EXT' => 'Skeleton Extension',
27-
'PHPBB_CREATE_SKELETON_EXT' => 'Create skeleton extension',
28-
'PHPBB_SKELETON_EXT_DOCS' => 'Read the Documentation',
27+
'PHPBB_CREATE_SKELETON_EXT' => 'Create a Skeleton Extension',
28+
'PHPBB_CREATE_SKELETON_EXPLAIN' => 'Generate your extension’s foundation in seconds. No more setting up files by hand — Skeleton builds it all for you, with clean, fully documented templates based on phpBB’s best practices. Before you begin, be sure to review the 📖 [<a href="%1$s" target="_blank">Skeleton Extension Documentation</a>], 🛡️ [<a href="%2$s" target="_blank">Extension Validation Rules</a>], and 🛠️ [<a href="%3$s" target="_blank">Coding Guidelines</a>].',
29+
'PHPBB_SKELETON_EXT_HELP' => 'Learn More',
2930

3031
'EXTENSION_CLI_SKELETON_SUCCESS' => "<info>Extension created successfully.\nCopy the extension from `store/tmp-ext/` into the `ext/` folder.</info>",
3132
'SKELETON_CLI_COMPOSER_QUESTIONS' => '<comment>Enter composer.json details (hit enter to leave an option empty)</comment>',
@@ -119,12 +120,12 @@
119120
'SKELETON_QUESTION_COMPONENT_TESTS' => 'Create sample PHPUnit tests?',
120121
'SKELETON_QUESTION_COMPONENT_TESTS_UI' => 'Tests (PHPUnit)',
121122
'SKELETON_QUESTION_COMPONENT_TESTS_EXPLAIN' => 'Unit tests can test an extension to verify that specific portions of its source code work properly. This helps ensure basic code integrity and prevents regressions as an extension is being developed and debugged.',
122-
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS' => 'Create a workflow for test execution using Github Actions?',
123-
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS_UI' => 'Github Actions CI configuration',
124-
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS_EXPLAIN' => 'Github Actions allow you to run PHPUnit tests on your GitHub repository. This will generate the workflow YML needed to begin testing your phpBB extension with each commit and pull request. Note that this workflow will be inside a hidden folder (.github/workflows).',
125-
'SKELETON_QUESTION_COMPONENT_TRAVIS' => 'Create a sample for test execution on Travis CI?',
126-
'SKELETON_QUESTION_COMPONENT_TRAVIS_UI' => 'Travis CI configuration',
127-
'SKELETON_QUESTION_COMPONENT_TRAVIS_EXPLAIN' => 'Travis CI is a platform for running your PHPUnit tests on a GitHub repository. This will generate the basic config and script files needed to begin testing your phpBB extension with each commit and pull request.',
123+
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS' => 'Create a GitHub Actions workflow to run tests in your repository?',
124+
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS_UI' => 'Github Actions workflow',
125+
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS_EXPLAIN' => 'Creates a GitHub Actions workflow to run PHPUnit tests on your repository using a framework maintained by phpBB. The workflow YML file will be placed in the .github/workflows folder and will run tests automatically on each commit and pull request.',
126+
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS_CUSTOM' => 'Create a fully customisable GitHub Actions workflow? (Select this if you plan to modify jobs or steps.)',
127+
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS_CUSTOM_UI' => 'Github Actions custom workflow',
128+
'SKELETON_QUESTION_COMPONENT_GITHUBACTIONS_CUSTOM_EXPLAIN' => 'Creates a customisable GitHub Actions workflow to run PHPUnit tests on your repository. This workflow is flexible to fit your specific testing needs and will be saved in the .github/workflows folder, triggered by each commit and pull request. Choosing this will override the non-customisable workflow.',
128129
'SKELETON_QUESTION_COMPONENT_BUILD' => 'Create a sample build script for phing?',
129130
'SKELETON_QUESTION_COMPONENT_BUILD_UI' => 'Build script (phing)',
130131
'SKELETON_QUESTION_COMPONENT_BUILD_EXPLAIN' => 'A phing build script is generated for your extension which can be used to generate build packages to help simplify the release or deployment processes.',

skeleton/.github/workflows/tests.yml.twig

Lines changed: 28 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
name: Tests
22

3+
{% if COMPONENT.githubactions_custom %}
34
env:
45
EXTNAME: {{ EXTENSION.vendor_name }}/{{ EXTENSION.extension_name }} # Your extension vendor/package name
56
SNIFF: 1 # Run code sniffer on your code? 1 or 0
@@ -336,9 +337,9 @@ jobs:
336337
- php: '7.2'
337338
db: "mcr.microsoft.com/mssql/server:2019-CU27-ubuntu-20.04"
338339
db_alias: 'MSSQL 2019'
339-
- php: '7.2'
340-
db: "mcr.microsoft.com/mssql/server:2022-CU13-ubuntu-22.04"
341-
db_alias: 'MSSQL 2022'
340+
- php: '7.2'
341+
db: "mcr.microsoft.com/mssql/server:2022-CU13-ubuntu-22.04"
342+
db_alias: 'MSSQL 2022'
342343

343344
name: PHP ${{ '{{' }} matrix.php }} - ${{ '{{' }} matrix.db_alias != '' && matrix.db_alias || matrix.db }}
344345

@@ -424,3 +425,27 @@ jobs:
424425
run: phpBB/vendor/bin/phpunit --configuration phpBB/ext/$EXTNAME/.github/phpunit-$DB-github.xml --bootstrap ./tests/bootstrap.php
425426
working-directory: ./phpBB3
426427
# END Other Tests Job
428+
{% else %}
429+
on:
430+
push:
431+
branches: # Run tests when commits are pushed to these branches in your repo
432+
- main
433+
- master
434+
- develop
435+
- dev/*
436+
pull_request: # Run tests when pull requests are made on these branches in your repo
437+
branches:
438+
- main
439+
- master
440+
- develop
441+
- dev/*
442+
443+
jobs:
444+
call-tests:
445+
name: Extension tests
446+
uses: phpbb-extensions/test-framework/.github/workflows/tests.yml@3.3.x
447+
with:
448+
EXTNAME: {{ EXTENSION.vendor_name }}/{{ EXTENSION.extension_name }} # Your extension vendor/package name
449+
450+
# See the README for full details and setup instructions: https://github.com/phpbb-extensions/test-framework
451+
{% endif %}

0 commit comments

Comments
 (0)