Skip to content

Commit 8b881d6

Browse files
Merge branch 'develop-2.0.0' into chore/session-owner-promotion-and-connection-approved-upates
2 parents cf31acd + 61d3433 commit 8b881d6

File tree

249 files changed

+9992
-3692
lines changed

Some content is hidden

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

249 files changed

+9992
-3692
lines changed

.github/ISSUE_TEMPLATE/bug_report.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
name: Bug report
33
about: Create a report to help us improve
44
title: ''
5-
labels: stat:awaiting triage, type:bug
5+
labels: stat:awaiting-triage, stat:reply-needed, type:bug
66
assignees: ''
77

88
---
@@ -40,4 +40,4 @@ If applicable, add screenshots to help explain your problem.
4040

4141
### Additional Context
4242

43-
Add any other context about the problem here. Logs, code snippets would be useful here but please also consider attaching a minimal Unity project that reproduces the issue.
43+
Add any other context about the problem here. Logs, code snippets would be useful here but please also consider attaching a minimal Unity project that reproduces the issue.

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
name: Feature Request
33
about: Suggest an idea for this project
44
title: ''
5-
labels: stat:awaiting triage, type:feature
5+
labels: stat:awaiting-triage, stat:reply-needed, type:feature
66
assignees: ''
77

88
---

.github/ISSUE_TEMPLATE/rfc-tracking-issue.md

Lines changed: 0 additions & 10 deletions
This file was deleted.

.github/pull_request_template.md

Lines changed: 50 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,64 @@
1-
<!-- Replace this block with what this PR does and why. Describe what you'd like reviewers to know, how you applied the engineering principles, and any interesting tradeoffs made. Delete bullet points below that don't apply, and update the changelog section as appropriate. -->
1+
## Purpose of this PR
2+
[//]: # (
3+
Replace this block with what this PR does and why. Describe what you'd like reviewers to know, how you applied the engineering principles, and any interesting tradeoffs made.
4+
)
25

3-
<!-- Add short version of the JIRA ticket to the PR title (e.g. "feat: new shiny feature [MTT-123]") -->
6+
### Jira ticket
7+
_Link to related jira ticket ([Use the smart commits](https://support.atlassian.com/bitbucket-cloud/docs/use-smart-commits/)). Short version (e.g. MTT-123) also works and gets auto-linked_
48

5-
## Changelog
9+
### Changelog
10+
[//]: # (updated with all public facing changes - API changes, UI/UX changes, behaviour changes, bug fixes. Remove if not relevant.)
611

712
- Added: The package whose Changelog should be added to should be in the header. Delete the changelog section entirely if it's not needed.
8-
- Fixed: If you update multiple packages, create a new section with a new header for the other package.
13+
- Fixed: If you update multiple packages, create a new section with a new header for the other package.
914
- Removed/Deprecated/Changed: Each bullet should be prefixed with Added, Fixed, Removed, Deprecated, or Changed to indicate where the entry should go.
1015

11-
## Testing and Documentation
12-
13-
- No tests have been added.
14-
- Includes unit tests.
15-
- Includes integration tests.
16-
- No documentation changes or additions were necessary.
17-
- Includes documentation for previously-undocumented public API entry points.
18-
- Includes edits to existing public API documentation.
19-
2016
<!-- Uncomment and mark items off with a * if this PR deprecates any API:
2117
### Deprecated API
2218
- [ ] An `[Obsolete]` attribute was added along with a `(RemovedAfter yyyy-mm-dd)` entry.
23-
- [ ] An [api updater] was added.
19+
- [ ] An [api updater](https://confluence.unity3d.com/display/DEV/Obsolete+API+updaters) was added.
2420
- [ ] Deprecation of the API is explained in the CHANGELOG.
2521
- [ ] The users can understand why this API was removed and what they should use instead.
2622
-->
2723

28-
## Backport
24+
## Documentation
25+
[//]: # (
26+
This section is REQUIRED and should mention what documentation changes were following the changes in this PR.
27+
We should always evaluate if the changes in this PR require any documentation changes.
28+
)
29+
30+
- No documentation changes or additions were necessary.
31+
- Includes documentation for previously-undocumented public API entry points.
32+
- Includes edits to existing public API documentation.
33+
34+
## Testing & QA (How your changes can be verified during release Playtest)
35+
[//]: # (
36+
This section is REQUIRED and should describe how the changes were tested and how should they be tested when Playtesting for the release.
37+
It can range from "edge case covered by unit tests" to "manual testing required and new sample was added".
38+
Expectation is that PR creator does some manual testing and provides a summary of it here.)
39+
40+
<!-- Add any performance testing results here if relevant. -->
41+
42+
### Functional Testing
43+
[//]: # (If checked, List manual tests that have been performed.)
44+
_Manual testing :_
45+
- [ ] `Manual testing done`
46+
47+
_Automated tests:_
48+
- [ ] `Covered by existing automated tests`
49+
- [ ] `Covered by new automated tests`
50+
51+
_Does the change require QA team to:_
52+
53+
- [ ] `Review automated tests`?
54+
- [ ] `Execute manual tests`?
55+
- [ ] `Provide feedback about the PR`?
56+
57+
If any boxes above are checked the QA team will be automatically added as a PR reviewer.
2958

30-
<!-- If this is a backport:
31-
- Add the following to the PR title: "\[Backport\] ..." .
32-
- Link to the original PR.
33-
If this needs a backport - state this here
34-
If a backport is not needed please provide the reason why.
35-
If the "Backports" section is not present it will lead to a CI test failure.
36-
-->
59+
## Backports
60+
[//]: # (
61+
This section is REQUIRED and should link to the PR that targets other NGO version which is either develop or develop-2.0.0 branch
62+
Add the following to the PR title: "\[Backport\] ..."
63+
If this is not needed, for example feature specific to NGOv2.X, then just mention this fact.
64+
)

.github/renovate.json5

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@
1616
"com.unity.netcode.gameobjects/**/*",
1717
"Examples/**/*",
1818
"testproject/**/*",
19-
"minimalproject/**/*",
20-
"testproject-tools-integration/**/*"
19+
"minimalproject/**/*"
2120
],
2221
"packageRules": [
2322
// Run unity-upm-project and unity-upm-package only on weekends to reduce PR noise

.github/workflows/backport-verification.yml

Lines changed: 0 additions & 32 deletions
This file was deleted.

.github/workflows/conventional-pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
steps:
1818
- name: semantic-pull-request
1919
# Internal Unity mirror available at jesseo/action-semantic-pull-request, but actions from private repos aren't supported, so continue to use the public one below
20-
uses: amannn/action-semantic-pull-request@v5
20+
uses: amannn/action-semantic-pull-request@v6
2121
env:
2222
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
2323
with:

.github/workflows/mark-stale-issue.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
issues: write
1919

2020
steps:
21-
- uses: actions/stale@v9
21+
- uses: actions/stale@v10
2222
with:
2323
# Only mark issues (not PRs) as stale
2424
any-of-labels: 'stat:awaiting-response'
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# This workflow is designed to verify that the pull request description contains a required sections that are important from quality perspective.
2+
# ## Backport section is important as a reminder to account for backports for anyone that works with NGO repository (to 1.X or 2.X branches respectively).
3+
# ## Testing & QA section is important to ensure that the PR has appropriate testing coverage and is important when QA will evaluate PRs before Playtesting for the release.
4+
# ## Documentation section is important to ensure that the documentation is updated with the changes made in the PR.
5+
6+
# If any of the sections is missing, the workflow will fail and block the PR from merging, prompting the developer to add those sections to the PR description.
7+
# The workflow is configured to run when PR is created as well as when it is edited which also counts simple description edits.
8+
9+
name: "NGO - PR description validation"
10+
11+
on:
12+
pull_request:
13+
types: [opened, edited, synchronize, reopened]
14+
branches:
15+
- develop
16+
- develop-2.0.0
17+
- release/*
18+
19+
jobs:
20+
pr-description-validation:
21+
runs-on: ubuntu-latest
22+
steps:
23+
- name: Checkout code
24+
uses: actions/checkout@v5
25+
26+
- name: Check PR description
27+
uses: actions/github-script@v8
28+
with:
29+
script: |
30+
const pr = context.payload.pull_request;
31+
const body = pr.body || '';
32+
33+
// List of mandatory PR sections
34+
const requiredSections = [
35+
{
36+
header: '## Backports',
37+
description: 'PR description must include a "## Backports" section. Please add this section and provide information about this PR backport to develop or develop-2.0.0 branch respectively or explain why backport is not needed.'
38+
},
39+
{
40+
header: '## Testing & QA',
41+
description: 'PR description must include a "## Testing & QA" section. Please add this section and provide information about the testing performed for this PR. It can range from adding unit tests to full samples and is needed from QA side to analyze PRs while Playtesting for the release.'
42+
},
43+
{
44+
header: '## Documentation',
45+
description: 'PR description must include a "## Documentation" section. Please add this section and provide information about the documentation changes made in this PR. It is important to keep the documentation up to date with the code changes.'
46+
},
47+
{
48+
header: '## Jira ticket',
49+
description: 'PR description must include a "## Jira ticket" section. Please add this section and provide a link to the Jira ticket that corresponds to this PR. General rule should be that if the PR takes you more then a day of work it should have Jira ticket. Otherwise you can always write "N/A" in this section.'
50+
}
51+
];
52+
53+
const missing = requiredSections.filter(section => !body.includes(section.header));
54+
55+
if (missing.length > 0) {
56+
let message = 'PR description is missing the following required section(s):\n';
57+
58+
const missingDescriptions = missing.map(
59+
s => `- ${s.header}: ${s.description}`
60+
);
61+
62+
message += missingDescriptions.join('\n');
63+
message += '\n\nPlease add them to your PR description.';
64+
65+
core.setFailed(message);
66+
}
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# GitHub Actions workflow to monitor Yamato CI job state on pull requests
2+
# We are using https://cli.github.com/manual/gh_pr_checks
3+
# The aim is to ensure that conditionally triggered Yamato jobs are completed successfully before allowing merges
4+
5+
# This job will be required in branch protection rules for develop, develop-2.0.0, and release/* branches. It's only goal will be to ensure that Yamato jobs are completed successfully before allowing Pr to merge.
6+
# Note that conditional jobs will have 30s to show which is always the cas since they are showing up as soon as in distribution stage.
7+
8+
name: Yamato PR Supervisor
9+
10+
on:
11+
pull_request:
12+
types: [opened, synchronize, reopened]
13+
branches:
14+
- develop
15+
- develop-2.0.0
16+
- release/*
17+
18+
concurrency:
19+
group: pr-${{ github.event.pull_request.number }}
20+
cancel-in-progress: true
21+
22+
jobs:
23+
yamato-supervisor:
24+
runs-on: ubuntu-latest
25+
timeout-minutes: 720
26+
steps:
27+
- name: Checkout repository
28+
uses: actions/checkout@v4
29+
30+
- name: Wait and Verify Yamato Job Status
31+
env:
32+
GH_TOKEN: ${{ secrets.GH_TOKEN }}
33+
PR_NUMBER: ${{ github.event.pull_request.number }}
34+
run: |
35+
set -e
36+
37+
38+
MAX_ATTEMPTS=$((12*60))
39+
INTERVAL=60
40+
41+
sleep $INTERVAL
42+
for ((i=1;i<=MAX_ATTEMPTS;i++)); do
43+
echo "Polling PR checks (attempt $i/$MAX_ATTEMPTS)..."
44+
45+
# We want to watch for pending checks beside this check
46+
checks=$(gh pr checks $PR_NUMBER --json name,state --jq '[ .[] | select(.name != "yamato-supervisor") ]')
47+
48+
pending=$(echo "$checks" | jq '[.[] | select(.state == "PENDING")] | length')
49+
skipping=$(echo "$checks" | jq '[.[] | select(.state == "SKIPPED")] | length')
50+
passed=$(echo "$checks" | jq '[.[] | select(.state == "SUCCESS")] | length')
51+
failed=$(echo "$checks" | jq '[.[] | select(.state == "FAILURE")] | length')
52+
53+
echo "Pending checks: $pending, Skipping checks: $skipping", Passed checks: $passed, Failed checks: $failed
54+
55+
if [[ "$failed" -gt 0 ]]; then
56+
echo "A check has failed! Failing fast."
57+
exit 1
58+
fi
59+
60+
if [[ "$pending" -eq 0 ]] && [[ "$passed" -gt 0 ]]; then
61+
echo "All non-supervisor checks are completed!"
62+
exit 0
63+
fi
64+
65+
sleep $INTERVAL
66+
done

0 commit comments

Comments
 (0)