Skip to content

Commit

Permalink
Merged PR 77106: March 2024 Release
Browse files Browse the repository at this point in the history
  • Loading branch information
chitsaw authored and sandrist committed Mar 14, 2024
1 parent 5386e8a commit 300fecd
Show file tree
Hide file tree
Showing 568 changed files with 31,503 additions and 6,086 deletions.
58 changes: 36 additions & 22 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,58 +13,72 @@ name: "CodeQL"

on:
push:
branches: [ master, gh-pages ]
branches: [ "master" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ master ]
branches: [ "master" ]
schedule:
- cron: '28 20 * * 4'
- cron: '28 3 * * 6'

jobs:
analyze:
name: Analyze
runs-on: windows-2019
# Runner size impacts CodeQL analysis time. To learn more, please see:
# - https://gh.io/recommended-hardware-resources-for-running-codeql
# - https://gh.io/supported-runners-and-hardware-resources
# - https://gh.io/using-larger-runners
# Consider using larger runners for possible analysis time improvements.
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'windows-latest' }}
timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }}
permissions:
# required for all workflows
security-events: write

# only required for workflows in private repositories
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'cpp', 'csharp' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://git.io/codeql-language-support
language: [ 'c-cpp', 'csharp', 'python' ]
# CodeQL supports [ 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'swift' ]
# Use only 'java-kotlin' to analyze code written in Java, Kotlin or both
# Use only 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support

steps:
- name: Checkout repository
uses: actions/checkout@v2
uses: actions/checkout@v4

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main

# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality


# Autobuild attempts to build any compiled languages (C/C++, C#, Go, Java, or Swift).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
uses: github/codeql-action/autobuild@v3

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun

# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.

#- run: |
# make bootstrap
# make release
# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"
20 changes: 7 additions & 13 deletions .github/workflows/msbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,10 +28,10 @@ jobs:
SOLUTION_FILE_PATH: ./Psi.sln

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@v1.1
uses: microsoft/setup-msbuild@v2

- name: Restore NuGet packages
working-directory: ${{env.GITHUB_WORKSPACE}}
Expand All @@ -43,34 +43,28 @@ jobs:
# See https://docs.microsoft.com/visualstudio/msbuild/msbuild-command-line-reference
run: msbuild /m /p:Configuration=${{env.BUILD_CONFIGURATION}} ${{env.SOLUTION_FILE_PATH}}

- name: Install .NET 3.1
# Required to run the cross-framework serialization tests
uses: actions/setup-dotnet@v3
with:
dotnet-version: '3.1.x'

- name: Get Test Assemblies (.NET Framework)
uses: tj-actions/glob@v17.2.6
uses: tj-actions/glob@v21
id: get-framework-tests
with:
files: |
**\bin\**\*Test.Psi*.exe
**\bin\**\*Test.Psi*.dll
!**\bin\**\netcoreapp*\*
!**\bin\**\net5.0*\*
!**\bin\**\net[0-9].[0-9]*\*
!**\bin\**\*Test.Psi*.Common.dll
!**\bin\**\Test.Psi.exe
- name: Run Tests
run: dotnet test --filter "TestCategory!=Performance" -l "console;verbosity=detailed" ${{ steps.get-framework-tests.outputs.paths }}

- name: Get Test Assemblies (.NET Core)
uses: tj-actions/glob@v17.2.6
uses: tj-actions/glob@v21
id: get-netcore-tests
with:
files: |
**\bin\**\netcoreapp*\*Test.Psi*.dll
!**\bin\**\netcoreapp*\*Test.Psi*.Common.dll
**\bin\**\net[0-9].[0-9]\Test.Psi*.dll
!**\bin\**\net[0-9].[0-9]\Test.Psi*.Common.dll
- name: Run Tests
run: dotnet test --filter "TestCategory!=Performance" -l "console;verbosity=detailed" ${{ steps.get-netcore-tests.outputs.paths }}
32 changes: 32 additions & 0 deletions Applications/Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="utf-8"?>
<Project>

<PropertyGroup>
<Copyright>© Microsoft Corporation. All rights reserved.</Copyright>
<Company>Microsoft Corporation</Company>
<Owners>microsoft,psi</Owners>
<Authors>Microsoft</Authors>
<AssemblyVersion>0.19.100.1</AssemblyVersion>
<FileVersion>$(AssemblyVersion)</FileVersion>
<Version>$(AssemblyVersion)-beta</Version>
<SignAssembly>false</SignAssembly>
<PackageLicenseFile>LICENSE-APPLICATIONS.txt</PackageLicenseFile>
<PackageRequireLicenseAcceptance>true</PackageRequireLicenseAcceptance>
<RepositoryUrl>https://github.com/microsoft/psi/</RepositoryUrl>
<PackageProjectUrl>https://github.com/microsoft/psi/wiki</PackageProjectUrl>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<NeutralLanguage>en</NeutralLanguage>
<PackageTags>Psi;Microsoft</PackageTags>
<RepositoryType>git</RepositoryType>
<LangVersion>latest</LangVersion>
<RunCodeAnalysis>false</RunCodeAnalysis>
</PropertyGroup>

<ItemGroup>
<!-- Include LICENSE.txt file as licenseUrl has been deprecated in NuGet -->
<None Include="$(MSBuildThisFileDirectory)\..\LICENSE-APPLICATIONS.txt" Pack="true" PackagePath="$(PackageLicenseFile)"/>
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">ARM</Platform>
<ProjectGuid>{1AFBBD50-CE3A-4792-BE84-15E897D281DD}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Microsoft.Psi.MixedReality.Applications</RootNamespace>
<AssemblyName>Microsoft.Psi.MixedReality.Applications.UniversalWindows</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion Condition=" '$(TargetPlatformVersion)' == '' ">10.0.22621.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>14</MinimumVisualStudioVersion>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|ARM'">
<PlatformTarget>ARM</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\ARM\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<NoWarn>;2008</NoWarn>
<DebugType>full</DebugType>
<UseVSHostingProcess>false</UseVSHostingProcess>
<ErrorReport>prompt</ErrorReport>
<DocumentationFile>bin\ARM\Release\Microsoft.Psi.MixedReality.Applications.UniversalWindows.XML</DocumentationFile>
<CodeAnalysisRuleSet>..\..\Build\Microsoft.Psi.ruleset</CodeAnalysisRuleSet>
<RunCodeAnalysis>false</RunCodeAnalysis>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|ARM'">
<PlatformTarget>ARM</PlatformTarget>
<OutputPath>bin\ARM\Release\</OutputPath>
<DefineConstants>TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<Optimize>true</Optimize>
<NoWarn>;2008</NoWarn>
<DebugType>pdbonly</DebugType>
<UseVSHostingProcess>false</UseVSHostingProcess>
<ErrorReport>prompt</ErrorReport>
<DocumentationFile>bin\ARM\Release\Microsoft.Psi.MixedReality.Applications.UniversalWindows.XML</DocumentationFile>
<CodeAnalysisRuleSet>..\..\Build\Microsoft.Psi.ruleset</CodeAnalysisRuleSet>
<RunCodeAnalysis>false</RunCodeAnalysis>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
</PropertyGroup>
<PropertyGroup>
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
</PropertyGroup>
<ItemGroup>
<Compile Include="StereoKitClientApp.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="Properties\Microsoft.Psi.MixedReality.Applications.UniversalWindows.rd.xml" />
</ItemGroup>
<ItemGroup>
<AdditionalFiles Include="stylecop.json" />
</ItemGroup>
<ItemGroup>
<PackageReference Include="MathNet.Spatial.Signed">
<Version>0.6.0</Version>
</PackageReference>
<PackageReference Include="Microsoft.CodeAnalysis.NetAnalyzers">
<Version>8.0.0</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="Microsoft.MixedReality.SceneUnderstanding">
<Version>0.5.2069</Version>
</PackageReference>
<PackageReference Include="Microsoft.NETCore.UniversalWindowsPlatform">
<Version>6.2.14</Version>
</PackageReference>
<PackageReference Include="NuGet.Build.Tasks.Pack">
<Version>6.0.0</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
<PackageReference Include="StereoKit">
<Version>0.3.6</Version>
</PackageReference>
<PackageReference Include="StyleCop.Analyzers">
<Version>1.1.118</Version>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Sources\Audio\Microsoft.Psi.Audio\Microsoft.Psi.Audio.csproj">
<Project>{ac5745da-570c-4e57-9ae4-d1974f629428}</Project>
<Name>Microsoft.Psi.Audio</Name>
</ProjectReference>
<ProjectReference Include="..\..\Sources\Imaging\Microsoft.Psi.Imaging\Microsoft.Psi.Imaging.csproj">
<Project>{9bf2e5ef-186a-4179-b753-ae11ee90e026}</Project>
<Name>Microsoft.Psi.Imaging</Name>
</ProjectReference>
<ProjectReference Include="..\..\Sources\Integrations\CognitiveServices\Microsoft.Psi.CognitiveServices.Speech\Microsoft.Psi.CognitiveServices.Speech.csproj">
<Project>{cfb5e6d3-c2fd-4d46-b8ac-7e39634e2ca9}</Project>
<Name>Microsoft.Psi.CognitiveServices.Speech</Name>
</ProjectReference>
<ProjectReference Include="..\..\Sources\MixedReality\Microsoft.Psi.MixedReality.UniversalWindows\Microsoft.Psi.MixedReality.UniversalWindows.csproj">
<Project>{ecd9e150-8104-4da3-b807-a6a4392a67c6}</Project>
<Name>Microsoft.Psi.MixedReality.UniversalWindows</Name>
</ProjectReference>
<ProjectReference Include="..\..\Sources\MixedReality\Microsoft.Psi.MixedReality\Microsoft.Psi.MixedReality.csproj">
<Project>{067b824e-5ee7-4561-9ff0-9bea6beff441}</Project>
<Name>Microsoft.Psi.MixedReality</Name>
</ProjectReference>
<ProjectReference Include="..\..\Sources\Runtime\Microsoft.Psi.Interop\Microsoft.Psi.Interop.csproj">
<Project>{d6be6801-7a6e-4c33-a681-e6e7306106a3}</Project>
<Name>Microsoft.Psi.Interop</Name>
</ProjectReference>
<ProjectReference Include="..\..\Sources\Runtime\Microsoft.Psi\Microsoft.Psi.csproj">
<Project>{04147400-0ab0-4f07-9975-d4b7e58150db}</Project>
<Name>Microsoft.Psi</Name>
</ProjectReference>
<ProjectReference Include="..\..\Sources\Spatial\Microsoft.Psi.Spatial.Euclidean\Microsoft.Psi.Spatial.Euclidean.csproj">
<Project>{05f10501-fc07-4f5b-a73d-98290326870d}</Project>
<Name>Microsoft.Psi.Spatial.Euclidean</Name>
</ProjectReference>
<ProjectReference Include="..\Microsoft.Psi.MixedReality.Applications\Microsoft.Psi.MixedReality.Applications.csproj">
<Project>{949BD664-E37A-4246-95DA-4A39AB3591AA}</Project>
<Name>Microsoft.Psi.MixedReality.Applications</Name>
</ProjectReference>
</ItemGroup>
<PropertyGroup Condition=" '$(VisualStudioVersion)' == '' or '$(VisualStudioVersion)' &lt; '14.0' ">
<VisualStudioVersion>14.0</VisualStudioVersion>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license.
// Licensed under the Microsoft Research license.

using System.Reflection;
using System.Runtime.CompilerServices;
Expand All @@ -8,23 +8,15 @@
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Microsoft.Psi.RealSense.Windows.x64")]
[assembly: AssemblyTitle("Microsoft.Psi.MixedReality.Applications.UniversalWindows")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Microsoft Corporation")]
[assembly: AssemblyProduct("Microsoft.Psi.RealSense.Windows.x64")]
[assembly: AssemblyCopyright("Copyright © Microsoft Corporation. All rights reserved.")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Microsoft.Psi.MixedReality.Applications.UniversalWindows")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]

// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("7b73d864-9997-4637-8765-44c17fd09ce1")]

// Version information for an assembly consists of the following four values:
//
// Major Version
Expand All @@ -35,6 +27,6 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("0.18.72.1")]
[assembly: AssemblyFileVersion("0.18.72.1")]
[assembly: AssemblyInformationalVersion("0.18.72.1-beta")]
[assembly: AssemblyVersion("0.19.100.1")]
[assembly: AssemblyFileVersion("0.19.100.1")]
[assembly: ComVisible(false)]
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file contains Runtime Directives, specifications about types your application accesses
through reflection and other dynamic code patterns. Runtime Directives are used to control the
.NET Native optimizer and ensure that it does not remove code accessed by your library. If your
library does not do any reflection, then you generally do not need to edit this file. However,
if your library reflects over types, especially types passed to it or derived from its types,
then you should write Runtime Directives.
The most common use of reflection in libraries is to discover information about types passed
to the library. Runtime Directives have three ways to express requirements on types passed to
your library.
1. Parameter, GenericParameter, TypeParameter, TypeEnumerableParameter
Use these directives to reflect over types passed as a parameter.
2. SubTypes
Use a SubTypes directive to reflect over types derived from another type.
3. AttributeImplies
Use an AttributeImplies directive to indicate that your library needs to reflect over
types or methods decorated with an attribute.
For more information on writing Runtime Directives for libraries, please visit
https://go.microsoft.com/fwlink/?LinkID=391919
-->
<Directives xmlns="http://schemas.microsoft.com/netfx/2013/01/metadata">
<Library Name="Microsoft.Psi.MixedReality.Applications.UniversalWindows">

<!-- add directives for your library here -->

</Library>
</Directives>

0 comments on commit 300fecd

Please sign in to comment.