[Pkg-xfce-commits] r8629 - in /goodies/trunk/xfce4-weather-plugin/debian: changelog patches/git_support-locationforecast-1.2.patch patches/git_use-locationforecast-1.2.patch patches/series
Jackson Doak
noskcaj-guest at moszumanska.debian.org
Thu Oct 2 04:20:08 UTC 2014
Author: noskcaj-guest
Date: Thu Oct 2 04:20:08 2014
New Revision: 8629
URL: http://svn.debian.org/wsvn/pkg-xfce/?sc=1&rev=8629
Log:
Add patches from upstream git to use locationforcast-1.2
Added:
goodies/trunk/xfce4-weather-plugin/debian/patches/git_support-locationforecast-1.2.patch
goodies/trunk/xfce4-weather-plugin/debian/patches/git_use-locationforecast-1.2.patch
Modified:
goodies/trunk/xfce4-weather-plugin/debian/changelog
goodies/trunk/xfce4-weather-plugin/debian/patches/series
Modified: goodies/trunk/xfce4-weather-plugin/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-xfce/goodies/trunk/xfce4-weather-plugin/debian/changelog?rev=8629&op=diff
==============================================================================
--- goodies/trunk/xfce4-weather-plugin/debian/changelog (original)
+++ goodies/trunk/xfce4-weather-plugin/debian/changelog Thu Oct 2 04:20:08 2014
@@ -6,7 +6,10 @@
[ Evgeni Golov ]
* Correct Vcs-* URLs to point to anonscm.debian.org
- -- Yves-Alexis Perez <corsac at debian.org> Wed, 22 May 2013 21:44:16 +0200
+ [ Jackson Doak ]
+ * Add patches from upstream git to use locationforcast-1.2
+
+ -- Jackson Doak <noskcaj at ubuntu.com> Thu, 02 Oct 2014 14:15:01 +1000
xfce4-weather-plugin (0.8.3-1) unstable; urgency=low
Added: goodies/trunk/xfce4-weather-plugin/debian/patches/git_support-locationforecast-1.2.patch
URL: http://svn.debian.org/wsvn/pkg-xfce/goodies/trunk/xfce4-weather-plugin/debian/patches/git_support-locationforecast-1.2.patch?rev=8629&op=file
==============================================================================
--- goodies/trunk/xfce4-weather-plugin/debian/patches/git_support-locationforecast-1.2.patch (added)
+++ goodies/trunk/xfce4-weather-plugin/debian/patches/git_support-locationforecast-1.2.patch Thu Oct 2 04:20:08 2014
@@ -0,0 +1,151 @@
+From 1ff71669644a0b824a8a5ba9b40771ee4fb8a76b Mon Sep 17 00:00:00 2001
+From: Harald Judt <h.judt at gmx.at>
+Date: Wed, 28 May 2014 20:08:02 +0200
+Subject: Make plugin ready for met.no locationforecast-1.2 API (bug #10916).
+
+http://api.yr.no/weatherapi/locationforecastlts/1.1/documentation#version_1_2___2014_05_20
+
+The updated API version uses CamelCase symbol names instead of UPPERCASE
+ones and has added some new names (like 'Drizzle'), which unfortunately
+have not been documented (yet?).
+
+What's more, the typo 'celcius' has been replaced by the fixed 'celsius',
+but luckily the plugin will not be affected by that change.
+
+What's a bit more unfortunate is that the existing icon themes do not
+cover the new symbol names, so one would have to create quite a lot of
+new icons. Also, new translations would have to be added for the symbols,
+and maybe existing ones would have to be altered. To prevent this, we're
+simply going to map the new symbols to existing ones as good as possible.
+This should be good enough for the time being.
+
+---
+ panel-plugin/weather-parsers.c | 3 +
+ panel-plugin/weather-translate.c | 70 ++++++++++++++++++++++++++++++++++++++-
+ panel-plugin/weather-translate.h | 2 +
+ 3 files changed, 73 insertions(+), 2 deletions(-)
+
+--- a/panel-plugin/weather-parsers.c
++++ b/panel-plugin/weather-parsers.c
+@@ -28,6 +28,7 @@
+ #define _XOPEN_SOURCE
+ #define _XOPEN_SOURCE_EXTENDED 1
+ #include "weather-parsers.h"
++#include "weather-translate.h"
+ #include "weather-debug.h"
+
+ #include <time.h>
+@@ -196,8 +197,8 @@ parse_location(xmlNode *cur_node,
+ }
+ if (NODE_IS_TYPE(child_node, "symbol")) {
+ g_free(loc->symbol);
+- loc->symbol = PROP(child_node, "id");
+ loc->symbol_id = strtol(PROP(child_node, "number"), NULL, 10);
++ loc->symbol = g_strdup(get_symbol_for_id(loc->symbol_id));
+ }
+ }
+
+--- a/panel-plugin/weather-translate.c
++++ b/panel-plugin/weather-translate.c
+@@ -29,6 +29,7 @@
+ #include "weather-translate.h"
+
+ #define DAY_LOC_N (sizeof(gchar) * 100)
++#define NODATA "NODATA"
+
+
+ static const gchar *wdirs[] = {
+@@ -169,7 +170,7 @@ static const symbol_desc symbol_to_desc[
+
+ { 15, "FOG", N_("Fog"), N_("Fog") },
+
+- /* Symbols 16-19 are used for polar days */
++ /* Symbols 16-19 are used for polar days (unused beginning with API version 1.2) */
+ { 16, "SUN", N_("Sunny"), N_("Clear") },
+ { 17, "LIGHTCLOUD", N_("Lightly cloudy"), N_("Lightly cloudy") },
+ { 18, "LIGHTRAINSUN", N_("Rain showers"), N_("Rain showers") },
+@@ -185,6 +186,73 @@ static const symbol_desc symbol_to_desc[
+ #define NUM_SYMBOLS (sizeof(symbol_to_desc) / sizeof(symbol_to_desc[0]))
+
+
++/*
++ * API version 1.2, published in May 2014, introduced new symbols. We
++ * try to match these with existing symbols, in order to be compatible
++ * with existing icon themes and to maintain translation completeness.
++ *
++ * See http://api.met.no/weatherapi/weathericon/1.1/documentation
++ * for a list of symbols. For a list of symbols with descriptions,
++ * see http://om.yr.no/forklaring/symbol.
++ */
++gint
++replace_symbol_id(gint id)
++{
++ /* Symbol ids greater than 100 are used for indicating polar
++ * night. These ids are over the ordinary id + 100. Since we
++ * don't support polar icons, we can simply subtract 100 to
++ * get the non-polar symbol ids.
++ */
++ if (id > 100)
++ id -= 100;
++
++ switch (id) {
++ case 24: return 22; /* Light rain showers and thunder */
++ case 25: return 6; /* Heavy rain showers and thunder */
++ case 26: return 20; /* Light sleet showers and thunder */
++ case 27: return 20; /* Heavy sleet showers and thunder */
++ case 28: return 21; /* Light snow showers and thunder */
++ case 29: return 21; /* Heavy snow showers and thunder */
++ case 30: return 22; /* Light rain and thunder */
++ case 31: return 23; /* Light sleet and thunder */
++ case 32: return 23; /* Heavy sleet and thunder */
++ case 33: return 14; /* Light snow and thunder */
++ case 34: return 14; /* Heavy snow and thunder */
++
++ /* symbols 35-39 are unused */
++
++ case 40: return 5; /* Light rain showers */
++ case 41: return 5; /* Heavy rain showers */
++ case 42: return 7; /* Light sleet showers */
++ case 43: return 7; /* Heavy sleet showers */
++ case 44: return 8; /* Light snow showers */
++ case 45: return 8; /* Heavy snow showers */
++ case 46: return 9; /* Light rain */
++ case 47: return 12; /* Light sleet */
++ case 48: return 12; /* Heavy sleet */
++ case 49: return 13; /* Light snow */
++ case 50: return 13; /* Heavy snow */
++ default: return id;
++ }
++}
++
++
++const gchar *
++get_symbol_for_id(gint id)
++{
++ if (G_UNLIKELY(id < 1))
++ return NODATA;
++
++ if (id >= NUM_SYMBOLS)
++ id = replace_symbol_id(id);
++
++ if (id < NUM_SYMBOLS)
++ return symbol_to_desc[id-1].symbol;
++
++ return NODATA;
++}
++
++
+ const gchar *
+ translate_desc(const gchar *desc,
+ const gboolean nighttime)
+--- a/panel-plugin/weather-translate.h
++++ b/panel-plugin/weather-translate.h
+@@ -24,6 +24,8 @@
+
+ G_BEGIN_DECLS
+
++const gchar *get_symbol_for_id(gint id);
++
+ const gchar *translate_desc(const gchar *desc,
+ gboolean nighttime);
+
Added: goodies/trunk/xfce4-weather-plugin/debian/patches/git_use-locationforecast-1.2.patch
URL: http://svn.debian.org/wsvn/pkg-xfce/goodies/trunk/xfce4-weather-plugin/debian/patches/git_use-locationforecast-1.2.patch?rev=8629&op=file
==============================================================================
--- goodies/trunk/xfce4-weather-plugin/debian/patches/git_use-locationforecast-1.2.patch (added)
+++ goodies/trunk/xfce4-weather-plugin/debian/patches/git_use-locationforecast-1.2.patch Thu Oct 2 04:20:08 2014
@@ -0,0 +1,21 @@
+From 7df303bc5fa649299e18efeb5d4b801614030488 Mon Sep 17 00:00:00 2001
+From: Harald Judt <h.judt at gmx.at>
+Date: Tue, 3 Jun 2014 19:59:05 +0200
+Subject: Switch to met.no locationforecastLTS-1.2 API (bug #10916).
+
+
+diff --git a/panel-plugin/weather.c b/panel-plugin/weather.c
+index efa8559..63451fd 100644
+--- a/panel-plugin/weather.c
++++ b/panel-plugin/weather.c
+@@ -660,7 +660,7 @@ update_handler(plugin_data *data)
+ /* build url */
+ url =
+ g_strdup_printf("http://api.yr.no/weatherapi"
+- "/locationforecastlts/1.1/?lat=%s;lon=%s;msl=%d",
++ "/locationforecastlts/1.2/?lat=%s;lon=%s;msl=%d",
+ data->lat, data->lon, data->msl);
+
+ /* start receive thread */
+--
+cgit v0.10.1
Modified: goodies/trunk/xfce4-weather-plugin/debian/patches/series
URL: http://svn.debian.org/wsvn/pkg-xfce/goodies/trunk/xfce4-weather-plugin/debian/patches/series?rev=8629&op=diff
==============================================================================
--- goodies/trunk/xfce4-weather-plugin/debian/patches/series (original)
+++ goodies/trunk/xfce4-weather-plugin/debian/patches/series Thu Oct 2 04:20:08 2014
@@ -1,3 +1,5 @@
01_link-libm.patch
02_fix-color-parsing.patch
03_fix-panel-icon-size.patch
+git_support-locationforecast-1.2.patch
+git_use-locationforecast-1.2.patch
More information about the Pkg-xfce-commits
mailing list