Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/trunk' into trunk
Browse files Browse the repository at this point in the history
  • Loading branch information
ntindicator committed Dec 4, 2024
2 parents 063eb0a + 14e4290 commit 0fbb7a3
Show file tree
Hide file tree
Showing 11,355 changed files with 897,630 additions and 263,273 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
3 changes: 2 additions & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
node_modules
node_modules
!.github
16 changes: 16 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
* text=auto

# Force LF In Configuration Files
*.md text eol=lf
*.json text eol=lf
*.yml text eol=lf

# Force LF In Code Files
*.php text eol=lf
*.js text eol=lf
*.jsx text eol=lf
*.ts text eol=lf
*.tsx text eol=lf
*.css text eol=lf
*.scss text eol=lf
*.flf text eol=lf
28 changes: 15 additions & 13 deletions .github/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,11 @@ There are many ways to contribute to the project!
- [Translating strings into your language](https://github.com/woocommerce/woocommerce/wiki/Translating-WooCommerce).
- Answering questions on the various WooCommerce communities like the [WP.org support forums](https://wordpress.org/support/plugin/woocommerce/).
- Testing open [issues](https://github.com/woocommerce/woocommerce/issues) or [pull requests](https://github.com/woocommerce/woocommerce/pulls) and sharing your findings in a comment.
- Testing WooCommerce beta versions and release candidates. Those are announced in the [WooCommerce development blog](https://woocommerce.wordpress.com/).
- Testing WooCommerce beta versions and release candidates. Those are announced in the [WooCommerce development blog](https://developer.woocommerce.com/blog/).
- Submitting fixes, improvements, and enhancements.
- To disclose a security issue to our team, [please submit a report via HackerOne](https://hackerone.com/automattic/).

If you wish to contribute code, please read the information in the sections below. Then [fork](https://help.github.com/articles/fork-a-repo/) WooCommerce, commit your changes, and [submit a pull request](https://help.github.com/articles/using-pull-requests/) 🎉
If you wish to contribute code, please read the information in the sections below. Then [fork](https://docs.github.com/en/get-started/quickstart/fork-a-repo) WooCommerce, commit your changes, and [submit a pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) 🎉

We use the `good first issue` label to mark issues that are suitable for new contributors. You can find all the issues with this label [here](https://github.com/woocommerce/woocommerce/issues?q=is%3Aopen+is%3Aissue+label%3A%22type%3A+good+first+issue%22).

Expand All @@ -21,6 +21,8 @@ If you have questions about the process to contribute code or want to discuss de

## Getting started

Please take a moment to review the [project readme](https://github.com/woocommerce/woocommerce/blob/trunk/README.md) and our [development notes](https://github.com/woocommerce/woocommerce/blob/trunk/DEVELOPMENT.md), which cover the basics needed to start working on this project. You may also be interested in the following resources:

- [How to set up WooCommerce development environment](https://github.com/woocommerce/woocommerce/wiki/How-to-set-up-WooCommerce-development-environment)
- [Git Flow](https://github.com/woocommerce/woocommerce/wiki/WooCommerce-Git-Flow)
- [Minification of SCSS and JS](https://github.com/woocommerce/woocommerce/wiki/Minification-of-SCSS-and-JS)
Expand All @@ -31,24 +33,24 @@ If you have questions about the process to contribute code or want to discuss de

## Coding Guidelines and Development 🛠

- Ensure you stick to the [WordPress Coding Standards](https://make.wordpress.org/core/handbook/best-practices/coding-standards/php/)
- Ensure you stick to the [WordPress Coding Standards](https://make.wordpress.org/core/handbook/best-practices/coding-standards/php/).
- Run our build process described in the document on [how to set up WooCommerce development environment](https://github.com/woocommerce/woocommerce/wiki/How-to-set-up-WooCommerce-development-environment), it will install our pre-commit hook, code sniffs, dependencies, and more.
- Whenever possible please fix pre-existing code standards errors in the files that you change. It is ok to skip that for larger files or complex fixes.
- Before pushing commits to GitHub, check your code against our code standards. For PHP code in the WooCommerce Core project you can do this by running `pnpm --filter=@woocommerce/plugin-woocommerce lint:php:changes:branch`.
- Whenever possible, please fix pre-existing code standards errors in code that you change.
- Please consider adding appropriate tests related to your change if applicable such as unit, API and E2E tests. You can check the following guides for this purpose:
- [Writing unit tests](https://github.com/woocommerce/woocommerce/blob/trunk/plugins/woocommerce/tests/README.md#guide-for-writing-unit-tests).
- [Writing API tests](https://github.com/woocommerce/woocommerce/tree/trunk/plugins/woocommerce/tests/api-core-tests#guide-for-writing-api-tests).
- [Writing E2E tests](https://github.com/woocommerce/woocommerce/tree/trunk/plugins/woocommerce/tests/e2e-pw#guide-for-writing-e2e-tests).
- Ensure you use LF line endings in your code editor. Use [EditorConfig](http://editorconfig.org/) if your editor supports it so that indentation, line endings and other settings are auto configured.
- When committing, reference your issue number (#1234) and include a note about the fix.
- Ensure that your code supports the minimum supported versions of PHP and WordPress; this is shown at the top of the `readme.txt` file.
- Push the changes to your fork and submit a pull request on the trunk branch of the WooCommerce repository.
- Make sure to write good and detailed commit messages (see [this post](https://chris.beams.io/posts/git-commit/) for more on this) and follow all the applicable sections of the pull request template.
- Please avoid modifying the changelog directly or updating the .pot files. These will be updated by the WooCommerce team.

If you are contributing code to the (Javascript-driven) Gutenberg blocks, note that it's developed in an external package.

- [Blocks](https://github.com/woocommerce/woocommerce-gutenberg-products-block)
- Please create a change file for your changes by running `pnpm --filter=<project> changelog add`. For example, a change file for the WooCommerce Core project would be added by running `pnpm --filter=@woocommerce/plugin-woocommerce changelog add`.
- Please avoid modifying the changelog directly or updating the .pot files. These will be updated by the WooCommerce team.

## Feature Requests 🚀

Feature requests can be [submitted to our issue tracker](https://github.com/woocommerce/woocommerce/issues/new?assignees=&labels=type%3A+enhancement%2Cstatus%3A+awaiting+triage&template=2-enhancement.yml&title=%5BEnhancement%5D%3A+). Be sure to include a description of the expected behavior and use case, and before submitting a request, please search for similar ones in the closed issues.

Feature request issues will remain closed until we see sufficient interest via comments and [👍 reactions](https://help.github.com/articles/about-discussions-in-issues-and-pull-requests/) from the community.
The best place to submit feature requests is over on our [dedicated feature request page](https://woocommerce.com/feature-requests/woocommerce/). You can easily search and vote for existing requests, or create new requests if necessary.

You can see a [list of current feature requests which require votes here](https://github.com/woocommerce/woocommerce/issues?q=is%3Aissue+sort%3Areactions-%2B1-desc+label%3A%22needs%3A+votes%22+).
Alternatively, if you wish to propose a straightforward technical enhancement that is unlikely to require much discussion, you can [open a new issue](https://github.com/woocommerce/woocommerce/issues/new?assignees=&labels=type%3A+enhancement%2Cstatus%3A+awaiting+triage&template=2-enhancement.yml&title=%5BEnhancement%5D%3A+) right here on GitHub and, for any that may require more discussion, consider syncing with us during office hours or publishing a thread on [GitHub Discussions](https://github.com/woocommerce/woocommerce/discussions).
5 changes: 2 additions & 3 deletions .github/ISSUE_TEMPLATE/1-bug-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ body:
While our goal is to address all the issues reported in this repository, GitHub should be treated as a place to report confirmed bugs only.
- If you have a support request or custom code related question please follow one of the steps below:
- Review [WooCommerce Self-Service Guide](https://woocommerce.com/document/woocommerce-self-service-guide/) to see if the solutions listed there apply to your case;
- If you are a paying customer of WooCommerce, contact WooCommerce support by [opening a ticket or starting a live chat](https://woocommerce.com/contact-us/);
- Make a post on [WooCommerce community forum](https://wordpress.org/support/plugin/woocommerce/)
- To get help on custom code questions go to the [WooCommerce Community Slack](https://woocommerce.com/community-slack/) and visit the `#developers` channel.
Expand Down Expand Up @@ -75,7 +74,7 @@ body:
Without this report we won't be able to fully evaluate this issue.
placeholder: |
The System Status Report is found in your WordPress admin under **WooCommerce > Status**.
Please select “Get system report”, then “Copy for support”, and then paste it here.
Please select “Get system report”, then “Copy for GitHub”, and then paste it here.
validations:
required: true
- type: checkboxes
Expand All @@ -89,7 +88,7 @@ body:
You will then need to enable it one by one and test every time you do that in order to figure out which plugin is causing the issue.
options:
- label: I have deactivated other plugins and confirmed this bug occurs when only WooCommerce plugin is active.
- label: This bug happens with a default WordPress theme active, or [Storefront](https://woocommerce.com/storefront/).
- label: This bug happens with a default WordPress theme active, or [Storefront](https://woocommerce.com/products/storefront/).
- label: I can reproduce this bug consistently using the steps above.
validations:
required: true
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/2-enhancement.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: ✨ Enhancement Request
description: If you have an idea to improve an existing feature in core or need something for development (such as a new hook) please let us know or submit a Pull Request!
description: If you have an idea to improve existing functionality in core or need something for development (such as a new hook) please let us know or submit a Pull Request!
title: "[Enhancement]: "
labels: ["type: enhancement", "status: awaiting triage"]
labels: ["type: enhancement"]
body:
- type: markdown
attributes:
Expand Down
6 changes: 3 additions & 3 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
blank_issues_enabled: true
contact_links:
- name: Feature Requests
url: https://woocommerce.com/feature-requests/woocommerce/
about: If you have an idea for a new feature that you wished existed in WooCommerce, take a look at our Feature Requests and vote, or open a new Feature Request yourself!
- name: 🔒 Security issue
url: https://hackerone.com/automattic/
about: For security reasons, please report all security issues via HackerOne. If the issue is valid, a bug bounty will be paid out to you. Please disclose responsibly and not via GitHub (which allows for exploiting issues in the wild before the patch is released).
- name: ❓ Support Question
url: https://woocommerce.com/document/woocommerce-self-service-guide/
about: If you have a question please see our docs or use our forums, helpdesk, or Slack community!
- name: WooCommerce Blocks
url: https://github.com/woocommerce/woocommerce-gutenberg-products-block
about: Please report issues for WooCommerce Blocks directly to it's repository.
110 changes: 110 additions & 0 deletions .github/ISSUE_TEMPLATE/new-cfe-template.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
name: 🚧 Code freeze exception request
description: Request to process a particular pull request as a code freeze exception.
title: "[CFE]: "
labels: ["code freeze exception"]
body:
- type: markdown
attributes:
value: |
Use this template to request changes to be included in a version of WooCommerce that is past its code freeze date.
**The request will be reviewed** and accepted or denied:
* If accepted, please test your changes in against the release branch and merge.
* If rejected, please change the base against `trunk` and merge it.
In either case you are responsible for managing the pull request as usual (provide a description, assign reviewers, ensure that CI jobs pass...)
- type: input
id: release-number
attributes:
label: "Which release does this request apply to?"
description: "Format: X.Y (Major.Minor)"
placeholder: "9.2"
validations:
required: true
- type: textarea
id: pr-urls
attributes:
label: "Which PR needs to be included? (please do not enter multiple PRs)"
description: "Pull request URL against the release branch"
placeholder: |
https://github.com/woocommerce/woocommerce/pull/1234
validations:
required: true
- type: textarea
id: why-needed
attributes:
label: "Why do these PRs need to break the code freeze?"
placeholder: "This is a revert of ... which introduced a bug that causes ..."
validations:
required: true
- type: textarea
attributes:
id: consequence-if-not-included
label: "What is the consequence if this exception does not get included?"
placeholder: "The ... flow will be broken for ... users"
validations:
required: true
- type: textarea
id: plan-if-defects-discovered
attributes:
label: "What is the plan should defects to be discovered in these PRs ahead of final release?"
placeholder: "Reverting this PR and ... would be enough"
validations:
required: true
- type: textarea
id: how-to-communicate
attributes:
label: "How should this change be communicated in the release post on the public developer blog:"
description: "See the blog at [https://developer.woo.com/blog/](https://developer.woo.com/blog/) cc @woocommerce/developer-advocacy"
placeholder: "There is no need to add new communication to the already planned one."
validations:
required: true
- type: textarea
id: who-to-ask
attributes:
label: "If you’re not available and we have questions about this request, is there another person(s) and/or a team that we can ping?"
placeholder: "@person or anyone from the ... team"
validations:
required: true
- type: markdown
attributes:
value: |
## Escape Analysis
For the sake of expediting this request, the details below can be completed at a later time should you so choose.
However, the Escape Analysis section is **required** for any accepted Code Freeze Exception.
In this section:
* Think about how the bug escaped your team.
* Write down ideas on how you could prevent this bug – for example, by writing automated tests, creating a new process, or updating documentation.
* Make a plan with your team to implement the changes proposed above in order to catch the bug earlier next time and add the related tasks to your backlog.
* Please, add a separate comment that includes the details for the Escape Analysis. Together with this Escape Analysis, please make sure to include an actionable item that covers the gap exposed by this analysis. It could be a GitHub issue, the reference of a new item to discuss in a team meeting, etc. Anything that prevents this analysis from getting lost in P2 will be useful.
- type: checkboxes
id: escape-analysis-completed
attributes:
label: "Acknowledgement"
options:
- label: "I understand that I need to write an incident report (aka Escape Analysis) as a comment on this post. This is required for the request to be accepted."
required: true
- label: "I understand that I need to create an issue as a result of the Escape Analysis and reference it in a comment on this post. This can be done at a later time, but it is required for this request to be closed."
required: true
- label: "I understand that I will need to merge the PR to the target `release` branch when my request is approved"
required: true
- label: "I understand that I will need to merge the followup cherry-picked PR created by the github-actions bot to `trunk` when my request is approved"
required: true
- type: markdown
attributes:
value: |
## Closing checklist
Please ensure that the following checklist is completed before closing the request:
- type: checkboxes
id: closing-checklist
attributes:
label: "Closing checklist for Solaris"
options:
- label: "Escape analysis completed"
required: false
- label: "PR merged to target `release` branch"
required: false
- label: "PR cherry-picked to `trunk` (you can find the links in PR comments to verify)"
required: false
- label: "Followup issue if any"
required: false
Loading

0 comments on commit 0fbb7a3

Please sign in to comment.