Skip to content

Releases: delphidabbler/code-snippets

v2.3.1

02 Mar 18:17

Choose a tag to compare

Released 2026-03-02

  • The collection's HTML documentation was updated:
    • A description of the INI-derived file format used by the collection was added (issue #66).
    • Various literal characters were replaced with HTML character entities.
    • Display inconsistencies were fixed by correcting CSS errors. main.css was also reformatted.
  • Updated CHANGELOG.md with a change that was missing from release v2.3.0.

v2.3.0

13 Sep 18:12

Choose a tag to compare

Released 2025-09-13

  • Updated the collection specification:
    • Added snippet properties to enable recording of compilation results with Delphi 13 (issue 62).
    • Deprecated compiler results with value W (issue 63).
  • Changes were made to the Structures category:
    • Added a new TIntegerRange advanced record (issue 56).
    • Fixed an error in the description of the Range snippet.
    • Added a warning to the TRangeEx advanced record to note potentially buggy behaviour if the range lower bound is greater than the upper bound.
  • Added new RandomString routine to the String Management category (issue 28).
  • Added results of compiling every snippet with Delphi 13 (issue 60).
  • Fixed bug that was preventing the Softmax routine in the Mathematics category from compiling due to a missing unit declaration (issue 61).
  • Changes to unit tests:
    • Added a new DUnit test project for the Structures category and added it to the CodeSnippetsTestsXE project group. Unit tests for all snippets in the Structures category were created (issue 58).
    • Added further unit tests for all snippets in the Arrays category that did not already have them (issue 38).
    • Added unit tests for the new RandomString routine.
  • Documentation:
    • Updated tests/README.md re the unit test changes in this release and other minor revisions.
    • Fixed typo in README.md.
    • Noted collection specification changes in docs/collection-format.html.

v2.2.3

03 Apr 18:56

Choose a tag to compare

Released 2025-04-03

  • Added results of compiling with Delphi 12 for all snippets with no pre-existing compile results for that compiler (issue #27).
  • Fixed memory leak in the CountOccurences function (issue #54).
  • Updated GetGIFSize function to work around a deprecated warning with Delphi 12 and some earlier compilers because of a call to SysUtils.StrLComp which has been moved to the AnsiStrings unit (issue #52).

v2.2.2

19 Jan 09:54

Choose a tag to compare

Released 2025-01-19

  • New snippets were added to the Arrays and Mathematics categories:
    • Arrays category:
      • Reverse<T> method of TArrayUtils & ReverseByteArray function (issue #37).
      • Max<T>, Min<T> & MinMax<T> methods of TArrayUtils (issue #8).
    • Mathematics category:
      • 3 overloaded versions of each of the ArithmeticMean & WeightedArithmeticMean functions (issue #30).
      • DigitSumBase, DigitCountBase & DigitsOf function (issue #17).
      • DigitPowerSum function (issue #39).
      • IsPalindromic function (issue #19).
      • IsNarcissistic function (issue #18).
      • LSE & Softmax functions (issue 34).
      • 3 overloaded versions of a Median function (issue #41).
      • 2 overloaded versions of each of the MinMaxOfArray, RescaleRange, NormaliseByWeight & RangeOf functions (issue #44).
      • 3 overloaded versions of each of the GeometricMean and WeightedGeometricMean functions (issue #31).
      • 3 overloaded versions of each of the SumOfReciprocals and HarmonicMean functions (issue #35).
      • 3 overloaded versions of a WeightedHarmonicMean function (issue #47).
      • LogarithmicMean function (issue #32).
      • 3 overloaded versions of the PowerMean and WeightedPowerMean functions (issue #33).
      • Mode, ModeAlt, ModeCount, HasMode & CountOccurences functions (issue #42).
      • 2 overloaded versions of a RMS function (issue #49).
      • 2 overloaded versions of a TSS (total sum of squares) function (issue #51).
  • Updates to snippets in the Mathematics category:
    • Overflow checking was added to the PowNZN.
    • Fixed bug in all overloads of the SumOfLogs routine that was causing access violations whenever an exception was to be raised (issue #46).
  • Changes to tests:
    • Added unit tests for all the routines and methods that were added to the Arrays and Mathematics categories in this release.
    • Added unit test for the pre-existing ByteArraysEqual function in the Arrays category.
    • Modified unit test for PowNZN to check for new EOverflow exception raised when an overflow condition is detected.
    • Removed conditional compilation directives from the array unit test unit.
  • Updated README.md to note that there are now over 700 snippets in the collection.
  • Updated all copyright dates for 2025.

v2.2.1

02 Dec 23:47

Choose a tag to compare

Released 2024-12-02

  • Fixed invalid and corrupted values in some AdvancedTest.URL and AdvancedTest.Level keys in data.ini, hex.ini and maths.ini. Fixes issue #29.

v2.2.0

15 Oct 16:36

Choose a tag to compare

Released 2024-10-15

  • Updated collection specification:
    • Added snippet properties to enable recording of compilation results with Delphi 10.2 through to Delphi 12. Fixes issue #26.
    • Added new AdvancedTest.Level and AdvancedTest.URL snippet properties to provide additional information for snippets that have received advanced testing. See issues #13 & #15.
  • Changes to the collection:
    • Added 3 new IEEE Pown functions to the Maths category: PowN, PowNZN, PowNZZ. Fixes issue #20.
    • Added 7 overloaded version of each of two new summing functions in the Maths category: ArraySum & SumOfLogs. Fixes issue #25.
    • Added AdvancedTest.Level values to numerous snippets that have received advanced testing to provide details of the type of testing. See issue #15.
    • Added AdvancedTest.URLvalues to to numerous snippets that have received advanced testing to provide links to the test source code. See issue #13
    • Corrected RFC1123DateGMT snippet test level from advanced to basic.
    • Fixed syntax errors in maths.ini & hex.ini category files.
  • Changes to tests:
    • Comments corrected and updated in the test projects for the drive and winsys categories.
    • Pascal files in test projects that were generated from the collection had header comments changed to refer to the revised LICENSE.md.
    • Added unit tests for the PowN, PowNZN, PowNZZ routines and the ArraySum & SumOfLogs overloaded functions the to maths category test project.
  • Restructured source code repository. All files and sub-directories that were in the csdb directory were moved up one directory level and csdb was deleted. Fixes issue #14.
  • Updated documentation:
    • README.md in the repo root was heavily edited to include information formerly in csdb/README.md, which was deleted.
    • tests/README.md was changed to reflect the changed repo directory structure and footnotes were converted to GitHub style.
    • LICENSE.md was changed to reflect the different copyright details that apply to the files belong to the collection and other files.
    • Collection documentation updated as follows:
      • Noted changes to the collection specification made in this releases.
      • General editing
      • Revised styling
      • Added a new section discussing some issues that may be encountered when designing software to that reads the database.
    • Fixed a CSS error in docs/main.css.
    • Rewrote REML documentation to link to become a brief overview that links to an authoratitive definition of REML in the delphidabbler/reml repository. Fixes issue #24.

v2.1.2

16 Jul 02:27

Choose a tag to compare

Released 2023-07-15

  • Fixed simple errors and oversights in documentation. Fixes issues #9 & #10.

Other than to update the VERSION file there were no changes to any snippets or associated meta-data in this release.

v2.1.1 (HOTFIX)

29 Dec 10:14

Choose a tag to compare

Released 2021-12-29

  • Fixed malformed REML tags. Fixes issue #7.

v2.1.0

26 Dec 13:58

Choose a tag to compare

Released 2021-12-26

  • Deprecated Desc, Comments, Credits & Credits_URL keys in Code Snippets Database collection and changed DescEx key to be required. Made following changes to .ini files as a consequence:
    • Changed all Desc keys to DescEx keys and removed all Desc keys as a result.
    • Converted content of all Comments, Credits & Credits_URL keys to Extra key values and removed the deprecated keys.
  • Made all DescEx and Extra values fully REML v4 compliant by ensuring all content is wrapped in <p>..</p> tags.
  • Fixed errors in .ini files. Fixes issue #6.
  • Updated a small number of snippet descriptions and extra information.
  • Updated documentation in collection-format.html and reml.html to reflect the above changes.

v2.0.1

12 Oct 14:09

Choose a tag to compare

Released 2021-10-12

  • Add new unit tests and demo code for some snippets from the database. All such code was added to a new tests directory. See tests/README.md for details.
  • Fix minor errors in documentation.

Other than to update the VERSION file there were no changes to any snippets or associated meta-data in this release.

Released in three separate files (see below):

  • csdb-v2.0.1-data.zip - the snippets collection - contains all the files needed to use the "database".
  • csdb-v2.0.1-docs.zip - documentation.
  • csdb-v2.0.1-tests.zip - unit tests and demo code.