The 8.x release should contain https://github.com/dotnet/runtime/pull/90342 which fixes https://github.com/dotnet/runtime/issues/80619.
I hope this will fix flaky failures like https://github.com/Unity-Technologies/ml-agents/actions/runs/8268945605/job/22623023348 of the form:
```
dotnet-format............................................................Failed
- hook id: dotnet-format
- exit code: 1
System.IO.IOException: The system cannot open the device or file specified. : 'NuGet-Migrations'
at System.Threading.Mutex.CreateMutexCore(Boolean initiallyOwned, String name, Boolean& createdNew)
at System.Threading.Mutex..ctor(Boolean initiallyOwned, String name)
at NuGet.Common.Migrations.MigrationRunner.Run(String migrationsDirectory)
at Microsoft.DotNet.Configurer.DotnetFirstTimeUseConfigurer.Configure()
at Microsoft.DotNet.Cli.Program.ConfigureDotNetForFirstTimeUse(IFirstTimeUseNoticeSentinel firstTimeUseNoticeSentinel, IAspNetCertificateSentinel aspNetCertificateSentinel, IFileSentinel toolPathSentinel, Boolean isDotnetBeingInvokedFromNativeInstaller, DotnetFirstRunConfiguration dotnetFirstRunConfiguration, IEnvironmentProvider environmentProvider, Dictionary`2 performanceMeasurements)
at Microsoft.DotNet.Cli.Program.ProcessArgs(String[] args, TimeSpan startupTime, ITelemetry telemetryClient)
at Microsoft.DotNet.Cli.Program.Main(String[] args)
```
Fixes https://github.com/Unity-Technologies/ml-agents/issues/6047
Fixes the following errors when installing ml-agents-envs on windows if numpy 1.21.2 is already installed:
```
Building wheel for numpy (pyproject.toml) ... error
error: subprocess-exited-with-error
× Building wheel for numpy (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [326 lines of output]
setup.py:63: RuntimeWarning: NumPy 1.21.2 may not yet support Python 3.10.
warnings.warn(
Running from numpy source directory.
```
Removing "or higher" because:
(i) ./ml-agents/setup.py requires >=3.10.1,<=3.10.12
(ii) python 3.10.13 is the default conda install, and 3.10.13 does not work correctly with numpy 1.21.2
* Fix GPU continuous build: correct torchaudio version
torchaudio 0.17 doesn't exist, but 2.2 does.
Use a slightly older cuda version, since that makes cuda detection work on the machines we're running on (RTX 2080's on Ubuntu 18.04, which presumably aren't compatible with CUDA 12).
(I'm not sure if the tests actually need torchaudio or torchvision, since those aren't listed dependencies of any of our software, but let's at least install a valid one)
Passing yamato run with this change: https://unity-ci.cds.internal.unity3d.com/job/34869354/logs
* Don't install torchaudio and torchvision, since they're unused
Sample passing GPU test run: https://unity-ci.cds.internal.unity3d.com/job/34891013/logs
Ignore spurious dead links to tensorflow.org pages, since we're seeing an infinite redirect for some reason that doesn't reproduce in the browser or with `curl`.
* Fix list being rendered incorrectly in webdocs
I assume this extra blank line will fix the list not being correctly formatted on https://unity-technologies.github.io/ml-agents/#releases-documentation
* Fix typos in docs
* Fix more mis-rendered lists
Add a blank line before bulleted lists in markdown files to avoid them being rendered as in-paragraph sentences that all start with hyphens.
* Fix typos in python comments used to generate docs
These references were missed when upgrading from pytorch 1.x to 2.x in #6013
References found by running `grep -R '1\.13\.1' .`
Install command chosen from the guide at https://pytorch.org/get-started/locally/
This fixes builds of ONNX on OS X while installing ml-agents.
OS X builds use Xcode by default, and the Xcode compiler defaults to using C++98 mode for C++ ( https://stackoverflow.com/a/21349148 ). This causes errors building protocol buffer libraries, which need to be compiled with support for C++14 or newer ( https://github.com/protocolbuffers/protobuf/issues/12393#issuecomment-1508983035 ).
[This ONNX commit](a979e75613) changes its compilation to use C++14 mode: releases that include this commit (1.15.0 or newer) build with Xcode by default.
ONNX 1.15.0 uses a newer protocol buffer library, so allow newer versions here too.
Before installing `grpcio` on my Apple Silicon mac, running `mlagents-learn --help` threw the following error:
```
ImportError: dlopen(/Users/alex.mccarthy/miniconda3/envs/mlagents/lib/python3.10/site-packages/grpc/_cython/cygrpc.cpython-310-darwin.so, 0x0002): symbol not found in flat namespace '_CFRelease'
```
After installing `grpcio` (which I did from conda, rather than pip), `mlagents-learn --help` ran cleanly.
Fixes pre-commit errors of the form:
```
Run actions/setup-ruby@v1
with:
ruby-version: 2.6
env:
pythonLocation: /opt/hostedtoolcache/Python/3.10.13/x64
LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.10.13/x64/lib
ImageOS: ubuntu20
------------------------
NOTE: This action is deprecated and is no longer maintained.
Please, migrate to https://github.com/ruby/setup-ruby, which is being actively maintained.
------------------------
Error: Version 2.6 not found
```
While we're upgrading this pre-commit, also upgrade from ruby 2.6 to ruby 2.7.
* Commiting changes.
* Initial barracuda 4 upgrade.
* Play mode tests passing.
* Edit mode tests passing.
* Training fixes.
* Fixed performance issue with stacking sensor.
* Fixed failing tests and issue with stacking sensor.
* Updated examples for barracuda 4 upgrade.
* Fixed issue with attention ONNX export w.r.t. dimensions.
* Fixed issue with Buffer Sensor and Recurrent In/Out.
* Retrained old policies and updated with ONNX policies. Deprecated old policy versions.
* Saving work.
* Saving work.
* Updating to Sentis 1.1.1-exp.2
* Fixed more errors with Sentis upgrade.
* Fixed tensor allocation issue in TensorUtils.ResizeTensor. Inference is working for 3DBall with Sentis.
* Fixed broken Sentis model links for some example environments.
* Fixed some broken edit mode tests.
* Fixed some failing tests.
* Fixing bugs with GPU inference on Sentis.
* Updated packages lock and onnx meta files.
* Refactoring all Barracuda related naming to Sentis.
* Python max version bump.
* Precommit fixes.
* Pinned tensorboard version
* Revert tensorboard version.
* Fixed rpc tests.
* Fixed failing python tests.
* Fixed some more failing tests. Added six as an explicit dependency due to tensorboard requirements.
* gha fix.
* Updated environment registry for Sentis.
* Fixed texture sensor test.
* Develop python 3.10 (#5981)
* Deprecated python 3.8.x and 3.9.x.
* Updated colab gha test to 3.10.12
* Updated colabs for Sentis and python 3.10.
* Test fix.
* Minor update to colabs.
* Develop torch 1.13.1 (#5982)
* Bumped PyTorch version to 1.13.1
* Added potential fixes to model overrider TBD at a later date.
* Updated changelog.
* Updated protobufs. (#5983)
* Updated training init tests to remove inference test temporarily. (#5984)
* Updated to Unity 2022.3.
* Added support for batched raycasting in ray perception sensor. Only for 3D (batched raycasting is only supported in 3D).
* Added batched raycast tests and docs.
* Updated meta file validation exclude list.
* Added unity physics module dependency to core package.