-
v0.1.2 Stable
released this
2026-05-17 21:24:16 +08:00 | 0 commits to master since this release中文
Fixed
- 修复 TinyGo 编译到 wasm 时可能在
planet包初始化阶段报interp: unsupported fcmp的问题。 - 将
planetViews从包级初始化改为sync.Once懒加载,避免 TinyGo 在编译期解释大型float64星历表切片索引。 planet内部视图构建改为返回error,再由兼容层统一panic,避免懒加载初始化失败后留下未初始化缓存。- 补充无效行星数据切片边界测试。
English
Fixed
- Fixed a TinyGo wasm build failure that could report
interp: unsupported fcmpduringplanetpackage initialization. - Changed
planetViewsfrom package-level eager initialization tosync.Oncelazy initialization, avoiding TinyGo compile-time interpretation of largefloat64ephemeris table slicing. - Changed internal planet-view construction to return
error, with the compatibility layer still panicking on corrupted built-in data, avoiding an uninitialized cache after lazy initialization failure. - Added a test for invalid planet-data slice boundaries.
Downloads
- 修复 TinyGo 编译到 wasm 时可能在
-
v0.1.1 Stable
released this
2026-05-03 20:12:20 +08:00 | 1 commits to master since this release中文
Added
- 新增水星、金星地心凌日查询能力,提供
NextTransit/LastTransit/ClosestTransit,返回一触、二触、凌甚、三触、四触、持续时间、最小角距离和视半径等信
息。 basic层新增通用PlanetTransitResult,并提供水星/金星凌日搜索入口,供上层包复用。eclipse新增本地可见日全食、日环食、月全食专项搜索接口:LastLocalTotalSolarEclipse/NextLocalTotalSolarEclipse/ClosestLocalTotalSolarEclipseLastLocalAnnularSolarEclipse/NextLocalAnnularSolarEclipse/ClosestLocalAnnularSolarEclipseLastLocalTotalLunarEclipse/NextLocalTotalLunarEclipse/ClosestLocalTotalLunarEclipse- 新接口返回
(info, ok),可明确区分“找到事件”和“搜索范围内无结果”。
Changed
- 优化日食、月食搜索流程:增加食季跳步和黄纬预筛,减少非食季朔望月的无效精算。
- 沙罗周期匹配改用压缩锚点表快速匹配,并保留回退 walk 逻辑,提升查询效率且维持边界兼容。
- 本地中心食搜索现在要求中心阶段可见,避免只在偏食阶段可见时误报为本地可见日全食/日环食/月全食。
- README 中英文文档同步补充了中心食专项搜索接口、水星/金星凌日示例和能力清单。
English
Added
- Added geocentric Mercury and Venus transit queries via
NextTransit/LastTransit/ClosestTransit, returning first contact, second contact,
greatest transit, third contact, fourth contact, duration, minimum separation, and apparent semidiameters. - Added the shared
PlanetTransitResulttype inbasic, with Mercury/Venus transit search entry points for upper-layer packages. - Added dedicated local visible total solar eclipse, annular solar eclipse, and total lunar eclipse search APIs in
eclipse: LastLocalTotalSolarEclipse/NextLocalTotalSolarEclipse/ClosestLocalTotalSolarEclipseLastLocalAnnularSolarEclipse/NextLocalAnnularSolarEclipse/ClosestLocalAnnularSolarEclipseLastLocalTotalLunarEclipse/NextLocalTotalLunarEclipse/ClosestLocalTotalLunarEclipse- New search APIs return
(info, ok)to distinguish found events from no result within the search range.
Changed
- Optimized solar and lunar eclipse search with eclipse-season skipping and latitude prefiltering, reducing unnecessary full calculations outside eclipse
seasons. - Reworked Saros matching to use compressed anchor tables with a walk fallback, improving lookup efficiency while preserving edge-case compatibility.
- Local central-eclipse searches now require the central phase to be visible, avoiding false positives where only the partial phase is observable.
- Updated Chinese and English README files with central-eclipse search APIs, Mercury/Venus transit examples, and capability lists.
Downloads
- 新增水星、金星地心凌日查询能力,提供
-
v0.1.0 Stable
released this
2026-05-01 23:01:01 +08:00 | 2 commits to master since this release中文
本次代码更新聚焦日月食、行星事件、恒星工具、通用轨道、日晷和轻量计算链路,同时整理了文档与测试基线。
重要行为变更:Zenith 天顶距语义修正
旧版中 Zenith 系列函数实际返回的是高度角。本版已修正为天顶距(Zenith = 90° - Altitude)。受影响的包:sun、moon、七大行星、star、orbit、lite/sun、lite/moon 及其 N 变体。
迁移要点:原先用 Zenith() 获取高度角的改为 Altitude();原先用 Zenith() > 0 判断地平线上方的改为 Altitude() > 0;原先手动计算 90 - Zenith() 的现在直接用 Zenith() 即可。
新增
- 日月食:全局/地方日食、中心线、偏食足迹;全局/地方月食;日食与月食 SVG;支持 NASA split-k 和 IAU single-k 半径口径;结果含沙罗周期信息
- 行星:合、冲、留、方照、大距事件;视直径、相位角、照明比例、亮肢位置角、视星等、轨道节点、物理星历
- 木星伽利略卫星:L1 星历位置、凌掩食影现象判定、接触事件搜索
- 太阳与月球:日面 P/B0/L0;月球地心/站心天平动、近远地点、最大赤纬、亮边位置角
- 恒星:9100+ 星表,支持中英文名/HR 查询、自行修正、星座判定、视差角、升落
- coord:黄道/赤道/地平/银道坐标变换、大气折射、大气质量、视差角、手动参数研究接口
- formula:黑体辐射、会合周期、星等、望远镜极限、恒星物理、大气质量等独立公式
- orbit:二体轨道传播、站心观测量、H-G 星等、相位几何、视双星位置角/角距
- sundial:真/平太阳时、时角、水平/赤道/垂直日晷与平面日晷几何
- lite/sun、lite/moon:轻量太阳/月球近似链路,面向资源受限环境,零堆分配
文档与测试
- README 重写,补充英文版,含可复制示例、输出对照、SVG 配图和精度说明
- 新增 NASA GSFC、JPL Horizons、IMCCE 等外部基线回归测试
- 新增语义回归测试,覆盖时区、天顶距、轻量链路、物理星历、沙罗周期等
English
This release adds eclipses, planetary events, stellar tools, generic orbit propagation, sundials, and lightweight computation chains, along with refreshed documentation and test baselines.
Breaking change: Zenith now returns zenith distance
Zenith functions previously returned altitude. They now return zenith distance (Zenith = 90° - Altitude). Affected packages: sun, moon, all seven planets, star, orbit, lite/sun, lite/moon, and their N
variants.To migrate: replace Zenith() with Altitude() where altitude was expected; use Altitude() > 0 instead of Zenith() > 0 for horizon checks; remove any 90 - Zenith() workarounds.
Added
- Eclipses: global/local solar eclipses with central paths and partial footprints; global/local lunar eclipses; SVG output for both; NASA split-k and IAU single-k radius conventions; Saros metadata in
results - Planets: conjunction, opposition, station, quadrature, and elongation events; apparent diameter, phase angle, illuminated fraction, bright-limb angle, apparent magnitude, orbital nodes, and physical
ephemerides - Jupiter Galilean satellites: L1 ephemeris positions, transit/occultation/eclipse/shadow phenomena, contact-event search
- Sun and Moon: solar P/B0/L0; lunar geocentric/topocentric libration, apsides, maximum declination, bright-limb angle
- Stars: embedded 9100+ star catalog with name/HR lookup, proper motion, constellation identification, parallactic angle, rise/set
- coord: ecliptic/equatorial/horizontal/Galactic transforms, refraction, airmass, parallactic angle, manual-parameter research helpers
- formula: standalone blackbody, synodic period, magnitude, telescope, stellar physics, and airmass formulas
- orbit: two-body propagation, topocentric observing quantities, H-G magnitude, phase geometry, visual-binary position angle/separation
- sundial: true/mean solar time, hour angle, horizontal/equatorial/vertical dials, general planar-dial geometry
- lite/sun, lite/moon: lightweight Sun/Moon approximation chains for resource-constrained environments, zero heap allocation
Documentation and tests
- Reworked README with an English translation, copyable examples, annotated output, SVG diagrams, and accuracy notes
- Added regression baselines against NASA GSFC, JPL Horizons, and IMCCE
- Added semantic regression tests covering time zones, zenith distance, lightweight chains, physical ephemerides, and Saros metadata
Downloads
-
v0.0.5 Stable
released this
2025-09-08 11:00:47 +08:00 | 13 commits to master since this release-
fix: 修正 sun.TrueBo 计算逻辑,改为调用 basic.HSunTrueBo,保证太阳视纬度正确
-
fix: 修正 basic/sun.go 内部方法 GetSunDownTime 为 GetSunSetTime,并同步相关调用和输出
-
fix: 测试用例同步修正,统一调用新方法和错误常量名
-
improve: 所有 DownTime/Down 方法统一重命名为 SetTime/Set,语义更一致
-
improve: 所有 ERR_XXX_NEVER_DOWN 错误常量统一重命名为 ERR_XXX_NEVER_SET,并增加 ERR_XXX_NEVER_DOWN 为兼容性别名
-
improve: 接口和错误命名更标准,便于维护和理解
Downloads
-
-
v0.0.4 Stable
released this
2024-12-31 13:54:18 +08:00 | 18 commits to master since this releasebug fix
- 快速模式下,部分年份腊月十二显示为正月初一的问题
Downloads
-
v0.0.3 Stable
released this
2024-12-31 10:27:27 +08:00 | 19 commits to master since this releaseDownloads
-
v0.0.2 Stable
released this
2024-03-31 16:27:04 +08:00 | 20 commits to master since this releaseDownloads