diff --git a/Packages/com.unity.ide.visualstudio.tests/Tests/Editor/CSProjectTests.cs b/Packages/com.unity.ide.visualstudio.tests/Tests/Editor/CSProjectTests.cs
index 123dbc3..02aec14 100644
--- a/Packages/com.unity.ide.visualstudio.tests/Tests/Editor/CSProjectTests.cs
+++ b/Packages/com.unity.ide.visualstudio.tests/Tests/Editor/CSProjectTests.cs
@@ -3,6 +3,7 @@
using System.Linq;
using System.Text.RegularExpressions;
using System.Xml;
+using SR = System.Reflection;
using NUnit.Framework;
using UnityEditor;
using UnityEditor.Compilation;
@@ -118,9 +119,12 @@ public void DefaultSyncSettings_WhenSynced_CreatesProjectFileFromDefaultTemplate
var projectType = ProjectTypeOf(m_Builder.Assembly.name);
var buildTarget = projectType + ":" + (int)projectType;
var unityVersion = Application.unityVersion;
+ SR.PropertyInfo tuanjieVersionPropertyInfo = typeof(Application).GetProperty("tuanjieVersion", SR.BindingFlags.Public | SR.BindingFlags.Static);
+ object tuanjieVersionPropertyValue = tuanjieVersionPropertyInfo != null ? tuanjieVersionPropertyInfo.GetValue(null, null) : null;
+ var tuanjieVersion = tuanjieVersionPropertyValue != null ? tuanjieVersionPropertyValue.ToString() : string.Empty;
var packageVersion = UnityEditor.PackageManager.PackageInfo.FindForAssembly(typeof(AssemblyNameProvider).Assembly).version;
- var content = new[]
+ var contentPart0 = new[]
{
"",
"",
@@ -176,7 +180,16 @@ public void DefaultSyncSettings_WhenSynced_CreatesProjectFileFromDefaultTemplate
" Legacy",
$" {buildTarget}",
$" {EditorUserBuildSettings.activeBuildTarget + ":" + (int)EditorUserBuildSettings.activeBuildTarget}",
- $" {unityVersion}",
+ $" {unityVersion}"
+ };
+
+ var contentPart1 = new[]
+ {
+ $" {tuanjieVersion}"
+ };
+
+ var contentPart2 = new[]
+ {
" ",
" ",
" ",
@@ -195,7 +208,7 @@ public void DefaultSyncSettings_WhenSynced_CreatesProjectFileFromDefaultTemplate
"",
""
};
-
+ var content = string.IsNullOrEmpty(tuanjieVersion) ? contentPart0.Concat(contentPart2).ToArray() : contentPart0.Concat(contentPart1).Concat(contentPart2).ToArray();
StringAssert.AreEqualIgnoringCase(string.Join("\r\n", content), csprojContent);
}
}
diff --git a/Packages/com.unity.ide.visualstudio.tests/package.json b/Packages/com.unity.ide.visualstudio.tests/package.json
index d3258dd..6bd552d 100644
--- a/Packages/com.unity.ide.visualstudio.tests/package.json
+++ b/Packages/com.unity.ide.visualstudio.tests/package.json
@@ -3,7 +3,7 @@
"name": "com.unity.ide.visualstudio.tests",
"displayName": "Visual Studio Editor",
"description": "Code editor integration for supporting Visual Studio as code editor for unity. Adds support for generating csproj files for intellisense purposes, auto discovery of installations, etc.",
- "version": "2.0.21",
+ "version": "2.0.22",
"unity": "2019.4",
"unityRelease": "25f1",
"dependencies": {
diff --git a/Packages/com.unity.ide.visualstudio/CHANGELOG.md b/Packages/com.unity.ide.visualstudio/CHANGELOG.md
index 11c0ada..0daa3e5 100644
--- a/Packages/com.unity.ide.visualstudio/CHANGELOG.md
+++ b/Packages/com.unity.ide.visualstudio/CHANGELOG.md
@@ -1,5 +1,20 @@
# Code Editor Package for Visual Studio
+## [2.0.22] - 2023-10-03
+
+Integration:
+
+- Add support for `XDG_DATA_DIRS` and `.desktop` files on Linux for `VS Code` discovery.
+- Use compile-time platform-specifics instead of using runtime conditions.
+
+Project generation:
+
+- Suppress `USG0001` warnings.
+- Mark referenced assemblies as private (to not copy extra files to output directory when building).
+- Add Unity capability to SDK-Style projects.
+- Prevent circular dependency errors with SDK-Style projects.
+
+
## [2.0.21] - 2023-09-05
Integration:
diff --git a/Packages/com.unity.ide.visualstudio/Editor/ProjectGeneration/ProjectGeneration.cs b/Packages/com.unity.ide.visualstudio/Editor/ProjectGeneration/ProjectGeneration.cs
index 74afcff..f68f67a 100644
--- a/Packages/com.unity.ide.visualstudio/Editor/ProjectGeneration/ProjectGeneration.cs
+++ b/Packages/com.unity.ide.visualstudio/Editor/ProjectGeneration/ProjectGeneration.cs
@@ -718,6 +718,9 @@ out StringBuilder headerBuilder
{
var projectType = ProjectTypeOf(assembly.name);
+ SR.PropertyInfo tuanjieVersionPropertyInfo = typeof(Application).GetProperty("tuanjieVersion", SR.BindingFlags.Public | SR.BindingFlags.Static);
+ object tuanjieVersionPropertyValue = tuanjieVersionPropertyInfo != null ? tuanjieVersionPropertyInfo.GetValue(null, null) : null;
+
var projectProperties = new ProjectProperties
{
ProjectGuid = ProjectGuid(assembly),
@@ -732,6 +735,7 @@ out StringBuilder headerBuilder
FlavoringProjectType = projectType + ":" + (int)projectType,
FlavoringBuildTarget = EditorUserBuildSettings.activeBuildTarget + ":" + (int)EditorUserBuildSettings.activeBuildTarget,
FlavoringUnityVersion = Application.unityVersion,
+ FlavoringTuanjieVersion = tuanjieVersionPropertyValue != null ? tuanjieVersionPropertyValue.ToString() : string.Empty,
FlavoringPackageVersion = VisualStudioIntegration.PackageVersion(),
};
@@ -847,6 +851,10 @@ internal void GetProjectHeaderVstuFlavoring(ProjectProperties properties, String
headerBuilder.Append(@" ").Append(properties.FlavoringProjectType).Append(@"").Append(k_WindowsNewline);
headerBuilder.Append(@" ").Append(properties.FlavoringBuildTarget).Append(@"").Append(k_WindowsNewline);
headerBuilder.Append(@" ").Append(properties.FlavoringUnityVersion).Append(@"").Append(k_WindowsNewline);
+ if (!string.IsNullOrEmpty(properties.FlavoringTuanjieVersion))
+ {
+ headerBuilder.Append(@" ").Append(properties.FlavoringTuanjieVersion).Append(@"").Append(k_WindowsNewline);
+ }
headerBuilder.Append(@" ").Append(k_WindowsNewline);
}
diff --git a/Packages/com.unity.ide.visualstudio/Editor/ProjectGeneration/ProjectProperties.cs b/Packages/com.unity.ide.visualstudio/Editor/ProjectGeneration/ProjectProperties.cs
index c8963e0..abcf891 100644
--- a/Packages/com.unity.ide.visualstudio/Editor/ProjectGeneration/ProjectProperties.cs
+++ b/Packages/com.unity.ide.visualstudio/Editor/ProjectGeneration/ProjectProperties.cs
@@ -25,6 +25,7 @@ internal class ProjectProperties
public string FlavoringProjectType { get; set; } = string.Empty;
public string FlavoringBuildTarget { get; set; } = string.Empty;
public string FlavoringUnityVersion { get; set; } = string.Empty;
+ public string FlavoringTuanjieVersion { get; set; } = string.Empty;
public string FlavoringPackageVersion { get; set; } = string.Empty;
}
}
diff --git a/Packages/com.unity.ide.visualstudio/package.json b/Packages/com.unity.ide.visualstudio/package.json
index 6665c4e..4fbd89c 100644
--- a/Packages/com.unity.ide.visualstudio/package.json
+++ b/Packages/com.unity.ide.visualstudio/package.json
@@ -2,13 +2,13 @@
"name": "com.unity.ide.visualstudio",
"displayName": "Visual Studio Editor",
"description": "Code editor integration for supporting Visual Studio as code editor for unity. Adds support for generating csproj files for intellisense purposes, auto discovery of installations, etc.",
- "version": "2.0.21",
+ "version": "2.0.22",
"unity": "2019.4",
"unityRelease": "25f1",
"dependencies": {
"com.unity.test-framework": "1.1.9"
},
"relatedPackages": {
- "com.unity.ide.visualstudio.tests": "2.0.21"
+ "com.unity.ide.visualstudio.tests": "2.0.22"
}
}