Your message dated Sun, 02 Mar 2025 05:33:59 +0000
with message-id <e1tobxf-007onz...@fasolo.debian.org>
and subject line Bug#1098541: fixed in django-environ 0.12.0-1.1
has caused the Debian Bug report #1098541,
regarding django-environ: FTBFS: E               ValueError: Port could not be 
cast to integer value as '111%2C22.55.44.88:222%2C%5B2001:db8::1234%5D:333'
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1098541: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1098541
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: src:django-environ
Version: 0.12.0-1
Severity: serious
Tags: ftbfs trixie sid

Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build:

--------------------------------------------------------------------------------
[...]
 debian/rules clean
dh clean --buildsystem=pybuild
   dh_auto_clean -O--buildsystem=pybuild
I: pybuild base:311: python3.12 setup.py clean 
running clean
removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_django-environ/build' (and 
everything under it)
'build/bdist.linux-x86_64' does not exist -- can't clean it
'build/scripts-3.12' does not exist -- can't clean it
I: pybuild base:311: python3.13 setup.py clean 
running clean
removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_django-environ/build' (and 
everything under it)
'build/bdist.linux-x86_64' does not exist -- can't clean it
'build/scripts-3.13' does not exist -- can't clean it
   dh_autoreconf_clean -O--buildsystem=pybuild

[... snipped ...]

tests/test_env.py::TestEnv::test_contains PASSED                         [ 28%]
tests/test_env.py::TestEnv::test_str[STR_VAR-bar-False] PASSED           [ 28%]
tests/test_env.py::TestEnv::test_str[MULTILINE_STR_VAR-foo\\nbar-False] PASSED 
[ 28%]
tests/test_env.py::TestEnv::test_str[MULTILINE_STR_VAR-foo\nbar-True] PASSED [ 
29%]
tests/test_env.py::TestEnv::test_str[MULTILINE_QUOTED_STR_VAR----BEGIN---\\r\\n---END----False]
 PASSED [ 29%]
tests/test_env.py::TestEnv::test_str[MULTILINE_QUOTED_STR_VAR----BEGIN---\n---END----True]
 PASSED [ 29%]
tests/test_env.py::TestEnv::test_str[MULTILINE_ESCAPED_STR_VAR----BEGIN---\\\\n---END----False]
 PASSED [ 29%]
tests/test_env.py::TestEnv::test_str[MULTILINE_ESCAPED_STR_VAR----BEGIN---\\\n---END----True]
 PASSED [ 30%]
tests/test_env.py::TestEnv::test_bytes[STR_VAR-bar-default0] PASSED      [ 30%]
tests/test_env.py::TestEnv::test_bytes[NON_EXISTENT_BYTES_VAR-some-default-some-default]
 PASSED [ 30%]
tests/test_env.py::TestEnv::test_bytes[NON_EXISTENT_STR_VAR-some-default-some-default]
 PASSED [ 30%]
tests/test_env.py::TestEnv::test_int PASSED                              [ 31%]
tests/test_env.py::TestEnv::test_int_with_none_default PASSED            [ 31%]
tests/test_env.py::TestEnv::test_float[33.3-FLOAT_VAR] PASSED            [ 31%]
tests/test_env.py::TestEnv::test_float[33.3-FLOAT_COMMA_VAR] PASSED      [ 31%]
tests/test_env.py::TestEnv::test_float[123420333.3-FLOAT_STRANGE_VAR1] PASSED [ 
32%]
tests/test_env.py::TestEnv::test_float[123420333.3-FLOAT_STRANGE_VAR2] PASSED [ 
32%]
tests/test_env.py::TestEnv::test_float[-1.0-FLOAT_NEGATIVE_VAR] PASSED   [ 32%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_STRING_LIKE_INT] 
PASSED [ 32%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_STRING_LIKE_BOOL] 
PASSED [ 33%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_INT] PASSED    [ 33%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_BOOL] PASSED   [ 33%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_STRING_1] PASSED [ 
34%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_STRING_2] PASSED [ 
34%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_STRING_3] PASSED [ 
34%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_STRING_4] PASSED [ 
34%]
tests/test_env.py::TestEnv::test_bool_true[True-BOOL_TRUE_STRING_5] PASSED [ 
35%]
tests/test_env.py::TestEnv::test_bool_true[False-BOOL_FALSE_STRING_LIKE_INT] 
PASSED [ 35%]
tests/test_env.py::TestEnv::test_bool_true[False-BOOL_FALSE_INT] PASSED  [ 35%]
tests/test_env.py::TestEnv::test_bool_true[False-BOOL_FALSE_STRING_LIKE_BOOL] 
PASSED [ 35%]
tests/test_env.py::TestEnv::test_bool_true[False-BOOL_FALSE_BOOL] PASSED [ 36%]
tests/test_env.py::TestEnv::test_proxied_value PASSED                    [ 36%]
tests/test_env.py::TestEnv::test_escaped_dollar_sign PASSED              [ 36%]
tests/test_env.py::TestEnv::test_escaped_dollar_sign_disabled PASSED     [ 36%]
tests/test_env.py::TestEnv::test_int_list PASSED                         [ 37%]
tests/test_env.py::TestEnv::test_int_list_cast_tuple PASSED              [ 37%]
tests/test_env.py::TestEnv::test_int_tuple PASSED                        [ 37%]
tests/test_env.py::TestEnv::test_mix_tuple_issue_387 PASSED              [ 37%]
tests/test_env.py::TestEnv::test_str_list_with_spaces PASSED             [ 38%]
tests/test_env.py::TestEnv::test_empty_list PASSED                       [ 38%]
tests/test_env.py::TestEnv::test_dict_value PASSED                       [ 38%]
tests/test_env.py::TestEnv::test_complex_dict_value PASSED               [ 38%]
tests/test_env.py::TestEnv::test_dict_parsing[dict] PASSED               [ 39%]
tests/test_env.py::TestEnv::test_dict_parsing[dict_int] PASSED           [ 39%]
tests/test_env.py::TestEnv::test_dict_parsing[dict_float] PASSED         [ 39%]
tests/test_env.py::TestEnv::test_dict_parsing[dict_str_list] PASSED      [ 40%]
tests/test_env.py::TestEnv::test_dict_parsing[dict_int_list] PASSED      [ 40%]
tests/test_env.py::TestEnv::test_dict_parsing[dict_int_cast] PASSED      [ 40%]
tests/test_env.py::TestEnv::test_dict_parsing[dict_str_cast] PASSED      [ 40%]
tests/test_env.py::TestEnv::test_url_value PASSED                        [ 41%]
tests/test_env.py::TestEnv::test_url_empty_string_default_value PASSED   [ 41%]
tests/test_env.py::TestEnv::test_url_encoded_parts PASSED                [ 41%]
tests/test_env.py::TestEnv::test_db_url_value[postgres] PASSED           [ 41%]
tests/test_env.py::TestEnv::test_db_url_value[mysql] PASSED              [ 42%]
tests/test_env.py::TestEnv::test_db_url_value[mysql_gis] PASSED          [ 42%]
tests/test_env.py::TestEnv::test_db_url_value[oracle_tns] PASSED         [ 42%]
tests/test_env.py::TestEnv::test_db_url_value[oracle] PASSED             [ 42%]
tests/test_env.py::TestEnv::test_db_url_value[redshift] PASSED           [ 43%]
tests/test_env.py::TestEnv::test_db_url_value[sqlite] PASSED             [ 43%]
tests/test_env.py::TestEnv::test_db_url_value[custom] PASSED             [ 43%]
tests/test_env.py::TestEnv::test_db_url_value[cloudsql] PASSED           [ 43%]
tests/test_env.py::TestEnv::test_cache_url_value[memcached] PASSED       [ 44%]
tests/test_env.py::TestEnv::test_cache_url_value[redis] PASSED           [ 44%]
tests/test_env.py::TestEnv::test_email_url_value PASSED                  [ 44%]
tests/test_env.py::TestEnv::test_json_value PASSED                       [ 44%]
tests/test_env.py::TestEnv::test_path PASSED                             [ 45%]
tests/test_env.py::TestEnv::test_smart_cast PASSED                       [ 45%]
tests/test_env.py::TestEnv::test_exported PASSED                         [ 45%]
tests/test_env.py::TestEnv::test_prefix PASSED                           [ 45%]
tests/test_env.py::TestEnv::test_prefix_and_not_present_without_default PASSED 
[ 46%]
tests/test_env.py::TestFileEnv::test_not_present_with_default PASSED     [ 46%]
tests/test_env.py::TestFileEnv::test_not_present_without_default PASSED  [ 46%]
tests/test_env.py::TestFileEnv::test_contains PASSED                     [ 47%]
tests/test_env.py::TestFileEnv::test_str[STR_VAR-bar-False] PASSED       [ 47%]
tests/test_env.py::TestFileEnv::test_str[MULTILINE_STR_VAR-foo\\nbar-False] 
PASSED [ 47%]
tests/test_env.py::TestFileEnv::test_str[MULTILINE_STR_VAR-foo\nbar-True] 
PASSED [ 47%]
tests/test_env.py::TestFileEnv::test_str[MULTILINE_QUOTED_STR_VAR----BEGIN---\\r\\n---END----False]
 PASSED [ 48%]
tests/test_env.py::TestFileEnv::test_str[MULTILINE_QUOTED_STR_VAR----BEGIN---\n---END----True]
 PASSED [ 48%]
tests/test_env.py::TestFileEnv::test_str[MULTILINE_ESCAPED_STR_VAR----BEGIN---\\\\n---END----False]
 PASSED [ 48%]
tests/test_env.py::TestFileEnv::test_str[MULTILINE_ESCAPED_STR_VAR----BEGIN---\\\n---END----True]
 PASSED [ 48%]
tests/test_env.py::TestFileEnv::test_bytes[STR_VAR-bar-default0] PASSED  [ 49%]
tests/test_env.py::TestFileEnv::test_bytes[NON_EXISTENT_BYTES_VAR-some-default-some-default]
 PASSED [ 49%]
tests/test_env.py::TestFileEnv::test_bytes[NON_EXISTENT_STR_VAR-some-default-some-default]
 PASSED [ 49%]
tests/test_env.py::TestFileEnv::test_int PASSED                          [ 49%]
tests/test_env.py::TestFileEnv::test_int_with_none_default PASSED        [ 50%]
tests/test_env.py::TestFileEnv::test_float[33.3-FLOAT_VAR] PASSED        [ 50%]
tests/test_env.py::TestFileEnv::test_float[33.3-FLOAT_COMMA_VAR] PASSED  [ 50%]
tests/test_env.py::TestFileEnv::test_float[123420333.3-FLOAT_STRANGE_VAR1] 
PASSED [ 50%]
tests/test_env.py::TestFileEnv::test_float[123420333.3-FLOAT_STRANGE_VAR2] 
PASSED [ 51%]
tests/test_env.py::TestFileEnv::test_float[-1.0-FLOAT_NEGATIVE_VAR] PASSED [ 
51%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_STRING_LIKE_INT] 
PASSED [ 51%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_STRING_LIKE_BOOL] 
PASSED [ 51%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_INT] PASSED [ 52%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_BOOL] PASSED [ 
52%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_STRING_1] PASSED 
[ 52%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_STRING_2] PASSED 
[ 52%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_STRING_3] PASSED 
[ 53%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_STRING_4] PASSED 
[ 53%]
tests/test_env.py::TestFileEnv::test_bool_true[True-BOOL_TRUE_STRING_5] PASSED 
[ 53%]
tests/test_env.py::TestFileEnv::test_bool_true[False-BOOL_FALSE_STRING_LIKE_INT]
 PASSED [ 54%]
tests/test_env.py::TestFileEnv::test_bool_true[False-BOOL_FALSE_INT] PASSED [ 
54%]
tests/test_env.py::TestFileEnv::test_bool_true[False-BOOL_FALSE_STRING_LIKE_BOOL]
 PASSED [ 54%]
tests/test_env.py::TestFileEnv::test_bool_true[False-BOOL_FALSE_BOOL] PASSED [ 
54%]
tests/test_env.py::TestFileEnv::test_proxied_value PASSED                [ 55%]
tests/test_env.py::TestFileEnv::test_escaped_dollar_sign PASSED          [ 55%]
tests/test_env.py::TestFileEnv::test_escaped_dollar_sign_disabled PASSED [ 55%]
tests/test_env.py::TestFileEnv::test_int_list PASSED                     [ 55%]
tests/test_env.py::TestFileEnv::test_int_list_cast_tuple PASSED          [ 56%]
tests/test_env.py::TestFileEnv::test_int_tuple PASSED                    [ 56%]
tests/test_env.py::TestFileEnv::test_mix_tuple_issue_387 PASSED          [ 56%]
tests/test_env.py::TestFileEnv::test_str_list_with_spaces PASSED         [ 56%]
tests/test_env.py::TestFileEnv::test_empty_list PASSED                   [ 57%]
tests/test_env.py::TestFileEnv::test_dict_value PASSED                   [ 57%]
tests/test_env.py::TestFileEnv::test_complex_dict_value PASSED           [ 57%]
tests/test_env.py::TestFileEnv::test_dict_parsing[dict] PASSED           [ 57%]
tests/test_env.py::TestFileEnv::test_dict_parsing[dict_int] PASSED       [ 58%]
tests/test_env.py::TestFileEnv::test_dict_parsing[dict_float] PASSED     [ 58%]
tests/test_env.py::TestFileEnv::test_dict_parsing[dict_str_list] PASSED  [ 58%]
tests/test_env.py::TestFileEnv::test_dict_parsing[dict_int_list] PASSED  [ 58%]
tests/test_env.py::TestFileEnv::test_dict_parsing[dict_int_cast] PASSED  [ 59%]
tests/test_env.py::TestFileEnv::test_dict_parsing[dict_str_cast] PASSED  [ 59%]
tests/test_env.py::TestFileEnv::test_url_value PASSED                    [ 59%]
tests/test_env.py::TestFileEnv::test_url_empty_string_default_value PASSED [ 
60%]
tests/test_env.py::TestFileEnv::test_url_encoded_parts PASSED            [ 60%]
tests/test_env.py::TestFileEnv::test_db_url_value[postgres] PASSED       [ 60%]
tests/test_env.py::TestFileEnv::test_db_url_value[mysql] PASSED          [ 60%]
tests/test_env.py::TestFileEnv::test_db_url_value[mysql_gis] PASSED      [ 61%]
tests/test_env.py::TestFileEnv::test_db_url_value[oracle_tns] PASSED     [ 61%]
tests/test_env.py::TestFileEnv::test_db_url_value[oracle] PASSED         [ 61%]
tests/test_env.py::TestFileEnv::test_db_url_value[redshift] PASSED       [ 61%]
tests/test_env.py::TestFileEnv::test_db_url_value[sqlite] PASSED         [ 62%]
tests/test_env.py::TestFileEnv::test_db_url_value[custom] PASSED         [ 62%]
tests/test_env.py::TestFileEnv::test_db_url_value[cloudsql] PASSED       [ 62%]
tests/test_env.py::TestFileEnv::test_cache_url_value[memcached] PASSED   [ 62%]
tests/test_env.py::TestFileEnv::test_cache_url_value[redis] PASSED       [ 63%]
tests/test_env.py::TestFileEnv::test_email_url_value PASSED              [ 63%]
tests/test_env.py::TestFileEnv::test_json_value PASSED                   [ 63%]
tests/test_env.py::TestFileEnv::test_path PASSED                         [ 63%]
tests/test_env.py::TestFileEnv::test_smart_cast PASSED                   [ 64%]
tests/test_env.py::TestFileEnv::test_exported PASSED                     [ 64%]
tests/test_env.py::TestFileEnv::test_prefix PASSED                       [ 64%]
tests/test_env.py::TestFileEnv::test_prefix_and_not_present_without_default 
PASSED [ 64%]
tests/test_env.py::TestFileEnv::test_read_env_path_like PASSED           [ 65%]
tests/test_env.py::TestFileEnv::test_existing_overwrite[True] PASSED     [ 65%]
tests/test_env.py::TestFileEnv::test_existing_overwrite[False] PASSED    [ 65%]
tests/test_env.py::TestSubClass::test_not_present_with_default PASSED    [ 65%]
tests/test_env.py::TestSubClass::test_not_present_without_default PASSED [ 66%]
tests/test_env.py::TestSubClass::test_contains PASSED                    [ 66%]
tests/test_env.py::TestSubClass::test_str[STR_VAR-bar-False] PASSED      [ 66%]
tests/test_env.py::TestSubClass::test_str[MULTILINE_STR_VAR-foo\\nbar-False] 
PASSED [ 67%]
tests/test_env.py::TestSubClass::test_str[MULTILINE_STR_VAR-foo\nbar-True] 
PASSED [ 67%]
tests/test_env.py::TestSubClass::test_str[MULTILINE_QUOTED_STR_VAR----BEGIN---\\r\\n---END----False]
 PASSED [ 67%]
tests/test_env.py::TestSubClass::test_str[MULTILINE_QUOTED_STR_VAR----BEGIN---\n---END----True]
 PASSED [ 67%]
tests/test_env.py::TestSubClass::test_str[MULTILINE_ESCAPED_STR_VAR----BEGIN---\\\\n---END----False]
 PASSED [ 68%]
tests/test_env.py::TestSubClass::test_str[MULTILINE_ESCAPED_STR_VAR----BEGIN---\\\n---END----True]
 PASSED [ 68%]
tests/test_env.py::TestSubClass::test_bytes[STR_VAR-bar-default0] PASSED [ 68%]
tests/test_env.py::TestSubClass::test_bytes[NON_EXISTENT_BYTES_VAR-some-default-some-default]
 PASSED [ 68%]
tests/test_env.py::TestSubClass::test_bytes[NON_EXISTENT_STR_VAR-some-default-some-default]
 PASSED [ 69%]
tests/test_env.py::TestSubClass::test_int PASSED                         [ 69%]
tests/test_env.py::TestSubClass::test_int_with_none_default PASSED       [ 69%]
tests/test_env.py::TestSubClass::test_float[33.3-FLOAT_VAR] PASSED       [ 69%]
tests/test_env.py::TestSubClass::test_float[33.3-FLOAT_COMMA_VAR] PASSED [ 70%]
tests/test_env.py::TestSubClass::test_float[123420333.3-FLOAT_STRANGE_VAR1] 
PASSED [ 70%]
tests/test_env.py::TestSubClass::test_float[123420333.3-FLOAT_STRANGE_VAR2] 
PASSED [ 70%]
tests/test_env.py::TestSubClass::test_float[-1.0-FLOAT_NEGATIVE_VAR] PASSED [ 
70%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_STRING_LIKE_INT] 
PASSED [ 71%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_STRING_LIKE_BOOL]
 PASSED [ 71%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_INT] PASSED [ 
71%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_BOOL] PASSED [ 
71%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_STRING_1] PASSED 
[ 72%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_STRING_2] PASSED 
[ 72%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_STRING_3] PASSED 
[ 72%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_STRING_4] PASSED 
[ 72%]
tests/test_env.py::TestSubClass::test_bool_true[True-BOOL_TRUE_STRING_5] PASSED 
[ 73%]
tests/test_env.py::TestSubClass::test_bool_true[False-BOOL_FALSE_STRING_LIKE_INT]
 PASSED [ 73%]
tests/test_env.py::TestSubClass::test_bool_true[False-BOOL_FALSE_INT] PASSED [ 
73%]
tests/test_env.py::TestSubClass::test_bool_true[False-BOOL_FALSE_STRING_LIKE_BOOL]
 PASSED [ 74%]
tests/test_env.py::TestSubClass::test_bool_true[False-BOOL_FALSE_BOOL] PASSED [ 
74%]
tests/test_env.py::TestSubClass::test_proxied_value PASSED               [ 74%]
tests/test_env.py::TestSubClass::test_escaped_dollar_sign PASSED         [ 74%]
tests/test_env.py::TestSubClass::test_escaped_dollar_sign_disabled PASSED [ 75%]
tests/test_env.py::TestSubClass::test_int_list PASSED                    [ 75%]
tests/test_env.py::TestSubClass::test_int_list_cast_tuple PASSED         [ 75%]
tests/test_env.py::TestSubClass::test_int_tuple PASSED                   [ 75%]
tests/test_env.py::TestSubClass::test_mix_tuple_issue_387 PASSED         [ 76%]
tests/test_env.py::TestSubClass::test_str_list_with_spaces PASSED        [ 76%]
tests/test_env.py::TestSubClass::test_empty_list PASSED                  [ 76%]
tests/test_env.py::TestSubClass::test_dict_value PASSED                  [ 76%]
tests/test_env.py::TestSubClass::test_complex_dict_value PASSED          [ 77%]
tests/test_env.py::TestSubClass::test_dict_parsing[dict] PASSED          [ 77%]
tests/test_env.py::TestSubClass::test_dict_parsing[dict_int] PASSED      [ 77%]
tests/test_env.py::TestSubClass::test_dict_parsing[dict_float] PASSED    [ 77%]
tests/test_env.py::TestSubClass::test_dict_parsing[dict_str_list] PASSED [ 78%]
tests/test_env.py::TestSubClass::test_dict_parsing[dict_int_list] PASSED [ 78%]
tests/test_env.py::TestSubClass::test_dict_parsing[dict_int_cast] PASSED [ 78%]
tests/test_env.py::TestSubClass::test_dict_parsing[dict_str_cast] PASSED [ 78%]
tests/test_env.py::TestSubClass::test_url_value PASSED                   [ 79%]
tests/test_env.py::TestSubClass::test_url_empty_string_default_value PASSED [ 
79%]
tests/test_env.py::TestSubClass::test_url_encoded_parts PASSED           [ 79%]
tests/test_env.py::TestSubClass::test_db_url_value[postgres] PASSED      [ 80%]
tests/test_env.py::TestSubClass::test_db_url_value[mysql] PASSED         [ 80%]
tests/test_env.py::TestSubClass::test_db_url_value[mysql_gis] PASSED     [ 80%]
tests/test_env.py::TestSubClass::test_db_url_value[oracle_tns] PASSED    [ 80%]
tests/test_env.py::TestSubClass::test_db_url_value[oracle] PASSED        [ 81%]
tests/test_env.py::TestSubClass::test_db_url_value[redshift] PASSED      [ 81%]
tests/test_env.py::TestSubClass::test_db_url_value[sqlite] PASSED        [ 81%]
tests/test_env.py::TestSubClass::test_db_url_value[custom] PASSED        [ 81%]
tests/test_env.py::TestSubClass::test_db_url_value[cloudsql] PASSED      [ 82%]
tests/test_env.py::TestSubClass::test_cache_url_value[memcached] PASSED  [ 82%]
tests/test_env.py::TestSubClass::test_cache_url_value[redis] PASSED      [ 82%]
tests/test_env.py::TestSubClass::test_email_url_value PASSED             [ 82%]
tests/test_env.py::TestSubClass::test_json_value PASSED                  [ 83%]
tests/test_env.py::TestSubClass::test_path PASSED                        [ 83%]
tests/test_env.py::TestSubClass::test_smart_cast PASSED                  [ 83%]
tests/test_env.py::TestSubClass::test_exported PASSED                    [ 83%]
tests/test_env.py::TestSubClass::test_prefix PASSED                      [ 84%]
tests/test_env.py::TestSubClass::test_prefix_and_not_present_without_default 
PASSED [ 84%]
tests/test_env.py::TestSubClass::test_singleton_environ PASSED           [ 84%]
tests/test_fileaware.py::test_mapping PASSED                             [ 84%]
tests/test_fileaware.py::test_precidence PASSED                          [ 85%]
tests/test_fileaware.py::test_missing_file_raises_exception PASSED       [ 85%]
tests/test_fileaware.py::test_iter PASSED                                [ 85%]
tests/test_fileaware.py::test_len PASSED                                 [ 85%]
tests/test_fileaware.py::test_cache PASSED                               [ 86%]
tests/test_fileaware.py::test_no_cache PASSED                            [ 86%]
tests/test_fileaware.py::test_setdefault PASSED                          [ 86%]
tests/test_fileaware.py::TestDelItem::test_del_key PASSED                [ 87%]
tests/test_fileaware.py::TestDelItem::test_del_key_with_file_key PASSED  [ 87%]
tests/test_fileaware.py::TestDelItem::test_del_shadowed_key_with_file_key 
PASSED [ 87%]
tests/test_fileaware.py::TestDelItem::test_del_file_key PASSED           [ 87%]
tests/test_fileaware.py::TestDelItem::test_del_file_key_clears_cache PASSED [ 
88%]
tests/test_fileaware.py::TestSetItem::test_set_key PASSED                [ 88%]
tests/test_fileaware.py::TestSetItem::test_cant_override_key_with_file_key 
PASSED [ 88%]
tests/test_fileaware.py::TestSetItem::test_set_file_key PASSED           [ 88%]
tests/test_fileaware.py::TestSetItem::test_change_file_key_clears_cache PASSED 
[ 89%]
tests/test_path.py::test_str PASSED                                      [ 89%]
tests/test_path.py::test_path_class PASSED                               [ 89%]
tests/test_path.py::test_repr PASSED                                     [ 89%]
tests/test_path.py::test_comparison PASSED                               [ 90%]
tests/test_path.py::test_sum PASSED                                      [ 90%]
tests/test_path.py::test_subtraction PASSED                              [ 90%]
tests/test_path.py::test_subtraction_not_int PASSED                      [ 90%]
tests/test_path.py::test_required_path PASSED                            [ 91%]
tests/test_path.py::test_complex_manipulation PASSED                     [ 91%]
tests/test_schema.py::test_schema PASSED                                 [ 91%]
tests/test_search.py::test_solr_parsing PASSED                           [ 91%]
tests/test_search.py::test_solr_multicore_parsing PASSED                 [ 92%]
tests/test_search.py::test_elasticsearch_parsing[elasticsearch] PASSED   [ 92%]
tests/test_search.py::test_elasticsearch_parsing[elasticsearchs] PASSED  [ 92%]
tests/test_search.py::test_elasticsearch_parsing[elasticsearch2] PASSED  [ 92%]
tests/test_search.py::test_elasticsearch_parsing[elasticsearch2s] PASSED [ 93%]
tests/test_search.py::test_elasticsearch_parsing[elasticsearch5] PASSED  [ 93%]
tests/test_search.py::test_elasticsearch_parsing[elasticsearch5s] PASSED [ 93%]
tests/test_search.py::test_elasticsearch_parsing[elasticsearch7] PASSED  [ 94%]
tests/test_search.py::test_elasticsearch_parsing[elasticsearch7s] PASSED [ 94%]
tests/test_search.py::test_custom_search_engine PASSED                   [ 94%]
tests/test_search.py::test_whoosh_parsing[file] PASSED                   [ 94%]
tests/test_search.py::test_whoosh_parsing[ram] PASSED                    [ 95%]
tests/test_search.py::test_xapian_parsing[myflags] PASSED                [ 95%]
tests/test_search.py::test_simple_parsing PASSED                         [ 95%]
tests/test_search.py::test_common_args_parsing[solr://127.0.0.1:8983/solr] 
PASSED [ 95%]
tests/test_search.py::test_common_args_parsing[elasticsearch://127.0.0.1:9200/index]
 PASSED [ 96%]
tests/test_search.py::test_common_args_parsing[whoosh:///home/search/whoosh_index]
 PASSED [ 96%]
tests/test_search.py::test_common_args_parsing[xapian:///home/search/xapian_index]
 PASSED [ 96%]
tests/test_search.py::test_common_args_parsing[simple:///] PASSED        [ 96%]
tests/test_utils.py::test_cast[anything-] PASSED                         [ 97%]
tests/test_utils.py::test_cast[anything*] PASSED                         [ 97%]
tests/test_utils.py::test_cast[*anything] PASSED                         [ 97%]
tests/test_utils.py::test_cast[anything.] PASSED                         [ 97%]
tests/test_utils.py::test_cast[anything.1] PASSED                        [ 98%]
tests/test_utils.py::test_cast[(anything] PASSED                         [ 98%]
tests/test_utils.py::test_cast[anything-v1.2] PASSED                     [ 98%]
tests/test_utils.py::test_cast[anything-1.2] PASSED                      [ 98%]
tests/test_utils.py::test_cast[anything=] PASSED                         [ 99%]
tests/test_utils.py::test_cast_urlstr[Le-%7BFsIaYnaQw%7Da2B%2F%5BV8bS+-Le-{FsIaYnaQw}a2B/[V8bS+]
 PASSED [ 99%]
tests/test_utils.py::test_cast_urlstr[my_test-string+-my_test-string+] PASSED [ 
99%]
tests/test_utils.py::test_cast_urlstr[my%20test%20string+-my test string+] 
PASSED [100%]

=================================== FAILURES ===================================
______________________ test_db_parsing[postgres_cluster] _______________________

url = 
'postgres://username:p@ss:12,wor:34d@host1:111,22.55.44.88:222,[2001:db8::1234]:333/db'
engine = 'django.db.backends.postgresql', name = 'db'
host = 'host1,22.55.44.88,[2001:db8::1234]', user = 'username'
passwd = 'p@ss:12,wor:34d', port = '111,222,333'

    @pytest.mark.parametrize(
        'url,engine,name,host,user,passwd,port',
        [
            # postgres://user:password@host:port/dbname
            ('postgres://enigma:sec...@example.com:5431/dbname',
             DJANGO_POSTGRES,
             'dbname',
             'example.com',
             'enigma',
             'secret',
             5431),
            # postgres://path/dbname
            ('postgres:////var/run/postgresql/dbname',
             DJANGO_POSTGRES,
             'dbname',
             '/var/run/postgresql',
             '',
             '',
             ''),
            # postgis://user:password@host:port/dbname
            ('postgis://enigma:sec...@example.com:5431/dbname',
             'django.contrib.gis.db.backends.postgis',
             'dbname',
             'example.com',
             'enigma',
             'secret',
             5431),
            # postgres://user:password@host:port,host:port,host:port/dbname
            
('postgres://username:p@ss:12,wor:34d@host1:111,22.55.44.88:222,[2001:db8::1234]:333/db',
             DJANGO_POSTGRES,
             'db',
             'host1,22.55.44.88,[2001:db8::1234]',
             'username',
             'p@ss:12,wor:34d',
             '111,222,333'
             ),
            # postgres://host,host,host/dbname
            ('postgres://node1,node2,node3/db',
             DJANGO_POSTGRES,
             'db',
             'node1,node2,node3',
             '',
             '',
             ''
             ),
            # cockroachdb://username:sec...@test.example.com:26258/dbname
            ('cockroachdb://username:sec...@test.example.com:26258/dbname',
             'django_cockroachdb',
             'dbname',
             'test.example.com',
             'username',
             'secret',
             26258),
            # mysqlgis://user:password@host:port/dbname
            ('mysqlgis://enigma:sec...@example.com:5431/dbname',
             'django.contrib.gis.db.backends.mysql',
             'dbname',
             'example.com',
             'enigma',
             'secret',
             5431),
            # mysql://user:password@host/dbname?options
            ('mysql://enigma:sec...@reconnect.com/dbname?reconnect=true',
             'django.db.backends.mysql',
             'dbname',
             'reconnect.com',
             'enigma',
             'secret',
             ''),
            # mysql://user@host/dbname
            ('mysql://enigma@localhost/dbname',
             'django.db.backends.mysql',
             'dbname',
             'localhost',
             'enigma',
             '',
             ''),
            # sqlite://
            ('sqlite://',
             'django.db.backends.sqlite3',
             ':memory:',
             '',
             '',
             '',
             ''),
            # sqlite:////absolute/path/to/db/file
            ('sqlite:////full/path/to/your/file.sqlite',
             'django.db.backends.sqlite3',
             '/full/path/to/your/file.sqlite',
             '',
             '',
             '',
             ''),
            # sqlite://:memory:
            ('sqlite://:memory:',
             'django.db.backends.sqlite3',
             ':memory:',
             '',
             '',
             '',
             ''),
            # ldap://user:password@host
            ('ldap://cn=admin,dc=nodomain,dc=org:sec...@example.com',
             'ldapdb.backends.ldap',
             'ldap://example.com',
             'example.com',
             'cn=admin,dc=nodomain,dc=org',
             'secret',
             ''),
            # mysql://user:password@host/dbname
            ('mssql://enigma:sec...@example.com/dbname'
             '?driver=ODBC Driver 13 for SQL Server',
             'mssql',
             'dbname',
             'example.com',
             'enigma',
             'secret',
             ''),
            # mysql://user:password@host:port/dbname
            ('mssql://enigma:sec...@amazonaws.com\\insnsnss:12345/dbname'
             '?driver=ODBC Driver 13 for SQL Server',
             'mssql',
             'dbname',
             'amazonaws.com\\insnsnss',
             'enigma',
             'secret',
             12345),
             # mysql://user:password@host:port/dbname
            ('mysql://enigma:><{~!@#$%^&*}[]@example.com:1234/dbname',
             'django.db.backends.mysql',
             'dbname',
             'example.com',
             'enigma',
             '><{~!@#$%^&*}[]',
             1234),
            # mysql://user:password@host/dbname
            ('mysql://enigma:]password]@example.com/dbname',
             'django.db.backends.mysql',
             'dbname',
             'example.com',
             'enigma',
             ']password]',
             ''),
        ],
        ids=[
            'postgres',
            'postgres_unix_domain',
            'postgis',
            'postgres_cluster',
            'postgres_no_ports',
            'cockroachdb',
            'mysqlgis',
            'cleardb',
            'mysql_no_password',
            'sqlite_empty',
            'sqlite_file',
            'sqlite_memory',
            'ldap',
            'mssql',
            'mssql_port',
            'mysql_password_special_chars',
            'mysql_invalid_ipv6_password',
        ],
    )
    def test_db_parsing(url, engine, name, host, user, passwd, port):
>       config = Env.db_url_config(url)

tests/test_db.py:182: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
environ/environ.py:583: in db_url_config
    port = url.port
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = ParseResult(scheme='postgres', 
netloc='username:p@ss:12%2Cwor:34d@host1:111%2C22.55.44.88:222%2C%5B2001:db8::1234%5D:333',
 path='/db', params='', query='', fragment='')

    @property
    def port(self):
        port = self._hostinfo[1]
        if port is not None:
            if port.isdigit() and port.isascii():
                port = int(port)
            else:
>               raise ValueError(f"Port could not be cast to integer value as 
> {port!r}")
E               ValueError: Port could not be cast to integer value as 
'111%2C22.55.44.88:222%2C%5B2001:db8::1234%5D:333'

/usr/lib/python3.13/urllib/parse.py:182: ValueError
=========================== short test summary info ============================
FAILED tests/test_db.py::test_db_parsing[postgres_cluster] - ValueError: Port...
======================== 1 failed, 384 passed in 0.36s =========================
E: pybuild pybuild:389: test: plugin distutils failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_django-environ/build; python3.13 -m 
pytest tests
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.12 
3.13" returned exit code 13
make[1]: *** [debian/rules:9: override_dh_auto_test] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:6: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:

https://people.debian.org/~sanvila/build-logs/202502/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:django-environ, so that this is still
visible in the BTS web page for this package.

Thanks.

--- End Message ---
--- Begin Message ---
Source: django-environ
Source-Version: 0.12.0-1.1
Done: Simon Quigley <tsimo...@debian.org>

We believe that the bug you reported is fixed in the latest version of
django-environ, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1098...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Simon Quigley <tsimo...@debian.org> (supplier of updated django-environ package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Sat, 01 Mar 2025 23:26:10 -0600
Source: django-environ
Built-For-Profiles: noudeb
Architecture: source
Version: 0.12.0-1.1
Distribution: unstable
Urgency: medium
Maintainer: Debian Python Team <team+pyt...@tracker.debian.org>
Changed-By: Simon Quigley <tsimo...@debian.org>
Closes: 1098541
Changes:
 django-environ (0.12.0-1.1) unstable; urgency=medium
 .
   * Non-maintainer upload.
   * Add a patch working around several urllib-related test failures
     (Closes: #1098541).
Checksums-Sha1:
 ebbb97b9832528a4f57de71dbc3b45a10a2ce3c7 2096 django-environ_0.12.0-1.1.dsc
 6ee855c9231535a63e9b57b34f8593c76e4ce42c 3540 
django-environ_0.12.0-1.1.debian.tar.xz
 b7e6481b8b5176f512f1b1d06db9657777e1ec19 8952 
django-environ_0.12.0-1.1_source.buildinfo
Checksums-Sha256:
 e549bbfa2d835b25b95e580c2d5e4c443d9c36e5647e1dd50bc73d6637383e8f 2096 
django-environ_0.12.0-1.1.dsc
 9fa41b65ec8b67e467560e45cf5175f9f2f301ab052e7d9a5bdbf33232b7eea1 3540 
django-environ_0.12.0-1.1.debian.tar.xz
 1a94b1b43bb5326683aa567673dca6b78b956fa3ed885061f6fe5f29ea237634 8952 
django-environ_0.12.0-1.1_source.buildinfo
Files:
 2d0ed932289f5568bb5f6ae75b4ff2b0 2096 python optional 
django-environ_0.12.0-1.1.dsc
 b24f520db062bb9062981f6dfa24612b 3540 python optional 
django-environ_0.12.0-1.1.debian.tar.xz
 139d3e0ea11dba4c539e828183c84071 8952 python optional 
django-environ_0.12.0-1.1_source.buildinfo

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEXHq+og+GMEWcyMi14n8s+EWML6QFAmfD7CwACgkQ4n8s+EWM
L6QAQQ/+IsNoVoLcv2FzPaV1Wy49jQJp58ug28ygPJ/JXbXnwSmxj2JpzvjTz7tx
TqhdfVba1P4+n4Oan+h4oPJx7ObKJd4h6W1c24nieh9jTpCvDYm+3EyazJLacm+m
MjTzUWb8Yp5+vl/FTP/kpvba5Sc4xu1HBapewX7OVX/IJdcEipn5kmog7WRjoo6E
c3sR/avWr+tEcBB7hJtxvcRKg6VJg7wQv/Xnnfp/vF6jIR/53a+dA4TXDXtaH8aF
VX8LBVwKqxOGOdRduSFM65m7vNiN0/Y4+Jq64cNJ7l21cPFtKgwsaiyb7gj9C4QO
0BMzWXvgECB4oAnImLjZyCWaBd1BQEblv0f8BCAB9XSXhfJZLzJjJ2WbpEg/QTNm
f3Y7ZtXCQ/yzQHzdMu1ddOMQd1e3gAribO/Ko7iiKfM5V8WB/xaEh1oy4m9uiqHS
+HOb2tfwDF7P/oOImDx1wXN8TI5BmmJfJ0a5B7FG7yynimE5H+YkuHY5NSxrlD6t
Y6nYNouOiTJqzrc058REjY4VleRXKkZbfYmJPUIS2412zTLRKmsCf5q6WpS3VDDX
/wQYqYOZNw8eRIi6TNQFsFVwGE9oHc1z1BDgh6ELWiztaNmxMQk1Pim4La7nAnjF
MsjUv/JZ9PWtxHTF+gcMYMqIhb+JQSv+7AweUUbA2+fj5ysOr6s=
=xzm8
-----END PGP SIGNATURE-----

Attachment: pgppogd6qWSIC.pgp
Description: PGP signature


--- End Message ---

Reply via email to