NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
Packagist · #3455 most downloaded on Packagist
Provides a Clock implementation for PHP
Last release 4 months ago
27 May 2026
Ships fairly regularly
a new release about every 6 months
Nearly every release is documented
notes for 6 of 6 stable releases
Nothing withdrawn
no release was ever pulled
3 years old
6 releases · first in 2023
One column per quarter.
Full Changelog : 3.0.1...3.0.2
Full Changelog: 3.0.1...3.0.2
Full Changelog : 3.0.0...3.0.1
Full Changelog: 3.0.0...3.0.1
Class Ghostwriter\Clock\Exception\CannotChangeTimezoneOfFrozenClockException removed
Ghostwriter\Clock\Exception\CannotChangeTimezoneOfFrozenClockException removedGhostwriter\Clock\Interface\ClockExceptionInterface removedGhostwriter\Clock\Trait\ClockTrait removedGhostwriter\Clock\Interface\ClockInterface::withDateTimeZone() removedGhostwriter\Clock\Interface\ClockInterface::withSystemTimezone() removedGhostwriter\Clock\Interface\ClockInterface::withTimezone() removedGhostwriter\Clock\FrozenClock::withDateTimeZone() removedGhostwriter\Clock\FrozenClock::withSystemTimezone() removedGhostwriter\Clock\FrozenClock::withTimezone() removedGhostwriter\Clock\LocalizedClock::withDateTimeZone() removedGhostwriter\Clock\LocalizedClock::withSystemTimezone() removedGhostwriter\Clock\LocalizedClock::withTimezone() removedGhostwriter\Clock\SystemClock::withDateTimeZone() removedGhostwriter\Clock\SystemClock::withSystemTimezone() removedGhostwriter\Clock\SystemClock::withTimezone() removedFull Changelog: 2.0.0...3.0.0
Method freeze() was added to interface Ghostwriter\Clock\Interface\ClockInterface
freeze() was added to interface Ghostwriter\Clock\Interface\ClockInterfacefreeze() was added to interface Ghostwriter\Clock\Interface\FrozenClockInterfacefreeze() was added to interface Ghostwriter\Clock\Interface\LocalizedClockInterfacefreeze() was added to interface Ghostwriter\Clock\Interface\SystemClockInterfacenew() was added to interface Ghostwriter\Clock\Interface\FrozenClockInterfacenew() was added to interface Ghostwriter\Clock\Interface\LocalizedClockInterfacenew() was added to interface Ghostwriter\Clock\Interface\SystemClockInterfacewithDateTimeZone() was added to interface Ghostwriter\Clock\Interface\ClockInterfacewithDateTimeZone() was added to interface Ghostwriter\Clock\Interface\FrozenClockInterfacewithDateTimeZone() was added to interface Ghostwriter\Clock\Interface\LocalizedClockInterfacewithDateTimeZone() was added to interface Ghostwriter\Clock\Interface\SystemClockInterfacewithSystemTimezone() was added to interface Ghostwriter\Clock\Interface\ClockInterfacewithSystemTimezone() was added to interface Ghostwriter\Clock\Interface\FrozenClockInterfacewithSystemTimezone() was added to interface Ghostwriter\Clock\Interface\LocalizedClockInterfacewithSystemTimezone() was added to interface Ghostwriter\Clock\Interface\SystemClockInterfacewithTimezone() was added to interface Ghostwriter\Clock\Interface\ClockInterfacewithTimezone() was added to interface Ghostwriter\Clock\Interface\FrozenClockInterfacewithTimezone() was added to interface Ghostwriter\Clock\Interface\LocalizedClockInterfacewithTimezone() was added to interface Ghostwriter\Clock\Interface\SystemClockInterface__construct() of class Ghostwriter\Clock\FrozenClock visibility reduced from public to private__construct() of class Ghostwriter\Clock\LocalizedClock visibility reduced from public to privatefreeze() of class Ghostwriter\Clock\Trait\ClockTrait changed from concrete to abstractnow() of class Ghostwriter\Clock\Trait\ClockTrait changed from concrete to abstractwithDateTimeZone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithDateTimeZone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithDateTimeZone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithDateTimeZone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithSystemTimezone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithSystemTimezone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithSystemTimezone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithSystemTimezone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithTimezone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithTimezone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithTimezone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instancewithTimezone() of class Ghostwriter\Clock\Trait\ClockTrait changed scope from static to instanceGhostwriter\Clock\FrozenClock#__construct() increased from 0 to 1Ghostwriter\Clock\LocalizedClock#__construct() increased from 0 to 1Ghostwriter\Clock\Exception\UnsupportedClockException has been deletedGhostwriter\Clock\FrozenClock#__construct() was removedGhostwriter\Clock\LocalizedClock#__construct() was removedGhostwriter\Clock\SystemClock::create() was removedFull Changelog: 1.1.0...2.0.0
Full Changelog : 1.0.0...1.1.0
Full Changelog : https://github.com/ghostwriter/clock/commits/1.0.0
Full Changelog: https://github.com/ghostwriter/clock/commits/1.0.0
Your coding agent can read these notes before it upgrades. Set up the MCP server →