From 5e334d2163c215ce4d0baab28a94c1e9c3a2b33f Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
<41898282+github-actions[bot]@users.noreply.github.com>
Date: Sat, 9 May 2026 12:47:57 +0000
Subject: [PATCH 1/2] eng: remove AssemblyInfo files; use SDK-generated
assembly attributes
- Delete all src/AssemblyInfo*.fs files (FAKE-generated, legacy approach)
- Delete tests/.../Properties/AssemblyInfo.cs (unused dead code)
- Remove GenerateAssemblyInfo=false and Compile includes from all .fsproj files
- Add Product and AssemblyDescription to Directory.Build.props (shared values)
- Pass Version to the Build MSBuild step so assemblies get the right version
- Remove AssemblyInfo FAKE target and dep from build pipeline
- Remove Fake.DotNet.AssemblyInfoFile from build/paket.references
- Bump version to 8.1.14
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
---
Directory.Build.props | 2 ++
RELEASE_NOTES.md | 4 +++
build/build.fs | 30 +++-------------
build/paket.references | 1 -
src/AssemblyInfo.Csv.Core.fs | 17 ---------
src/AssemblyInfo.DesignTime.fs | 17 ---------
src/AssemblyInfo.Html.Core.fs | 17 ---------
src/AssemblyInfo.Http.fs | 17 ---------
src/AssemblyInfo.Json.Core.fs | 17 ---------
src/AssemblyInfo.Runtime.Utilities.fs | 17 ---------
src/AssemblyInfo.WorldBank.Core.fs | 17 ---------
src/AssemblyInfo.Xml.Core.fs | 17 ---------
src/AssemblyInfo.fs | 17 ---------
.../FSharp.Data.Csv.Core.fsproj | 2 --
.../FSharp.Data.DesignTime.fsproj | 2 --
.../FSharp.Data.Html.Core.fsproj | 2 --
src/FSharp.Data.Http/FSharp.Data.Http.fsproj | 2 --
.../FSharp.Data.Json.Core.fsproj | 2 --
.../FSharp.Data.Runtime.Utilities.fsproj | 2 --
.../FSharp.Data.WorldBank.Core.fsproj | 2 --
.../FSharp.Data.Xml.Core.fsproj | 2 --
src/FSharp.Data/FSharp.Data.fsproj | 2 --
.../Properties/AssemblyInfo.cs | 36 -------------------
23 files changed, 10 insertions(+), 234 deletions(-)
delete mode 100644 src/AssemblyInfo.Csv.Core.fs
delete mode 100644 src/AssemblyInfo.DesignTime.fs
delete mode 100644 src/AssemblyInfo.Html.Core.fs
delete mode 100644 src/AssemblyInfo.Http.fs
delete mode 100644 src/AssemblyInfo.Json.Core.fs
delete mode 100644 src/AssemblyInfo.Runtime.Utilities.fs
delete mode 100644 src/AssemblyInfo.WorldBank.Core.fs
delete mode 100644 src/AssemblyInfo.Xml.Core.fs
delete mode 100644 src/AssemblyInfo.fs
delete mode 100644 tests/FSharp.Data.Core.Tests.CSharp/Properties/AssemblyInfo.cs
diff --git a/Directory.Build.props b/Directory.Build.props
index 03c303658..1d8000c32 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -11,6 +11,8 @@
https://fsprojects.github.io/FSharp.Data
https://raw.githubusercontent.com/fsprojects/FSharp.Data/master/docs/img/logo.png
git
+ FSharp.Data
+ Library of F# type providers and data access tools
true
$(MSBuildThisFileDirectory)src\keyfile.snk
false
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index 9c050a235..d34cd511b 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -1,5 +1,9 @@
# Release Notes
+## 8.1.14 - May 09 2026
+
+- Eng: Remove manual `AssemblyInfo*.fs` files; use SDK-generated assembly attributes instead.
+
## 8.1.13 - May 08 2026
- Performance: `HtmlNode.serialize` no longer allocates a temporary `string` on each newline/indentation step; uses `StringBuilder.Append(char, int)` overload directly. `isVoidElement` set is now computed once at module initialisation instead of being re-created on every `HtmlNode.ToString()` call. `HtmlDocument.ToString()` uses a single `StringBuilder` for the whole document instead of `List.map … |> String.Concat`.
diff --git a/build/build.fs b/build/build.fs
index 4e2daef6d..6d7f43a69 100644
--- a/build/build.fs
+++ b/build/build.fs
@@ -20,7 +20,7 @@ let buildscript () =
(!!includes).SetBaseDirectory(__SOURCE_DIRECTORY__ > "..")
// --------------------------------------------------------------------------------------
- // Information about the project to be used at NuGet and in AssemblyInfo files
+ // Information about the project to be used at NuGet
// --------------------------------------------------------------------------------------
let project = "FSharp.Data"
@@ -56,27 +56,6 @@ let buildscript () =
let isCI = Environment.GetEnvironmentVariable("CI") <> null
- // --------------------------------------------------------------------------------------
- // Generate assembly info files with the right version & up-to-date information
-
- Target.create "AssemblyInfo" (fun _ ->
- for file in !!"src/AssemblyInfo*.fs" do
- let replace (oldValue: string) newValue (str: string) = str.Replace(oldValue, newValue)
-
- let title =
- Path.GetFileNameWithoutExtension file |> replace "AssemblyInfo" "FSharp.Data"
-
- let versionSuffix = ".0"
- let version = release.AssemblyVersion + versionSuffix
-
- AssemblyInfoFile.createFSharp
- file
- [ AssemblyInfo.Title title
- AssemblyInfo.Product project
- AssemblyInfo.Description summary
- AssemblyInfo.Version version
- AssemblyInfo.FileVersion version ])
-
// --------------------------------------------------------------------------------------
// Clean build results
@@ -110,6 +89,7 @@ let buildscript () =
Configuration = DotNet.BuildConfiguration.Release
MSBuildParams =
{ o.MSBuildParams with
+ Properties = [ ("Version", release.NugetVersion) ]
DisableInternalBinLog = true } }))
Target.create "RunTests" (fun _ ->
@@ -217,9 +197,7 @@ let buildscript () =
printfn "")
let sourceFiles =
- !!"src/**/*.fs" ++ "src/**/*.fsi" ++ "build/build.fs"
- -- "src/**/obj/**/*.fs"
- -- "src/AssemblyInfo*.fs"
+ !!"src/**/*.fs" ++ "src/**/*.fsi" ++ "build/build.fs" -- "src/**/obj/**/*.fs"
Target.create "Format" (fun _ ->
let result =
@@ -267,7 +245,7 @@ let buildscript () =
Target.create "All" ignore
- "Clean" ==> "AssemblyInfo" ==> "CheckFormat" ==> "Build"
+ "Clean" ==> "CheckFormat" ==> "Build"
"Build" ==> "CleanDocs" ==> "GenerateDocs" ==> "All"
diff --git a/build/paket.references b/build/paket.references
index 63f7d83d3..c353477b8 100644
--- a/build/paket.references
+++ b/build/paket.references
@@ -12,7 +12,6 @@ group Fake
Fake.Core.Tasks
Fake.Core.Target
Fake.Core.ReleaseNotes
- Fake.DotNet.AssemblyInfoFile
Fake.DotNet.Cli
Fake.DotNet.Testing.NUnit
Fake.DotNet.NuGet
diff --git a/src/AssemblyInfo.Csv.Core.fs b/src/AssemblyInfo.Csv.Core.fs
deleted file mode 100644
index 704088dd6..000000000
--- a/src/AssemblyInfo.Csv.Core.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data.Csv.Core"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/AssemblyInfo.DesignTime.fs b/src/AssemblyInfo.DesignTime.fs
deleted file mode 100644
index a6ab68697..000000000
--- a/src/AssemblyInfo.DesignTime.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data.DesignTime"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/AssemblyInfo.Html.Core.fs b/src/AssemblyInfo.Html.Core.fs
deleted file mode 100644
index 8b96c5f2d..000000000
--- a/src/AssemblyInfo.Html.Core.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data.Html.Core"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/AssemblyInfo.Http.fs b/src/AssemblyInfo.Http.fs
deleted file mode 100644
index edb61ddbc..000000000
--- a/src/AssemblyInfo.Http.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data.Http"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/AssemblyInfo.Json.Core.fs b/src/AssemblyInfo.Json.Core.fs
deleted file mode 100644
index 57595f3e0..000000000
--- a/src/AssemblyInfo.Json.Core.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data.Json.Core"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/AssemblyInfo.Runtime.Utilities.fs b/src/AssemblyInfo.Runtime.Utilities.fs
deleted file mode 100644
index 3707ecf0b..000000000
--- a/src/AssemblyInfo.Runtime.Utilities.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data.Runtime.Utilities"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/AssemblyInfo.WorldBank.Core.fs b/src/AssemblyInfo.WorldBank.Core.fs
deleted file mode 100644
index 38c89b67a..000000000
--- a/src/AssemblyInfo.WorldBank.Core.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data.WorldBank.Core"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/AssemblyInfo.Xml.Core.fs b/src/AssemblyInfo.Xml.Core.fs
deleted file mode 100644
index 02059831f..000000000
--- a/src/AssemblyInfo.Xml.Core.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data.Xml.Core"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/AssemblyInfo.fs b/src/AssemblyInfo.fs
deleted file mode 100644
index 56513e4c2..000000000
--- a/src/AssemblyInfo.fs
+++ /dev/null
@@ -1,17 +0,0 @@
-// Auto-Generated by FAKE; do not edit
-namespace System
-open System.Reflection
-
-[]
-[]
-[]
-[]
-[]
-do ()
-
-module internal AssemblyVersionInformation =
- let [] AssemblyTitle = "FSharp.Data"
- let [] AssemblyProduct = "FSharp.Data"
- let [] AssemblyDescription = "Library of F# type providers and data access tools"
- let [] AssemblyVersion = "8.1.11.0"
- let [] AssemblyFileVersion = "8.1.11.0"
diff --git a/src/FSharp.Data.Csv.Core/FSharp.Data.Csv.Core.fsproj b/src/FSharp.Data.Csv.Core/FSharp.Data.Csv.Core.fsproj
index ad9c37329..c1e1c0b75 100644
--- a/src/FSharp.Data.Csv.Core/FSharp.Data.Csv.Core.fsproj
+++ b/src/FSharp.Data.Csv.Core/FSharp.Data.Csv.Core.fsproj
@@ -5,7 +5,6 @@
netstandard2.0;net8.0
$(OtherFlags) --warnon:1182 --nowarn:10001 --nowarn:44
true
- false
logo.png
true
@@ -16,7 +15,6 @@
-
diff --git a/src/FSharp.Data.DesignTime/FSharp.Data.DesignTime.fsproj b/src/FSharp.Data.DesignTime/FSharp.Data.DesignTime.fsproj
index d6681ce11..54bd9777e 100755
--- a/src/FSharp.Data.DesignTime/FSharp.Data.DesignTime.fsproj
+++ b/src/FSharp.Data.DesignTime/FSharp.Data.DesignTime.fsproj
@@ -6,7 +6,6 @@
IS_DESIGNTIME;NO_GENERATIVE;$(DefineConstants)
$(OtherFlags) --warnon:1182 --nowarn:44
false
- false
true
false
@@ -32,7 +31,6 @@
-
diff --git a/src/FSharp.Data.Html.Core/FSharp.Data.Html.Core.fsproj b/src/FSharp.Data.Html.Core/FSharp.Data.Html.Core.fsproj
index d80833a83..2f2b72a7c 100644
--- a/src/FSharp.Data.Html.Core/FSharp.Data.Html.Core.fsproj
+++ b/src/FSharp.Data.Html.Core/FSharp.Data.Html.Core.fsproj
@@ -5,7 +5,6 @@
netstandard2.0;net8.0
$(OtherFlags) --warnon:1182 --nowarn:10001 --nowarn:44
true
- false
logo.png
true
@@ -23,7 +22,6 @@
-
diff --git a/src/FSharp.Data.Http/FSharp.Data.Http.fsproj b/src/FSharp.Data.Http/FSharp.Data.Http.fsproj
index f4cceac1e..6ac32264b 100644
--- a/src/FSharp.Data.Http/FSharp.Data.Http.fsproj
+++ b/src/FSharp.Data.Http/FSharp.Data.Http.fsproj
@@ -5,7 +5,6 @@
netstandard2.0;net8.0
$(OtherFlags) --warnon:1182 --nowarn:10001 --nowarn:44
true
- false
logo.png
true
@@ -13,7 +12,6 @@
-
diff --git a/src/FSharp.Data.Json.Core/FSharp.Data.Json.Core.fsproj b/src/FSharp.Data.Json.Core/FSharp.Data.Json.Core.fsproj
index f58ffbaca..6b0926f17 100644
--- a/src/FSharp.Data.Json.Core/FSharp.Data.Json.Core.fsproj
+++ b/src/FSharp.Data.Json.Core/FSharp.Data.Json.Core.fsproj
@@ -5,7 +5,6 @@
netstandard2.0;net8.0
$(OtherFlags) --warnon:1182 --nowarn:10001 --nowarn:44
true
- false
logo.png
true
@@ -19,7 +18,6 @@
-
diff --git a/src/FSharp.Data.Runtime.Utilities/FSharp.Data.Runtime.Utilities.fsproj b/src/FSharp.Data.Runtime.Utilities/FSharp.Data.Runtime.Utilities.fsproj
index 024026827..4871d5d78 100644
--- a/src/FSharp.Data.Runtime.Utilities/FSharp.Data.Runtime.Utilities.fsproj
+++ b/src/FSharp.Data.Runtime.Utilities/FSharp.Data.Runtime.Utilities.fsproj
@@ -5,7 +5,6 @@
netstandard2.0;net8.0
$(OtherFlags) --warnon:1182 --nowarn:10001 --nowarn:44
true
- false
logo.png
true
@@ -21,7 +20,6 @@
-
diff --git a/src/FSharp.Data.WorldBank.Core/FSharp.Data.WorldBank.Core.fsproj b/src/FSharp.Data.WorldBank.Core/FSharp.Data.WorldBank.Core.fsproj
index eb6d952fa..81757c626 100644
--- a/src/FSharp.Data.WorldBank.Core/FSharp.Data.WorldBank.Core.fsproj
+++ b/src/FSharp.Data.WorldBank.Core/FSharp.Data.WorldBank.Core.fsproj
@@ -5,7 +5,6 @@
netstandard2.0;net8.0
$(OtherFlags) --warnon:1182 --nowarn:10001
true
- false
logo.png
true
@@ -13,7 +12,6 @@
-
diff --git a/src/FSharp.Data.Xml.Core/FSharp.Data.Xml.Core.fsproj b/src/FSharp.Data.Xml.Core/FSharp.Data.Xml.Core.fsproj
index 06050feab..6fbd72587 100644
--- a/src/FSharp.Data.Xml.Core/FSharp.Data.Xml.Core.fsproj
+++ b/src/FSharp.Data.Xml.Core/FSharp.Data.Xml.Core.fsproj
@@ -5,7 +5,6 @@
netstandard2.0;net8.0
$(OtherFlags) --warnon:1182 --nowarn:10001 --nowarn:44
true
- false
logo.png
true
@@ -16,7 +15,6 @@
-
diff --git a/src/FSharp.Data/FSharp.Data.fsproj b/src/FSharp.Data/FSharp.Data.fsproj
index 597933cfb..6c899ad8b 100755
--- a/src/FSharp.Data/FSharp.Data.fsproj
+++ b/src/FSharp.Data/FSharp.Data.fsproj
@@ -5,7 +5,6 @@
netstandard2.0;net8.0
$(OtherFlags) --warnon:1182 --nowarn:10001
true
- false
logo.png
typeproviders
typeproviders
@@ -14,7 +13,6 @@
false
-
diff --git a/tests/FSharp.Data.Core.Tests.CSharp/Properties/AssemblyInfo.cs b/tests/FSharp.Data.Core.Tests.CSharp/Properties/AssemblyInfo.cs
deleted file mode 100644
index 99f20c943..000000000
--- a/tests/FSharp.Data.Core.Tests.CSharp/Properties/AssemblyInfo.cs
+++ /dev/null
@@ -1,36 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// 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("FSharp.Data.Tests.CSharp")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("FSharp.Data.Tests.CSharp")]
-[assembly: AssemblyCopyright("Copyright © 2014")]
-[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("3c02b4cd-2cf2-42ab-88ac-1b77ec3b5f10")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-//
-// 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("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]
From db24370f84f5e1e4b19075bf250d75b20ffdfd36 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
Date: Sat, 9 May 2026 12:48:00 +0000
Subject: [PATCH 2/2] ci: trigger checks