Skip to content

Commit

Permalink
Merge branch 'develop' into stable
Browse files Browse the repository at this point in the history
  • Loading branch information
stefanunity committed Jul 15, 2024
2 parents ea78ad9 + 22303aa commit 73feff4
Show file tree
Hide file tree
Showing 127 changed files with 4,499 additions and 544 deletions.
49 changes: 49 additions & 0 deletions .fork/custom-commands.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
[
{
"version" : 1
},
{
"action" : {
"type" : "url",
"url" : "https://github.com/Unity-Technologies/InputSystem/compare/develop...${ref:short}?expand=1"
},
"name" : "GitHub: Create PR for branch",
"refTargets" : [
"localbranch",
"remotebranch"
],
"target" : "ref"
},
{
"action" : {
"type" : "url",
"url" : "https://github.com/Unity-Technologies/InputSystem/tree/${ref:short}"
},
"name" : "GitHub: Open branch",
"refTargets" : [
"localbranch",
"remotebranch"
],
"target" : "ref"
},
{
"action" : {
"type" : "url",
"url" : "https://unity-ci.cds.internal.unity3d.com/project/130"
},
"name" : "View on Yamato",
"target" : "repository"
},
{
"action" : {
"type" : "url",
"url" : "https://unity-ci.cds.internal.unity3d.com/project/130/branch/${ref:short}"
},
"name" : "Yamato: Open branch",
"refTargets" : [
"localbranch",
"remotebranch"
],
"target" : "ref"
}
]
16 changes: 12 additions & 4 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,13 @@ _Please fill this section with a description what the pull request is trying to

_Please write down a short description of what changes were made._

### Notes
### Testing

_Please write down any additional notes, remove the section if not applicable._
_Please describe the testing already done by you and what testing you request/recommend QA to execute. If you used or created any testing project please link them here too for QA._

### Risk

_Please describe the potential risks of your changes for the reviewers._

### Checklist

Expand All @@ -17,8 +21,8 @@ Before review:
- [ ] Changelog entry added.
- Explains the change in `Changed`, `Fixed`, `Added` sections.
- For API change contains an example snippet and/or migration example.
- FogBugz ticket attached, example `([case %number%](https://issuetracker.unity3d.com/issues/...))`.
- FogBugz is marked as "Resolved" with *next* release version correctly set.
- JIRA ticket linked, example ([case %<ID>%](https://issuetracker.unity3d.com/product/unity/issues/guid/<ID>)). If it is a private issue, just add the case ID without a link.
- Jira port for the next release set as "Resolved".
- [ ] Tests added/changed, if applicable.
- Functional tests `Area_CanDoX`, `Area_CanDoX_EvenIfYIsTheCase`, `Area_WhenIDoX_AndYHappens_ThisIsTheResult`.
- Performance tests.
Expand All @@ -37,3 +41,7 @@ During merge:
- `DOCS: ___`.
- `CHANGE: ___`.
- `RELEASE: 1.1.0-preview.3`.

After merge:

- [ ] Create forward/backward port if needed. If you are blocked from creating a forward port now please add a task to ISX-1444.
36 changes: 36 additions & 0 deletions .github/workflows/pr-title.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# This is a basic workflow to help you get started with Actions

name: CI

# Controls when the workflow will run
on:
# Triggers the workflow on pull request creation and edit events but only for the "main" branch
pull_request:
types:
- edited
- opened
- synchronize
branches: [ "develop" ]

# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
check-pr-title:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v4

# Runs a bash script from the specified working directory
- name: Check PR Title begins with the required prefix
shell: bash
working-directory: .github/workflows
env:
TITLE: ${{github.event.pull_request.title}}
run: bash verify-pr-title-prefix.sh $TITLE "NEW:" "CHANGE:" "FIX:" "DOCS:" "RELEASE:"

25 changes: 25 additions & 0 deletions .github/workflows/verify-pr-title-prefix.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#!/bin/bash

exit_with_failure()
{
echo "$*" 1>&2 ; exit 1;
}

TITLE_STRING="$1"
shift # Shift all arguments to the left, so $2 becomes $1, $3 becomes $2, etc.

# The remaining arguments are treated as an array of strings
PREFIXES_REQUIRED=("$@")

# Validate the title string prefix based on prefixes required
for PREFIX in "${PREFIXES_REQUIRED[@]}";
do
if [[ "$TITLE_STRING" =~ ^$PREFIX ]]; then
echo ""
exit 0
fi
done

PREFIXES_REQUIRED_STRING="${PREFIXES_REQUIRED[*]}"

exit_with_failure "PR Title needs the required prefixes: $PREFIXES_REQUIRED_STRING"
22 changes: 20 additions & 2 deletions .yamato/config.metadata
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
editors:
- version: 2021.3
- version: 2022.3
- version: 2023.2
- version: 6000.0
- version: trunk
disable_tvos_run: true

Expand Down Expand Up @@ -46,6 +46,24 @@ platforms_nix:
runtime: StandaloneOSX
scripting-backend: Il2Cpp
installscript: unity-downloader-cli -c editor -c StandaloneSupport-IL2CPP --wait --fast -u
- name: linux
type: Unity::VM
image: package-ci/ubuntu-20.04:v4.50.0
flavor: b1.large
- name: linux_standalone
type: Unity::VM
image: package-ci/ubuntu-20.04:v4.50.0
flavor: b1.large
runtime: StandaloneLinux64
- name: linux_standalone_il2cpp
type: Unity::VM
image: package-ci/ubuntu-20.04:v4.50.0
flavor: b1.large
runtime: StandaloneLinux64
scripting-backend: Il2Cpp
installscript: unity-downloader-cli -c editor -c StandaloneSupport-IL2CPP --wait --fast -u
scripting_backends:
- name: mono
- name: il2cpp
- name: il2cpp

ios_and_tvos_macos_bokken_image: package-ci/macos-13:v4.50.0
12 changes: 6 additions & 6 deletions .yamato/upm-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
- move /Y .\Packages\com.unity.inputsystem\Samples .\Assets
- move /Y .\Packages\com.unity.inputsystem\Samples.meta .\Assets
# Now run our full test suite that sits in Assets/Tests by running UTR on our project.
- ./utr --testproject . --timeout=1200 --editor-location=.Editor --artifacts_path=upm-ci~/test-results/isolation-com.unity.inputsystem.tests --suite=playmode {% if platform.name == "win" %} --suite=editor {% endif %} --api-profile=NET_4_6 --stdout-filter=minimal {% if platform.runtime %} --platform {{ platform.runtime }} {% endif %} {% if platform.scripting-backend %} --scripting-backend {{ platform.scripting-backend }} {% endif %} --report-performance-data --performance-project-id=InputSystem
- ./utr --testproject . --timeout=1200 --editor-location=.Editor --artifacts_path=upm-ci~/test-results/isolation-com.unity.inputsystem.tests --suite=playmode {% if platform.name == "win" %} --suite=editor {% endif %} --api-profile=NET_4_6 {% if platform.runtime %} --platform {{ platform.runtime }} {% endif %} {% if platform.scripting-backend %} --scripting-backend {{ platform.scripting-backend }} {% endif %} --report-performance-data --performance-project-id=InputSystem
artifacts:
UTR_Output.zip:
paths:
Expand Down Expand Up @@ -67,7 +67,7 @@
- mv ./Packages/com.unity.inputsystem/Samples ./Assets
- mv ./Packages/com.unity.inputsystem/Samples.meta ./Assets
# Now run our full test suite that sits in Assets/Tests by running UTR on our project.
- ./utr --testproject . --timeout=1200 --editor-location=.Editor --artifacts_path=upm-ci~/test-results/isolation-com.unity.inputsystem.tests --suite=playmode {% if platform.name == "mac" %} --suite=editor {% endif %} --api-profile=NET_4_6 --stdout-filter=minimal {% if platform.runtime %} --platform {{ platform.runtime }} {% endif %} {% if platform.scripting-backend %} --scripting-backend {{ platform.scripting-backend }} {% endif %} --report-performance-data --performance-project-id=InputSystem
- ./utr --testproject . --timeout=1200 --editor-location=.Editor --artifacts_path=upm-ci~/test-results/isolation-com.unity.inputsystem.tests --suite=playmode {% if platform.name == "mac" %} --suite=editor {% endif %} {% if platform.name == "linux" %} --suite=editor {% endif %} --api-profile=NET_4_6 {% if platform.runtime %} --platform {{ platform.runtime }} {% endif %} {% if platform.scripting-backend %} --scripting-backend {{ platform.scripting-backend }} {% endif %} --report-performance-data --performance-project-id=InputSystem
artifacts:
UTR_Output.zip:
paths:
Expand All @@ -80,7 +80,7 @@ build_ios_{{ editor.version }}:
name: Build Tests on {{ editor.version }} on ios
agent:
type: Unity::VM::osx
image: package-ci/macos-12:v4.19.0
image: {{ ios_and_tvos_macos_bokken_image }}
flavor: b1.large
commands:
- {{ utr_install_nix }}
Expand All @@ -99,7 +99,7 @@ run_ios_{{ editor.version }}:
name: Run Tests on {{ editor.version }} on ios
agent:
type: Unity::mobile::iPhone
image: package-ci/macos-12:v4.19.0
image: {{ ios_and_tvos_macos_bokken_image }}
model: SE
flavor: b1.medium
skip_checkout: true
Expand All @@ -117,7 +117,7 @@ build_tvos_{{ editor.version }}:
name: Build Tests on {{ editor.version }} on tvos
agent:
type: Unity::VM::osx
image: package-ci/macos-12:v4.19.0
image: {{ ios_and_tvos_macos_bokken_image }}
flavor: b1.large
commands:
- {{ utr_install_nix }}
Expand All @@ -136,7 +136,7 @@ run_tvos_{{ editor.version }}:
name: Run Tests on {{ editor.version }} on tvos
agent:
type: Unity::mobile::appletv
image: package-ci/macos-12:v4.19.0
image: {{ ios_and_tvos_macos_bokken_image }}
flavor: b1.medium
skip_checkout: true
dependencies:
Expand Down
2 changes: 1 addition & 1 deletion Assets/Samples/InGameHints/InGameHintsActions.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
// version 1.8.2
// version 1.9.0
// from Assets/Samples/InGameHints/InGameHintsActions.inputactions
//
// Changes to this file may cause incorrect behavior and will be lost if
Expand Down
2 changes: 1 addition & 1 deletion Assets/Samples/SimpleDemo/SimpleControls.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator
// version 1.8.2
// version 1.9.0
// from Assets/Samples/SimpleDemo/SimpleControls.inputactions
//
// Changes to this file may cause incorrect behavior and will be lost if
Expand Down
9 changes: 6 additions & 3 deletions Assets/Samples/Visualizers/InputActionVisualizer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,12 @@ protected void Update()
{
base.OnDisable();

s_EnabledInstances.Remove(this);
if (s_EnabledInstances.Count == 0)
InputSystem.onActionChange -= OnActionChange;
if (s_EnabledInstances != null)
{
s_EnabledInstances.Remove(this);
if (s_EnabledInstances.Count == 0)
InputSystem.onActionChange -= OnActionChange;
}

if (m_Visualization == Visualization.Interaction && m_Action != null)
{
Expand Down
11 changes: 7 additions & 4 deletions Assets/Samples/Visualizers/InputControlVisualizer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -102,11 +102,14 @@ public int controlIndex
if (m_Visualization == Mode.None)
return;

s_EnabledInstances.Remove(this);
if (s_EnabledInstances.Count == 0)
if (s_EnabledInstances != null)
{
InputSystem.onDeviceChange -= OnDeviceChange;
InputSystem.onEvent -= OnEvent;
s_EnabledInstances.Remove(this);
if (s_EnabledInstances.Count == 0)
{
InputSystem.onDeviceChange -= OnDeviceChange;
InputSystem.onEvent -= OnEvent;
}
}

m_Control = null;
Expand Down
7 changes: 5 additions & 2 deletions Assets/Tests/InputSystem.Editor/TestData.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
using UnityEngine;
using UnityEngine.InputSystem;
using UnityEngine.InputSystem.Editor;
using InputAnalytics = UnityEngine.InputSystem.InputAnalytics;
using Random = UnityEngine.Random;

public static class TestData
Expand Down Expand Up @@ -33,11 +34,13 @@ public static class TestData
});

internal static Generator<InputActionsEditorState> editorState =
new(() => new InputActionsEditorState(new SerializedObject(ScriptableObject.CreateInstance<InputActionAsset>())));
new(() => new InputActionsEditorState(
new InputActionsEditorSessionAnalytic(InputActionsEditorSessionAnalytic.Data.Kind.EditorWindow),
new SerializedObject(ScriptableObject.CreateInstance<InputActionAsset>())));

internal static Generator<InputActionsEditorState> EditorStateWithAsset(ScriptableObject asset)
{
return new Generator<InputActionsEditorState>(() => new InputActionsEditorState(new SerializedObject(asset)));
return new Generator<InputActionsEditorState>(() => new InputActionsEditorState(null, new SerializedObject(asset)));
}

public static Generator<InputControlScheme.DeviceRequirement> deviceRequirement =
Expand Down
8 changes: 7 additions & 1 deletion Assets/Tests/InputSystem/APIVerificationTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -230,8 +230,11 @@ public void API_PrecompiledLayoutsAreUpToDate(string layoutName, string filePath

[Test]
[Category("API")]
#if UNITY_EDITOR_OSX
#if UNITY_EDITOR_OSX
[Explicit] // Fails due to file system permissions on yamato, but works locally.
#endif
#if UNITY_STANDALONE_LINUX || UNITY_EDITOR_LINUX
[Ignore("Disabled to make test suite pass on Linux")]
#endif
public void API_MonoBehavioursHaveHelpUrls()
{
Expand Down Expand Up @@ -701,6 +704,9 @@ public ScopedExclusionPropertyAttribute(string version, string ns, string type,

[Test]
[Category("API")]
#if UNITY_EDITOR_LINUX
[Ignore("Disabled to make test suite pass on Linux")]
#endif
public void API_DocumentationManualDoesNotHaveMissingOrUnusedImages()
{
const string docsPath = "Packages/com.unity.inputsystem/Documentation~/";
Expand Down
Loading

0 comments on commit 73feff4

Please sign in to comment.