Skip to content

Commit

Permalink
update supported Python versions
Browse files Browse the repository at this point in the history
  • Loading branch information
Technologicat committed Sep 26, 2024
1 parent 809dfa7 commit 011f3be
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 12 deletions.
23 changes: 12 additions & 11 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,28 @@
**0.15.3** (in progress, last updated 25 September 2024)

**IMPORTANT**:

- Minimum Python language version is now 3.8.
- We support 3.8, 3.9, 3.10, 3.11, 3.12, and PyPy3 (language versions 3.8, 3.9, and 3.10).
- Python 3.6 and 3.7 support dropped, as these language versions have officially reached end-of-life.
- Note this release of `unpythonic` is still in progress. Python 3.8 becomes EOL after October 2024, so support for 3.8 might be dropped before `unpythonic` 0.15.3 is released.


**New**:

- **Python 3.12 support**.
- **Python 3.11 support**.
- Walrus syntax `name := value` is now supported, and preferred, for all env-assignments. Old syntax `name << value` still works, and will remain working at least until v0.16.0, whenever that is.
- Note that language support for using an assignment expression inside a subscript *without parenthesizing it* was [added in Python 3.10](https://docs.python.org/3/whatsnew/3.10.html#other-language-changes).
That is, if you still use Python 3.8 or 3.9, with the new `:=` syntax you must put parentheses around each `let` binding, because syntactically, the bindings subform looks like a subscript.
- If you still use Python 3.8 or 3.9, with the new `:=` syntax you must put parentheses around each `let` binding, because syntactically, the bindings subform looks like a subscript.
- All documentation is written in Python 3.10 syntax; all unit tests are written in Python 3.8 syntax.


**Fixed**:

- `ETAEstimator` edge case: at any point after all tasks have been marked completed, return a constant zero estimate for the remaining time.
- Fix borkage in `mathseq` when running with SymPy 1.13 (SymPy is only used in tests). Bump SymPy version to 1.13.

**IMPORTANT**:

- Minimum Python language version is now 3.8.
- Python 3.6 and 3.7 support dropped, as these language versions have officially reached end-of-life.
- 3.8 becomes EOL after October 2024, so support for that version might be dropped soon, too.

**Future plans**:

Near-term focus will likely be on introducing support for Python 3.11 and 3.12, with no major changes to functionality. No promises though (except of the `lazy[]`/`force()` kind, which see).


---

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ None required.

- [`mcpyrate`](https://github.com/Technologicat/mcpyrate) optional, to enable the syntactic macro layer, an interactive macro REPL, and some example dialects.

As of v0.15.3, `unpythonic` runs on CPython 3.8, 3.9 and 3.10, and PyPy3 (language versions 3.8, 3.9, 3.10); the [CI](https://en.wikipedia.org/wiki/Continuous_integration) process verifies the tests pass on those platforms. New Python versions are added and old ones are removed following the [Long-term support roadmap](https://github.com/Technologicat/unpythonic/issues/1).
As of v0.15.3, `unpythonic` runs on CPython 3.8, 3.9 and 3.10, 3.11, 3.12, and PyPy3 (language versions 3.8, 3.9, 3.10); the [CI](https://en.wikipedia.org/wiki/Continuous_integration) process verifies the tests pass on those platforms. New Python versions are added and old ones are removed following the [Long-term support roadmap](https://github.com/Technologicat/unpythonic/issues/1).


### Documentation
Expand Down

0 comments on commit 011f3be

Please sign in to comment.