Travel through time in your tests.
Project Links
Meta
Author: Adam Johnson
Requires Python: >=3.10
Classifiers
Development Status
- 5 - Production/Stable
Framework
- Pytest
Intended Audience
- Developers
Natural Language
- English
Operating System
- OS Independent
Programming Language
- Python :: 3 :: Only
- Python :: 3.10
- Python :: 3.11
- Python :: 3.12
- Python :: 3.13
- Python :: 3.14
- Python :: 3.15
Typing
- Typed
Travel through time in your tests.
A quick example:
import datetime as dt
from zoneinfo import ZoneInfo
import time_machine
hill_valley_tz = ZoneInfo("America/Los_Angeles")
@time_machine.travel(dt.datetime(1985, 10, 26, 1, 24, tzinfo=hill_valley_tz))
def test_delorean():
assert dt.date.today().isoformat() == "1985-10-26"
Documentation
Please see https://time-machine.readthedocs.io/.
3.5.1
Sep 08, 2026
3.5.0
Aug 25, 2026
3.4.0
Aug 10, 2026
3.3.1
Aug 04, 2026
3.3.0
Jul 31, 2026
3.2.0
Dec 17, 2025
3.1.0
Nov 21, 2025
3.0.0
Nov 18, 2025
2.19.0
Aug 19, 2025
2.18.0
Aug 18, 2025
2.17.0
Aug 05, 2025
2.16.0
Oct 08, 2024
2.15.0
Aug 06, 2024
2.14.2
Jun 29, 2024
2.14.1
Mar 22, 2024
2.14.0
Mar 03, 2024
2.13.0
Sep 19, 2023
2.12.0
Aug 14, 2023
2.11.0
Jul 10, 2023
2.10.0
Jun 16, 2023
2.9.0
Dec 31, 2022
2.8.2
Sep 29, 2022
2.8.1
Aug 16, 2022
2.8.0
Aug 15, 2022
2.7.1
Jun 24, 2022
2.7.0
May 11, 2022
2.6.0
Jan 10, 2022
2.5.0
Dec 14, 2021
2.4.1
Nov 27, 2021
2.4.0
Sep 01, 2021
2.3.1
Jul 13, 2021
2.3.0
Jul 05, 2021
2.2.0
Jul 02, 2021
2.1.0
Feb 19, 2021
2.0.1
Jan 18, 2021
2.0.0
Jan 17, 2021
1.3.0
Dec 12, 2020
1.2.1
Aug 29, 2020
1.2.0
Jul 08, 2020
1.1.1
Jun 22, 2020
1.1.0
Jun 08, 2020
1.0.1
May 29, 2020
1.0.0
May 29, 2020
1.0.0b1
May 04, 2020
Wheel compatibility matrix
Files in release
time_machine-3.5.1-cp310-cp310-macosx_10_9_x86_64.whl (26.6KiB)
time_machine-3.5.1-cp310-cp310-macosx_11_0_arm64.whl (27.0KiB)
time_machine-3.5.1-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (53.4KiB)
time_machine-3.5.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (54.7KiB)
time_machine-3.5.1-cp310-cp310-musllinux_1_2_aarch64.whl (53.7KiB)
time_machine-3.5.1-cp310-cp310-musllinux_1_2_x86_64.whl (52.9KiB)
time_machine-3.5.1-cp310-cp310-win_amd64.whl (28.8KiB)
time_machine-3.5.1-cp310-cp310-win_arm64.whl (28.1KiB)
time_machine-3.5.1-cp311-cp311-macosx_10_9_x86_64.whl (26.6KiB)
time_machine-3.5.1-cp311-cp311-macosx_11_0_arm64.whl (27.0KiB)
time_machine-3.5.1-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (54.2KiB)
time_machine-3.5.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (55.5KiB)
time_machine-3.5.1-cp311-cp311-musllinux_1_2_aarch64.whl (54.5KiB)
time_machine-3.5.1-cp311-cp311-musllinux_1_2_x86_64.whl (53.7KiB)
time_machine-3.5.1-cp311-cp311-win_amd64.whl (28.8KiB)
time_machine-3.5.1-cp311-cp311-win_arm64.whl (28.0KiB)
time_machine-3.5.1-cp312-cp312-macosx_10_13_x86_64.whl (27.0KiB)
time_machine-3.5.1-cp312-cp312-macosx_11_0_arm64.whl (27.1KiB)
time_machine-3.5.1-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (58.5KiB)
time_machine-3.5.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (59.4KiB)
time_machine-3.5.1-cp312-cp312-musllinux_1_2_aarch64.whl (58.2KiB)
time_machine-3.5.1-cp312-cp312-musllinux_1_2_x86_64.whl (57.8KiB)
time_machine-3.5.1-cp312-cp312-win_amd64.whl (28.9KiB)
time_machine-3.5.1-cp312-cp312-win_arm64.whl (28.3KiB)
time_machine-3.5.1-cp313-cp313-macosx_10_13_x86_64.whl (27.0KiB)
time_machine-3.5.1-cp313-cp313-macosx_11_0_arm64.whl (27.1KiB)
time_machine-3.5.1-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (58.5KiB)
time_machine-3.5.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (59.4KiB)
time_machine-3.5.1-cp313-cp313-musllinux_1_2_aarch64.whl (58.2KiB)
time_machine-3.5.1-cp313-cp313-musllinux_1_2_x86_64.whl (57.7KiB)
time_machine-3.5.1-cp313-cp313-win_amd64.whl (28.9KiB)
time_machine-3.5.1-cp313-cp313-win_arm64.whl (28.3KiB)
time_machine-3.5.1-cp314-cp314-macosx_10_15_x86_64.whl (27.0KiB)
time_machine-3.5.1-cp314-cp314-macosx_11_0_arm64.whl (27.2KiB)
time_machine-3.5.1-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (58.5KiB)
time_machine-3.5.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (59.4KiB)
time_machine-3.5.1-cp314-cp314-musllinux_1_2_aarch64.whl (58.3KiB)
time_machine-3.5.1-cp314-cp314-musllinux_1_2_x86_64.whl (57.7KiB)
time_machine-3.5.1-cp314-cp314-win_amd64.whl (29.2KiB)
time_machine-3.5.1-cp314-cp314-win_arm64.whl (28.5KiB)
time_machine-3.5.1-cp314-cp314t-macosx_10_15_x86_64.whl (27.7KiB)
time_machine-3.5.1-cp314-cp314t-macosx_11_0_arm64.whl (28.0KiB)
time_machine-3.5.1-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (69.6KiB)
time_machine-3.5.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (71.7KiB)
time_machine-3.5.1-cp314-cp314t-musllinux_1_2_aarch64.whl (70.0KiB)
time_machine-3.5.1-cp314-cp314t-musllinux_1_2_x86_64.whl (68.2KiB)
time_machine-3.5.1-cp314-cp314t-win_amd64.whl (30.4KiB)
time_machine-3.5.1-cp314-cp314t-win_arm64.whl (28.7KiB)
time_machine-3.5.1-cp315-cp315-macosx_10_15_x86_64.whl (27.0KiB)
time_machine-3.5.1-cp315-cp315-macosx_11_0_arm64.whl (27.2KiB)
time_machine-3.5.1-cp315-cp315-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (58.7KiB)
time_machine-3.5.1-cp315-cp315-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (59.6KiB)
time_machine-3.5.1-cp315-cp315-musllinux_1_2_aarch64.whl (58.5KiB)
time_machine-3.5.1-cp315-cp315-musllinux_1_2_x86_64.whl (57.9KiB)
time_machine-3.5.1-cp315-cp315-win_amd64.whl (29.2KiB)
time_machine-3.5.1-cp315-cp315-win_arm64.whl (28.5KiB)
time_machine-3.5.1-cp315-cp315t-macosx_10_15_x86_64.whl (27.7KiB)
time_machine-3.5.1-cp315-cp315t-macosx_11_0_arm64.whl (28.0KiB)
time_machine-3.5.1-cp315-cp315t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (69.7KiB)
time_machine-3.5.1-cp315-cp315t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (71.7KiB)
time_machine-3.5.1-cp315-cp315t-musllinux_1_2_aarch64.whl (70.1KiB)
time_machine-3.5.1-cp315-cp315t-musllinux_1_2_x86_64.whl (68.2KiB)
time_machine-3.5.1-cp315-cp315t-win_amd64.whl (30.4KiB)
time_machine-3.5.1-cp315-cp315t-win_arm64.whl (28.7KiB)
time_machine-3.5.1.tar.gz (27.8KiB)