Title: Refactor weather data fetching to use async/await to work on browser port by DrSkunk · Pull Request #185 · MicroPythonOS/MicroPythonOS · GitHub
Open Graph Title: Refactor weather data fetching to use async/await to work on browser port by DrSkunk · Pull Request #185 · MicroPythonOS/MicroPythonOS
X Title: Refactor weather data fetching to use async/await to work on browser port by DrSkunk · Pull Request #185 · MicroPythonOS/MicroPythonOS
Description: Summary convert weather data fetch path to async await DownloadManager.download_url(...) before JSON parsing schedule loads via TaskManager.create_task(...) from UI callbacks prevent overlapping fetch tasks and cancel in-flight task on pause Problem Opening the Weather app on the web port failed with: TypeError: object with buffer protocol required Root Cause In web-port/async context, DownloadManager.download_url(...) returns a coroutine. The previous sync flow passed that coroutine into ujson.loads(...), triggering the TypeError. Result The weather app now fetches data correctly on web port and keeps UI behavior consistent while loading/reloading.
Open Graph Description: Summary convert weather data fetch path to async await DownloadManager.download_url(...) before JSON parsing schedule loads via TaskManager.create_task(...) from UI callbacks prevent overlapping f...
X Description: Summary convert weather data fetch path to async await DownloadManager.download_url(...) before JSON parsing schedule loads via TaskManager.create_task(...) from UI callbacks prevent overlapping f...
Opengraph URL: https://github.com/MicroPythonOS/MicroPythonOS/pull/185
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:825f4bb2-0c19-f680-da90-b967f0161160 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | C77E:162B2:7AAFA78:AC0F2E1:6A5044C8 |
| html-safe-nonce | bc79c3682f9b1823569fe0c17013882c4e72865547c638616fb5e91728315c63 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDNzdFOjE2MkIyOjdBQUZBNzg6QUMwRjJFMTo2QTUwNDRDOCIsInZpc2l0b3JfaWQiOiI1MzcxNzE3MzI1NDY3Njk4Mzc2IiwicmVnaW9uX2VkZ2UiOiJpYWQiLCJyZWdpb25fcmVuZGVyIjoiaWFkIn0= |
| visitor-hmac | e0efdb6a5f97d8849bac3443ed7d9bdafbf27d4824ac17fa5c0c3b38fba6a03a |
| hovercard-subject-tag | pull_request:4001178159 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/MicroPythonOS/MicroPythonOS/pull/185/files |
| twitter:image | https://avatars.githubusercontent.com/u/1058174?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/1058174?s=400&v=4 |
| og:image:alt | Summary convert weather data fetch path to async await DownloadManager.download_url(...) before JSON parsing schedule loads via TaskManager.create_task(...) from UI callbacks prevent overlapping f... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | d6dc8294eb500fa36bbc57472d61fe87c522f9c3c1d64f70f4926f66a66a7efb |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/MicroPythonOS/MicroPythonOS git https://github.com/MicroPythonOS/MicroPythonOS.git |
| octolytics-dimension-user_id | 213598128 |
| octolytics-dimension-user_login | MicroPythonOS |
| octolytics-dimension-repository_id | 975472483 |
| octolytics-dimension-repository_nwo | MicroPythonOS/MicroPythonOS |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 975472483 |
| octolytics-dimension-repository_network_root_nwo | MicroPythonOS/MicroPythonOS |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | d90666eaf032b7eb8975a378efe38e37f4ebb96c |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width