Releases: buelowp/sunset
Version 1.1.7
Maintenance release
- Updates doxygen documentation to the latest
- Fixes a test bug
- Updates the readme a bit to better reflect how this all works
[==========] Running 26 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 26 tests from SunsetTesting
[ RUN ] SunsetTesting.ValidReturnValueSunrise
[ OK ] SunsetTesting.ValidReturnValueSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueSunset
[ OK ] SunsetTesting.ValidReturnValueSunset (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueCustomSunrise
[ OK ] SunsetTesting.ValidReturnValueCustomSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueCustomSunset
[ OK ] SunsetTesting.ValidReturnValueCustomSunset (0 ms)
[ RUN ] SunsetTesting.MoonPhase
[ OK ] SunsetTesting.MoonPhase (0 ms)
[ RUN ] SunsetTesting.NegativeLatitudeCapeTown
[ OK ] SunsetTesting.NegativeLatitudeCapeTown (0 ms)
[ RUN ] SunsetTesting.PositiveLongitudeMoscow
[ OK ] SunsetTesting.PositiveLongitudeMoscow (0 ms)
[ RUN ] SunsetTesting.AllNegativeBuenosAires
[ OK ] SunsetTesting.AllNegativeBuenosAires (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidJulianDate
[ OK ] SunsetTesting.ValidJulianDate (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSummer
[ OK ] SunsetTesting.HighLatitudeTestSummer (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSpring
[ OK ] SunsetTesting.HighLatitudeTestSpring (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestWinter
[ OK ] SunsetTesting.HighLatitudeTestWinter (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointMay
[ OK ] SunsetTesting.SouthernMostPointMay (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointWinter
[ OK ] SunsetTesting.SouthernMostPointWinter (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunrise
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunset
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunset (0 ms)
[ RUN ] SunsetTesting.InvalidNegativeTimezone
[ OK ] SunsetTesting.InvalidNegativeTimezone (0 ms)
[ RUN ] SunsetTesting.InvalidPositiveTimezone
[ OK ] SunsetTesting.InvalidPositiveTimezone (0 ms)
[ RUN ] SunsetTesting.MoonphaseNoArgs
[ OK ] SunsetTesting.MoonphaseNoArgs (0 ms)
[ RUN ] SunsetTesting.MoonphaseZeroEpoch
[ OK ] SunsetTesting.MoonphaseZeroEpoch (0 ms)
[----------] 26 tests from SunsetTesting (0 ms total)
[----------] Global test environment tear-down
[==========] 26 tests from 1 test suite ran. (0 ms total)
[ PASSED ] 26 tests.
Version 1.1.6
This is a maintenance release as the library value in library.properties was not correctly incremented for the 1.1.5 release. This will cause issues with the Arduino and Particle library systems.
Version 1.1.5
A collection of bug fixes as identified by users of the library. See the readme or 1.1.5 tag to identify specific fixes.
[==========] Running 24 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 24 tests from SunsetTesting
[ RUN ] SunsetTesting.ValidReturnValueSunrise
[ OK ] SunsetTesting.ValidReturnValueSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueSunset
[ OK ] SunsetTesting.ValidReturnValueSunset (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueCustomSunrise
[ OK ] SunsetTesting.ValidReturnValueCustomSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueCustomSunset
[ OK ] SunsetTesting.ValidReturnValueCustomSunset (0 ms)
[ RUN ] SunsetTesting.MoonPhase
[ OK ] SunsetTesting.MoonPhase (0 ms)
[ RUN ] SunsetTesting.NegativeLatitudeCapeTown
[ OK ] SunsetTesting.NegativeLatitudeCapeTown (0 ms)
[ RUN ] SunsetTesting.PositiveLongitudeMoscow
[ OK ] SunsetTesting.PositiveLongitudeMoscow (0 ms)
[ RUN ] SunsetTesting.AllNegativeBuenosAires
[ OK ] SunsetTesting.AllNegativeBuenosAires (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidJulianDate
[ OK ] SunsetTesting.ValidJulianDate (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSummer
[ OK ] SunsetTesting.HighLatitudeTestSummer (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSpring
[ OK ] SunsetTesting.HighLatitudeTestSpring (1 ms)
[ RUN ] SunsetTesting.HighLatitudeTestWinter
[ OK ] SunsetTesting.HighLatitudeTestWinter (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointMay
[ OK ] SunsetTesting.SouthernMostPointMay (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointWinter
[ OK ] SunsetTesting.SouthernMostPointWinter (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunrise
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunset
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunset (0 ms)
[ RUN ] SunsetTesting.InvalidNegativeTimezone
[ OK ] SunsetTesting.InvalidNegativeTimezone (0 ms)
[ RUN ] SunsetTesting.InvalidPositiveTimezone
[ OK ] SunsetTesting.InvalidPositiveTimezone (0 ms)
[----------] 24 tests from SunsetTesting (1 ms total)
[----------] Global test environment tear-down
[==========] 24 tests from 1 test suite ran. (1 ms total)
[ PASSED ] 24 tests.
Version 1.1.4
Fixups so this can be used in the Arduino library system
Version 1.1.3
This release does some work to fixup performance to allow for operation on an 8266. While these fixes don't imply the library is going to perform well on the 8266, it does mean it will work for many use cases. Use this library on the 8266 at your own risk, but hopefully the updates will allow it to do what you want.
Test results for Ubuntu 20.04
[==========] Running 22 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 22 tests from SunsetTesting
[ RUN ] SunsetTesting.ValidReturnValueSunrise
[ OK ] SunsetTesting.ValidReturnValueSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueSunset
[ OK ] SunsetTesting.ValidReturnValueSunset (0 ms)
[ RUN ] SunsetTesting.MoonPhase
[ OK ] SunsetTesting.MoonPhase (0 ms)
[ RUN ] SunsetTesting.NegativeLatitudeCapeTown
[ OK ] SunsetTesting.NegativeLatitudeCapeTown (0 ms)
[ RUN ] SunsetTesting.PositiveLongitudeMoscow
[ OK ] SunsetTesting.PositiveLongitudeMoscow (0 ms)
[ RUN ] SunsetTesting.AllNegativeBuenosAires
[ OK ] SunsetTesting.AllNegativeBuenosAires (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidJulianDate
[ OK ] SunsetTesting.ValidJulianDate (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSummer
[ OK ] SunsetTesting.HighLatitudeTestSummer (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSpring
[ OK ] SunsetTesting.HighLatitudeTestSpring (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestWinter
[ OK ] SunsetTesting.HighLatitudeTestWinter (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointMay
[ OK ] SunsetTesting.SouthernMostPointMay (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointWinter
[ OK ] SunsetTesting.SouthernMostPointWinter (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunrise
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunset
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunset (0 ms)
[ RUN ] SunsetTesting.InvalidNegativeTimezone
[ OK ] SunsetTesting.InvalidNegativeTimezone (0 ms)
[ RUN ] SunsetTesting.InvalidPositiveTimezone
[ OK ] SunsetTesting.InvalidPositiveTimezone (0 ms)
[----------] 22 tests from SunsetTesting (0 ms total)
[----------] Global test environment tear-down
[==========] 22 tests from 1 test suite ran. (1 ms total)
[ PASSED ] 22 tests.
Test results for Particle build 1.5.2
Serial monitor opened successfully:
Running test Arlington Heights Sunrise: passed
Running test Arlington Heights Sunset: passed
Running test Moonphase: passed
Running test Capetown Sunrise: passed
Running test Moscow Sunrise: passed
Running test Buenos Airies Sunrise: passed
Running test Astronomical Sunrise in Arlington Heights: passed
Running test Astronomical Sunset in Arlington Heights: passed
Running test Nautical Sunrise in Arlington Heights: passed
Running test Nautical Sunset in Arlington Heights: passed
Running test Civil Sunrise in Arlington Heights: passed
Running test Civil Sunset in Arlington Heights: passed
Running test Valid Julian Date: passed
Running test Point Barrow Summer: passed
Running test Point Barrow Sprint: passed
Running test Point Barrow Winter: passed
Running test Usharia Argentina May: passed
Running test Usharia Argentina Winter: passed
Running test Fractional Sunrise IST: passed
Running test Fractional Sunset IST: passed
Running test Check above 67: passed
Version 1.1.2
I noticed a big issue with the library.properties
The License header was incorrect, and implied something that wasn't true. For the future, this library is GPLV2 ONLY.
There are also many documentation changes in this release related to the new Github Pages Doxygen content I have added.
There is one code change, related to validation of the timezone value when calling setTZOffset() similar to what is being done in the constructor.
Test results for Ubuntu 20.04 G++
[==========] Running 22 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 22 tests from SunsetTesting
[ RUN ] SunsetTesting.ValidReturnValueSunrise
[ OK ] SunsetTesting.ValidReturnValueSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueSunset
[ OK ] SunsetTesting.ValidReturnValueSunset (0 ms)
[ RUN ] SunsetTesting.MoonPhase
[ OK ] SunsetTesting.MoonPhase (0 ms)
[ RUN ] SunsetTesting.NegativeLatitudeCapeTown
[ OK ] SunsetTesting.NegativeLatitudeCapeTown (0 ms)
[ RUN ] SunsetTesting.PositiveLongitudeMoscow
[ OK ] SunsetTesting.PositiveLongitudeMoscow (0 ms)
[ RUN ] SunsetTesting.AllNegativeBuenosAires
[ OK ] SunsetTesting.AllNegativeBuenosAires (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunsetArlingtonHeights (1 ms)
[ RUN ] SunsetTesting.ValidCivilSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidJulianDate
[ OK ] SunsetTesting.ValidJulianDate (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSummer
[ OK ] SunsetTesting.HighLatitudeTestSummer (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSpring
[ OK ] SunsetTesting.HighLatitudeTestSpring (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestWinter
[ OK ] SunsetTesting.HighLatitudeTestWinter (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointMay
[ OK ] SunsetTesting.SouthernMostPointMay (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointWinter
[ OK ] SunsetTesting.SouthernMostPointWinter (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunrise
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunset
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunset (0 ms)
[ RUN ] SunsetTesting.InvalidNegativeTimezone
[ OK ] SunsetTesting.InvalidNegativeTimezone (0 ms)
[ RUN ] SunsetTesting.InvalidPositiveTimezone
[ OK ] SunsetTesting.InvalidPositiveTimezone (0 ms)
[----------] 22 tests from SunsetTesting (1 ms total)
[----------] Global test environment tear-down
[==========] 22 tests from 1 test suite ran. (1 ms total)
[ PASSED ] 22 tests.
And for Particle build release 1.5.2
Serial monitor opened successfully:
Running test Arlington Heights Sunrise: passed
Running test Arlington Heights Sunset: passed
Running test Moonphase: passed
Running test Capetown Sunrise: passed
Running test Moscow Sunrise: passed
Running test Buenos Airies Sunrise: passed
Running test Astronomical Sunrise in Arlington Heights: passed
Running test Astronomical Sunset in Arlington Heights: passed
Running test Nautical Sunrise in Arlington Heights: passed
Running test Nautical Sunset in Arlington Heights: passed
Running test Civil Sunrise in Arlington Heights: passed
Running test Civil Sunset in Arlington Heights: passed
Running test Valid Julian Date: passed
Running test Point Barrow Summer: passed
Running test Point Barrow Sprint: passed
Running test Point Barrow Winter: passed
Running test Usharia Argentina May: passed
Running test Usharia Argentina Winter: passed
Running test Fractional Sunrise IST: passed
Running test Fractional Sunset IST: passed
Running test Check above 67: passed
Version 1.1.1
I realized there are significant challenges for Windows users due to the cased nature of the filenames. I decided to remove those filename issues. Starting with this release, you must use
#include <sunset.h>
instead of the older SunSet.h. This was too long in coming, and will make it easier to use the library in a variety of environments.
I apologize to those who got used to the old way, hopefully this change isn't too big.
Testing for Linux on Ubuntu 20.04
[==========] Running 20 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 20 tests from SunsetTesting
[ RUN ] SunsetTesting.ValidReturnValueSunrise
[ OK ] SunsetTesting.ValidReturnValueSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueSunset
[ OK ] SunsetTesting.ValidReturnValueSunset (0 ms)
[ RUN ] SunsetTesting.MoonPhase
[ OK ] SunsetTesting.MoonPhase (0 ms)
[ RUN ] SunsetTesting.NegativeLatitudeCapeTown
[ OK ] SunsetTesting.NegativeLatitudeCapeTown (0 ms)
[ RUN ] SunsetTesting.PositiveLongitudeMoscow
[ OK ] SunsetTesting.PositiveLongitudeMoscow (0 ms)
[ RUN ] SunsetTesting.AllNegativeBuenosAires
[ OK ] SunsetTesting.AllNegativeBuenosAires (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidJulianDate
[ OK ] SunsetTesting.ValidJulianDate (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSummer
[ OK ] SunsetTesting.HighLatitudeTestSummer (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSpring
[ OK ] SunsetTesting.HighLatitudeTestSpring (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestWinter
[ OK ] SunsetTesting.HighLatitudeTestWinter (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointMay
[ OK ] SunsetTesting.SouthernMostPointMay (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointWinter
[ OK ] SunsetTesting.SouthernMostPointWinter (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunrise
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunset
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunset (0 ms)
[----------] 20 tests from SunsetTesting (1 ms total)
[----------] Global test environment tear-down
[==========] 20 tests from 1 test suite ran. (1 ms total)
[ PASSED ] 20 tests.
Testing for Particle build system version 1.5.2
Serial monitor opened successfully:
Running test Arlington Heights Sunrise: passed
Running test Arlington Heights Sunset: passed
Running test Moonphase: passed
Running test Capetown Sunrise: passed
Running test Moscow Sunrise: passed
Running test Buenos Airies Sunrise: passed
Running test Astronomical Sunrise in Arlington Heights: passed
Running test Astronomical Sunset in Arlington Heights: passed
Running test Nautical Sunrise in Arlington Heights: passed
Running test Nautical Sunset in Arlington Heights: passed
Running test Civil Sunrise in Arlington Heights: passed
Running test Civil Sunset in Arlington Heights: passed
Running test Valid Julian Date: passed
Running test Point Barrow Summer: passed
Running test Point Barrow Sprint: passed
Running test Point Barrow Winter: passed
Running test Usharia Argentina May: passed
Running test Usharia Argentina Winter: passed
Running test Fractional Sunrise IST: passed
Running test Fractional Sunset IST: passed
Running test Check above 67: passed
Version 1.1.0
This is a new major version as it does a lot to the code base and adds a lot of new API's
- Lots of new tests, though I still need to add a bunch
- Added a micro test for the Particle Photon to run against commits for regressions
- Updated a lot of documentation, with a plan to do more when I can
- Added new API's for different meteorologic sunsets other than the standard one
This release does to primary things
- Adds the ability to calculate Astronomical, Nautical, and Civil sunrise and sunset
- Adds the ability to use fractional timezones
Beyond that, I have discovered the following issues
- ESP8266 does not handle this code well
The ESP notes are in the README on the front page, but the 8266 is probably not the best choice to use with this code as it doesn't always work. It basically proves that whatever system you use, it must be 32 bits and must have a dedicated FPU. The 8266 doesn't seem to have a true dedicated FPU, which is why you probably shouldn't use it.
Test results
Linux G++ Ubuntu 20.04
[==========] Running 20 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 20 tests from SunsetTesting
[ RUN ] SunsetTesting.ValidReturnValueSunrise
[ OK ] SunsetTesting.ValidReturnValueSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnValueSunset
[ OK ] SunsetTesting.ValidReturnValueSunset (0 ms)
[ RUN ] SunsetTesting.MoonPhase
[ OK ] SunsetTesting.MoonPhase (0 ms)
[ RUN ] SunsetTesting.NegativeLatitudeCapeTown
[ OK ] SunsetTesting.NegativeLatitudeCapeTown (1 ms)
[ RUN ] SunsetTesting.PositiveLongitudeMoscow
[ OK ] SunsetTesting.PositiveLongitudeMoscow (0 ms)
[ RUN ] SunsetTesting.AllNegativeBuenosAires
[ OK ] SunsetTesting.AllNegativeBuenosAires (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidAstronomicalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidNauticalSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidNauticalSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunriseArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunriseArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidCivilSunsetArlingtonHeights
[ OK ] SunsetTesting.ValidCivilSunsetArlingtonHeights (0 ms)
[ RUN ] SunsetTesting.ValidJulianDate
[ OK ] SunsetTesting.ValidJulianDate (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSummer
[ OK ] SunsetTesting.HighLatitudeTestSummer (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestSpring
[ OK ] SunsetTesting.HighLatitudeTestSpring (0 ms)
[ RUN ] SunsetTesting.HighLatitudeTestWinter
[ OK ] SunsetTesting.HighLatitudeTestWinter (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointMay
[ OK ] SunsetTesting.SouthernMostPointMay (0 ms)
[ RUN ] SunsetTesting.SouthernMostPointWinter
[ OK ] SunsetTesting.SouthernMostPointWinter (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunrise
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunrise (0 ms)
[ RUN ] SunsetTesting.ValidReturnFractionalTimezoneSunset
[ OK ] SunsetTesting.ValidReturnFractionalTimezoneSunset (0 ms)
[----------] 20 tests from SunsetTesting (1 ms total)
[----------] Global test environment tear-down
[==========] 20 tests from 1 test suite ran. (1 ms total)
[ PASSED ] 20 tests.
Particle Photon 1.5.2
Serial monitor opened successfully:
Running test Arlington Heights Sunrise: passed
Running test Arlington Heights Sunset: passed
Running test Moonphase: passed
Running test Capetown Sunrise: passed
Running test Moscow Sunrise: passed
Running test Buenos Airies Sunrise: passed
Running test Astronomical Sunrise in Arlington Heights: passed
Running test Astronomical Sunset in Arlington Heights: passed
Running test Nautical Sunrise in Arlington Heights: passed
Running test Nautical Sunset in Arlington Heights: passed
Running test Civil Sunrise in Arlington Heights: passed
Running test Civil Sunset in Arlington Heights: passed
Running test Valid Julian Date: passed
Running test Point Barrow Summer: passed
Running test Point Barrow Sprint: passed
Running test Point Barrow Winter: passed
Running test Usharia Argentina May: passed
Running test Usharia Argentina Winter: passed
Running test Fractional Sunrise IST: passed
Running test Fractional Sunset IST: passed
Running test Check above 67: passed
Version 1.0.11
Fixes related to building in the Arduino and PlatformIO environments.
Version 1.0.10
Fixing a couple of issues. I had a spelling mistake in src/sunset.h which came about due to some changes by the Particle.io team. And, the library.properties didn't work for the Arduino IDE.