libtorrent removed from debian

Created on 8 Aug 2020  路  10Comments  路  Source: arvidn/libtorrent

https://tracker.debian.org/news/1166190/libtorrent-rasterbar-removed-from-testing/

I noticed that this package appears to have some issues with debian/copyright.

Missing from d/copyright:
- cmake/Modules/ucm_flags.cmake
- build-aux/<multiple>
- ed25519/
- include/libtorrent/aux_/cppint_import_export.hpp
- include/libtorrent/aux_/ffs.hpp
- include/libtorrent/aux_/<others>
- include/libtorrent/extensions/ut_pex.hpp
- include/<many others>
- src/<many more>

src/ConvertUTF.cpp does not meet DFSG and cannot be part of the uploaded package

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=956285

Most helpful comment

@arvidn

What do other people think, should it be back-ported to the 1.2.x branch?

It will be a while before many client applications are ready for 2.x, so in the meantime it would probably be nice to be able to have recent releases of 1.2.x in the debian repos to compile against.

All 10 comments

here's one step towards addressing those: https://github.com/arvidn/libtorrent/pull/4955

I could use some help interpreting that report though. As I understand it, debian maintainers are supposed to declare which licenses are used in a package, and which files in a copyright file.

The ed25519 implementation is public domain, but that's poorly documented.

I was asked to provide some input here.

The d/copyright issue is regarding a requirement in Debian to document the copyright status of the entire source tree in the debian/copyright file, which these days should be machine readable, correct and complete. See https://wiki.debian.org/CopyrightReviewTools for some tools making it easier to check this file for each package. Upstream can make life easier for the Debian maintainer by ensuring all/most source files have copyright information in the file header.

The more fatal and release critical issue is the ConvertUTF.cpp state, which according to its file header is not licensed according to a Debian Free Software Guideline (DFSG) compatible license, see https://wiki.debian.org/DFSGLicenses and https://www.debian.org/social_contract#guidelines . The issue at hand is that the header contain this text:

/*
 * Copyright 2001-2004 Unicode, Inc.
 *
 * Disclaimer
 *
 * This source code is provided as is by Unicode, Inc. No claims are
 * made as to fitness for any particular purpose. No warranties of any
 * kind are expressed or implied. The recipient agrees to determine
 * applicability of information provided. If this file has been
 * purchased on magnetic or optical media from Unicode, Inc., the
 * sole remedy for any claim will be exchange of defective media
 * within 90 days of receipt.
 *
 * Limitations on Rights to Redistribute This Code
 *
 * Unicode, Inc. hereby grants the right to freely use the information
 * supplied in this file in the creation of products supporting the
 * Unicode Standard, and to make copies of this file in any form
 * for internal or external distribution as long as this notice
 * remains attached.
 */

Given the defaults are derived from from copyright law, the permissions granted here at least lack the right to modify and right to distribute modifications, both which are requirements to be compatible with the DFSG. As the copyright statement currently reads in the header, this file is not in the public domain.

@petterreinholdtsen thank you! I've been wanting to get rid of ConvertUTF for a long time anyway, so I just did (for the upcoming 2.0 release).

What do other people think, should it be back-ported to the 1.2.x branch?

@arvidn

What do other people think, should it be back-ported to the 1.2.x branch?

It will be a while before many client applications are ready for 2.x, so in the meantime it would probably be nice to be able to have recent releases of 1.2.x in the debian repos to compile against.

back-porting also means either:

  1. remove deprecated wstring functions. This is technically breaking ABI in a minor release, but on the other hand, they have been deprecated since 0.16.11, which is quite a while

  2. removing the deprecated wstring functions on all platforms but windows. This would break ABI on non-windows platforms. But these APIs are most likely to be used on windows, since that's the only place people use wide strings a lot.

  3. adding replacement functionality for converting wchar_t -> UTF-8 on non-windows

I would like to avoid spending more time supporting deprecated functionality (i.e. option 3)

@arvidn

I would be partial to 1. since there is no special case depending on the platform - "warning: ABI broken in 1.2.9 due to removal of wstring functions, see this link" - and that's that.

Alternatively, you could cut a 1.3.x release branch to not break the version numbering contract, right?

https://github.com/arvidn/libtorrent/pull/4966
This still leaves the functions in for windows

in the recently release libtorrent 1.2.9, the Unicode source code (ConvertUTF.cpp) has been removed.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

master255 picture master255  路  10Comments

fastesol picture fastesol  路  17Comments

ctlaltdefeat picture ctlaltdefeat  路  15Comments

dessalines picture dessalines  路  7Comments

pavel-pimenov picture pavel-pimenov  路  5Comments