Releases: JinyangWang27/lunar-lite-rs
Releases · JinyangWang27/lunar-lite-rs
v1.0.0
v0.3.3
Other
- expand design overview
v0.3.2
v0.3.1
v0.3.0
Added
- add four-pillar (BaZi) Ganzhi API and solar-term boundaries (#5)
Fixed
- restore release-plz workflow (#6)
Added
- Four-pillar (四柱 / 八字 BaZi) stem-branch calculation, a faithful port of the
TypeScriptlunar-lite@0.2.8getHeavenlyStemAndEarthlyBranchBySolarDate:FourPillars(withyearly,monthly,daily,hourly) and the Rust-native
constructorsfour_pillars_from_solar_date(default options) and
four_pillars_from_solar_date_with_options.- TS-compatible
get_heavenly_stem_and_earthly_branch_by_solar_dateand
..._with_options, plus theHeavenlyStemAndEarthlyBranchDatetype alias for
FourPillars, mirroring the TypeScript reference names. StemBranchOptions(defaultExact/Exact) withYearDivide(Normal=
lunar year,Exact= 立春 at date granularity) andMonthDivide(Normal=
lunar-month 五虎遁,Exact= 12 Jie solar terms at exact second).- Day pillar via Julian-day arithmetic with 晚子时 (late 子) day rollover at
time_index12. - Supported range 1850-01-01 ..= 2150-12-31.
- Generated 12-Jie solar-term boundary table (
src/generated/solar_terms.rs) from
lunar-typescript@1.8.6, plusgenerate-solar-terms.mjsand
generate-four-pillars-fixtures.mjsgenerators. LunarError::InvalidTimeIndexandLunarError::SolarTermOutOfRangevariants.serdesupport for the new four-pillar types (behind theserdefeature).- Fixture-driven compatibility tests against
lunar-lite@0.2.8output.
added stem branch operation
Merge pull request #4 from JinyangWang27/dev Remove unused keywords from Cargo.toml