Skip to content

Commit 24746d6

Browse files
Create trunk-built branch
0 parents  commit 24746d6

File tree

492 files changed

+105420
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

492 files changed

+105420
-0
lines changed

.coderabbit.yaml

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
# yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json
2+
language: "en"
3+
chat:
4+
auto_reply: true
5+
reviews:
6+
request_changes_workflow: true
7+
high_level_summary: true
8+
poem: false
9+
review_status: true
10+
collapse_walkthrough: true
11+
path_filters:
12+
- "!build/**"
13+
auto_review:
14+
enabled: true
15+
drafts: false
16+
base_branches:
17+
- "develop"
18+
- "add/.*"
19+
- "fix/.*"
20+
- "update/.*"
21+
path_instructions:
22+
- path: "**/*.{js,ts,tsx,jsx}"
23+
instructions: |
24+
"Perform a detailed review of the provided code with following key aspects in mind:
25+
- Review the code to ensure it is well-structured and adheres to best practices.
26+
- Verify compliance with WordPress coding standards.
27+
- Ensure the code is well-documented.
28+
- Check for security vulnerabilities and confirm the code is secure.
29+
- Optimize the code for performance, removing any unnecessary elements.
30+
- Validate JSDoc comments for accuracy, currency, and adherence to WordPress coding standards.
31+
- Ensure each line comment concludes with a period.
32+
- Confirm every JSDoc comment includes a @since tag indicating the next version of the plugin to include the code.
33+
- Guarantee compatibility with the latest version of WordPress, avoiding deprecated functions or features."
34+
- path: "**/*.{css,scss}"
35+
instructions: |
36+
"Perform a detailed review of the provided code with following key aspects in mind:
37+
- Review the SCSS code to ensure it is well-structured and adheres to best practices.
38+
- Convert dimensions greater than or equal to 3px to rem units using the to_rem function.
39+
- Utilize variables for sizes and colors defined in src/content-helper/common/css/variables.scss instead of hardcoding values."
40+
- path: "**/*.{html,php}"
41+
instructions: |
42+
"Perform a detailed review of the provided code with following key aspects in mind:
43+
- Review the HTML and PHP code to ensure it is well-structured and adheres to best practices.
44+
- Ensure the code follows WordPress coding standards and is well-documented.
45+
- Confirm the code is secure and free from vulnerabilities.
46+
- Optimize the code for performance, removing any unnecessary elements.
47+
- Validate comments for accuracy, currency, and adherence to WordPress coding standards.
48+
- Ensure each line comment concludes with a period.
49+
- Verify code compatibility with the latest version of WordPress, avoiding deprecated functions or features."

.editorconfig

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# This file is for unifying the coding style for different editors and IDEs.
2+
# It is based on https://core.trac.wordpress.org/browser/trunk/.editorconfig.
3+
# See https://editorconfig.org for more information about the standard.
4+
5+
# WordPress Coding Standards
6+
# https://make.wordpress.org/core/handbook/coding-standards/
7+
8+
root = true
9+
10+
[*]
11+
charset = utf-8
12+
end_of_line = lf
13+
insert_final_newline = true
14+
trim_trailing_whitespace = true
15+
indent_style = tab
16+
17+
[*.yml]
18+
indent_style = space
19+
indent_size = 2
20+
21+
[*.md]
22+
trim_trailing_whitespace = false
23+
24+
[*.txt]
25+
end_of_line = crlf

.eslintrc

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
{
2+
"env": {
3+
"browser": true
4+
},
5+
"extends": [
6+
"plugin:@wordpress/eslint-plugin/recommended-with-formatting",
7+
"plugin:jest/recommended",
8+
"plugin:@typescript-eslint/recommended"
9+
],
10+
"parserOptions": {
11+
"project": "./tsconfig.json"
12+
},
13+
"plugins": [
14+
"@typescript-eslint"
15+
],
16+
"settings": {
17+
"jest": {
18+
"version": "latest"
19+
},
20+
"import/resolver": {
21+
"node": {
22+
"extensions": [
23+
".js",
24+
".jsx",
25+
".ts",
26+
".tsx",
27+
".json"
28+
]
29+
}
30+
}
31+
},
32+
"ignorePatterns": [
33+
"webpack.config.js"
34+
],
35+
"rules": {
36+
"@wordpress/i18n-text-domain": [
37+
"error",
38+
{
39+
"allowedTextDomain": [
40+
"wp-parsely"
41+
]
42+
}
43+
],
44+
"@typescript-eslint/ban-ts-comment": "off",
45+
"@typescript-eslint/method-signature-style": "error", // Can be removed after we've updated to wp-scripts v28 or greater.
46+
"@typescript-eslint/prefer-nullish-coalescing": "error",
47+
// Enabling TS rule and disabling Base rule as it can report incorrect errors.
48+
"no-shadow": "off",
49+
"@typescript-eslint/no-shadow": "error",
50+
// Allow usage of Gutenberg experimental components.
51+
"@wordpress/no-unsafe-wp-apis": "off",
52+
// Allow link tag in JSDocs.
53+
"jsdoc/check-tag-names": ["error", { "definedTags": ["link"] }],
54+
// Disable import resolution checks for TypeScript files as TypeScript handles this.
55+
"import/named": "off",
56+
"import/no-extraneous-dependencies": "off"
57+
}
58+
}

.gitattributes

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Exclude these files from release archives.
2+
3+
# This will also make them unavailable when using Composer with `--prefer-dist`.
4+
5+
# If you develop for this package using Composer, use `--prefer-source`.
6+
# https://www.reddit.com/r/PHP/comments/2jzp6k/i_dont_need_your_tests_in_my_production
7+
# https://blog.madewithlove.be/post/gitattributes/
8+
9+
# They are also used when pushing to WordPress.org SVN using the
10+
# https://github.com/10up/action-wordpress-plugin-deploy GitHub Action.
11+
12+
# Likewise, anything marked `export-ignore` will be excluded by `bin/export-plugin.sh`
13+
14+
# Directories
15+
/.github export-ignore
16+
/.husky export-ignore
17+
/.wordpress-org export-ignore
18+
/bin export-ignore
19+
/tests export-ignore
20+
21+
# Files
22+
/.editorconfig export-ignore
23+
/.eslintrc export-ignore
24+
/.gitattributes export-ignore
25+
/.gitignore export-ignore
26+
/.phpcs.xml.dist export-ignore
27+
/.prettierrc export-ignore
28+
/.nvmrc export-ignore
29+
/.travis.yml export-ignore
30+
/babel.config.js export-ignore
31+
/CHANGELOG.md export-ignore
32+
/CODE_OF_CONDUCT.md export-ignore
33+
/CONTRIBUTING.md export-ignore
34+
/composer.json export-ignore
35+
/composer.lock export-ignore
36+
/package.json export-ignore
37+
/package-lock.json export-ignore
38+
/phpstan.neon export-ignore
39+
/phpunit.xml.dist export-ignore
40+
/phpunit-integration.xml.dist export-ignore
41+
/phpunit-experimental.xml.dist export-ignore
42+
/webpack.config.js export-ignore
43+
/WINDOWS.md export-ignore

.github/CODEOWNERS

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# See https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
2+
3+
# This team will be requested for review when someone opens a pull request.
4+
* @Parsely/wp-parsely
5+
6+
# Don't assign owners for the following files:
7+
package.json
8+
package-lock.json
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
name: Blank issue
3+
about: For anything that isn't a feature request or bug report
4+
labels: wp-parsely
5+
---
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
labels: "wp-parsely, Bug"
5+
---
6+
7+
<!--
8+
Hello! Just a quick reminder that this is a public repo. Please don't include any internal links or sensitive data (like PII, private code, client names, site URLs, etc. If you're not sure if something is safe to share, please just ask!
9+
-->
10+
11+
## Describe the bug
12+
<!-- A clear and concise description of what the bug is. -->
13+
14+
## To Reproduce
15+
<!-- Steps to reproduce the behavior:
16+
1. Go to '...'
17+
2. Click on '....'
18+
3. Scroll down to '....'
19+
4. See error -->
20+
21+
## Expected behavior
22+
<!-- A clear and concise description of what you expected to happen. -->
23+
24+
## Screenshots
25+
<!-- If applicable, add screenshots to help explain your problem. -->
26+
27+
## Environment
28+
29+
<!-- OS, browser, browser version, PHP version, WordPress version, active plugins, active theme, etc. -->
30+
31+
## Additional context
32+
<!-- Add any other context about the problem here. -->

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
blank_issues_enabled: false
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
labels: wp-parsely
5+
---
6+
7+
<!--
8+
Hello! Just a quick reminder that this is a public repo. Please don't include any internal links or sensitive data (like PII, private code, client names, site URLs, etc. If you're not sure if something is safe to share, please just ask!
9+
-->
10+
11+
## Is your feature request related to a problem?
12+
<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->
13+
14+
## Describe the solution you'd like
15+
<!-- A clear and concise description of what you want to happen. -->
16+
17+
## Describe alternatives you've considered
18+
<!-- A clear and concise description of any alternative solutions or features you've considered. -->
19+
20+
## Additional context
21+
<!-- Add any other context or screenshots about the feature request here. -->
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
---
2+
name: Release template
3+
about: Internally used for new releases
4+
title: Release wp-parsely x.y.z
5+
labels: "wp-parsely, Maintenance"
6+
---
7+
8+
This is an issue for tracking the next `wp-parsely` release (milestone: [x.y.z](https://github.com/Parsely/wp-parsely/milestone/milestone-id?closed=1)).
9+
10+
This ticket is to be opened the week before the actual release, so we have enough time to complete all the related tasks. The actual release of the plugin should be done on Mondays so we can catch the Tuesday WordPress VIP release window.
11+
12+
## Before releasing
13+
14+
**1. Merge all outstanding work**
15+
- [ ] Merge any outstanding PRs due for this release to the target branch (usually `develop`).
16+
- [ ] Verify that all important PRs have an appropriate `Changelog` tag. PRs without a `Changelog` tag won't be added to the changelog.
17+
18+
**2. Conduct additional testing**
19+
We've got automated testing in place and also test under our local development environment during development. For impactful releases we should also:
20+
- [ ] Conduct an additional [smoke test](https://github.com/Parsely/wp-parsely/blob/develop/docs/TESTING.md#manual-smoke-test) under our local development environment.
21+
- [ ] Test under a regular non-local WordPress installation.
22+
- [ ] Test under a real WordPress VIP environment.
23+
24+
**3. Communicate**
25+
- [ ] Inform Parse.ly support of the upcoming release.
26+
27+
The following additional tasks might be needed depending on the release and its impact:
28+
- [ ] Write any needed internal documentation.
29+
- [ ] Write an internal P2 post about the release (to be posted immediately so folks are aware of the release ahead of time).
30+
- [ ] Write a WordPress VIP Lobby post about the release (to be posted immediately to preannounce next week's VIP release - don't forget to get someone to proofread!).
31+
- [ ] Prepare any public documentation (to be posted after the WordPress.org release).
32+
33+
## Release process
34+
35+
**1. Update version numbers and changelog**
36+
- [ ] [Run the "Bump wp-parsely version"](https://github.com/Parsely/wp-parsely/actions/workflows/bump-version.yml) GitHub Action to update the version numbers in the plugin files. Use the branch you want to release from (usually `develop`).
37+
- [ ] Verify that the generated PR looks correct. You can amend it with new commits if needed.
38+
- [ ] Merge the PR into the target branch (usually `develop`).
39+
40+
**2. Merge develop into trunk**
41+
- [ ] [Create a PR](https://github.com/Parsely/wp-parsely/compare/trunk...develop?quick_pull=1&title=Release+wp-parsely+x.y.z&body=This+PR+merges+the+`develop`+branch+into+the+`trunk`+branch+in+order+to+release+wp-parsely+x.y.z.) that merges the target branch (usually `develop`) into `trunk`, named _Release wp-parsely x.y.z_.
42+
- [ ] Merge the PR into `trunk`.
43+
44+
**3. Create release and deploy to WordPress.org**
45+
- [ ] Check if the `develop` and `trunk` branches built successfully. You can check it in the [GitHub Actions](https://github.com/Parsely/wp-parsely/actions/workflows/build-plugin.yml) tab.
46+
- [ ] [Run the "Release wp-parsely"](https://github.com/Parsely/wp-parsely/actions/workflows/release-plugin.yml) GitHub Action, on the `trunk-built` branch, inputting the new version number, and without selecting Dry run.
47+
- [ ] Check the action logs for any errors. If there are any, fix them and rerun the action.
48+
- [ ] Check the new release on the [GitHub releases page](https://github.com/Parsely/wp-parsely/releases) and verify that it is correct.
49+
- [ ] Verify that the release was successful by checking the [WordPress.org plugin page](https://wordpress.org/plugins/wp-parsely/).
50+
51+
## After releasing
52+
53+
**1. Communicate**
54+
- [ ] If needed, update the public documentation.
55+
- [ ] Inform the concerned Slack channels about the new release, also preannouncing the WordPress VIP release.
56+
57+
**2. Merge trunk back into develop**
58+
- [ ] [Create a PR](https://github.com/Parsely/wp-parsely/compare/develop...trunk?quick_pull=1&title=Merge+trunk+into+develop+after+the+wp-parsely+x.y.z+release&body=This+PR+merges+the+`trunk`+branch+into+the+`develop`+branch+after+the+release+of+wp-parsely+x.y.z.) that merges `trunk` into `develop`, named _Merge trunk into develop after the wp-parsely x.y.z release_.
59+
- [ ] Merge the PR into `develop`.
60+
61+
**3. Manage milestones**
62+
- [ ] Close the current milestone.
63+
- [ ] If needed, open a new milestone for the next release.
64+
65+
**4. Release to other platforms**
66+
- [ ] Update the `vip-go-mu-plugins` submodule to the latest version.
67+
- [ ] Release the plugin for WordPress VIP.
68+
- [ ] Release the plugin for WordPress.com.

0 commit comments

Comments
 (0)