Aerial: Weather through Yahoo's API

Created on 9 Apr 2020  ·  79Comments  ·  Source: JohnCoates/Aerial

This is just a placeholder to put progress there. I applied a few weeks back to get access to Yahoo!'s Weather API, and (quite understandably, after a bit of delay), got the approval today for Aerial !

I'll track progress here on the implementation of a new Weather info in Aerial.

Most helpful comment

@DJay-X @rschiang

I spent the whole afternoon on this, but I found a nice tool here to export SF Symbols to PDF : https://github.com/davedelong/sfsymbols

Took a while too to map the icons but there was enough to get it all mapped correctly to Yahoo's stuff, so here's how it look right now:

Capture d’écran 2020-04-24 à 18 22 47

I've added a new option so you can choose which icon set you want, I put those as default as they look cooler in my opinion (and don't require a https request):

Capture d’écran 2020-04-24 à 18 36 05

Couple of things, your Weather settings will be reset, and the symbols seem to be pretty thin. The tool I used above was supposed to export the symbols as "regular" but it does look thin to me. I'm getting to like it like that, but it maybe could have used a bit more weight (sadly with no native SF Symbols support I need to export the whole thing so I can't change it on the fly).

Also you should get night icons now too on both sets. Let me know how that goes:

https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta6/Aerial.saver.zip

All 79 comments

Quick update, it's still not ready but getting there :
Capture d’écran 2020-04-17 à 19 27 50

Should have a build ready soonish

Weather??? That would be cool!

So here's a first build, this is still to be improved but it's mostly usable:

Capture d’écran 2020-04-18 à 18 48 46

There's a new Weather info, that's disabled by default. You have to enable it first. Then you need to type your City name at the bottom. After typing, press enter to validate the field. Then press the test button, you should see a new window pop after a bit :

Capture d’écran 2020-04-18 à 18 48 42

You can play a bit with the textfield if needed. The lookup is done by Yahoo and usually returns something even if you type gibberish. At a later point I'll add an option to use Core Location to get your location, but that's not in this beta, and that path will likely crash if you change the setting from Manually Specify so don't ;)

Capture d’écran 2020-04-18 à 18 48 53

You should get a box with the current conditions for your picked location. There's a lot more information I get from Yahoo! Weather, including some forecasts. I'll see how I can add that too as an option in a further build.

beta1 here : https://github.com/JohnCoates/Aerial/releases/download/v.1.8.3beta1/Aerial.saver.zip

I mistakenly uploaded the wrong version yesterday, so here's beta 2 with weather, sorry for those who tried beta1 : https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta2/Aerial.saver.zip

FWIW, I'm only getting Celsius vs. Fahrenheit and only for Cupertino, CA, as opposed to my location in neighboring Sunnyvale, CA.

FWIW, I'm only getting Celsius vs. Fahrenheit

I added the switch but forgot to code it 🙈 It's fixed for next beta !

and only for Cupertino, CA, as opposed to my location in neighboring Sunnyvale, CA.

Some cities didn't work it seem, including Sunnyvale, I think I fixed that too.

I should have a new beta with the fixes in a couple of hours, thanks for the report !

@r8ders2k This version includes the fixes I talked about above, let me know how that works : https://github.com/JohnCoates/Aerial/releases/download/v.1.8.3beta3/Aerial.saver.zip

@glouel It appears to be working, as Yahoo says it's 62º F for Sunnyvale, CA and Aerial is also showing 62º F in screen saver mode and in the information returned when selecting the Test button.

Thanks! Aerial just keeping getting better and better!

This is amazing; thanks!

One bit of UI feedback - it wasn't clear to me that I needed to press enter after typing in my location. I entered a location, immediately hit 'Test', and, upon seeing location information for Paris (the placeholder / suggested text in the location field), I thought it was not working until I came here and saw your instructions.

Now, granted, I am a very dumb person, so take this feedback with a grain of salt ... and thanks again for this great new feature!

This is amazing; thanks!

One bit of UI feedback - it wasn't clear to me that I needed to press enter after typing in my location. I entered a location, immediately hit 'Test', and, upon seeing location information for Paris (the placeholder / suggested text in the location field), I thought it was not working until I came here and saw your instructions.

Now, granted, I am a very dumb person, so take this feedback with a grain of salt ... and thanks again for this great new feature!

Hi @SnarkNerd

Oh don't worry it's not you ! For some reason that's the default way Textfields work in Xcode, I had the same issue with other ones (like when you need to input a message etc) and solved it there back then. It's just that when I was testing it before release, I couldn't remember how and was in a hurry so I just put the beta up as is ;)

I'll fix it for the next beta because it's just not intuitive at all !

@SnarkNerd I fixed the textfield thing so it should be a lot more intuitive now. New version also fix the vertical alignment of the icon and the text so it looks a bit better.

https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta5/Aerial.saver.zip

@glouel thanks so much for following up on that! Wasn't necessary to inform me specifically, but I appreciate it. Thanks for making this great product; it's one of my favorite things about my Mac!

Thanks for your great work @glouel
I was wondering if there are flat weather icons available.
Noticing the sun is shining on the screensaver, although we are at night her in Germany right now. ;)
Bildschirmfoto 2020-04-23 um 22 58 02

Yahoo Weather is showing this icon for Frankfurt am Main, DE
Icon [email protected]
fair_night@2x

Any chance to customize this?

Thanks again for the time you are investing and your great work you do for the community.

@DJay-X

I'm using the icons that Yahoo provide as part of the API, as there are about 40 needed (way more than I could find in font awesome or something like that as there are so many "conditions" that they can return). Those icons are different than those that they use for their own site though (which are flat indeed and not approved for 3rd party use as far as I understand).

But ! They do provide night icons, which I'm not displaying on this beta right now. So in that case that would be this instead of your sun icon : https://s.yimg.com/zz/combo?a/i/us/nws/weather/gr/32n.png

This should be in next beta ;)

Just to add that Apple do provide official weather icons in SF Text:

SF Symbols

which also came with all range of weights — from ultra thin to black. If we’re ever adopting flat icons, I’d say these could be the first choice.

I think those are Catalina only ? Could be an extra option, there seems to be many, although I'm not sure there are enough to map to every single one from Yahoo, there's a list here : https://developer.yahoo.com/weather/documentation.html#codes

There are actually 48 condition codes, I don't know if there's enough but worth having a look.

@rschiang

Quick update, SF Symbols looked super cool... except, of course, it's not even available on macOS, not even Catalina 🙈

You can export to SVG, but that's not natively supported either, so you need a lib just for that, or convert the SVGs to PDF. I'll try to see if there are other sets out there already, but this is disappointing that macOS was ignored again for this API.

Edit : I did find a tool that supposedly automated that but it crashes, alas, contacted the author, we'll see.

@DJay-X @rschiang

I spent the whole afternoon on this, but I found a nice tool here to export SF Symbols to PDF : https://github.com/davedelong/sfsymbols

Took a while too to map the icons but there was enough to get it all mapped correctly to Yahoo's stuff, so here's how it look right now:

Capture d’écran 2020-04-24 à 18 22 47

I've added a new option so you can choose which icon set you want, I put those as default as they look cooler in my opinion (and don't require a https request):

Capture d’écran 2020-04-24 à 18 36 05

Couple of things, your Weather settings will be reset, and the symbols seem to be pretty thin. The tool I used above was supposed to export the symbols as "regular" but it does look thin to me. I'm getting to like it like that, but it maybe could have used a bit more weight (sadly with no native SF Symbols support I need to export the whole thing so I can't change it on the fly).

Also you should get night icons now too on both sets. Let me know how that goes:

https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta6/Aerial.saver.zip

Yay! You did it! Great job. And thank you so much. You have fulfilled my wish.
I agree the symbol is not that crisp, maybe because it is thin. But that's high-level whining. ;)
It look good and it fits perfect to the all-in-all design with the flat symbols.

Maybe you refine it over time but I see no existential need right now. You are fantastic and made my day. Thank you again. 😌🙏

AWESOME!

(I think my day/night detection algorithm may be a bit off. It was off by one hour here, I'm not sure how it is on other locales. 1hr after expected, I do get the correct night icons here)

https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta7/Aerial.saver.zip

There was a crash with some sunny conditions, as I had misnamed an icon in the code... This version fixes it, sorry about that :)

When I activate weather, the screen goes blank after a fraction of a second. I don't know what happened but it used to work on beta6. I attached today's part of the log (The whole thing is too big)
Many thanks
Hans
AerialLog.txt

Hi @hansw1204

So what you describe looks like a crash. Could you launch Console and look for a crash log ? It's usually called legacyScreensaver, or something that sounds like one.

Also, can you try pushing the test button from the UI, see if that crashes too ? That may be a quicker way to generate a crash log too.

Sorry about that in any case, hopefully I can fix it quickly !

I cannot find a Crash Log. When I try and test it in Preferences I get a hang and have to force quit Preferences.

After that, I cannot get into Aerial Sceensaver Options anymore and have to re-install a previous version.

Hmm. Could you attach your preference file here so I can give it a shot ?

It's ~/Library/Containers/com.apple.ScreenSaver.Engine.legacyScreenSaver/Data/Library/Preferences/com.JohnCoates.Aerial.plist

Edit: Also mention your timezone so I can replicate fully ;)

Here it is (renamed because otherwise not selctable)
com.JohnCoates.Aerial.plist.txt

Ok I'm super sorry, I gave you the wrong path :(

Could you give me ~/Library/Containers/com.apple.ScreenSaver.Engine.legacyScreenSaver/Data/Library/Preferences/ByHost/com.JohnCoates.Aerial.{UUID}.plist instead ? That's the real preferences file for Aerial, sorry about the mixup I messed up !

The difference is it's in a ByHost subfolder. UUID is a random string of numbers, it's unimportant by itself.

Ok, I tried it here and sadly I couldn't make it crash (it's possible the weather condition changed or something like that).

If you're willing to test again, I'm wondering since it seems you were using the color icons, could you try using the flat ones see if that crashes too ? The flat icons should be more stable right now I think in beta 7.

I'll give it another shot tomorrow see if I can reproduce again at a different time.

Same with flat icons. No rush. The weather is just icing on the cake

@hansw1204 and just to be clear, beta6 works fine for you ?

I tried but now it is not working either. I suspect it has nothing to do with Aerial but something on my system. I’ll check security things and firewalls etc.

I tried but now it is not working either. I suspect it has nothing to do with Aerial but something on my system. I’ll check security things and firewalls etc.

@hansw1204 I was thinking about your issue this morning, especially when you mentioned that you had to force quit System Preferences after pressing test, so I did a quick check with no network. If you try the test button with no network, or the full screensaver with weather enabled, Aerial does not hang here, it fails gracefully (it doesn't show an error in the test thing, it should, I'll see about adding that) and just doesn't show the weather info at all.

So there are a couple of ways it could hang in my opinion:

  • you have an application level firewall (something like little snitch) that keeps the network connection open but doesn't let it go through (until you accept/deny). That may hang Aerial
  • you have a router level firewall that does that kind of thing (seems a bit weird)
  • you have a pi-hole or some equivalent dns filtering, mayyybe that could cause that too ?

I'd suggest double checking whatever firewall you have, FYI, the API call to yahoo is at this address : https://weather-ydn-yql.media.yahoo.com/forecastrss

Thanks, I'll check that. I was also able to get a crash report now (see attached)
ScreenSaverEngineCrash.txt

Thanks ! I would also suggest making sure in Updates, that you have all the auto updates disabled, just in case. That could also be what your firewall flags.

The crash log is intriguing but I have a hard time making sense of it. Let me know how it goes.

Checked with security measures off and it's the same thing. No worries, though, I can live without the weather display

Thanks for following up. Just to be clear, because your crash log gave me some doubts, the betas work as long as you don’t enable Weather right ?

@hansw1204 if you are willing I put up a new beta, I tried adding more debugging, and possibly a fix for some condition I didn't properly checked for. Let me know if it works better, I would suggest if you can, try the test button, and if it crash, send me the last few lines of the debugLog !

To all, I made the flat icons crispier, they are still the same thinness, which is regular. I'm still unsure on trying thicker icons, I did make a script to generate the icons though so while it still take a bit of effort, I can regenerate new icons easily.

https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta8/Aerial.saver.zip

Thank you so much Guillaume! 1.8.3b8 works now!
cheers,
Hans
EDIT: also works with color icons!

Woo !

Could you please send me the log of pressing the test button ? I think that you'll always get day icons right now with my "fix", I'd love to understand how I messed up :) I think I probably have a locale issue with the date conversion, need to make sure I get it right thanks !

Here you go. I also attached a screenshot of the Test pop-up.
AerialLog.txt
TestScreenShot

Sorry, missed your earlier post. Yes, b7 worked as long as weather was not enabled.

Great ! I think I see what happens, you won't get night time icons until the next beta, again many thanks for sticking with the testing, that was super helpful to me.

Edit : no worries now, I know where it happens so that's a good start !

Thank you for such an amazing utility and your stellar support! It's the only screensaver I use. Simply brilliant!

@glouel Love the new Icon. Looks perfect I think.
However, maybe something to mention, here in Germany it's 21:42 and I get the sun/cloudy icon. :)
Thanks again.

Napkin 30 04 20, 9 46 55 PM

Hi @DJay-X !

I think my night calculation is off (on top of crashing earlier), I know it's off by one hour here somehow. You had sunset at 8h45 according to your log. Could you tell me if you have night right now or still not ?

I need to review the whole night thing, looks like I got it pretty wrong 🙈 Will try to have a look tomorrow thanks for the report !

I'll check this eventing at sunset and an hour after. I'll let you know. 😌 Thanks for your passion for perfection. 😉

@DJay-X please try again with beta9, I'm 99% sure I fixed it. Basically it was wrong because of daylight savings time. Icons should also be much sharper and there's a new icon battery indicator.

@hansw1204 could you give beta9 a try and attach the log from pressing the test button ? That would be helpful because I can't seem to make sense of the specific issue you had with night detection. Thanks ! I ended up installing a VM with Catalina with US settings and couldn't replicate what you seemed to have.

https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta9/Aerial.saver.zip

Here you go.

AerialLog.txt

Here you go.

AerialLog.txt

That was quick, thanks a lot ! Looks like you still won't have night yet with this version and I'm even more puzzled.

Could I ask you if there's anything special with your Locale settings on your Mac ? Are you using default US settings or did you tweak things with hour format or something like that ?

I'll keep thinking about it, it's... weird. You are using Catalina by the way, correct ?

Ah, sorry, maybe it's because I use this option for time:
AerialScreenShot
EDIT:
And yes, I am on Catalina 10.15.4

@hansw1204 That should be fine, because I'm not actually using those right now, I'm using the sunrise/sunset values that I get from Yahoo (because I can't always count on having sunrise/sunset from your location). I still haven't implemented the "Use current" location option available in Weather, so only the "Manually specify" works. And it looks like you are using it.

I was thinking more about your Language & Region settings in macOS's System Preference, those :

Capture d’écran 2020-05-01 à 20 53 06

Did you tweak something in that panel ?

The only thing I have different is that I use Monday as the first day of the week instead of Sunday.
However, I have not selected "Manual Specific" but "Calculate From" for the sun set/sun rise determination

The only thing I have different is that I use Monday as the first day of the week instead of Sunday.
However, I have not selected "Manual Specific" but "Calculate From" for the sun set/sun rise determination

Sorry, I wasn't clear, whatever is in Aerial's Time tab should be irrelevant, I double checked and your settings here are fine, they are independent of what's happening.

What I meant with manually specify are the Weather settings, like this :

Capture d’écran 2020-05-01 à 23 12 29

Please make sure you are on Manually Specify there :) (but I'm 99% sure you already have)

I also tried the monday thing but no luck, I have a couple more ideas, I'll think about it and get back to you ! Thanks !

Yes, on the Weather Tab I do have "Manually Specify" selected. Sorry about the confusion.

@glouel Now Aerial isn't starting at all. 🤷🏼‍♂️ A Video is just to see for less than a second and then the screen is dark. Can't even open Screensaver-Settings.

@glouel Now Aerial isn't starting at all. 🤷🏼‍♂️ A Video is just to see for less than a second and then the screen is dark. Can't even open Screensaver-Settings.

Damn it ! Could you go into Console.app and look for a crash log (although those are not super useful since Catalina) ? Sorry about that, must have missed something again...

Hi. This morning, the screensaver is working again. But still couldn't open the settings. I had to kill System Preferences. The Debug from there is of course not showing a lot now. Sorry.
Seems to be something with "after sunset" or a special condition yesterday night? 🤔
The console log didn't show anything when I type legacyScreensaver.
Catalina, yes.
AerialLog.txt

@DJay-X that log might be super helpful, I'll try something here and let you know.

Regarding console, if you can still replicate, I would suggest opening console.app first, erase, then filter by "legacyScreen" (it's sometimes abbreviated to "legacyScreenSave" for some reason). Then launch SysPref, it should fill up way before it crashes. Thanks !

Capture d’écran 2020-05-02 à 13 24 52

Edit : completely forgot to ask, did you have the battery indicator enabled? I made a lot more changes there and those were probably more rushed, I could see that code crashing, although your log kinda point to weather.

I will try this evening to reproduce the error and check the console log.
I don't have battery indicator enabled. iMac late 2012 here.

I will try this evening to reproduce the error and check the console log.
I don't have battery indicator enabled. iMac late 2012 here.

Thanks for your answer. I'm trying to harden pretty much everything I could think of right now, I'll have a new beta that hopefully will fail gracefully and not crash. Should take an hour or so, will ping you back.

iMac 2012 doesn't have retina so in the early betas the PDF icons probably looked pretty bad. I ended up booting my old 2011 MBA here and the weather icon look decent on it's non retina screen (the temperature looks less sharp than the icon somehow, not sure if it's in my head). The Yahoo logo looks terrible though as I'm using the retina version of the logo all the time ! I'll put that on my list.

@DJay-X I've hardened pretty much everything I saw in Weather, so hopefully you won't crash anymore and things will work smoothly from now on. You may see a wrench or a red square if something goes really wrong. I haven't fixed the yahoo logo though on non retina :) Should you see something weird like that, please attach the log as I've added more debug information to be sure.

@hansw1204 when you have some time, could you try again the Test button and attach the log ? I tried two new ideas, just in case.

Edit, beta 11 with the icon fix :
https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta11/Aerial.saver.zip

Hi glouel,
I'm live in Fuzhou, Fujian, China. I enter true but still cannot get city info.
Screen Shot 2020-05-03 at 00 43 47
Screen Shot 2020-05-03 at 00 44 11
Screen Shot 2020-05-03 at 00 48 19
Screen Shot 2020-05-03 at 00 48 37

Fuzhou, Fujian, China

Hi @cxy5014 !

I just checked here and it works with "Fuzhou", "Fuzhou, China" and "Fuzhou, CN". So my guess is that maybe Yahoo's API is blocked in China. Any chance you could attach the debuglog ? This might give some information but I'm afraid the API may be blocked :(

01:15:13 : avInit .saver (0.0, 0.0, 296.0, 184.0) p: true o: true
01:15:13 : AerialView setup init (V1.8.3beta10) preview: true
01:15:13 : Time Management initialized
01:15:13 : Display Detection initialized
01:15:13 : Display Detection
01:15:13 : 1 display(s) detected
01:15:13 : 1cm = 49.21259916429594 points
01:15:13 : npass: dict [__C.NSDeviceDescriptionKey(_rawValue: NSScreenNumber): 2034333696, __C.NSDeviceDescriptionKey(_rawValue: NSDeviceIsScreen): YES, __C.NSDeviceDescriptionKey(_rawValue: NSDeviceResolution): NSSize: {72, 72}, __C.NSDeviceDescriptionKey(_rawValue: NSDeviceSize): NSSize: {1366, 768}, __C.NSDeviceDescriptionKey(_rawValue: NSDeviceColorSpaceName): NSCalibratedRGBColorSpace, __C.NSDeviceDescriptionKey(_rawValue: NSDeviceBitsPerSample): 8]
01:15:13 : bottomLeftFrame (0.0, 0.0, 1366.0, 768.0)
01:15:13 : src orig : (0.0, 0.0)
01:15:13 : left 0.0 below 0.0
01:15:13 : [id=2034333696, width=1366, height=768, bottomLeftFrame=(0.0, 0.0, 1366.0, 768.0), topRightCorner=(1366.0, 768.0), isMain=true, backingScaleFactor=1.0]
01:15:13 : (0.0, 0.0, 1366.0, 768.0)
01:15:13 : Display Detection Done
01:15:13 : Using : nil
01:15:13 : setting up player layer with bounds/frame: (0.0, 0.0, 296.0, 184.0) / (0.0, 0.0, 296.0, 184.0)
01:15:13 : Using dot workaround for video driver corruption
01:15:13 : Manifest init
01:15:13 : app support exists
01:15:13 : No customvideos.json at : /Users/XXX/Library/Containers/com.apple.ScreenSaver.Engine.legacyScreenSaver/Data/Library/Application Support/Aerial/customvideos.json
01:15:13 : isManifestCached 10 true
01:15:13 : isManifestCached 11 true
01:15:13 : isManifestCached 12 true
01:15:13 : isManifestCached 13 true
01:15:13 : 2020-05-02
01:15:13 : Interval : Optional(-90913.96394300461)
01:15:13 : No need to check for new videos
01:15:13 : Manifests files were not loaded in class
01:15:13 : Files were not already loaded in memory
01:15:13 : Manifests are cached on disk, loading
01:15:13 : Poi Strings Provider initialized
01:15:13 : Preferred languages : ["en-US", "zh-Hans-US"]
01:15:13 : Best matched language : en
01:15:13 : Defaulting to bundle
01:15:13 : path : /Library/Screen Savers/Aerial.saver/Contents/Resources/en.json
01:15:13 : Community JSON : 99 entries
01:15:13 : Using exiting customCacheDirectory : /Users/XXX/Library/Containers/com.apple.ScreenSaver.Engine.legacyScreenSaver/Data/Library/Application Support/Aerial
01:15:13 : cache to be used : Optional("/Users/XXX/Library/Containers/com.apple.ScreenSaver.Engine.legacyScreenSaver/Data/Library/Application Support/Aerial")
01:15:14 : Total videos processed : 99 callbacks : 0
01:15:14 : Setting player for all player layers in []
01:15:14 : initvideocache
01:15:15 : cached video file with length: 214607394
01:15:15 : playing video (OFFLINE MODE) : file:///Users/XXX
/Library/Containers/com.apple.ScreenSaver.Engine.legacyScreenSaver/Data/Library/Application%20Support/Aerial/comp_GMT026_363A_103NC_E1027_KOREA_JAPAN_NIGHT_v18_SDR_PS_20180907_SDR_2K_AVC.mov
01:15:15 : observing current item >
01:15:15 : observeValue Optional("readyForDisplay") false (0.0, 0.0, 296.0, 184.0)
01:15:15 : AssetLoaderDelegate deinit
01:15:15 : backing change 1.0 isDisabled: false frame: (0.0, 0.0, 296.0, 184.0) preview: true
01:15:15 : observeValue Optional("readyForDisplay") true (0.0, 0.0, 296.0, 184.0)
01:15:15 : start playback: (0.0, 0.0, 296.0, 184.0) (0.0, 0.0, 296.0, 184.0)
01:15:16 : startAnimation frame (0.0, 0.0, 296.0, 184.0) bounds (0.0, 0.0, 296.0, 184.0)
01:15:16 : restarting playback
01:15:16 : stopAnimation
01:15:16 : pwc init2
01:15:17 : Callback after manifest loading
01:15:17 : Looking for outdated files
01:15:17 : No old files found
01:15:18 : Aerial control panel V1.8.3beta10
01:15:18 : Cache size : 26.61 GB
01:15:18 : cvcinit2
01:15:18 : cvcawake
01:15:18 : wdl
01:15:43 : === YW: Starting locationMode

Screen Shot 2020-05-03 at 01 24 25
I already have an proxy enabled, but it seem not work.

@DJay-X soooo, trying the china location, I ended up finding exactly what your crash was. Good news is, beta10 would have fixed it, I had forgotten to include some night icons (cloud moon for example). But somehow some other icons that I had added weren't there. So after removing and readding everything, and testing them all, I'm 99.999% sure that every icon is here now in beta 11. I hate releasing 2 versions in a day but I think it's worth it in that case :

https://github.com/JohnCoates/Aerial/releases/download/v1.8.3beta11/Aerial.saver.zip

@cxy5014 reading your log there's one thing I can think of, please make sure you choose manually specify where I circled in red :

Capture d’écran 2020-05-02 à 19 26 18

This may be the issue, the "Use current location" you picked doesn't work right now.

@cxy5014 on top of what I said above, please try this URL : https://weather-ydn-yql.media.yahoo.com/forecastrss?location=sunnyvale,ca

Let me know what it says, it should say something like:
This XML file does not appear to have any style information associated with it. The document tree is shown below.


Please provide valid credentials. OAuth oauth_problem="OST_OAUTH_PARAMETER_ABSENT_ERROR", realm="yahooapis.com"


Please provide valid credentials. OAuth oauth_problem="OST_OAUTH_PARAMETER_ABSENT_ERROR", realm="yahooapis.com"

Edit: It's also possible that your proxy work but Aerial ignores it. I need to have a further look at this, I had conflicting report about this.

@DJay-X soooo, trying the china location, I ended up finding exactly what your crash was.

Wasn't me with the china location. I'm still in Germany.
But hey.. it's a small world after all. ;)

I was the one with the crash after sunset or at night on iMac late 2012.
With beta10 there was no crash anymore for now. Log attached. Maybe it gives you some help somehow anyway.
Now I download beta11 and will see if there is something else unexpected. But I have a good feeling. Icons look good in my older iMac. 👍

console_legacyScreen.txt
Debug_10.txt

Wasn't me with the china location. I'm still in Germany.
But hey.. it's a small world after all. ;)

I was the one with the crash after sunset or at night on iMac late 2012.

Yeah I know ! It's just that after trying that specific location from China, I ended up finding the missing icons (which I thought were there), and that very likely was the cause of your crashes yesterday ;) It was missing night cloud and night cloud+rain, you possibly had one of those conditions yesterday in Germany I guess.

With beta10 there was no crash anymore for now. Log attached. Maybe it gives you some help somehow anyway.
Now I download beta11 and will see if there is something else unexpected. But I have a good feeling. Icons look good in my older iMac. 👍

Awesome ! Finally getting there !

@cxy5014 on top of what I said above, please try this URL : https://weather-ydn-yql.media.yahoo.com/forecastrss?location=sunnyvale,ca

Let me know what it says, it should say something like:
This XML file does not appear to have any style information associated with it. The document tree is shown below.
http://yahoo.com">
yahoo:description
Please provide valid credentials. OAuth oauth_problem="OST_OAUTH_PARAMETER_ABSENT_ERROR", realm="yahooapis.com"

yahoo:detail
Please provide valid credentials. OAuth oauth_problem="OST_OAUTH_PARAMETER_ABSENT_ERROR", realm="yahooapis.com"

Edit: It's also possible that your proxy work but Aerial ignores it. I need to have a further look at this, I had conflicting report about this.

This XML file does not appear to have any style information associated with it. The document tree is shown below.


Please provide valid credentials. OAuth oauth_problem="OST_OAUTH_PARAMETER_ABSENT_ERROR", realm="yahooapis.com"


Please provide valid credentials. OAuth oauth_problem="OST_OAUTH_PARAMETER_ABSENT_ERROR", realm="yahooapis.com"

This is my safari respond.

@cxy5014 Ok so that looks good (the credential thing is normal). I will add some more debugging info in the next build, to try and understand what happens on your case. I'll get back to you, but probably not before tomorrow.

Can I choose the API for my weather? I want to use a faster and more accurate one, in China.

@zcccccc1 right now I only support Yahoo (as it's the only "free" one that worked worldwide that I could find that allowed apps, although it has issues in China apparently).

If you know one that's free/fast for China (and accessible outside/hopefully documented in English so I can implement it at least), let me know and I'll see what I can do.

To all, I finally released 1.9.0 with weather. There are a couple of changes/polish that I made last minute :

  • The alignments of the icon blocks are now fixed, putting weather on the left side of the screen was also not particularly nice in betas. Things correctly align with each other as intended (this is true also for the battery indicator).
    Capture d’écran 2020-05-25 à 14 45 15
  • I've added the ability to use macOS location services instead of manually specifying a city, for the nomads out there. For this to work, you need both Location Services enabled on your mac, and give Aerial the permission to use it. Pressing the test button will take care of it, in Catalina you'll get a prompt to allow "legacyScreenSaver" to access your location. Location is checked with macOS at Aerial's launch.

Capture d’écran 2020-05-25 à 15 29 07

For privacy reason, I've rounded up to 2 decimals the coordinates sent to Yahoo's API, which leaves a margin of error of 1km approximately. I think that's enough (this weather API doesn't have a very precise granularity from what I saw) but I'm willing to change that if needed.

I'll be closing this issue, feel free to open a new one if you find a bug, of if you have found another weather API that could be implemented for specific cases (China seems to be the biggest issue so far).

1.9.0 : https://github.com/JohnCoates/Aerial/releases/download/v1.9.0/Aerial.saver.zip

For the curious, I'm planning a few more things for 2.0.0 that I hope to get out before WWDC in a month or so. The focus will be mostly on the UI to enable/disable videos, and cache limits (with better defaults). I'll open another issue soon when I have a beta out ;)

Hopefully at WWDC we'll get a better screensaver API to fix all the issues introduced with Catalina !

Edit: Extra screenshots for the documentation
Capture d’écran 2020-05-25 à 15 44 37
Capture d’écran 2020-05-25 à 15 46 42
Capture d’écran 2020-05-25 à 15 58 33

Sorry for opening this up again, but is there a way to remove this annoying "powered by Yahoo" logo?

Sorry for opening this up again, but is there a way to remove this annoying "powered by Yahoo" logo?

Sorry, that's not possible, it's part of their attribution guidelines to be able to use the API, that's why it's in the preference panel too. I have no choice but to abide on that one to be able to use it. I made it as small as I could ;)

https://developer.yahoo.com/attribution/

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Pingren picture Pingren  ·  7Comments

arnsangra picture arnsangra  ·  3Comments

inopinatus picture inopinatus  ·  8Comments

1st picture 1st  ·  6Comments

vom513 picture vom513  ·  6Comments