Bug#915841: newsbeuter FTBFS with json-c 0.13.1

2019-07-04 Thread Gianfranco Costamagna
 Hello,
I agree if the migration is not automatic, there is no need to provide the old 
name.
thanks for the explanation!
G.

Il giovedì 4 luglio 2019, 08:58:30 CEST, Nikos Tsipinakis 
 ha scritto:  
 
 On 03/07, Gianfranco Costamagna wrote:
>  Hello Nikos,you might want to first upload the fork in new queue, providing 
>the same binary, so the removal becomes a cruft later
> I mean, to not disrupt our userbase:
> with moving src:a providing a to src:b providing b
> [...]
> in case the fork is not a drop-in replacement, probably providing the old 
> binary name is not worth the effort, in this caseyou can do whatever you 
> prefer :)

The fork is functionally a drop-in equivalent, however given that the name
changed this also means that a) the name of the binary changed so everyone will
have to swap that out and that b) the name of the configuration directories
changed. There's an automated migration on the fork but it only works with
the simplest setups and fails in other cases.

Newsbeuter has had the fork on its Recommends for a while and I've put out a
NEWS entry informing about the change.

Overall given that there will need to be some manual migration from the users
side I'm not sure it's worth trying to do a proper package rename here.
Adding a new "newsbeuter" binary while in reality being newsboat would be a lot
more confusing than the alternative IMO.
  

Bug#915841: newsbeuter FTBFS with json-c 0.13.1

2019-07-04 Thread Nikos Tsipinakis
On 03/07, Gianfranco Costamagna wrote:
>  Hello Nikos,you might want to first upload the fork in new queue, providing 
> the same binary, so the removal becomes a cruft later
> I mean, to not disrupt our userbase:
> with moving src:a providing a to src:b providing b
> [...]
> in case the fork is not a drop-in replacement, probably providing the old 
> binary name is not worth the effort, in this caseyou can do whatever you 
> prefer :)

The fork is functionally a drop-in equivalent, however given that the name
changed this also means that a) the name of the binary changed so everyone will
have to swap that out and that b) the name of the configuration directories
changed. There's an automated migration on the fork but it only works with
the simplest setups and fails in other cases.

Newsbeuter has had the fork on its Recommends for a while and I've put out a
NEWS entry informing about the change.

Overall given that there will need to be some manual migration from the users
side I'm not sure it's worth trying to do a proper package rename here.
Adding a new "newsbeuter" binary while in reality being newsboat would be a lot
more confusing than the alternative IMO.



Bug#915841: newsbeuter FTBFS with json-c 0.13.1

2019-07-03 Thread Gianfranco Costamagna
 Hello Nikos,you might want to first upload the fork in new queue, providing 
the same binary, so the removal becomes a cruft later
I mean, to not disrupt our userbase:
with moving src:a providing a to src:b providing b

create a new src:b with new fork, but provide a and provide b, since it should 
be a drop-in replacement, right?wait for it to go in testing
ask to remove only src:a because the binary is taken over by another package
does this make sense?
in case the fork is not a drop-in replacement, probably providing the old 
binary name is not worth the effort, in this caseyou can do whatever you prefer 
:)
G.

Il lunedì 1 luglio 2019, 13:46:28 CEST, Nikos Tsipinakis 
 ha scritto:  
 
 On 01/07, Gianfranco Costamagna wrote:
> there is an upstream fix in a fork called newsboat
> 
> I'm attaching both patches to this bug report, please apply them!

I apologise for ignoring this issue earlier. I initially intended to convert
newsbeuter to a stub package pointing to newsboat but missed the buster 
deadline.

Given that upstream is abandoned and there is a functionally identical fork I
intend to remove newsbeuter from the archive. It doesn't make sense to become a
pseudo-upstream to keep it in Debian.

I'll file a removal request for it next week after the Buster release.
  

Bug#915841: newsbeuter FTBFS with json-c 0.13.1

2019-07-01 Thread Nikos Tsipinakis
On 01/07, Gianfranco Costamagna wrote:
> there is an upstream fix in a fork called newsboat
> 
> I'm attaching both patches to this bug report, please apply them!

I apologise for ignoring this issue earlier. I initially intended to convert
newsbeuter to a stub package pointing to newsboat but missed the buster 
deadline.

Given that upstream is abandoned and there is a functionally identical fork I
intend to remove newsbeuter from the archive. It doesn't make sense to become a
pseudo-upstream to keep it in Debian.

I'll file a removal request for it next week after the Buster release.



Bug#915841: newsbeuter FTBFS with json-c 0.13.1

2019-07-01 Thread Gianfranco Costamagna
control: tags -1 patch

there is an upstream fix in a fork called newsboat

I'm attaching it to this bug report.
(there might be need to cherry-pick an additional fix for gcc-9 later)
https://github.com/newsboat/newsboat/commit/0a94da8e729c55b61ba87233a789497276bb791e

I'm attaching both patches to this bug report, please apply them!

G.

On Fri, 07 Dec 2018 11:47:11 +0100 Birger Schacht  wrote:
> Package: newsbeuter
> Version: 2.9-8
> Severity: normal
> Tags: upstream
> Control: block 904418 by -1
> 
> Dear Maintainer,
> 
> There exists a transition slot for json-c (see #904418).  When trying to
> rebuild all reverse dependencies of json-c, newsbeuter fails to rebuild.
> 
> I am attaching the build log here for your convenience.
> 
> -- System Information:
> Debian Release: 9.6
>   APT prefers stable-updates
>   APT policy: (500, 'stable-updates'), (500, 'stable')
> Architecture: amd64 (x86_64)
> 
> Kernel: Linux 4.9.0-8-amd64 (SMP w/8 CPU cores)
> Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
> LANGUAGE=en_US:en (charmap=UTF-8)
> Shell: /bin/sh linked to /bin/dash
> Init: systemd (via /run/systemd/system)
> 
> Versions of packages newsbeuter depends on:
> ii  libc62.24-11+deb9u3
> ii  libcurl3-gnutls  7.52.1-5+deb9u8
> ii  libgcc1  1:6.3.0-18+deb9u1
> pn  libjson-c3   
> ii  libncursesw5 6.0+20161126-1+deb9u2
> ii  libsqlite3-0 3.16.2-5+deb9u1
> ii  libstdc++6   6.3.0-18+deb9u1
> pn  libstfl0 
> ii  libtinfo56.0+20161126-1+deb9u2
> ii  libxml2  2.9.4+dfsg1-2.2+deb9u2
> 
> newsbeuter recommends no packages.
> 
> newsbeuter suggests no packages.
commit a21139043efb3b875f3d76cddf6bf90f5cf7642c
Author: Alexander Batischev 
Date:   Tue Dec 15 22:00:19 2015 +0300

Get rid of json-c's is_error()

It is deprecated in library's HEAD, and since we only use it in five
places across all the codebase I decided that instead of wrapping the
library in my own proxy header to redefine the macro when it's missing,
I'll sacrifice a bit of code readability and unfold the macro by hand.

diff --git a/src/feedhq_api.cpp b/src/feedhq_api.cpp
index 229e7e5a..46a8fb54 100644
--- a/src/feedhq_api.cpp
+++ b/src/feedhq_api.cpp
@@ -134,7 +134,7 @@ std::vector feedhq_api::get_subscribed_urls() {
 	// TODO: parse result
 
 	json_object * reply = json_tokener_parse(result.c_str());
-	if (is_error(reply)) {
+	if (reply == NULL) {
 		LOG(LOG_ERROR, "feedhq_api::get_subscribed_urls: failed to parse response as JSON.");
 		return urls;
 	}
diff --git a/src/oldreader_api.cpp b/src/oldreader_api.cpp
index 7779ebf0..321f0541 100644
--- a/src/oldreader_api.cpp
+++ b/src/oldreader_api.cpp
@@ -136,7 +136,7 @@ std::vector oldreader_api::get_subscribed_urls() {
 	// TODO: parse result
 
 	struct json_object * reply = json_tokener_parse(result.c_str());
-	if (is_error(reply)) {
+	if (reply == NULL) {
 		LOG(LOG_ERROR, "oldreader_api::get_subscribed_urls: failed to parse response as JSON.");
 		return urls;
 	}
diff --git a/src/ttrss_api.cpp b/src/ttrss_api.cpp
index 424030b2..2e58c037 100644
--- a/src/ttrss_api.cpp
+++ b/src/ttrss_api.cpp
@@ -112,21 +112,21 @@ json_object* ttrss_api::run_op(const std::string& op,
 	LOG(LOG_DEBUG, "ttrss_api::run_op(%s,...): post=%s reply = %s", op.c_str(), req_data.c_str(), result.c_str());
 
 	json_object * reply = json_tokener_parse(result.c_str());
-	if (is_error(reply)) {
+	if (reply == NULL) {
 		LOG(LOG_ERROR, "ttrss_api::run_op: reply failed to parse: %s", result.c_str());
 		return NULL;
 	}
 
 	json_object* status {};
 	json_object_object_get_ex(reply, "status", );
-	if (is_error(status)) {
+	if (status == NULL) {
 		LOG(LOG_ERROR, "ttrss_api::run_op: no status code");
 		return NULL;
 	}
 
 	json_object* content {};
 	json_object_object_get_ex(reply, "content", );
-	if (is_error(content)) {
+	if (content == NULL) {
 		LOG(LOG_ERROR, "ttrss_api::run_op: no content part in answer from server");
 		return NULL;
 	}
Description: fix 32bit type mismatch
Origin: https://github.com/newsboat/newsboat/commit/0a94da8e729c55b61ba87233a789497276bb791e
Last-Update: 2019-07-01

--- newsbeuter-2.9.orig/src/feedhq_api.cpp
+++ newsbeuter-2.9/src/feedhq_api.cpp
@@ -145,7 +145,11 @@ std::vector feedhq_api::
 
 	int len = array_list_length(subscriptions);
 
+#if JSON_C_MAJOR_VERSION == 0 && JSON_C_MINOR_VERSION < 13
 	for (int i=0; i tags;
 		json_object * sub = json_object_array_get_idx(subscription_obj, i);
 
--- newsbeuter-2.9.orig/src/oldreader_api.cpp
+++ newsbeuter-2.9/src/oldreader_api.cpp
@@ -148,7 +148,11 @@ std::vector oldreader_ap
 
 	int len = array_list_length(subscriptions);
 
+#if JSON_C_MAJOR_VERSION == 0 && JSON_C_MINOR_VERSION < 13
 	for (int i=0; i tags;
 		struct json_object * sub = json_object_array_get_idx(subscription_obj, i);
 


Bug#915841: newsbeuter FTBFS with json-c 0.13.1

2018-12-07 Thread Birger Schacht
Package: newsbeuter
Version: 2.9-8
Severity: normal
Tags: upstream
Control: block 904418 by -1

Dear Maintainer,

There exists a transition slot for json-c (see #904418).  When trying to
rebuild all reverse dependencies of json-c, newsbeuter fails to rebuild.

I am attaching the build log here for your convenience.

-- System Information:
Debian Release: 9.6
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-8-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages newsbeuter depends on:
ii  libc62.24-11+deb9u3
ii  libcurl3-gnutls  7.52.1-5+deb9u8
ii  libgcc1  1:6.3.0-18+deb9u1
pn  libjson-c3   
ii  libncursesw5 6.0+20161126-1+deb9u2
ii  libsqlite3-0 3.16.2-5+deb9u1
ii  libstdc++6   6.3.0-18+deb9u1
pn  libstfl0 
ii  libtinfo56.0+20161126-1+deb9u2
ii  libxml2  2.9.4+dfsg1-2.2+deb9u2

newsbeuter recommends no packages.

newsbeuter suggests no packages.
sbuild (Debian sbuild) 0.73.0 (23 Dec 2016) on pc3-17-3.rpl.tuwien.ac.at

+==+
| newsbeuter 2.9-8 (amd64) Wed, 21 Nov 2018 14:25:20 + |
+==+

Package: newsbeuter
Version: 2.9-8
Source Version: 2.9-8
Distribution: UNRELEASED
Machine Architecture: amd64
Host Architecture: amd64
Build Architecture: amd64
Build Type: binary

I: NOTICE: Log filtering will replace 
'var/run/schroot/mount/unstable-amd64-sbuild-7c0dafca-39e9-4cf3-84cb-b3745362d7b8'
 with '<>'
dpkg-scanpackages: warning: Packages in archive but missing from override file:
dpkg-scanpackages: warning:   libjson-c-dev libjson-c-doc libjson-c4 
libjson-c4-dbgsym
dpkg-scanpackages: info: Wrote 4 entries to output Packages file.

+--+
| Update chroot|
+--+

Get:1 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ InRelease
Ign:1 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ InRelease
Get:2 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ Release [954 
B]
Get:2 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ Release [954 
B]
Get:3 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ Release.gpg
Ign:3 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ Release.gpg
Get:4 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ Packages 
[1100 B]
Ign:4 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ Packages
Get:4 file:/build/newsbeuter-8s0GCC/resolver-YWNZIX/apt_archive ./ Packages 
[3059 B]
Get:5 http://cdn-fastly.deb.debian.org/debian unstable InRelease [233 kB]
Get:6 http://cdn-fastly.deb.debian.org/debian unstable/main Sources.diff/Index 
[27.9 kB]
Get:7 http://cdn-fastly.deb.debian.org/debian unstable/main amd64 
Packages.diff/Index [27.9 kB]
Get:8 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-14-1421.22.pdiff [9126 B]
Get:9 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-14-2012.02.pdiff [9195 B]
Get:10 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-15-0209.33.pdiff [9162 B]
Get:11 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-15-0809.08.pdiff [10.5 kB]
Get:12 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-15-1410.29.pdiff [20.9 kB]
Get:13 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-15-2012.19.pdiff [10.1 kB]
Get:14 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-16-0212.33.pdiff [7678 B]
Get:15 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-16-0809.40.pdiff [6696 B]
Get:16 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-16-1413.30.pdiff [11.0 kB]
Get:17 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-16-2021.42.pdiff [15.6 kB]
Get:18 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-17-0219.25.pdiff [4599 B]
Get:19 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-17-0824.37.pdiff [5464 B]
Get:20 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-17-1425.00.pdiff [6368 B]
Get:21 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-17-2023.54.pdiff [20.6 kB]
Get:22 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-18-0226.30.pdiff [12.8 kB]
Get:23 http://cdn-fastly.deb.debian.org/debian unstable/main Sources 
2018-11-18-0819.08.pdiff [4824 B]
Get:24 http://cdn-fastly.deb.debian.org/debian