Releases: thephpleague/period
Releases · thephpleague/period
version 5.3.2
version 5.3.1
version 5.3.0
Added
Chart\LetterCase::convert
Fixed
- Handles gracefully new Date exception in PHP8.3
Deprecated
- None
Removed
- None
version 5.2.1
Added
- None
Fixed
Period::fromRange
should work in PHP8.1 withDatePeriod
limitations.
Deprecated
InitialDatePresence
use insteadPeriod::fromRange
Removed
- None
version 5.2.0
Added
Period::rangeForward
allows iteration over a set of dates and times, recurring at regular intervals, over the instance forward starting from the instance start.Period::rangeBackwards
Allows iteration over a set of dates and times, recurring at regular intervals, over the instance backwards starting from the instance ending.Period::fromRange
returns a newPeriod
instance from aDatePeriod
object. Only usable in PHP8.2+ installation
Fixed
- Using PHPUnit 10 instead of PHPUnit 9.
Deprecated
Period::dateRangeForward
use insteadPeriod::rangeForward
Period::dateRangeBackwards
use insteadPeriod::rangeBackwards
Removed
- None
version 5.1.0
Added
DatePoint::fromFormat
to instantiate from a date format and its related string.
Fixed
Period::fromIso8601
now supports truncated date and duration in the interval string.
Deprecated
- None
Removed
- None
version 5.0.0
Added
IntervalError
used as the error interface marker.InvalidInterval
exception for anything regarding creating an object.Duration::fromSeconds
uses a dedicated fraction parameter and the seconds are no longer expressed using afloat
value.Period::fromTimestamp
to instantiate a time range object from two timestamps.Period::fromIso80000
to instantiate a time range object from a mathematical representation and a date format.Period::fromBourbaki
to instantiate a time range object from a mathematical representation and a date format.Period
duration comparison methods accepts alsoDuration
andDateInterval
in addition toPeriod
objects.Period::union
Period::snapTo*
methods to ease period expansion.Period::meets
Period::meetsOnStart
Period::meetsOnEnd
Period::toBourbaki
Period::toIso80000
Period::toBourbaki
Bounds
Enumeration.InitialDatePresence
Enumeration.Sequence::toList
Chart\LetterCase
Enumeration.Chart\Alignment
Enumeration.Chart\StreamOutput
class to replaceChart\ConsoleOutput
class.Chart\Terminal
Enumeration.Chart\ChartError
used as the chart error interface marker.Chart\UnableToDrawChart
exception for anything regarding drawing a chart out ofPeriod
and/orSequence
objects.
Fixed
- Switch from using
Closure
object instead of thecallable
pseudo type with theSequence
methods. Period::diff
returns aSequence
instance instead of an array.Period::__construct
is private.Period
named constructors, all parameters are required except for the boundaries.Period::timeDuration
now returns anint
instead of afloat
value.Period::intersect
now can take multiplePeriod
instances as parameters.Period::subtract
now can take multiplePeriod
instances as parameters.Duration
no longer extends aDateInterval
object.Duration::fromIsoString
supports 3 versions of dealing with fractions with ISO valid string.Datepoint
class renamedDatePoint
.DatePoint
no longer extends aDateTimeImmutable
object.- Argument names are normalized throughout the package. (PHP8 BC break)
Chart\LatinLetter
in case of wrong value will fall back toA
instead of0
which is not a letter.Chart\LatinLetter
the starting label must be explicit on instantiation.Chart\RomanNumber
requires its two arguments to be explicitly set.
Deprecated
- None
Removed
- Support for PHP7 and PHP8.0
Period::fromDatepoint
replaced byPeriod::fromDate
Period::getStartDate
replaced by accessing readonly propertyPeriod::startDate
Period::getEndDate
replaced by accessing readonly propertyPeriod::endDate
Period::getBoundaryType
replaced by accessing readonly propertyPeriod::bounds
Period::getDateInterval
replaced byPeriod::dateInterval
Period::getTimestampInterval
replaced byPeriod::timeDuration
Period::withBoundaryType
replaced byPeriod::boundedBy
Period::isStartIncluded
with no replacement useBounds::isStartIncluded
Period::isStartExcluded
with no replacement useBounds::isStartIncluded
insteadPeriod::isEndIncluded
with no replacement useBounds::isEndIncluded
Period::isEndExcluded
with no replacement useBounds::isEndIncluded
insteadPeriod::fromDatePeriod
replaced byPeriod::fromDateRange
Period::getDatePeriod
replaced byPeriod::dateRange
Period::getDatePeriodBackwards
replaced byPeriod::dateRangeBackwards
Period::__string
replaced byPeriod::toIso8601
Period::format
replaced byPeriod::toIso80000
Period::split
replaced byPeriod::splitForward
Period::substract
usePeriod::subtract
insteadSequence::substract
useSequence::subtract
insteadSequence::getIntersections
useSequence::intersections
insteadSequence::getGaps
useSequence::gaps
insteadSequence::getBoundaries
useSequence::length
insteadSequence::getTotalTimestampInterval
useSequence::totalTimeDuration
insteadSequence::toArray
useSequence::toList
insteadDuration::__toString
andDuration::format
with no replacementDuration::create
is removed with no replacementDatepoint::create
is removed with no replacement- The
create
prefix is removed from theDuration
andDatepoint
named constructors. - All charts related classes have their properties exposed as public readonly. All their getters are removed except if they are part of an interface.
Chart\ConsoleOutput
replaced byChart\StreamOutput
class.Chart\RomanNumber::isLower
useChart\LetterCase::isUpper
instead.Chart\RomanNumber::startingAt
useChart\DecimalNumber::startLabel
public readonly propertyChart\RomanNumber::startsWith
is removed with no replacementChart\RomanNumber::withLetterCase
is removed with no replacementChart\DecimalNumber::startsWith
is removed with no replacementChart\LatinNumber::startsWith
is removed with no replacementChart\LatinNumber::startingAt
useChart\LatinNumber::startLabel
public readonly propertyChart\AffixLabel::withPrefix
is removed with no replacementChart\AffixLabel::withSuffix
is removed with no replacementChart\AffixLabel::prefix
method useChart\AffixLabel::labelPrefix
public readonly propertyChart\AffixLabel::suffix
method useChart\AffixLabel::labelSuffix
public readonly property
Removed all the following namespaced functions from the package:
League\Period\datepoint
League\Period\duration
League\Period\year
League\Period\semester
League\Period\quarter
League\Period\month
League\Period\day
League\Period\hour
League\Period\minute
League\Period\second
League\Period\instant
League\Period\iso_year
League\Period\iso_week
League\Period\interval_after
League\Period\interval_before
League\Period\interval_around
League\Period\interval_from_dateperiod
version 4.12.0
Added
Datepoint::second
Datepoint::minute
Datepoint::hour
Datepoint::isoWeek
Datepoint::month
Datepoint::quarter
Datepoint::semester
Datepoint::year
Datepoint::isoYear
Duration::fromDateInterval
Duration::fromSeconds
Duration::fromChronoString
Duration::fromTimeString
Duration::fromDateString
Period::timeDuration
Period::dateInterval
Period::dateRangeForward
Period::dateRangeBackwards
Period::toIso80000
Period::splitForward
Period::timeDurationDiff
Period::boundedBy
Sequence::length
Sequence::totalTimeDuration
Fixed
- None
Deprecated
Datepoint::getSecond
is deprecated in favor ofDatepoint::second
Datepoint::getMinute
is deprecated in favor ofDatepoint::minute
Datepoint::getHour
is deprecated in favor ofDatepoint::hour
Datepoint::getIsoWeek
is deprecated in favor ofDatepoint::isoWeek
Datepoint::getMonth
is deprecated in favor ofDatepoint::month
Datepoint::getQuarter
is deprecated in favor ofDatepoint::quarter
Datepoint::getSemester
is deprecated in favor ofDatepoint::semester
Datepoint::getYear
is deprecated in favor ofDatepoint::year
Datepoint::getIsoYear
is deprecated in favor ofDatepoint::isoYear
Duration::createfromDateInterval
is deprecated in favor ofDatepoint::fromDateInterval
Duration::createfromSeconds
is deprecated in favor ofDatepoint::fromSeconds
Duration::createfromChronoString
is deprecated in favor ofDatepoint::fromChronoString
Duration::createfromTimeString
is deprecated in favor ofDatepoint::fromTimeString
Duration::createfromDateString
is deprecated in favor ofDatepoint::fromDateString
Period::getTimestampInterval
is deprecated in favor ofPeriod::timeDuration
Period::getDateInterval
is deprecated in favor ofPeriod::dateInterval
Period::getDatePeriod
is deprecated in favor ofPeriod::dateRangeForward
Period::getDatePeriodBackwards
is deprecated in favor ofPeriod::dateRangeBackwards
Period::format
is deprecated in favor ofPeriod::toIso80000
Period::split
is deprecated in favor ofPeriod::splitForward
Period::withBoundaryType
is deprecated in favor ofPeriod::boundedBy
Period::timestampIntervalDiff
is deprecated in favor ofPeriod::timeDurationDiff
Sequence::boundaries
is deprecated in favor ofSequence::length
Sequence::getTotalTimestampInterval
is deprecated in favor ofSequence::totalTimeDuration
Removed
- None
version 4.11.0
Added
Period::fromDatepoint
Duration::createFromDateInterval
Duration::createFromTimeString
Duration::createFromChronoString
Duration::createFromSeconds
Duration::create
supports DateInterval spec strings.- Support for PHP8
Fixed
Duration::create
when using a float will now overflow the results up to the Hour unit.
Deprecated
- None
Removed
- None
version 4.10.0
Added
Period::toIso8601
- Charts featuring ported from Bakame\Period\Vizualizer
Fixed
- Fix issue with
Sequence::intersections
method.
Deprecated
Period::__string
replaced byPeriod::toIso8601
Removed
- Support for PHP7.1