From e73b12770398c1e24530d5aae9e71d8a84bf23b9 Mon Sep 17 00:00:00 2001 From: delphidabbler <5164283+delphidabbler@users.noreply.github.com> Date: Thu, 11 Sep 2025 20:14:44 +0100 Subject: [PATCH 1/6] Add support for test compilation with Delphi 13 Added support for test compiling with and automatic registration of Delphi 13. Added support for saving and reading Delphi 13 test compilation results from all supported file formats. Added support for specifying Delphi 13 as the minimum compiler on the Code Generation tab of the Preference dialogue box. --- Src/Compilers.UBDS.pas | 6 ++++++ Src/Compilers.UGlobals.pas | 3 ++- Src/DBIO.UIniDataReader.pas | 2 +- Src/FrCodeGenPrefs.pas | 1 + Src/UXMLDocConsts.pas | 2 +- 5 files changed, 11 insertions(+), 3 deletions(-) diff --git a/Src/Compilers.UBDS.pas b/Src/Compilers.UBDS.pas index 509e0f993..7c999be6a 100644 --- a/Src/Compilers.UBDS.pas +++ b/Src/Compilers.UBDS.pas @@ -154,6 +154,8 @@ function TBDSCompiler.GetIDString: string; Result := 'D11A'; ciD12A: Result := 'D12Y'; + ciD13F: + Result := 'D13F'; else raise EBug.Create(ClassName + '.GetIDString: Invalid ID'); end; @@ -179,6 +181,7 @@ function TBDSCompiler.GetName: string; sDelphi104S = 'Delphi 10.4'; // Sydney sDelphi11A = 'Delphi 11.x'; // Alexandria sDelphi12A = 'Delphi 12.x'; // Athens + sDelphi13F = 'Delphi 13.x'; // Florence begin case GetID of ciDXE: @@ -211,6 +214,8 @@ function TBDSCompiler.GetName: string; Result := sDelphi11A; ciD12A: Result := sDelphi12A; + ciD13F: + Result := sDelphi13F; else Result := Format(sCompilerName, [ProductVersion]); end; @@ -246,6 +251,7 @@ function TBDSCompiler.InstallationRegKey: string; ciD104S : Result := '\Software\Embarcadero\BDS\21.0'; ciD11A : Result := '\Software\Embarcadero\BDS\22.0'; ciD12A : Result := '\Software\Embarcadero\BDS\23.0'; + ciD13F : Result := '\Software\Embarcadero\BDS\37.0'; else raise EBug.Create(ClassName + '.InstallationRegKey: Invalid ID'); end; end; diff --git a/Src/Compilers.UGlobals.pas b/Src/Compilers.UGlobals.pas index 7e660a166..be018b805 100644 --- a/Src/Compilers.UGlobals.pas +++ b/Src/Compilers.UGlobals.pas @@ -45,6 +45,7 @@ interface ciD104S, // Delphi 10.4 Sydney, ciD11A, // Delphi 11.x Alexandria ciD12A, // Delphi 12 Athens + ciD13F, // Delphi 13 Florence ciFPC // Free Pascal ); @@ -58,7 +59,7 @@ interface cBDSCompilers = [ ciD2005w32, ciD2006w32, ciD2007, ciD2009w32, ciD2010, ciDXE, ciDXE2, ciDXE3, ciDXE4, ciDXE5, ciDXE6, ciDXE7, ciDXE8, ciD10S, ciD101B, ciD102T, - ciD103R, ciD104S, ciD11A, ciD12A + ciD103R, ciD104S, ciD11A, ciD12A, ciD13F ]; const diff --git a/Src/DBIO.UIniDataReader.pas b/Src/DBIO.UIniDataReader.pas index 90b0c9657..0e6d97f40 100644 --- a/Src/DBIO.UIniDataReader.pas +++ b/Src/DBIO.UIniDataReader.pas @@ -236,7 +236,7 @@ implementation 'Delphi2010', 'DelphiXE', 'DelphiXE2', 'DelphiXE3', 'DelphiXE4', 'DelphiXE5', 'DelphiXE6', 'DelphiXE7', 'DelphiXE8', 'Delphi10S', 'Delphi101B', 'Delphi102T', 'Delphi103R', 'Delphi104S', 'Delphi11A', - 'Delphi12A', + 'Delphi12A', 'Delphi13F', 'FPC' ); diff --git a/Src/FrCodeGenPrefs.pas b/Src/FrCodeGenPrefs.pas index cff57d325..06fbf58a9 100644 --- a/Src/FrCodeGenPrefs.pas +++ b/Src/FrCodeGenPrefs.pas @@ -682,6 +682,7 @@ procedure TCodeGenPrefsFrame.PopulatePreDefCompilerMenu; AddMenuItem('Delphi 10.4 Sydney', 34.0); AddMenuItem('Delphi 11.x Alexandria', 35.0); AddMenuItem('Delphi 12 Athens', 36.0); + AddMenuItem('Delphi 13 Florence', 37.0); end; procedure TCodeGenPrefsFrame.PreDefCompilerMenuClick(Sender: TObject); diff --git a/Src/UXMLDocConsts.pas b/Src/UXMLDocConsts.pas index 122d13322..160692895 100644 --- a/Src/UXMLDocConsts.pas +++ b/Src/UXMLDocConsts.pas @@ -68,7 +68,7 @@ interface 'd2005', 'd2006', 'd2007', 'd2009', 'd2010', 'dXE', 'dXE2', 'dXE3', 'dDX4' {error, but in use so can't fix}, 'dXE5', 'dXE6', 'dXE7', 'dXE8', - 'd10s', 'd101b', 'd102t', 'd103r', 'd104s', 'd11a', 'd12y', + 'd10s', 'd101b', 'd102t', 'd103r', 'd104s', 'd11a', 'd12y', 'd13f', 'fpc' ); From ca233f01eadab6093f1ea89ec835c2b174519615 Mon Sep 17 00:00:00 2001 From: delphidabbler <5164283+delphidabbler@users.noreply.github.com> Date: Fri, 12 Sep 2025 08:18:36 +0100 Subject: [PATCH 2/6] Update ReadMe text files installed with CodeSnip ReadMe-portable.txt and ReadMe-standard.txt were updated to note support for Delphi 13 for test compilation. --- Docs/ReadMe-portable.txt | 2 +- Docs/ReadMe-standard.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Docs/ReadMe-portable.txt b/Docs/ReadMe-portable.txt index c22134c23..3365cb371 100644 --- a/Docs/ReadMe-portable.txt +++ b/Docs/ReadMe-portable.txt @@ -14,7 +14,7 @@ online DelphiDabbler Code Snippets database as well as maintain a database of user-defined snippets. It displays details of each snippet in the database and can test-compile them -with each installed Win32 version of Delphi from Delphi 2 to Delphi 12.x and +with each installed Win32 version of Delphi from Delphi 2 to Delphi 13.x and Free Pascal. Compilable Pascal units can be created that contain selected snippets. diff --git a/Docs/ReadMe-standard.txt b/Docs/ReadMe-standard.txt index 97ac0577b..4b84aaaca 100644 --- a/Docs/ReadMe-standard.txt +++ b/Docs/ReadMe-standard.txt @@ -14,7 +14,7 @@ online DelphiDabbler Code Snippets database as well as maintain a database of user-defined snippets. It displays details of each snippet in the database and can test-compile them -with each installed Win32 version of Delphi from Delphi 2 to Delphi 12.x and +with each installed Win32 version of Delphi from Delphi 2 to Delphi 13.x and Free Pascal. Compilable Pascal units can be created that contain selected snippets. From 81fcbda15924314ba271264b11cf5b7499ead56e Mon Sep 17 00:00:00 2001 From: delphidabbler <5164283+delphidabbler@users.noreply.github.com> Date: Fri, 12 Sep 2025 08:22:15 +0100 Subject: [PATCH 3/6] Update file format docs Updated config file, export file, main database & user database documentation re addition of a new value to represent compilation with Delphi 13. --- Docs/Design/FileFormats/config.html | 9 +++++++++ Docs/Design/FileFormats/export.html | 11 +++++++++++ Docs/Design/FileFormats/main-db.html | 3 +++ Docs/Design/FileFormats/user-db.html | 9 +++++++++ 4 files changed, 32 insertions(+) diff --git a/Docs/Design/FileFormats/config.html b/Docs/Design/FileFormats/config.html index 915d7098f..9ff1ded44 100644 --- a/Docs/Design/FileFormats/config.html +++ b/Docs/Design/FileFormats/config.html @@ -262,6 +262,9 @@
D13F (Boolean)
+ FPC (Boolean)
Delphi12A – Delphi 12 Athens compiler *
Delphi13F – Delphi 13 Florence compiler *
+ FPC – Free Pascal compiler
The supported compilers are the Win32 Delphi compilers from Delphi 2 to - Delphi 12 Athens and Free Pascal. + Delphi 13 Florence and Free Pascal.
CodeSnip can automatically detect the presence of Win 32 Delphi
- compilers from Delphi 2 to Delphi 12 Athens. Click the Detect
+ compilers from Delphi 2 to Delphi 13 Florence. Click the Detect
Delphi Compilers button to do this. Any supported installed version
of Delphi will be recorded†. This can save considerable
time and avoid errors.
From 1f84ac90ff91820af7d63e8e101f4aac09621e8f Mon Sep 17 00:00:00 2001
From: delphidabbler <5164283+delphidabbler@users.noreply.github.com>
Date: Fri, 12 Sep 2025 08:44:44 +0100
Subject: [PATCH 5/6] Bump version number to v4.27.0 build 277
---
Src/VersionInfo.vi-inc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Src/VersionInfo.vi-inc b/Src/VersionInfo.vi-inc
index 82a6dfe24..1b0311bde 100644
--- a/Src/VersionInfo.vi-inc
+++ b/Src/VersionInfo.vi-inc
@@ -1,8 +1,8 @@
# CodeSnip Version Information Macros for Including in .vi files
# Version & build numbers
-version=4.26.0
-build=276
+version=4.27.0
+build=277
# String file information
copyright=Copyright © P.D.Johnson, 2005-