Releases: delphidabbler/code-snippets
Releases · delphidabbler/code-snippets
v2.2.2
Released 2025-01-19
- New snippets were added to the Arrays and Mathematics categories:
- Arrays category:
- 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
andWeightedGeometricMean
functions (issue #31). - 3 overloaded versions of each of the
SumOfReciprocals
andHarmonicMean
functions (issue #35). - 3 overloaded versions of a
WeightedHarmonicMean
function (issue #47). LogarithmicMean
function (issue #32).- 3 overloaded versions of the
PowerMean
andWeightedPowerMean
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).
- 3 overloaded versions of each of the
- 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).
- Overflow checking was added to the
- 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 newEOverflow
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
v2.2.0
Released 2024-10-15
- Updated collection specification:
- 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.URL
values 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 fromadvanced
tobasic
. - Fixed syntax errors in
maths.ini
&hex.ini
category files.
- Added 3 new IEEE Pown functions to the Maths category:
- Changes to tests:
- Comments corrected and updated in the test projects for the
drive
andwinsys
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 theArraySum
&SumOfLogs
overloaded functions the to maths category test project.
- Comments corrected and updated in the test projects for the
- Restructured source code repository. All files and sub-directories that were in the
csdb
directory were moved up one directory level andcsdb
was deleted. Fixes issue #14. - Updated documentation:
README.md
in the repo root was heavily edited to include information formerly incsdb/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
v2.1.1 (HOTFIX)
Released 2021-12-29
- Fixed malformed REML tags. Fixes issue #7.
v2.1.0
Released 2021-12-26
- Deprecated
Desc
,Comments
,Credits
&Credits_URL
keys in Code Snippets Database collection and changedDescEx
key to be required. Made following changes to.ini
files as a consequence:- Changed all
Desc
keys toDescEx
keys and removed allDesc
keys as a result. - Converted content of all
Comments
,Credits
&Credits_URL
keys toExtra
key values and removed the deprecated keys.
- Changed all
- Made all
DescEx
andExtra
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
andreml.html
to reflect the above changes.
v2.0.1
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. Seetests/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.
v2.0.0
Released 2020-05-02
Initial release of v2 of the collection.
Changes since last v1 release
- Removed any code that restricted use of the collection to DelphiDabbler CodeSnip. The collection can now be used by 3rd party applications.
- Removed backwards compatibility with CodeSnip v4.15.1 and earlier.
- Removed conditionally included code and CodeSnip version dependent code from category .ini files.
- Merged multiple versions of category .ini files down into a single file. (These multiple file were used to hide some categories from earlier versions of CodeSnip).
- Removed duplicated, CodeSnip version dependent, source code files: used a copy of the most recent version and removed version specifiers from the file names.
- Rationalised and corrected errors in category .ini files:
- Condensed two string management categories into one.
- Removed
Desc
keys where they duplicatedDescEx
keys. - Removed some duplicate
Credits
andComments
keys. - Removed some empty keys.
- Fixed or removed some broken web links.
- Rephrased some descriptive text.
- Changed layout of category .ini files and
categories.ini
:- Re-ordered sections of
categories.ini
in alphabetic order. - Removed all explanatory comments: there were inconsistencies.
- Added header comments, including copyright and licensing information, to all .ini files.
- Re-ordered sections of
- File format changes:
- Removed the
StandardFormat
key from the specification of category .ini files. - Added requirements for
LICENSE
,LICENSE_INFO
andVERSION
files and added suitable files to the collection. - Changed the required name for the contributors and testers files to
CONTRIBUTORS
andTESTERS
respectively. Renamed the existingcontrib.txt
andtesters.txt
files accordingly. - Made support for REML v4 an official requirement.
- Dropped support for conditional inclusion of code in .ini files.
- Removed the
- Added documentation:
- Of the collection file format.
- A read-me file.
- This change log.
- Ensured that all files in the collection use the UTF-8 text file preamble (aka byte order mark).
- Added a shell script to create releases.
- Officially adopted the MIT license for source code files.