Moontool

Latest version: v0.2.0

Safety actively analyzes 681812 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

1.0.0

- Return new 'Phase' enum instead of separate values in 'MoonPhase'.
- Add 'monthname()' and 'dayname()' methods to 'UTC/LocalDateTime'.
- Add 'cronfullmoons.py' script to export Full Moons to crontab format.

0.5.0

- Add 'SunCalendar' for equinoxes and solstices of a given year. It is
accessible in verbose mode from the CLI.
- Add yearly Moon calendar to list all New and Full Moons of a given
year, including Full Moon names. They are accessible in verbose mode
from the CLI.
- Factorize common behaviour into 'ForDateTime' and 'ForYear' traits
(which will now need to be 'use'd, just like 'ToJSON').
- Compute 'UTCDateTime' weekday dynamically, instead of storing it in a
struct field.
- Unnest datetime module to its own separate path.

0.4.0

- Add time of snapshot to MoonCalendar and for all versions (C, Python,
and Rust). It's easier to pass around if when stored with the data.

Rust-only:
- Add '--graph' option to CLI to show Moon data over time.
- (breaking) Improve UTCDateTime API with explicit conversion methods
(e.g., 'from_ymdhms()'). This is breaking because implicit conversions
have been removed.
- Add from/to Julian date conversion methods to UTCDateTime. Julian date
is very handy for graphing or date manipulations in general (see CLI
'--graph' for an example).
- (breaking) Panic if invalid selector provided to 'truephase()'.
Selectors are hard-coded in private code, so they're always OK. The
panic gets rid of unnecessary Result unwraps, and the handling of
MoonCalendar is now the same as the one of MoonPhase.
- Move UTCDateTime and LocalDateTime into separate module. This doesn't
change the API.

0.3.1

This version is published early to make a critical bugfix available:

- (Rust and Python) Fix bug causing infinite loop in Kepler's equation
solving function. The precision was too high, and sometimes the exit
condition would never trigger because of this.

Also:

- Update web version to allow passing arguments to Moontool, thus
enabling access to Rust's version additional features.
- Add a nice render of the Moon to the README file (same date as demo
screenshot and output).

0.3.0

- Add '--moon' CLI argument to draw the Moon as it appears in the sky at
the given date.
- Update 'moonsim.sh' script to use the Rust executable. Also enable
passing arguments, so one can do the simulation with '--moon' for
instance.
- Enable creating 'MoonPhase' and 'MoonCalendar' from an ISO string.
- Make 'LocalDateTime' public. The main purpose of this is to convert
'UTCDateTime' to local for display or conditional behaviour.
- Enable instantiating 'UTCDateTime' without weekday for convenience.

0.2.0

Rust:
- Enable serializing 'MoonPhase' and 'MoonCalendar' to JSON.
- Add '--json' CLI argument, to output info in JSON format.
- Add '--version' CLI argument, to display the current version.
- (breaking) Rename 'utc_timestamp' to 'timestamp' (it is always UTC).
- Fix mistake in documentation.

C:
- (breaking) Remove mentions of non-standard `tm_zone` in `struct tm`s.

Page 1 of 2

Links

Releases

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.