Nemo DJBCAL Library (libdjbcal) - Changes

Changes of the second generation of CalDate/CalTime/Leapsecond routines.

v2.1.9 - January 28, 2019

This release contains small changes.

Version Notes
• New Defined CALDATE initialiser for struct caldate.
• New Defined CALTIME initialiser for struct caltime.
• Changed Renamed conf-home to conf-prefix.
• Changed Removed executable bit from all files.
• Changed Minor changes to build system.
• Requires Nemo DJB Library v2.12 or later.
• Requires Nemo DJBIO Library v2.2.4 or later.

v2.1.8 - December 28, 2017

This release contains small changes.

Version Notes
• Changed Implement #include <nemo/macro_noreturn.h> from Nemo DJB Library.
• Changed Implement #include <nemo/macro_unused.h> from Nemo DJB Library.
• Changed Minor changes to build system.
• Requires Nemo DJB Library v2.10 or later.
• Requires Nemo DJBIO Library v2.2.3 or later.

v2.1.7 - August 18, 2017

This release contains optimisations and fixes. Particular emphasis has been on cross platform compatibility.

Tested on Linux raspberrypi 4.9.35-v7+ #1014 SMP, armv7l GNU/Linux - Raspbian with Desktop, 32 bit platform.

Version Notes
• Changed conf-cc - expand examples.
• Changed caltime_local.c - reorganised includes.
• Changed leapsecs_read.c - reorganised includes.
• Fixed caltime_*.c - changed source formatting - resolve -Werror=misleading-indentation compile warnings in gcc 6.3.x.
• Fixed caltime_scan() - verify return value of caldate_scan().

v2.1.6 - February 12, 2017

This release contains updated leap seconds data, optimisations and fixes.

Version Notes
• Changed leapsecs.txt - new leap second at 2016-12-31 23:59:60
• Changed leapsecs.dat - now installed by make setup (via hier.c).
• Changed caldate_fmt_month() - better handling of out of bound month values.
• Changed caldate_fmt_month() - montab size reduced to 12.
• Changed print-docman.sh and print-mancat.sh - removed second parameter, output now to stdout.
• Changed print-docman.sh - renamed to print-sedit.sh.
• Changed leapsecs_read.c - remove reference to readwrite.h.
• Changed Minor changes to build system.
• Removed FILES - unused and high maintenance.
• Requires Nemo DJB Library v2.7 or later.
• Requires Nemo DJBIO Library v2.2.1 or later.

v2.1.5 - June 20, 2016

Version Notes
• Changed conf-cc - add comment about building on gcc+glibc platform.
• Fixed Minor changes to build system.
• Requires Nemo DJB Library v2.5.2 or later.
• Requires Nemo DJBIO Library v2.1.5 or later.

v2.1.4 - March 30, 2016

Version Notes
• Changed hier.c - implemented unsigned int install_manuid from Nemo DJB Library v2.5.1.
• Changed leapsecs(3) - SEE ALSO section - 2 URLs from leapsecs file.
• Fixed Minor changes to build system.
• Requires Nemo DJB Library v2.5.1 or later.
• Requires Nemo DJBIO Library v2.1.4 or later.

v2.1.3 - December 2, 2015

Version Notes
• Changed Accomodate changes in Nemo DJB Library v2.5.
• Requires Nemo DJB Library v2.5 or later.

v2.1.2 - July 31, 2015

Version Notes
• New caltime_local() - new routine - convert to local time.
• Changed Minor changes to build process.
• Fixed Enable install caltime_fmt(3) manual pages.
• Fixed Enable install caltime_scan(3) manual pages.
• Changed Implement 'unixtypes.h' from Nemo DJB Library v2.2.4.
• Changed Manual pages - incorporate first line of file 'VERSION' into footer.
• Requires Nemo DJB Library v2.2.4 or later.

v2.1.1

Version Notes
• Changed Updated leapsecs.txt - a leap second occurred on June 30, 2015.
• Changed Minor changes to build process.
• Fixed Changes to accommodate API changes in Nemo DJB Library v2.2.
• Requires Nemo DJB Library v2.2 or later.

v2.1

Version Notes
• API change caldate_fmt() - API change - function now refers to void *, formerly char *.
• API change caldate_fmt_dow() - API change - function now refers to void *, formerly char *.
• API change caldate_fmt_month() - API change - function now refers to void *, formerly char *.
• API change caldate_scan() - API change - function now refers to const void *, formerly const char *.
• API change caltime_fmt() - API change - function now refers to void *, formerly char *.
• API change caltime_fmt_ctime() - API change - function now refers to void *, formerly char *.
• API change caltime_fmt_time() - API change - function now refers to void *, formerly char *.
• API change caltime_fmt_tzoffset() - API change - function now refers to void *, formerly char *.
• API change caltime_scan() - API change - function now refers to const void *, formerly const char *.
• Changed Minor changes to build process.
• Fixed API changes in Nemo DJB Library v2.1.
• Fixed API changes in Nemo DJBIO Library v2.1.
• Fixed Stricter compiler error reporting.
• Requires Nemo DJB Library v2.1 or later.
• Requires Nemo DJBIO Library v2.1 or later.

v2.0.1

Version Notes
• New caldate_fmt_dow() - new routine - print the day of the week.
• New caldate_fmt_month() - new routine - print the month name.
• New caltime_fmt_ctime() - new routine - print date/time in ctime(3) style.
• New caltime_fmt_time() - new routine - print only the time.
• New caltime_fmt_tzoffset() - new routine - print only the timezone offset.
• New caldate_fmt(3) - extracted from caldate(3).
• New caldate_scan(3) - extracted from caldate(3).
• New caltime_fmt(3) - extracted from caltime(3).
• New caltime_scan(3) - extracted caltime(3).
• Changed caldate(3) - removed caldate_fmt() & caldate_scan().
• Changed caltime(3) - removed caltime_fmt() & caltime_scan().
• Changed Makefile - implemented c-auto-define to create __UNUSED__ macro.
• Changed Minor changes to build process.
• Removed "systype" processing.

v2.0 - Major Changes from Original Distribution

General:

Version Notes
• New To avoid name clashes with header files, the header files are installed in a subdirectory "nemo" (in the includes directory).
• New Makefile target: "clean".
• API change Changed many signed return values into unsigned return values.
• Changed Changed many signed integers into unsigned integers.
• Changed Many routines replaced by those found in Nemo DJB Library (nemo-libdjb).
• Changed Routines that used the 1st generation of buffered I/O are now using Nemo DJBIO Library (nemo-libcdb) based buffered I/O.
• Changed Build/installation framework provided by Nemo DJB Library (nemo-libdjb).
• Changed Updated leap second data files.
• Changed Converted K&R prototypes to ANSI.
• Changed Additional manual pages created for existing routines.
• Changed All manual pages have been converted to mdoc(7) format.
• Changed Additional annotations/comments - some source code files.
• Changed Using some of the standard integer types in the POSIX standard.
• Changed All public header files are compatible with C++ development environments.
• Changed Source code formatting is now "Compact Control Readability Style" - variant of K&R, similar to the Stroustrup variant.
One exception: single line conditional returns are on same line as the conditional.
Long lines are rarely wrapped.
Indent size is two spaces.
• Fixed In scripts and the Makefile, all references to "head -1" have been changed to "head -n 1".
• Fixed Implemented errno fix - patched source code to use #include <errno.h>
• Fixed Resolved all compile errors and warnings from the GNU C compiler (-W -Wall -Werror).
• Requires Nemo DJB Library v2.0 or later.
• Requires Nemo DJBIO Library v2.0 or later.

Libraries:

Version Notes
• New libdjbcal.a - the main library.