On Sat, Dec 28, 2024 at 06:24:02PM +0100, Lucas Nussbaum wrote:
> Source: fastapi
> Version: 0.115.5-2
> Severity: serious
> Justification: FTBFS
> Tags: trixie sid ftbfs
> User: lu...@debian.org
> Usertags: ftbfs-20241228 ftbfs-trixie
> 
> Hi,
> 
> During a rebuild of all packages in sid, your package failed to build
> on amd64.
> [...]

Hi Sandro,

The causes of this are that python3-multipart is unintentionally
installed during build time, and that python3-python-multipart doesn't
ship the multipart redirector
(/usr/lib/python3/dist-packages/multipart/*).

The attached patch fixes this FTBFS by simply ignoring all of the
tests checking that python_multipart is identical to the expected
upstream version.

It also fixes two other serious issues and two other significant
issues:

* It no longer installs /usr/lib/python3/dist-packages/log.txt, which
  is a spurious test artefact.
* It fixes debian/copyright, which did not actually specify any
  licenses - I assume that you intended debian/* to be under the same
  MIT license as the rest of the package
* It includes the upstream changelog in /usr/share/doc
* It simplifies the build-dependency to python3-python-multipart,
  since it is now in testing

Attached is a debdiff; I'll upload it as an NMU in a few days' time
unless you beat me to it!

Best wishes,

   Julian


diff -Nru fastapi-0.115.5/debian/changelog fastapi-0.115.5/debian/changelog
--- fastapi-0.115.5/debian/changelog    2024-11-29 02:00:07.000000000 +0000
+++ fastapi-0.115.5/debian/changelog    2025-01-14 20:46:24.000000000 +0000
@@ -1,3 +1,15 @@
+fastapi (0.115.5-2.1) unstable; urgency=medium
+
+  * Non-maintainer upload
+  * Simplify dependencies to just python3-python-multipart
+  * Skip tests checking that python3-python-multipart matches the upstream
+    version with multipart redirector; Closes: #1091598
+  * Remove spurious file /usr/lib/python3/dist-packages/log.txt
+  * Fix debian/copyright to specify the license
+  * Install upstream changelog into /usr/share/doc
+
+ -- Julian Gilbey <j...@debian.org>  Tue, 14 Jan 2025 20:46:24 +0000
+
 fastapi (0.115.5-2) unstable; urgency=medium
 
   [ Colin Watson ]
diff -Nru fastapi-0.115.5/debian/control fastapi-0.115.5/debian/control
--- fastapi-0.115.5/debian/control      2024-11-29 02:00:07.000000000 +0000
+++ fastapi-0.115.5/debian/control      2025-01-14 20:46:24.000000000 +0000
@@ -13,8 +13,7 @@
                python3-flask <!nocheck>,
                python3-httpx (>= 0.23.1) <!nocheck>,
                python3-inline-snapshot <!nocheck>,
-               python3-multipart (>= 0.0.13) | python3-python-multipart 
<!nocheck>,
-               python3-multipart (<< 0.1) | python3-python-multipart 
<!nocheck>,
+               python3-python-multipart <!nocheck>,
                python3-pdm-backend,
                python3-peewee <!nocheck>,
                python3-pydantic (>= 1.8.2) <!nocheck>,
diff -Nru fastapi-0.115.5/debian/copyright fastapi-0.115.5/debian/copyright
--- fastapi-0.115.5/debian/copyright    2024-11-29 02:00:07.000000000 +0000
+++ fastapi-0.115.5/debian/copyright    2025-01-14 20:46:24.000000000 +0000
@@ -5,13 +5,13 @@
 
 Files: *
 Copyright: (c) 2018 Sebastián Ramírez
-License: 
+License: Expat
 
 Files: debian/*
 Copyright: 2020-2023 © Sandro Tosi <mo...@debian.org>
-License: 
+License: Expat
 
-License: 
+License: Expat
  The MIT License (MIT)
  .
  Copyright (c) 2018 Sebastián Ramírez
diff -Nru fastapi-0.115.5/debian/python3-fastapi.pyremove 
fastapi-0.115.5/debian/python3-fastapi.pyremove
--- fastapi-0.115.5/debian/python3-fastapi.pyremove     1970-01-01 
01:00:00.000000000 +0100
+++ fastapi-0.115.5/debian/python3-fastapi.pyremove     2025-01-14 
20:46:24.000000000 +0000
@@ -0,0 +1 @@
+log.txt
diff -Nru fastapi-0.115.5/debian/rules fastapi-0.115.5/debian/rules
--- fastapi-0.115.5/debian/rules        2024-11-29 02:00:07.000000000 +0000
+++ fastapi-0.115.5/debian/rules        2025-01-14 20:46:24.000000000 +0000
@@ -23,6 +23,7 @@
                         
--ignore-glob=tests/test_tutorial/test_sql_databases/test_tutorial* \
                         
--ignore=tests/test_tutorial/test_custom_response/test_tutorial009c.py \
                         --ignore=tests/test_response_by_alias.py \
+                        --ignore=tests/test_multipart_installation.py \
                         -k "    not test_get_custom_response \
                             and not test_root \
                             and not test_async_testing \
@@ -35,3 +36,6 @@
 
 %:
        dh $@ --with python3 --buildsystem=pybuild
+
+override_dh_installchangelogs:
+       dh_installchangelogs docs/en/docs/release-notes.md

Reply via email to