diff --git a/CHANGELOG.md b/CHANGELOG.md index d3fbdcf23..e4bc0562b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,14 @@ Releases are listed in reverse version number order. > Note that _CodeSnip_ v4 was developed in parallel with v3 for a while. As a consequence some v3 releases have later release dates than early v4 releases. +## Release v4.27.0 of 12 September 2025 + +* Added support for test compiling snippets with Delphi 13 Florence [issue #170]. +* Documentation changes re addition of support for Delphi 13: + * File format additions for config file, export files, user database and main database. + * `Docs/ReadMe-portable.txt` & `Docs/ReadMe-standard.txt` + * Relevant help topics. + ## Release v4.26.0 of 02 May 2025 * Updated the dialogue box displayed when saving units and annotated source code [issue #166]: 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 @@

  • D12Y – Delphi 12 Athens
  • +
  • + D13F – Delphi 13 Florence +
  • FPC – Free Pascal
  • @@ -622,6 +625,12 @@

    Indicates whether Delphi 12 Athens was included in the search.
    +
    + D13F (Boolean) +
    +
    + Indicates whether Delphi 13 Florence was included in the search. +
    FPC (Boolean)
    diff --git a/Docs/Design/FileFormats/export.html b/Docs/Design/FileFormats/export.html index 7f6e80653..915b8d6ca 100644 --- a/Docs/Design/FileFormats/export.html +++ b/Docs/Design/FileFormats/export.html @@ -619,6 +619,9 @@

  • d12y – Delphi 12 Athens compiler (v7.4 & later)
  • +
  • + d13y – Delphi 13 Florence compiler (v8.1 & later) +
  • fpc – Free Pascal compiler (all versions)
  • @@ -1011,6 +1014,14 @@

    The codesnip-export/routines/routine/xref and codesnip-export/routines/routine/xref/pascal-name tags were removed from the specification. See Erratum above for details.

    +
    +
    + Version 8.1 - 11 September 2025 +
    +
    + Updated with CodeSnip v4.27.0 to add support for Delphi 13 Florence. +
    +
    diff --git a/Docs/Design/FileFormats/main-db.html b/Docs/Design/FileFormats/main-db.html index 1b122069c..57cb9dd7c 100644 --- a/Docs/Design/FileFormats/main-db.html +++ b/Docs/Design/FileFormats/main-db.html @@ -422,6 +422,9 @@

  • Delphi12A – Delphi 12 Athens compiler *
  • +
  • + Delphi13F – Delphi 13 Florence compiler * +
  • FPC – Free Pascal compiler
  • diff --git a/Docs/Design/FileFormats/user-db.html b/Docs/Design/FileFormats/user-db.html index d8d7773f0..fbcfa7a3f 100644 --- a/Docs/Design/FileFormats/user-db.html +++ b/Docs/Design/FileFormats/user-db.html @@ -641,6 +641,9 @@

  • d12y – Delphi 12 Athens compiler (v6.12 & later)
  • +
  • + d13f – Delphi 13 Florence compiler (v6.14 & later) +
  • fpc – Free Pascal compiler (all versions)
  • @@ -1042,6 +1045,12 @@

    Updated with CodeSnip v4.23.0 to add support for REML v6, which is backwards compatible with REML v4.
    +
    + Version 6.14 - 12 September 2025 +
    +
    + Updated in time for CodeSnip v4.27.0 to add support for Delphi 13 Florence. +
    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. 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/Help/HTML/about_compiler_checks.htm b/Src/Help/HTML/about_compiler_checks.htm index ab4a5784f..d5970d617 100644 --- a/Src/Help/HTML/about_compiler_checks.htm +++ b/Src/Help/HTML/about_compiler_checks.htm @@ -34,7 +34,7 @@

    The supported compilers are the Win32 Delphi compilers from Delphi 2 to - Delphi 12 Athens and Free Pascal. + Delphi 13 Florence and Free Pascal.

    Configuring CodeSnip diff --git a/Src/Help/HTML/dlg_configcompilers.htm b/Src/Help/HTML/dlg_configcompilers.htm index 787f3bec5..5a5256730 100644 --- a/Src/Help/HTML/dlg_configcompilers.htm +++ b/Src/Help/HTML/dlg_configcompilers.htm @@ -312,7 +312,7 @@

    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. 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' ); 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-.