CsSignal  1.3.1
Timeline

Major Milestones

2016

February 2016

  • Initial design and development of the CsSignal library

March 2016

  • Integrate CsSignal library into CopperSpice
  • Refactor QObject using the new Signal/Slot internals

April 2016

  • CsSignal 1.0.0 released

May 2016

  • CppNow 2016 presentation on CopperSpice and our new CsSignal library
  • CppNow 2016 presentation on DoxyPress demonstrating how clang can be used to parse C++
  • CppNow 2016 presentation on LibGuarded

June 2016 / July 2016

  • CopperSpice team on temporary leave as Barbara recovers from a Total Knee Replacement
    Thank you to the community for their wonderful support and encouragement during this time

August 2016

  • Integrate libGuarded to handle multi-threading use cases
  • Update documentation

December 2016

  • Add override to various methods

2017

January 2017

  • Update copyright

March 2017

  • CsSignal library uses libGuarded to handle the connection lists and avoid race conditions

April 2017

  • CsSignal 1.1.0 released

May 2017

  • Add readme file

August 2017

  • Move to C++14

September 2017

  • CsSignal 1.2.0 released

2018

January 2018

  • Update copyright

November 2018

  • Standardize library name, remove suffix

2019

January 2019

  • Update copyright

April 2019

  • Remove compiler warnings

November 2019

  • Drop support for Autotools build system for CsSignal
  • Add CMake build files for CsSignal
  • Move to C++17 on all platforms
  • CsSignal 1.2.1 released

2020

January 2020

  • Update copyright

May 2020

  • Update CsLibGuarded files
  • Change the extension for CsLibGuarded from .hpp to .h

2021

January 2021

  • Update copyright
  • CsSignal 1.2.2 released

June 2021

  • Add cs_mp_cast<>() to resolve overloaded methods
  • For MSVC only, add CMake build option to enforce methods pointers have a unique address

July 2021

  • CsSignal 1.2.3 released

2022

January 2022

  • Update copyright
  • Move from CMake 3.8 to 3.16

March 2022

  • Add CMake export files

September 2022

  • Fix target name for MSVC builds

December 2022

  • Move cs_libguarded source files to src/annex/cs_libguarded
  • Move cs_signal source files to src/signal
  • Modify CsSignal CMake build files to support exporting targets
  • Define CsSignal_INCLUDE_DIR variable, this is the export location where the include files are installed
  • Redesign CMake files to find a system version of CsLibGuarded when building this library
    • If a system version of CsLibGuarded is found and the CMake variable CS_INSTALL_MODE is Package, link with the system version of CsLibGuarded and do not copy the headers to the install folder
    • If a system version of CsLibGuarded is found and the CMake variable CS_INSTALL_MODE is Deploy, link with the system version of CsLibGuarded and copy the headers to the install folder
    • If no system path was specified or CsLibGuarded was not found, use the CsLibGuarded files located in src/annex
  • Remove the old test files
  • Switch to using Catch2 for unit testing

2023

January 2023

  • Update copyright
  • CsSignal 1.3.0 released

April 2023

  • Update CsLibguarded source files in annex
  • Modify addConnection() to pass the sender list by reference

May 2023

  • CsSignal 1.3.1 released

2024

January 2024

  • Change copyright
  • Update CsLibguarded source files in annex