tl;dr: the locations database consumed by libgweather is going to be split into its own repository during the GNOME 50 development cycle. There are no functional changes for consumers of the database and users of libgweather.

Since its very beginning, libgweather provided the locations database used to build the list of time zones, cities, airports, and weather stations. The database was tied to the release cycle of the library itself, and it required bumping the version of the library even if there were no changes in it, just to ensure that the database, and the localisation of its text, would be up to date.

Unfortunately, this requirement introduced a lot more work than necessary—especially for a low-maintenance library like libgweather. The removal of the UI elements from the library (a necessary step for the port of various core applications to GTK4 and libadwaita) changed the way locations are searched, which led to an increased amount of requests for adding missing cities; reviewing these changes is time consuming, mainly because they require going through validating coordinates, population size, and (more importantly) whether or not the city has a nearby weather station accessible through the various services available to libgweather. On top of that, it requires freezing the changes submitted to conform to string freeze.

For these reasons, I have worked on moving the locations database to its own separate module, in a similar fashion as the timezone database. The locations database is installed in its own location, and provides a pkg-config file for discoverability. Libgweather depends on the locations database, and loads it from disk just like before. There are no functional changes for consumers of the libgweather API.

For integrators, libgweather 4.6 will gain a new dependency in the form of the gweather-locations project.

For translators, the gweather-locations database works exactly like translating the locations in libgweather, except they live in their own repository now.

The change has not been integrated, yet, but I plan to merge everything into the main development branch by the end of week 36. For more information you can check:

The gweather-locations database will be moved under the GNOME namespace as well.

Once the change is merged, I will move all issues in the libgweather project related to locations to the gweather-locations project; the open merge requests will need to be closed and then manually re-opened, so please be patient while I do that.

I plan to release gweather-locations a bit more often than libgweather.

I’d like to experiment a bit with the localisation schedule, to avoid the “merge all the changes at the end of the cycle” rush, but I don’t have a strict plan for this, so I welcome feedback from the localisation teams.

12 Likes

Hey, I’m not sure it’s the best idea but what about using Wikidata for that purpose?

I am not sure I follow what Wikidata would be useful for, or how it relates to having a database available separately from the library.

The weather locations database is used for timezones and cities, as well as weather stations to be used with weather services.

We could use Wikidata to populate the database, sure; the Wikidata content would still need to be massaged into a format that can be consumed by libgweather and friends, in order to be available off line, to be translated by the GNOME localisation teams, and to be usable with weather services.

If you want to work on getting city and airport information from Wikidata, and then converting it into the gweather locations database, you’re absolutely free to do so; I’d be happy to review a merge request that adds more cities, as well as a merge request that adds population sizes to all cities in the locations database, so we can sort them by relevance—and thus fix the search patterns for people asking for the timezone or the weather in London, UK, and getting suggested London, Kiribati instead.

The merge request has been merged into the main development branch; the gweather-locations project has been moved to the GNOME group.

I have opened an issue for adding gweather-locations to Damned Lies as well.

3 Likes

This topic was automatically closed 45 days after the last reply. New replies are no longer allowed.