/DateTimePP

DateTime++ : An easy to use c++ library for date-time calculations

Primary LanguageC++

DateTime++

    ___      _      _____ _                            
   /   \__ _| |_ __/__   (_)_ __ ___   ___   _     _   
  / /\ / _` | __/ _ \/ /\/ | '_ ` _ \ / _ \_| |_ _| |_ 
 / /_// (_| | ||  __/ /  | | | | | | |  __/_   _|_   _|
/___,' \__,_|\__\___\/   |_|_| |_| |_|\___| |_|   |_|  
                                                       

DateTime++ : An easy to use C++ library for date-time calculations

Build Status Coverage Status

Features / Roadmap

v1.0.0 General Functions working

  • get / set DateTime values
  • set DateTime values to current local time
  • set DateTime values to current UTC time
  • add compare operators == != < to compare DateTimePP objects
  • get info if year is leapYear
  • get number of days of month (consider leapYear)
  • get number of days of year (consider leapYear)
  • get number of days between two dates (consider leapYear)
  • get current time as unix time string
  • do standard tests for toUnixTime()
  • do extended tests for toUnixTime()
  • throw exceptions if unixTime is not used properly
  • document every file and every function
  • do code-review before release

v1.1.0 add toString, fromString functions

  • add toString function that can write out the date-time values as a formatted string
  • add fromString function that can read the date-time values from a formatted string
  • add function deletePaddingZeros()

v1.2.0 Make class canonical

  • add test-cases for new functions of v1.1.0
  • add copy-constructor
  • add standard constructor
  • add assignment operator =
  • add comparison operators > < <= >=
  • add more testcases to already implemented operators
  • add comparison operators =~ =~~ =~~~

v1.3.0

  • throw exceptions if values are used that not work in the gregorian calender
  • throw exceptions if DateTimePP objects don't use the same timezone
  • add exceptions to make all functions invalid-parameter-save
  • add word "Error" to all exceptions
  • check if all functions are tested, e.g. date() is not
  • document exceptions

v1.4.0 time-zone calculations

  • move DateTimeObjects into new time-zone
  • add style-guide, license, contribution files...

v1.5.0 arithmetics with DateTimePP objects

  • add or subtract DateTimePP objects
  • add operators + - += -=

v1.6.0 weekday / calenderweek calculation

  • get calenderweek by date
  • get weekday by date

v2.0.0 negative unix time, extended days between dates

  • support negative unix times
  • check for which numbers numberOfDaysBetweenTwoDates and other functions run into datatype-out-of-range-problems
  • either solve the out range problems or throw exceptions in these cases

v2.1.0 more test-cases ensuring typical pitfalls of date-time-calculation

  • ensure winter time works
  • ensure leap year works
  • making all functions non-gregorian-time-save

v3.0.0

  • support nseconds in time