New "fileconflict" usertag for debian...@lists.debian.org

2023-07-28 Thread Helmut Grohne
user debian...@lists.debian.org
# discodos
usertags 966115 + fileconflict
affects 966115 + mono-devel
# firebird-utils
usertags 1040321 + fileconflict
affects 1040321 + firebird3.0-server
# kodi-addons-dev
usertags 1040319 + fileconflict
affects 1040319 + kodi-addons-dev-common
# libocct-data-exchange-dev
usertags 1035009 + fileconflict
affects 1035009 + liboce-modeling-dev liboce-visualization-dev
# libreoffice-uiconfig-report-builder
usertags 1041899 + fileconflict
affects 1041899 + libreoffice-report-builder
# libsequoia-octopus-librnp
usertags 1041832 + fileconflict
affects 1041832 + thunderbird
# nex
usertags 1022957 + fileconflict
affects 1022957 + nvi
# nfs-ganesha-ceph
usertags 1040362 + fileconflict
affects 1040362 + nfs-ganesha
# python3-notebook
usertags 1036996 + fileconflict
affects 1036996 + cadabra2
thanks

Hi Andreas and Ralf,

On Tue, Jul 18, 2023 at 09:02:08PM +0200, Helmut Grohne wrote:
> Is this convincing enough to move forward with the generic
> debian...@lists.debian.org usertag fileconflict rather than something
> more detailed? Is this also convincing enough to extend it to cover
> non-file conflicts or do you want a different tag for that? Should the
> tag also cover m-a:same file conflicts?

Given the lack of further input, I went ahead and documented the new
fileconflict usertag at:

https://wiki.debian.org/qa.debian.org/usertagging

| fileconflict: bugs identifying a file conflict between packages. Such
| bugs can be filed against multiple packages if the causing package is
| not known. Otherwise, the other packages should be listed as affected.
| This covers all kinds of conflicts including symlink vs directory
| conflicts and Multi-Arch: same file conflicts. It also covers file moves
| between packages that lack suitable Replaces.

Let me know if you want a change to this.

The above list of tags is the subset that affects the /usr-merge
transition.

Helmut



Re: debci / salsa ci: support for qemu runner

2023-07-28 Thread Helmut Grohne
Hi,

On Tue, Jul 25, 2023 at 09:37:35PM +0200, Paul Gevers wrote:
> For ci.d.n, the issue is not money, but the required work to integrate it
> into the infrastructure. We need volunteers (or pay people to do the work),
> but unless they can and want to figure out everything from source [1], the
> bottleneck remains that the current volunteers would need to help those
> people understand the setup and guide them coming up with good solutions.

I second this on another level. While the lxc backend is exercised very
often, the qemu backend evidently experiences rare use. The default
--ram-size is 1G and that happens to be too little for a number of
packages already. This soon will be configurable (#1037245). I expect
that there are more aspects where qemu and lxc differ in a way that
causes test failures as most of the existing tests only ever ran on lxc.
Some of these aspects will have to be fixed in tests, but others (like
the --ram-size) will need addressing in infrastructure. Please expect
more work in this area.

Helmut



Bug#1042471: ITP: u-boot-asahi -- u-boot bootloader for Apple silicon systems

2023-07-28 Thread Tobias Heider
Package: wnpp
Severity: wishlist
Owner: Tobias Heider 
X-Debbugs-Cc: debian-devel@lists.debian.org

* Package name: u-boot-asahi
  Version : 2023.04-2
  Upstream Authors: Mark Kettenis 
  URL : https://github.com/AsahiLinux/u-boot
* License : GPL-2
  Description : A u-boot bootloader for Apple silicon systems

Das U-Boot is a cross platform bootloader for embedded systems,
used as the default boot loader by several board vendors.  It is
intended to be easy to port and to debug, and runs on many
supported architectures, including PPC, ARM, MIPS, x86, m68k,
NIOS, and Microblaze.

u-boot is used as a second stage bootloader for Linux on M1/M2 Apple macs.
This will be maintained by the Debian Bananas team.



Re: Help with the nftables package: the embedded python module

2023-07-28 Thread Timo Röhling

Hi,

* Arturo Borrero Gonzalez  [2023-07-28 18:38]:

I would appreciate additional suggestions and hints. Patches welcome.

If you have bad interactions between the Python and non-Python parts
of your package, you can try and build them independently, i.e.,

override_dh_auto_build:
dh_auto_build --package=python3-nftables --sourcedirectory=py 
--buildsystem=pybuild
dh_auto_build --remaining-packages

and similar for the other dh_auto_* commands. I did something like
that for tinyobjloader and it worked quite nicely.


Cheers
Timo

--
⢀⣴⠾⠻⢶⣦⠀   ╭╮
⣾⠁⢠⠒⠀⣿⡁   │ Timo Röhling   │
⢿⡄⠘⠷⠚⠋⠀   │ 9B03 EBB9 8300 DF97 C2B1  23BF CC8C 6BDD 1403 F4CA │
⠈⠳⣄   ╰╯


signature.asc
Description: PGP signature


Help with the nftables package: the embedded python module

2023-07-28 Thread Arturo Borrero Gonzalez

Hi there,

the nftables source package contains a python module (the python binding for 
libnftables).


Source code: https://salsa.debian.org/pkg-netfilter-team/pkg-nftables

Recently, and because python & setuptools deprecation issues, the python side of 
package that has been working for ages, is now broken.


nftables upstream  has removed integration with autotools [1] (suggested by me), 
so we distro developers (me) should find the best way to install the package 
(autotools wont do it anymore), which apparently is the python way [0] WTH.


I have tested a number of approaches to replace the old simple method, while 
producing the exact same content in the resulting debian binary package:


/usr/lib/python3/dist-packages/nftables/__init__.py
/usr/lib/python3/dist-packages/nftables/nftables.py
/usr/lib/python3/dist-packages/nftables/schema.json
/usr/lib/python3/dist-packages/nftables-0.1-py3.11.egg-info

The approaches I tried include:
 * using pybuild, which is regarded pretty much everywhere as a magic thing, 
but gets confused with the --with options passed to the autotools ./configure.sh 
script via dh_auto_configure in d/rules


 * running `python3 -m build` in d/rules to generate the PKG-INFO file to later 
move it via dh_install to nftables-0.1-py3.11.egg-info. This is not elegant 
because the embedded version in the file path.


* pip install: one of the referenced methods to handle python's setuptools 
deprecation  [0]is to use pip. But I'm reluctant to run pip (also, couldn't get 
it to produce the same content for the deb file)


I would appreciate additional suggestions and hints. Patches welcome.

regards.

PS: I'm on vacations, so I may be slow to respond to this email.


[0] See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html

 << move away from a model where there is one, single authoritative way to do 
things and towards fostering an environment that allows people to develop 
different tools that work for their workflow. Thanks to all the standards work 
that's gone on, there has been a profusion of new packaging projects arising, 
and you should look to see which ones fit your needs.>>


[1] 
https://salsa.debian.org/pkg-netfilter-team/pkg-nftables/-/blob/master/debian/patches/0001-py.patch




Bug#1042443: ITP: pathos -- Framework for heterogeneous parallel computing

2023-07-28 Thread Julian Gilbey
Package: wnpp
Severity: wishlist
Owner: Julian Gilbey 
X-Debbugs-Cc: debian-devel@lists.debian.org, Debian Python Team 


* Package name: pathos
  Version : 0.3.1
  Upstream Contact: Mike McKerns 
* URL : https://github.com/uqfoundation/pathos
* License : BSD-3-clause
  Programming Lang: Python
  Description : Framework for heterogeneous parallel computing

 Pathos provides a consistent high-level interface for configuring and
 launching parallel computations across heterogeneous resources.  It
 provides configurable launchers for parallel and distributed
 computing, where each launcher contains the syntactic logic to
 configure and launch jobs in an execution environment.  Examples of
 launchers include: "pyina", a queue-less MPI-based launcher;
 "pathos", an ssh-based launcher; "multiprocess", a multi-process
 launcher.
 .
 It provides a consistent interface for parallel and/or distributed
 versions of "map" and "apply" for each launcher; the guiding design
 principle is that "map" and "apply" should be drop-in replacements in
 otherwise serial code, reducing the time to conver a code to
 parallel, but also enabling a single code-base to be maintained
 instead of requiring serial, parallel and distributed versions of
 code.
 .
 The "pathos" framework consists of several interoperating packages:
  * "dill": serialize all of Python (python3-dill)
  * "pox": utilities for filesystem exploration and automated builds
(python3-pox)
  * "klepto": persistent caching to memory, disk, or database
(python3-klepto)
  * "multiprocess": better multiprocessing and multithreading in Python
(python3-multiprocess)
  * "ppft": distributed and parallel Python (python3-ppft)
  * "pyina": MPI parallel "map" and cluster scheduling (python3-pyina)
  * "pathos": graph management and execution in heterogeneous computing
(python3-pathos)


This is a package I've started using; it provides a very effective
framework for parallel computing, allowing for constructs that the
standard Python library does not support.

I will maintain it within the Debian Python Team.



Bug#1042444: ITP: klepto -- Persistent caching to memory, disk or database

2023-07-28 Thread Julian Gilbey
Package: wnpp
Severity: wishlist
Owner: Julian Gilbey 
X-Debbugs-Cc: debian-devel@lists.debian.org, Debian Python Team 


* Package name: klepto
  Version : 0.2.4
  Upstream Contact: Mike McKerns 
* URL : https://github.com/uqfoundation/klepto
* License : BSD-3-clause
  Programming Lang: Python
  Description : Persistent caching to memory, disk or database

 klepto extends Python's lru_cache to utilise different keymaps and
 alternate caching algorithms.  This package also has archiving
 capabilities for longer-term storage.  It uses a simple
 dictionary-style interface for all caches and archives, and all
 caches can be applied to any Python function as a decorator.
 .
 klepto is intended to be used for distributed and parallel computing,
 where the keymaps serialize the stored objects, and the caches and
 archives are intended to be read/write accessible from different
 threads and processes.
 .
 klepto is part of pathos, a Python framework for heterogeneous computing.


This is a plugin for the pathos package, which I am ITP'ing.

I will maintain it within the Debian Python Team.



Bug#1042442: ITP: mystic -- Constrained nonlinear optimization

2023-07-28 Thread Julian Gilbey
Package: wnpp
Severity: wishlist
Owner: Julian Gilbey 
X-Debbugs-Cc: debian-devel@lists.debian.org, Debian Python Team 


* Package name: mystic
  Version : 0.4.1
  Upstream Contact: Mike McKerns 
* URL : https://github.com/uqfoundation/mystic
* License : BSD-3-clause
  Programming Lang: Python
  Description : Constrained nonlinear optimization

 The mystic framework provides a collection of optimization algorithms
 and tools that allows the user to more robustly (and easily) solve
 hard optimization problems for machine learning, uncertainty
 quantification and AI.  mystic gives the user fine-grained power to
 both monitor and steer optimizations as the fit processes are
 running.  Users can customize optimizer stop conditions, where both
 compound and user-provided conditions may be used.  Optimizers can
 save state, can be reconfigured dynamically, and can be restarted
 from a saved solver or from a results file.  All solvers can also
 leverage parallel computing, either within each iteration or as an
 ensemble of solvers.
 .
 mystic provides a stock set of configurable, controllable solvers
 with:
  * a common interface
  * a control handler with: pause, continue, exit, and callback
  * ease in selecting initial population conditions: guess, random, etc
  * ease in checkpointing and restarting from a log or saved state
  * the ability to leverage parallel & distributed computing
  * the ability to apply a selection of logging and/or verbose monitors
  * the ability to configure solver-independent termination conditions
  * the ability to impose custom and user-defined penalties and constraints
 .
 mystic is part of pathos, a Python framework for heterogeneous computing.


It is part of the pathos framework which I am packaging.  Nonlinear
optimisation is a core task for ML/AI, and use of this pathos plugin
is demonstrated in several examples in the pathos package.

I will maintain it within the Debian Python Team.



Bug#1042441: ITP: pox -- Utilities for filesystem exploration and automated builds

2023-07-28 Thread Julian Gilbey
Package: wnpp
Severity: wishlist
Owner: Julian Gilbey 
X-Debbugs-Cc: debian-devel@lists.debian.org, Debian Python Team 


* Package name: pox
  Version : 0.3.3
  Upstream Contact: Mike McKerns 
* URL : https://github.com/uqfoundation/pox
* License : BSD-3-clause
  Programming Lang: Python
  Description : Utilities for filesystem exploration and automated builds

 This package is particular useful when exploring a filesystem on a
 remote host, where queries such as "what is the root of the
 filesystem?", "what is the user's name?", and "what login shell is
 preferred?" become essential in allowing a remote user to function as
 if they were logged in locally.
 .
 pox is part of pathos, a Python framework for heterogeneous computing.


This is a dependency of pathos, which I am packaging.

I will maintain it within the Debian Python Team.



Bug#1042440: ITP: pyina -- MPI parallel map and cluster scheduling

2023-07-28 Thread Julian Gilbey
Package: wnpp
Severity: wishlist
Owner: Julian Gilbey 
X-Debbugs-Cc: debian-devel@lists.debian.org, Debian Python Team 


* Package name: pyina
  Version : 0.2.8
  Upstream Contact: Mike McKerns 
* URL : https://github.com/uqfoundation/pyina
* License : BSD-3-clause
  Programming Lang: Python
  Description : MPI parallel map and cluster scheduling

 The pyina package provides several basic tools to make MPI-based
 parallel computing more accessible to the end user.  The goal of pyina
 is to allow the user to extend their own code to MPI-based parallel
 computing with minimal refactoring.
 .
 pyina provides a highly configurable parallel map interface
 to running MPI jobs, with:
 .
  * a map interface that extends the Python map standard
  * the ability to submit batch jobs to a selection of schedulers
  * the ability to customize node and process launch configurations
  * the ability to launch parallel MPI jobs with standard Python
  * ease in selecting different strategies for processing a work list
 .
 pyina is part of pathos, a Python framework for heterogeneous computing.

This is a core plugin for the pathos system, which I am packaging.
I cannot test it myself, though, as I don't have an MPI setup, but I
am packaging it for those who use pathos and do have such a system.

I will maintain it within the Debian Python Team.



Bug#1042439: ITP: ppft -- Distributed and parallel Python

2023-07-28 Thread Julian Gilbey
Package: wnpp
Severity: wishlist
Owner: Julian Gilbey 
X-Debbugs-Cc: debian-devel@lists.debian.org, Debian Python Team 


* Package name: ppft
  Version : 1.7.6.7+dfsg
  Upstream Contact: Mike McKerns 
* URL : https://github.com/uqfoundation/ppft
* License : BSD-3-clause
  Programming Lang: Python
  Description : Distributed and parallel Python

 ppft is a friendly fork of Parallel Python.  It provides:
 .
  * parallel execution of Python code on SMP and clusters
  * easy-to-understand job-based parallelization
  * automatic detection of the number of effective processors
  * dynamic processor allocation (at runtime)
  * low overhead for jobs with the same function (through transparent caching)
  * dynamic load balancing (jobs are distributed at runtime)
  * fault-tolerance (if a node fails, tasks are rescheduled on the others)
  * auto-discovery of computational resources
  * dynamic allocation of computational resources
  * SHA based authentication for network connections
  * enhanced serialization, using dill.source
 .
 ppft is part of pathos, a Python framework for heterogeneous computing.

It is a dependency of pathos, which is a useful framework that I've
started using.

I will maintain it within the Debian Python Team.