mirror of
https://git.pumpin.online/funkpower/typikon.git
synced 2026-10-22 18:57:13 +00:00
An adversarial review of the release, and four of its findings were things
PyPI never lets you replace once uploaded.
- rust-version said 1.74. clap has needed 1.85 since 4.6, and cargo
hard-errors rather than warning, so the sdist advertised a floor it could
not build on. docs/releasing.md sends macOS and Windows users to that
sdist.
- The wheel was classified Development Status :: 4 - Beta on a release the
changelog calls stable, with none of the Python version classifiers PyPI
indexes on.
- Six README links were relative. PyPI resolves them against the project
page, so every one 404'd there, as they do on the live 0.2.0 page now.
- in that order packs the wheel into the
sdist. The tarball on disk was 431KB with an x86-64 binary inside it.
Also: twine upload gains --skip-existing, so a retry after a partial upload
finishes rather than dying on a version that cannot be reused; twine check
gains the renderer that makes it parse the description at all, without which
it returns None and reports PASSED; and the README no longer claims a
twenty-year sweep the test did not run, because 366 * 21 / 4 is five years.
The test now runs the twenty-one it was named for.
The crates.io name belongs to an unrelated project, which the README now says
rather than leaving a reader to find out from cargo.
39 lines
1.1 KiB
Python
39 lines
1.1 KiB
Python
"""The Orthodox liturgical day: feasts, seasons and the fast, computed rather than fetched.
|
|
|
|
Everything derives from the paschalion and the fixed calendar, so this needs no
|
|
network, cannot go stale, and answers for any year you ask about.
|
|
|
|
>>> import typikon, datetime
|
|
>>> day = typikon.describe(datetime.date(2026, 4, 12), jurisdiction='new')
|
|
>>> day.feast
|
|
'The Radiant and Life-giving Resurrection of our Lord — Holy Pascha'
|
|
>>> day.fast, day.days_to_pascha
|
|
('none', 0)
|
|
|
|
The jurisdiction is given here because 12 April 2026 is Pascha on the Julian
|
|
paschalion and an ordinary Sunday on the Gregorian one. Called without one,
|
|
every function uses whatever `typikon --set-default` wrote, so the library and
|
|
the command line agree about the same date. Pass ``jurisdiction=`` to override
|
|
it; ``jurisdictions()`` lists the keys.
|
|
"""
|
|
|
|
from ._typikon import (
|
|
Day,
|
|
__version__,
|
|
describe,
|
|
jurisdictions,
|
|
pascha,
|
|
today,
|
|
week,
|
|
)
|
|
|
|
__all__ = [
|
|
"Day",
|
|
"__version__",
|
|
"describe",
|
|
"jurisdictions",
|
|
"pascha",
|
|
"today",
|
|
"week",
|
|
]
|