From 6214f8111480daf6c44822f79ea16f593287f8ef Mon Sep 17 00:00:00 2001 From: Theodore Tsirpanis Date: Wed, 25 Dec 2024 02:52:39 +0200 Subject: [PATCH 1/4] Fix `fsi` auto-loading of script file inside NuGet package. --- .../FSharp.DependencyManager.ProjectFile.fs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs b/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs index c8acf99d7e7..553c97dc60f 100644 --- a/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs +++ b/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs @@ -122,7 +122,6 @@ $(PACKAGEREFERENCES) $([System.String]::Copy('%(__InteractiveReferencedAssemblies.PathInPackage)').Replace('\', '/')) $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').IndexOf('%(InteractiveResolvedFile.NormalizedPathInPackage)')) $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').Substring(0, %(InteractiveResolvedFile.PositionPathInPackage)).Replace('\', '/')) - %(InteractiveResolvedFile.PackageRoot)content\%(InteractiveResolvedFile.NugetPackageId)$(SCRIPTEXTENSION) $([System.String]::Copy('%(__InteractiveReferencedAssemblies.PathInPackage)').StartsWith('ref/')) %(__InteractiveReferencedAssemblies.NuGetPackageId) %(__InteractiveReferencedAssemblies.NuGetPackageVersion) @@ -133,11 +132,14 @@ $(PACKAGEREFERENCES) $([System.String]::Copy('%(__InteractiveReferencedAssembliesCopyLocal.PathInPackage)').Replace('\', '/')) $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').IndexOf('%(InteractiveResolvedFile.NormalizedPathInPackage)')) $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').Substring(0, %(InteractiveResolvedFile.PositionPathInPackage)).Replace('\', '/')) - %(__InteractiveReferencedAssembliesCopyLocal.PackageRoot)content\%(__InteractiveReferencedAssembliesCopyLocal.NugetPackageId)$(SCRIPTEXTENSION) $([System.String]::Copy('%(__InteractiveReferencedAssembliesCopyLocal.PathInPackage)').StartsWith('ref/')) %(__InteractiveReferencedAssembliesCopyLocal.NuGetPackageId) %(__InteractiveReferencedAssembliesCopyLocal.NuGetPackageVersion) + + + %(InteractiveResolvedFile.PackageRoot)content\%(InteractiveResolvedFile.NugetPackageId)$(SCRIPTEXTENSION) + Date: Wed, 25 Dec 2024 03:35:30 +0200 Subject: [PATCH 2/4] Update release notes. --- docs/release-notes/.FSharp.Compiler.Service/9.0.200.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/release-notes/.FSharp.Compiler.Service/9.0.200.md b/docs/release-notes/.FSharp.Compiler.Service/9.0.200.md index 740c18edcbc..6ce426e6ba3 100644 --- a/docs/release-notes/.FSharp.Compiler.Service/9.0.200.md +++ b/docs/release-notes/.FSharp.Compiler.Service/9.0.200.md @@ -20,6 +20,7 @@ * Completion: fix qualified completion in sequence expressions [PR #18111](https://github.com/dotnet/fsharp/pull/18111) * Symbols: try to use ValReprInfoForDisplay in Mfv.CurriedParameterGroups ([PR #18124](https://github.com/dotnet/fsharp/pull/18124)) * Shim/file system: fix leaks of the shim [PR #18144](https://github.com/dotnet/fsharp/pull/18144) +* fsi: fix auto-loading of script file inside NuGet package ([PR #18177](https://github.com/dotnet/fsharp/pull/18177)) ### Added From 1925e91dc622c3391691650b93c8ea128cceef7f Mon Sep 17 00:00:00 2001 From: Theodore Tsirpanis Date: Wed, 25 Dec 2024 18:42:08 +0200 Subject: [PATCH 3/4] Deduplicate setting of metadata to `InteractiveResolvedFile`. --- .../FSharp.DependencyManager.ProjectFile.fs | 33 +++++++------------ 1 file changed, 11 insertions(+), 22 deletions(-) diff --git a/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs b/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs index 553c97dc60f..de91f122b61 100644 --- a/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs +++ b/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs @@ -104,9 +104,6 @@ $(PACKAGEREFERENCES) - <__InteractiveReferencedAssemblies Include = "@(ReferencePath)" /> - <__InteractiveReferencedAssembliesCopyLocal Include = "@(RuntimeCopyLocalItems)" Condition="'$(TargetFrameworkIdentifier)'!='.NETFramework'" /> - <__InteractiveReferencedAssembliesCopyLocal Include = "@(ReferenceCopyLocalPaths)" Condition="'$(TargetFrameworkIdentifier)'=='.NETFramework'" /> <__ConflictsList Include="%(_ConflictPackageFiles.ConflictItemType)=%(_ConflictPackageFiles.Filename)%(_ConflictPackageFiles.Extension)" /> @@ -115,30 +112,22 @@ $(PACKAGEREFERENCES) - - $([System.String]::Copy('%(Identity)').Replace('\', '/')) - $([System.String]::Copy('%(__InteractiveReferencedAssemblies.PathInPackage)').Replace('\', '/')) - $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').IndexOf('%(InteractiveResolvedFile.NormalizedPathInPackage)')) - $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').Substring(0, %(InteractiveResolvedFile.PositionPathInPackage)).Replace('\', '/')) - $([System.String]::Copy('%(__InteractiveReferencedAssemblies.PathInPackage)').StartsWith('ref/')) - %(__InteractiveReferencedAssemblies.NuGetPackageId) - %(__InteractiveReferencedAssemblies.NuGetPackageVersion) - + - + + + + $([System.String]::Copy('%(Identity)').Replace('\', '/')) - $([System.String]::Copy('%(__InteractiveReferencedAssembliesCopyLocal.PathInPackage)').Replace('\', '/')) + $([System.String]::Copy('%(InteractiveResolvedFile.PathInPackage)').Replace('\', '/')) $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').IndexOf('%(InteractiveResolvedFile.NormalizedPathInPackage)')) $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').Substring(0, %(InteractiveResolvedFile.PositionPathInPackage)).Replace('\', '/')) - $([System.String]::Copy('%(__InteractiveReferencedAssembliesCopyLocal.PathInPackage)').StartsWith('ref/')) - %(__InteractiveReferencedAssembliesCopyLocal.NuGetPackageId) - %(__InteractiveReferencedAssembliesCopyLocal.NuGetPackageVersion) - - - %(InteractiveResolvedFile.PackageRoot)content\%(InteractiveResolvedFile.NugetPackageId)$(SCRIPTEXTENSION) + $([System.String]::Copy('%(InteractiveResolvedFile.PathInPackage)').StartsWith('ref/')) + %(InteractiveResolvedFile.NuGetPackageId) + %(InteractiveResolvedFile.NuGetPackageVersion) Date: Fri, 3 Jan 2025 09:14:29 +0200 Subject: [PATCH 4/4] Revert "Deduplicate setting of metadata to `InteractiveResolvedFile`." This reverts commit 1925e91dc622c3391691650b93c8ea128cceef7f. --- .../FSharp.DependencyManager.ProjectFile.fs | 33 ++++++++++++------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs b/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs index de91f122b61..553c97dc60f 100644 --- a/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs +++ b/src/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.ProjectFile.fs @@ -104,6 +104,9 @@ $(PACKAGEREFERENCES) + <__InteractiveReferencedAssemblies Include = "@(ReferencePath)" /> + <__InteractiveReferencedAssembliesCopyLocal Include = "@(RuntimeCopyLocalItems)" Condition="'$(TargetFrameworkIdentifier)'!='.NETFramework'" /> + <__InteractiveReferencedAssembliesCopyLocal Include = "@(ReferenceCopyLocalPaths)" Condition="'$(TargetFrameworkIdentifier)'=='.NETFramework'" /> <__ConflictsList Include="%(_ConflictPackageFiles.ConflictItemType)=%(_ConflictPackageFiles.Filename)%(_ConflictPackageFiles.Extension)" /> @@ -112,22 +115,30 @@ $(PACKAGEREFERENCES) - + + $([System.String]::Copy('%(Identity)').Replace('\', '/')) + $([System.String]::Copy('%(__InteractiveReferencedAssemblies.PathInPackage)').Replace('\', '/')) + $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').IndexOf('%(InteractiveResolvedFile.NormalizedPathInPackage)')) + $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').Substring(0, %(InteractiveResolvedFile.PositionPathInPackage)).Replace('\', '/')) + $([System.String]::Copy('%(__InteractiveReferencedAssemblies.PathInPackage)').StartsWith('ref/')) + %(__InteractiveReferencedAssemblies.NuGetPackageId) + %(__InteractiveReferencedAssemblies.NuGetPackageVersion) + - - - - + $([System.String]::Copy('%(Identity)').Replace('\', '/')) - $([System.String]::Copy('%(InteractiveResolvedFile.PathInPackage)').Replace('\', '/')) + $([System.String]::Copy('%(__InteractiveReferencedAssembliesCopyLocal.PathInPackage)').Replace('\', '/')) $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').IndexOf('%(InteractiveResolvedFile.NormalizedPathInPackage)')) $([System.String]::Copy('%(InteractiveResolvedFile.NormalizedIdentity)').Substring(0, %(InteractiveResolvedFile.PositionPathInPackage)).Replace('\', '/')) + $([System.String]::Copy('%(__InteractiveReferencedAssembliesCopyLocal.PathInPackage)').StartsWith('ref/')) + %(__InteractiveReferencedAssembliesCopyLocal.NuGetPackageId) + %(__InteractiveReferencedAssembliesCopyLocal.NuGetPackageVersion) + + + %(InteractiveResolvedFile.PackageRoot)content\%(InteractiveResolvedFile.NugetPackageId)$(SCRIPTEXTENSION) - $([System.String]::Copy('%(InteractiveResolvedFile.PathInPackage)').StartsWith('ref/')) - %(InteractiveResolvedFile.NuGetPackageId) - %(InteractiveResolvedFile.NuGetPackageVersion)