You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+25-12Lines changed: 25 additions & 12 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,19 @@ All notable changes to this project will be documented in this file.
5
5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
8
+
## [Unreleased]
9
+
### changed
10
+
- Modernized packaging and developer workflow around `pyproject.toml`, `uv`, `pytest`, `ruff`, and `mypy`
11
+
- Updated CI and release automation to use the new build and verification flow
12
+
- Replaced the legacy single-file `unittest` suite with a `pytest` test layout while preserving the existing behavior coverage
13
+
- Updated the Docker image to a current Python base image and removed the old `requirements.txt` and `setup.py` install path
14
+
15
+
### compatibility
16
+
- Support remains Python `3.10+`
17
+
- During the modernization pass, the floor was briefly evaluated at `3.11+`, but it was set to `3.10+` instead because the library and tooling still work cleanly there and it keeps a broader install base without adding meaningful maintenance overhead
18
+
- Previous published support before this change was Python `3.8+`; this update intentionally drops `3.8` and `3.9` to align the project with a more current 2026 baseline while keeping `3.10` available
19
+
-`zoneinfo` is now used in tests instead of `pytz`, but this does not require raising the runtime floor beyond Python `3.10`
20
+
8
21
## [3.0.3] - 2024-09-12
9
22
Please use 3.0.3 going forward! 3.0.2 has a breaking bug.
10
23
@@ -16,7 +29,7 @@ Please use 3.0.3 going forward! 3.0.2 has a breaking bug.
16
29
## [3.0.2] - 2024-09-11
17
30
### added
18
31
- Feat: Complete typing with strict type-checking [#43](https://github.com/nickmaccarthy/python-datemath/pull/43) Thank you @Avasam!
19
-
- Feat: Added `__version__` to verify the version of the module.
32
+
- Feat: Added `__version__` to verify the version of the module.
20
33
- Feat: Added Dockerfile and relevant verify.py to help with local development and testing
21
34
22
35
### chore
@@ -31,15 +44,15 @@ Please use 3.0.3 going forward! 3.0.2 has a breaking bug.
31
44
- Fix: move more pypi configurations to setup.cfg and out of setup.py
32
45
33
46
34
-
## [3.0.1] - 2024-08-23
47
+
## [3.0.1] - 2024-08-23
35
48
### fixed
36
49
- Fix: Race condition in timezone tests: https://github.com/nickmaccarthy/python-datemath/issues/36
*`datemath()` object now returns the expected `datetime` object instead of an `Arrow` object
56
69
* added tests to catch invalid object types of helpers
57
70
58
71
## [1.5.4] - 2021-04-20
59
-
### Unused
72
+
### Unused
60
73
- skipped due to name conflict on pypi, all changes in this are from `1.5.3`
61
74
62
75
## [1.5.3] - 2021-04-16
@@ -72,7 +85,7 @@ Please use 3.0.3 going forward! 3.0.2 has a breaking bug.
72
85
### fixed
73
86
- FIX: [Issue #15](https://github.com/nickmaccarthy/python-datemath/issues/15) - Fixed issue with parser finding invalid timeunits and throwing correct errors
74
87
### added
75
-
- Feat: [Issue #16](https://github.com/nickmaccarthy/python-datemath/issues/16) - Added support for parser to accecpt a epoch/unix timestamp but throw an error on epoch milli's since arrow can't support that.
88
+
- Feat: [Issue #16](https://github.com/nickmaccarthy/python-datemath/issues/16) - Added support for parser to accecpt a epoch/unix timestamp but throw an error on epoch milli's since arrow can't support that.
76
89
77
90
## [1.5.0] - 2019-11-09
78
91
@@ -84,7 +97,7 @@ Please use 3.0.3 going forward! 3.0.2 has a breaking bug.
84
97
85
98
** PLEASE DO NOT USE THIS VERSION, use `1.5.0+` instead. This may not compile on your system due to a missing VERSION.txt which was fixed in `1.5.0+`**
86
99
87
-
### fixed
100
+
### fixed
88
101
-[FIX][Issue #9](https://github.com/nickmaccarthy/python-datemath/issues/9) && [Issue #8](https://github.com/nickmaccarthy/python-datemath/issues/8) - Fixing deprecated arrow `replace()` function with `shift()`.
89
102
-[FIX] Arrow upgrade to `0.15.2` to fix the above mentioned issues
90
103
-[FIX] Modifed `tests.py` to account for the timestamp change (tz is now `+0000`, instead of `-0000`)
@@ -101,7 +114,7 @@ Please use 3.0.3 going forward! 3.0.2 has a breaking bug.
101
114
* skipped due to name conflict on pypi, all changes are in `1.4.9`
102
115
103
116
## [1.4.7] - 2017-11-10
104
-
### fixed
117
+
### fixed
105
118
-[FIX] Fixed timezone for date strings: [Issue #6](https://github.com/nickmaccarthy/python-datemath/issues/6)
106
119
107
120
## [1.4.5] - 2017-03-21
@@ -114,12 +127,12 @@ Please use 3.0.3 going forward! 3.0.2 has a breaking bug.
114
127
<Arrow [2016-01-01T23:59:00+00:00]>
115
128
>>> dm('now/d')
116
129
<Arrow [2016-01-01T00:00:00+00:00]>
117
-
```
130
+
```
118
131
119
132
## [1.4.4] - 2016-12-28
120
133
### fixed
121
134
-[FIX] Fixed bug with expression logic and rounding: https://github.com/nickmaccarthy/python-datemath/pull/2
122
135
123
136
## [1.4.3] - 2016-03-31
124
-
### added
125
-
[NEW] Floats are now supported for days, hours, and seconds units. Example ```now-2.5d```, ```now-3.2h```. Any other unit other than days, hours, or seconds that is a float will be converted to an int and floored due to the datetime() module not being able to handle them.
137
+
### added
138
+
[NEW] Floats are now supported for days, hours, and seconds units. Example ```now-2.5d```, ```now-3.2h```. Any other unit other than days, hours, or seconds that is a float will be converted to an int and floored due to the datetime() module not being able to handle them.
0 commit comments