|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to this project will be documented in this file. |
| 4 | + |
| 5 | +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), |
| 6 | +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
| 7 | + |
| 8 | +## [Unreleased] |
| 9 | + |
| 10 | +## [1.0.0] - 2026-02-16 |
| 11 | + |
| 12 | +### Added |
| 13 | + |
| 14 | +#### Core |
| 15 | +- HTTP client built on Faraday with middleware stack (authentication, logging, response unwrapping, retry, error handling) |
| 16 | +- Configuration via constructor hash, block, or environment variables (`ASTROLOGY_API_KEY`, `ASTROLOGY_API_BASE_URL`, `ASTROLOGY_DEBUG`) |
| 17 | +- Retry logic with configurable attempts, delay, and status codes |
| 18 | +- Error hierarchy: `ClientError`, `ServerError`, `TimeoutError`, `ConnectionError`, `ValidationError`, `ConfigurationError` |
| 19 | +- Input validation for birth data (date ranges, location as city+country_code or latitude+longitude) |
| 20 | + |
| 21 | +#### Category Clients (25 categories, 200+ endpoints) |
| 22 | +- `data` — planetary positions, aspects, house cusps, lunar metrics (9 endpoints) |
| 23 | +- `charts` — natal, composite, synastry, transit, solar/lunar/venus return charts (13 endpoints) |
| 24 | +- `horoscope` — daily, weekly, monthly, yearly horoscopes for signs and personal (17 endpoints) |
| 25 | +- `analysis` — natal, synastry, composite, transit, career, health, karmic reports (26 endpoints) |
| 26 | +- `glossary` — active points, cities, countries, elements, house systems, keywords (14 endpoints) |
| 27 | +- `astrocartography` — lines, maps, paran maps, power zones, location analysis, astrodynes (13 endpoints) |
| 28 | +- `chinese` — BaZi, Ming Gua, zodiac animals, compatibility, luck pillars, solar terms (8 endpoints) |
| 29 | +- `eclipses` — upcoming eclipses, natal impact, interpretation (3 endpoints) |
| 30 | +- `lunar` — phases, events, mansions, void of course, calendar (5 endpoints) |
| 31 | +- `numerology` — core numbers, comprehensive reports, compatibility (3 endpoints) |
| 32 | +- `tarot` — cards glossary, draws, spreads, reports, birth cards, dignities, timing (19 endpoints) |
| 33 | +- `traditional` — dignities, lots, profections, traditional points glossary (10 endpoints) |
| 34 | +- `fixed_stars` — star positions, conjunctions, reports, presets (4 endpoints) |
| 35 | +- `insights` — AI-powered insights with 5 sub-clients: relationship, pet, wellness, financial, business (31 endpoints) |
| 36 | +- `svg` — SVG chart images: natal, synastry, composite, transit (4 endpoints) |
| 37 | +- `enhanced` — enhanced global and personal analysis with chart variants (4 endpoints) |
| 38 | +- `vedic` — kundli, panchang, dashas, yogas, doshas, kundli matching, remedies (22 endpoints) |
| 39 | +- `human_design` — bodygraph, type, design date, compatibility, transits, glossaries (8 endpoints) |
| 40 | +- `kabbalah` — birth angels, gematria, tikkun, Tree of Life chart, glossaries (7 endpoints) |
| 41 | +- `horary` — horary chart, analysis, aspects, fertility analysis, glossaries (6 endpoints) |
| 42 | +- `fengshui` — flying stars, annual stars, afflictions, glossary (4 endpoints) |
| 43 | +- `palmistry` — palm analysis, reading, astro integration, compatibility (4 endpoints) |
| 44 | +- `pdf` — PDF reports: natal, daily/weekly horoscope, horoscope data (4 endpoints) |
| 45 | +- `render` — PNG chart images: natal, synastry, composite, transit (4 endpoints) |
| 46 | +- `ziwei` — Zi Wei Dou Shu chart calculation (1 endpoint) |
| 47 | + |
| 48 | +#### Testing |
| 49 | +- Dual-mode test suite: mock mode (WebMock) and live mode (real API) |
| 50 | +- 250 examples across 26 integration test files (one per category) + unit tests |
| 51 | +- 96% code coverage (SimpleCov) |
| 52 | +- RuboCop + rubocop-rspec for code style enforcement |
| 53 | + |
| 54 | +#### CI/CD |
| 55 | +- GitHub Actions CI workflow: RuboCop lint + RSpec on Ruby 2.6–3.3 |
| 56 | +- GitHub Actions release workflow: auto-publish to RubyGems on version tags |
| 57 | + |
| 58 | +[Unreleased]: https://github.com/astro-api/astroapi-ruby/compare/v1.0.0...HEAD |
| 59 | +[1.0.0]: https://github.com/astro-api/astroapi-ruby/releases/tag/v1.0.0 |
0 commit comments