Version 1.0

[added]
- fbcu.setShowConsole( true|false ) method to show console logging (true), or not (false, default)
- fbcu.getShowConsole() as boolean to return current setting for "showConsole" option
- fbcu.outputConsoleString( byref s as const string = "" ) output to console depending on showConsole setting

[changed]
- check for return value in SUITE_INIT and SUITE_EXIT routines


Version 0.9

[added]
- fbcu.setBriefSummary( true|false ) method to choose brief summary (true), otherwise full summary (false, default)
- fbcu.setHideCases( true|false ) method to prevent cases (failed asserts) from printing (true), otherwise show all (false, default)
- fbcu.getHideCases() as boolean to return current setting for "hide-cases" option
- tests/tests.bas will accept --brief-summary and --hide-cases command line options

[fixed]
- added missing fbcunit_qb.bas:fbcu_check_internal_state() stub
- added missing fbcunit_qb.bas:fbcu_write_report_xml() stub


Version 0.8

[changed]
- run_tests() returns false (failed) if any one assert fails


Version 0.7

[added]
- CU_ASSERT_SINGLE_EQUAL() API macro - for singles using epsilon granularity
- CU_ASSERT_SINGLE_EXACT() API macro - direct and exact comparison between singles
- CU_ASSERT_DOUBLE_EXACT() API macro - direct and exact comparison between doubles
- CU_ASSERT_DOUBLE_APPROX() API macro - wrapper for dblApprox() function
- CU_ASSERT_SINGLE_APPROX() API macro - wrapper for sngApprox() function
- fbcu.dblIsNan() API function - check if double is not a number
- fbcu.dblIsInf() API function - check if double is infinity
- fbcu.dblULP() API function - calculate units in last place for double
- fbcu.dblULPdiff() API function - get units in last place difference for doubles
- fbcu.dblApprox() API function - units in last place comparison for doubles
- fbcu.sngIsNan() API function - check if single is not a number
- fbcu.sngIsInf() API function - check if single is infinity
- fbcu.sngULP() API function - calculate units in last place for single
- fbcu.sngULPdiff() API function - get units in last place difference for singles
- fbcu.sngApprox() API function - units in last place comparison for singles
- TEST_GROUP( group_name ) and END_TEST_GROUP macros added

[changed]
- add_test() API function changed to require suite name.  Module constructors might execute in any order and can't depend on add_suite called before add_test
- xml output strips trailing underscores

[fixed]
- suite names are now allowed to have '.' in the name
- SUITE() uses 'fbcu_global' by default if no suite_name given
- TEST() uses 'default' by default if no test_name given


Version 0.6

[changed]
- shared dynamic arrays are intialized on first use


Version 0.5

[changed]
- License is GNU Lesser General Public License Version 2.1 (or later) plus linking exception -- see license.txt


Version 0.4

[added]
- explicit copyright notices on source files and in the readme.txt
- junit compatible xml report generator


Version 0.3

[added]
- CU_ASSERT_DOUBLE_EQUAL() macro added - it is needed for fbc compiler test suite
- fbcu.check_internal_state() performs checks on the internal data
- console print logger calls crt fprintf directly - using fbc's OPEN in the library can interfere with unit tests

[changed]
- run_tests() now takes a verbose parameter
- run_tests() returns true=success, false=fail
- run_tests() checks return values from SUITE_INIT and SUITE_CLEANUP and reports failures
- CU_ASSERT_() now takes boolean data type as value argument (was long)

[fixed]
- hash table look up for suite names was failing when index was 0 (zero)
- CU_PASS() definition was incorrect
- CU_FAIL() definition was incorrect
- CU_ASSERT_TRUE() was comparing "=true" and needs to compare "<>false"


Version 0.2

[added]
- dual api for using fbcunit in -lang qb
- internal: use a singly linked lists to run tests for each test
- internal: use a hash for suite name lookups
- SUITE_INIT & SUITE_EXIT macros

[changed]
- fbcunit.bi reorganized to separate helper macros and code emitters

[fixed]
- find_suite() has always returning INVALID_INDEX
- unable to append tests to existing suite due to duplicate constructor names
- make constructors private to avoid name collisions
- lang qb: fix pseudo namespace "tests"


Version 0.1

[added]
- add defines FBCU_VER_MAJOR, FBCU_VER_MINOR
- add macros SUITE(), END_SUITE, TEST(), END_TEST

[changed]
- simplify makefiles - one remaining in top level


Version 0.0

[added]
- base code (from another project) and set namespace to fbcunit
