Your message dated Wed, 13 Nov 2024 13:15:52 +0000
with message-id <e1tbdds-00b3sp...@fasolo.debian.org>
and subject line Bug#1082269: fixed in python-sdjson 0.5.0-3
has caused the Debian Bug report #1082269,
regarding python-sdjson FTBFS with Python 3.13
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.)


-- 
1082269: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1082269
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: python-sdjson
Version: 0.5.0-1
Severity: normal
User: debian-pyt...@lists.debian.org
Usertags: python3.13

This package failed build from source when test-built against a version of
python3-defaults that includes 3.13 as a supported version.

To reproduce this issue, build against python3-defaults (python3-all-dev etc.)
from Debian experimental.

What's new in Python 3.13:
https://docs.python.org/3.13/whatsnew/3.13.html

Log snippet:

   dh_auto_test -O--buildsystem=pybuild
I: pybuild pybuild:308: ln -s test_overloading_ tests/test_overloading
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_sdjson/build; 
python3.13 -m pytest -v --ignore=tests/test_protocols.py
============================= test session starts 
==============================
platform linux -- Python 3.13.0rc2, pytest-8.3.3, pluggy-1.5.0 -- 
/usr/bin/python3.13
cachedir: .pytest_cache
Test session started at 07:47:54
rootdir: /<<PKGBUILDDIR>>
configfile: tox.ini
plugins: regressions-2.5.0+ds, timeout-2.3.1, rerunfailures-12.0, 
datadir-1.4.1+ds, typeguard-4.3.0, cov-5.0.0
timeout: 300.0s
timeout method: signal
timeout func_only: False
collecting ... collected 154 items

tests/stdlib_tests/test_decode.py::test_decimal PASSED            
       [  0%]
tests/stdlib_tests/test_decode.py::test_float PASSED              
       [  1%]
tests/stdlib_tests/test_decode.py::test_empty_objects PASSED      
       [  1%]
tests/stdlib_tests/test_decode.py::test_object_pairs_hook PASSED  
       [  2%]
tests/stdlib_tests/test_decode.py::test_decoder_optimizations 
PASSED     [  3%]
tests/stdlib_tests/test_decode.py::test_keys_reuse PASSED         
       [  3%]
tests/stdlib_tests/test_decode.py::test_extra_data PASSED         
       [  4%]
tests/stdlib_tests/test_decode.py::test_invalid_escape PASSED     
       [  5%]
tests/stdlib_tests/test_decode.py::test_invalid_input_type PASSED 
       [  5%]
tests/stdlib_tests/test_decode.py::test_string_with_utf8_bom 
PASSED      [  6%]
tests/stdlib_tests/test_decode.py::test_negative_index PASSED     
       [  7%]
tests/stdlib_tests/test_default.py::test_default PASSED           
       [  7%]
tests/stdlib_tests/test_dump.py::test_dump PASSED                 
       [  8%]
tests/stdlib_tests/test_dump.py::test_dumps PASSED                
       [  9%]
tests/stdlib_tests/test_dump.py::test_dump_skipkeys PASSED        
       [  9%]
tests/stdlib_tests/test_dump.py::test_encode_truefalse[data0-{"false": true, 
"true": false}] PASSED [ 10%]
tests/stdlib_tests/test_dump.py::test_encode_truefalse[data1-{"false": 1, "2": 
3.0, "4.0": 5, "6": true}] PASSED [ 11%]
tests/stdlib_tests/test_dump.py::test_encode_mutated PASSED       
       [ 11%]
tests/stdlib_tests/test_dump.py::test_encode_evil_dict PASSED     
       [ 12%]
tests/stdlib_tests/test_encode_basestring_ascii.py::test_ordered_dict 
PASSED [ 12%]
tests/stdlib_tests/test_encode_basestring_ascii.py::test_sorted_dict 
PASSED [ 13%]
tests/stdlib_tests/test_enum.py::test_floats PASSED               
       [ 14%]
tests/stdlib_tests/test_enum.py::test_weird_floats PASSED         
       [ 14%]
tests/stdlib_tests/test_enum.py::test_ints PASSED                 
       [ 15%]
tests/stdlib_tests/test_enum.py::test_list PASSED                 
       [ 16%]
tests/stdlib_tests/test_enum.py::test_dict_keys PASSED            
       [ 16%]
tests/stdlib_tests/test_enum.py::test_dict_values PASSED          
       [ 17%]
tests/stdlib_tests/test_fail.py::test_failures PASSED             
       [ 18%]
tests/stdlib_tests/test_fail.py::test_non_string_keys_dict PASSED 
       [ 18%]
tests/stdlib_tests/test_fail.py::test_not_serializable PASSED     
       [ 19%]
tests/stdlib_tests/test_fail.py::test_truncated_input[-Expecting value-0] 
PASSED [ 20%]
tests/stdlib_tests/test_fail.py::test_truncated_input[[-Expecting value-1] 
PASSED [ 20%]
tests/stdlib_tests/test_fail.py::test_truncated_input[[42-Expecting ',' 
delimiter-3] PASSED [ 21%]
tests/stdlib_tests/test_fail.py::test_truncated_input[[42,-Expecting value-4] 
PASSED [ 22%]
tests/stdlib_tests/test_fail.py::test_truncated_input[["-Unterminated string 
starting at-1] PASSED [ 22%]
tests/stdlib_tests/test_fail.py::test_truncated_input[["spam-Unterminated 
string starting at-1] PASSED [ 23%]
tests/stdlib_tests/test_fail.py::test_truncated_input[["spam"-Expecting ',' 
delimiter-7] PASSED [ 24%]
tests/stdlib_tests/test_fail.py::test_truncated_input[["spam",-Expecting 
value-8] PASSED [ 24%]
tests/stdlib_tests/test_fail.py::test_truncated_input[{-Expecting property name 
enclosed in double quotes-1] PASSED [ 25%]
tests/stdlib_tests/test_fail.py::test_truncated_input[{"-Unterminated string 
starting at-1] PASSED [ 25%]
tests/stdlib_tests/test_fail.py::test_truncated_input[{"spam-Unterminated 
string starting at-1] PASSED [ 26%]
tests/stdlib_tests/test_fail.py::test_truncated_input[{"spam"-Expecting ':' 
delimiter-7] PASSED [ 27%]
tests/stdlib_tests/test_fail.py::test_truncated_input[{"spam":-Expecting 
value-8] PASSED [ 27%]
tests/stdlib_tests/test_fail.py::test_truncated_input[{"spam":42-Expecting ',' 
delimiter-10] PASSED [ 28%]
tests/stdlib_tests/test_fail.py::test_truncated_input[{"spam":42,-Expecting 
property name enclosed in double quotes-11] PASSED [ 29%]
tests/stdlib_tests/test_fail.py::test_truncated_input["-Unterminated string 
starting at-0] PASSED [ 29%]
tests/stdlib_tests/test_fail.py::test_truncated_input["spam-Unterminated string 
starting at-0] PASSED [ 30%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[[,-Expecting value-1] 
PASSED [ 31%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{"spam":[}-Expecting 
value-9] PASSED [ 31%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[[42:-Expecting ',' 
delimiter-3] PASSED [ 32%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[[42 "spam"-Expecting ',' 
delimiter-4] PASSED [ 33%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[[42,]-Expecting value-4] 
FAILED [ 33%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{"spam":[42}-Expecting 
',' delimiter-11] PASSED [ 34%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[["]-Unterminated string 
starting at-1] PASSED [ 35%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[["spam":-Expecting ',' 
delimiter-7] PASSED [ 35%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[["spam",]-Expecting 
value-8] FAILED [ 36%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{:-Expecting property 
name enclosed in double quotes-1] PASSED [ 37%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{,-Expecting property 
name enclosed in double quotes-1] PASSED [ 37%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{42-Expecting property 
name enclosed in double quotes-1] PASSED [ 38%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[[{]-Expecting property 
name enclosed in double quotes-2] PASSED [ 38%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{"spam",-Expecting ':' 
delimiter-7] PASSED [ 39%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{"spam"}-Expecting ':' 
delimiter-7] PASSED [ 40%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[[{"spam"]-Expecting ':' 
delimiter-8] PASSED [ 40%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{"spam":}-Expecting 
value-8] PASSED [ 41%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[[{"spam":]-Expecting 
value-9] PASSED [ 42%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{"spam":42 
"ham"-Expecting ',' delimiter-11] PASSED [ 42%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[[{"spam":42]-Expecting 
',' delimiter-11] PASSED [ 43%]
tests/stdlib_tests/test_fail.py::test_unexpected_data[{"spam":42,}-Expecting 
property name enclosed in double quotes-11] FAILED [ 44%]
tests/stdlib_tests/test_fail.py::test_extra_data[[]]-Extra data-2] 
PASSED [ 44%]
tests/stdlib_tests/test_fail.py::test_extra_data[{}}-Extra data-2] 
PASSED [ 45%]
tests/stdlib_tests/test_fail.py::test_extra_data[[],[]-Extra data-2] 
PASSED [ 46%]
tests/stdlib_tests/test_fail.py::test_extra_data[{},{}-Extra data-2] 
PASSED [ 46%]
tests/stdlib_tests/test_fail.py::test_extra_data[42,"spam"-Extra data-2] 
PASSED [ 47%]
tests/stdlib_tests/test_fail.py::test_extra_data["spam",42-Extra data-6] 
PASSED [ 48%]
tests/stdlib_tests/test_fail.py::test_linecol[!-1-1-0] PASSED     
       [ 48%]
tests/stdlib_tests/test_fail.py::test_linecol[ !-1-2-1] PASSED    
       [ 49%]
tests/stdlib_tests/test_fail.py::test_linecol[\n!-2-1-1] PASSED   
       [ 50%]
tests/stdlib_tests/test_fail.py::test_linecol[\n  \n\n     !-4-6-10] 
PASSED [ 50%]
tests/stdlib_tests/test_float.py::test_floats PASSED              
       [ 51%]
tests/stdlib_tests/test_float.py::test_ints PASSED                
       [ 51%]
tests/stdlib_tests/test_float.py::test_out_of_range PASSED        
       [ 52%]
tests/stdlib_tests/test_float.py::test_allow_nan PASSED           
       [ 53%]
tests/stdlib_tests/test_indent.py::test_indent PASSED             
       [ 53%]
tests/stdlib_tests/test_indent.py::test_indent0 PASSED            
       [ 54%]
tests/stdlib_tests/test_passes.py::test_parse_pass_1 PASSED       
       [ 55%]
tests/stdlib_tests/test_passes.py::test_parse_pass_2 PASSED       
       [ 55%]
tests/stdlib_tests/test_passes.py::test_parse_pass_3 PASSED       
       [ 56%]
tests/stdlib_tests/test_recursion.py::test_listrecursion PASSED   
       [ 57%]
tests/stdlib_tests/test_recursion.py::test_dictrecursion PASSED   
       [ 57%]
tests/stdlib_tests/test_recursion.py::test_defaultrecursion 
PASSED       [ 58%]
tests/stdlib_tests/test_recursion.py::test_highly_nested_objects_decoding 
PASSED [ 59%]
tests/stdlib_tests/test_recursion.py::test_highly_nested_objects_encoding 
PASSED [ 59%]
tests/stdlib_tests/test_recursion.py::test_endless_recursion 
PASSED      [ 60%]
tests/stdlib_tests/test_separators.py::test_separators PASSED     
       [ 61%]
tests/stdlib_tests/test_separators.py::test_illegal_separators 
PASSED    [ 61%]
tests/stdlib_tests/test_unicode.py::test_encoding3 PASSED         
       [ 62%]
tests/stdlib_tests/test_unicode.py::test_encoding4 PASSED         
       [ 62%]
tests/stdlib_tests/test_unicode.py::test_encoding5 PASSED         
       [ 63%]
tests/stdlib_tests/test_unicode.py::test_encoding6 PASSED         
       [ 64%]
tests/stdlib_tests/test_unicode.py::test_big_unicode_encode 
PASSED       [ 64%]
tests/stdlib_tests/test_unicode.py::test_big_unicode_decode 
PASSED       [ 65%]
tests/stdlib_tests/test_unicode.py::test_unicode_decode PASSED    
       [ 66%]
tests/stdlib_tests/test_unicode.py::test_unicode_preservation 
PASSED     [ 66%]
tests/stdlib_tests/test_unicode.py::test_bytes_encode PASSED      
       [ 67%]
tests/stdlib_tests/test_unicode.py::test_bytes_decode PASSED      
       [ 68%]
tests/stdlib_tests/test_unicode.py::test_object_pairs_hook_with_unicode 
PASSED [ 68%]
tests/test_custom_class.py::test_custom_class PASSED              
       [ 69%]
tests/test_custom_encoders.py::test_decimal_float PASSED          
       [ 70%]
tests/test_custom_encoders.py::test_decimal_str PASSED            
       [ 70%]
tests/test_custom_encoders.py::test_fraction_float PASSED         
       [ 71%]
tests/test_custom_encoders.py::test_fraction_str PASSED           
       [ 72%]
tests/test_custom_encoders.py::test_datetime_float PASSED         
       [ 72%]
tests/test_custom_encoders.py::test_datetime_str PASSED           
       [ 73%]
tests/test_custom_encoders.py::test_datetime_tuple PASSED         
       [ 74%]
tests/test_custom_encoders.py::test_timedelta_float PASSED        
       [ 74%]
tests/test_custom_encoders.py::test_date_str PASSED               
       [ 75%]
tests/test_custom_encoders.py::test_date_tuple PASSED             
       [ 75%]
tests/test_custom_encoders.py::test_time_float PASSED             
       [ 76%]
tests/test_custom_encoders.py::test_time_str PASSED               
       [ 77%]
tests/test_custom_encoders.py::test_time_tuple PASSED             
       [ 77%]
tests/test_custom_encoders.py::test_named_tuple XFAIL (Not 
implement...) [ 78%]
tests/test_load.py::test_bools PASSED                             
       [ 79%]
tests/test_load.py::test_none PASSED                              
       [ 79%]
tests/test_load.py::test_int[1] PASSED                            
       [ 80%]
tests/test_load.py::test_int[1234] PASSED                         
       [ 81%]
tests/test_load.py::test_int[12340000000] PASSED                  
       [ 81%]
tests/test_load.py::test_int[-1] PASSED                           
       [ 82%]
tests/test_load.py::test_int[-1234] PASSED                        
       [ 83%]
tests/test_load.py::test_int[-12340000000] PASSED                 
       [ 83%]
tests/test_load.py::test_float[1.0] PASSED                        
       [ 84%]
tests/test_load.py::test_float[1234.0] PASSED                     
       [ 85%]
tests/test_load.py::test_float[12340000000.0] PASSED              
       [ 85%]
tests/test_load.py::test_float[-1.0] PASSED                       
       [ 86%]
tests/test_load.py::test_float[-1234.0] PASSED                    
       [ 87%]
tests/test_load.py::test_float[-12340000000.0] PASSED             
       [ 87%]
tests/test_load.py::test_float[1.005] PASSED                      
       [ 88%]
tests/test_load.py::test_float[1234.005] PASSED                   
       [ 88%]
tests/test_load.py::test_float[12340000000.005] PASSED            
       [ 89%]
tests/test_load.py::test_float[-1.005] PASSED                     
       [ 90%]
tests/test_load.py::test_float[-1234.005] PASSED                  
       [ 90%]
tests/test_load.py::test_float[-12340000000.005] PASSED           
       [ 91%]
tests/test_load.py::test_write_then_read[tuple] PASSED            
       [ 92%]
tests/test_load.py::test_write_then_read[list] PASSED             
       [ 92%]
tests/test_load.py::test_write_then_read[dict] PASSED             
       [ 93%]
tests/test_load.py::test_write_then_read[egg and bacon-egg and bacon] 
PASSED [ 94%]
tests/test_load.py::test_write_then_read[egg sausage and bacon-egg sausage and 
bacon] PASSED [ 94%]
tests/test_load.py::test_write_then_read[egg and spam-egg and spam] 
PASSED [ 95%]
tests/test_load.py::test_write_then_read[egg bacon and spam-egg bacon and spam] 
PASSED [ 96%]
tests/test_load.py::test_dict_failure[dictionary0] XFAIL          
       [ 96%]
tests/test_load.py::test_dict_failure[dictionary1] XFAIL          
       [ 97%]
tests/test_load.py::test_tuple_failure XFAIL                      
       [ 98%]
tests/test_multiple_files.py::test_multiple_files PASSED          
       [ 98%]
tests/test_overloading.py::test_overloading PASSED                
       [ 99%]
tests/test_unregister.py::test_unregister PASSED                  
       [100%]

=================================== FAILURES ===================================
________________ test_unexpected_data[[42,]-Expecting value-4] 
_________________

data = '[42,]', msg = 'Expecting value', idx = 4

    @pytest.mark.parametrize(
                "data, msg, idx",
                [
                                ("[,", "Unexpected ','" if PYPY else "Expecting 
value", 1),
                                ('{"spam":[}', unexpected_right_brace, 9),
                                ("[42:", unexpected_colon, 3),
                                ('[42 "spam"', "Unexpected '\"' when decoding 
array" if PYPY else "Expecting ',' delimiter", 4),
                                ("[42,]", "Unexpected ']'" if PYPY else 
"Expecting value", 4),
                                ('{"spam":[42}', "Unexpected '}' when decoding 
array" if PYPY else "Expecting ',' delimiter", 11),
                                ('["]', "Unterminated string starting at", 1),
                                ('["spam":', unexpected_colon, 7),
                                ('["spam",]', "Unexpected ']'" if PYPY else 
"Expecting value", 8),
                                ("{:", property_name_string, 1),
                                ("{,", property_name_string, 1),
                                ("{42", property_name_string, 1),
                                ("[{]", property_name_string, 2),
                                ('{"spam",', missing_colon, 7),
                                ('{"spam"}', missing_colon, 7),
                                ('[{"spam"]', missing_colon, 8),
                                ('{"spam":}', unexpected_right_brace, 8),
                                ('[{"spam":]', "Unexpected ']'" if PYPY else 
"Expecting value", 9),
                                (
                                                '{"spam":42 "ham"',
                                                "Unexpected '\"' when decoding 
object" if PYPY else "Expecting ',' delimiter",
                                                11
                                                ),
                                ('[{"spam":42]', "Unexpected ']' when decoding 
object" if PYPY else "Expecting ',' delimiter", 11),
                                ('{"spam":42,}', property_name_string, 11),
                                ]
                )
    def test_unexpected_data(data: str, msg: str, idx: int):
>       __test_invalid_input(data, msg, idx)

tests/stdlib_tests/test_fail.py:189: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

data = '[42,]', msg = 'Expecting value', idx = 4

    def __test_invalid_input(data: str, msg: str, idx: int) -> None:
        with pytest.raises(sdjson.JSONDecodeError) as err:
                sdjson.loads(data)
    
        if PYPY:
                assert err.value.msg.startswith(msg)  # Fix for varying 
messages between PyPy versions
        else:
>               assert err.value.msg == msg
E     AssertionError: assert 'Illegal trai... end of array' == 
'Expecting value'
E       
E       - Expecting value
E       + Illegal trailing comma before end of array

tests/stdlib_tests/test_fail.py:116: AssertionError
______________ test_unexpected_data[["spam",]-Expecting value-8] 
_______________

data = '["spam",]', msg = 'Expecting value', idx = 8

    @pytest.mark.parametrize(
                "data, msg, idx",
                [
                                ("[,", "Unexpected ','" if PYPY else "Expecting 
value", 1),
                                ('{"spam":[}', unexpected_right_brace, 9),
                                ("[42:", unexpected_colon, 3),
                                ('[42 "spam"', "Unexpected '\"' when decoding 
array" if PYPY else "Expecting ',' delimiter", 4),
                                ("[42,]", "Unexpected ']'" if PYPY else 
"Expecting value", 4),
                                ('{"spam":[42}', "Unexpected '}' when decoding 
array" if PYPY else "Expecting ',' delimiter", 11),
                                ('["]', "Unterminated string starting at", 1),
                                ('["spam":', unexpected_colon, 7),
                                ('["spam",]', "Unexpected ']'" if PYPY else 
"Expecting value", 8),
                                ("{:", property_name_string, 1),
                                ("{,", property_name_string, 1),
                                ("{42", property_name_string, 1),
                                ("[{]", property_name_string, 2),
                                ('{"spam",', missing_colon, 7),
                                ('{"spam"}', missing_colon, 7),
                                ('[{"spam"]', missing_colon, 8),
                                ('{"spam":}', unexpected_right_brace, 8),
                                ('[{"spam":]', "Unexpected ']'" if PYPY else 
"Expecting value", 9),
                                (
                                                '{"spam":42 "ham"',
                                                "Unexpected '\"' when decoding 
object" if PYPY else "Expecting ',' delimiter",
                                                11
                                                ),
                                ('[{"spam":42]', "Unexpected ']' when decoding 
object" if PYPY else "Expecting ',' delimiter", 11),
                                ('{"spam":42,}', property_name_string, 11),
                                ]
                )
    def test_unexpected_data(data: str, msg: str, idx: int):
>       __test_invalid_input(data, msg, idx)

tests/stdlib_tests/test_fail.py:189: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

data = '["spam",]', msg = 'Expecting value', idx = 8

    def __test_invalid_input(data: str, msg: str, idx: int) -> None:
        with pytest.raises(sdjson.JSONDecodeError) as err:
                sdjson.loads(data)
    
        if PYPY:
                assert err.value.msg.startswith(msg)  # Fix for varying 
messages between PyPy versions
        else:
>               assert err.value.msg == msg
E     AssertionError: assert 'Illegal trai... end of array' == 
'Expecting value'
E       
E       - Expecting value
E       + Illegal trailing comma before end of array

tests/stdlib_tests/test_fail.py:116: AssertionError
_ test_unexpected_data[{"spam":42,}-Expecting property name enclosed 
in double quotes-11] _

data = '{"spam":42,}', msg = 'Expecting property name enclosed in double quotes'
idx = 11

    @pytest.mark.parametrize(
                "data, msg, idx",
                [
                                ("[,", "Unexpected ','" if PYPY else "Expecting 
value", 1),
                                ('{"spam":[}', unexpected_right_brace, 9),
                                ("[42:", unexpected_colon, 3),
                                ('[42 "spam"', "Unexpected '\"' when decoding 
array" if PYPY else "Expecting ',' delimiter", 4),
                                ("[42,]", "Unexpected ']'" if PYPY else 
"Expecting value", 4),
                                ('{"spam":[42}', "Unexpected '}' when decoding 
array" if PYPY else "Expecting ',' delimiter", 11),
                                ('["]', "Unterminated string starting at", 1),
                                ('["spam":', unexpected_colon, 7),
                                ('["spam",]', "Unexpected ']'" if PYPY else 
"Expecting value", 8),
                                ("{:", property_name_string, 1),
                                ("{,", property_name_string, 1),
                                ("{42", property_name_string, 1),
                                ("[{]", property_name_string, 2),
                                ('{"spam",', missing_colon, 7),
                                ('{"spam"}', missing_colon, 7),
                                ('[{"spam"]', missing_colon, 8),
                                ('{"spam":}', unexpected_right_brace, 8),
                                ('[{"spam":]', "Unexpected ']'" if PYPY else 
"Expecting value", 9),
                                (
                                                '{"spam":42 "ham"',
                                                "Unexpected '\"' when decoding 
object" if PYPY else "Expecting ',' delimiter",
                                                11
                                                ),
                                ('[{"spam":42]', "Unexpected ']' when decoding 
object" if PYPY else "Expecting ',' delimiter", 11),
                                ('{"spam":42,}', property_name_string, 11),
                                ]
                )
    def test_unexpected_data(data: str, msg: str, idx: int):
>       __test_invalid_input(data, msg, idx)

tests/stdlib_tests/test_fail.py:189: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

data = '{"spam":42,}', msg = 'Expecting property name enclosed in double quotes'
idx = 11

    def __test_invalid_input(data: str, msg: str, idx: int) -> None:
        with pytest.raises(sdjson.JSONDecodeError) as err:
                sdjson.loads(data)
    
        if PYPY:
                assert err.value.msg.startswith(msg)  # Fix for varying 
messages between PyPy versions
        else:
>               assert err.value.msg == msg
E     AssertionError: assert 'Illegal trai...end of object' == 
'Expecting pr...double quotes'
E       
E       - Expecting property name enclosed in double quotes
E       + Illegal trailing comma before end of object

tests/stdlib_tests/test_fail.py:116: AssertionError
============================= slowest 25 durations =============================
0.10s call     
.pybuild/cpython3_3.13_sdjson/build/tests/stdlib_tests/test_unicode.py::test_unicode_decode
0.09s call     
.pybuild/cpython3_3.13_sdjson/build/tests/stdlib_tests/test_recursion.py::test_highly_nested_objects_encoding
0.01s call     
.pybuild/cpython3_3.13_sdjson/build/tests/stdlib_tests/test_recursion.py::test_highly_nested_objects_decoding

(22 durations < 0.005s hidden.  Use -vv to show these durations.)
=========================== short test summary info 
============================
FAILED 
tests/stdlib_tests/test_fail.py::test_unexpected_data[[42,]-Expecting 
value-4] - AssertionError: assert 'Illegal trai... end of array' == 
'Expecting value'
FAILED 
tests/stdlib_tests/test_fail.py::test_unexpected_data[["spam",]-Expecting 
value-8] - AssertionError: assert 'Illegal trai... end of array' == 
'Expecting value'
FAILED 
tests/stdlib_tests/test_fail.py::test_unexpected_data[{"spam":42,}-Expecting
 property name enclosed in double quotes-11] - AssertionError: assert 
'Illegal trai...end of object' == 'Expecting pr...do...
=================== 3 failed, 147 passed, 4 
xfailed in 0.61s ===================
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_sdjson/build; python3.13 -m pytest -v 
--ignore=tests/test_protocols.py
I: pybuild pybuild:308: ln -s test_overloading_ tests/test_overloading
E: pybuild pybuild:389: test: plugin pyproject failed with: 
[('/<<PKGBUILDDIR>>/tests/test_overloading/test_overloading_', 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_sdjson/build/tests/test_overloading/test_overloading_',
 "[Errno 40] Too many levels of symbolic links: 
'/<<PKGBUILDDIR>>/tests/test_overloading/test_overloading_'"), 
('/<<PKGBUILDDIR>>/tests/test_overloading_/test_overloading_', 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_sdjson/build/tests/test_overloading_/test_overloading_',
 "[Errno 40] Too many levels of symbolic links: 
'/<<PKGBUILDDIR>>/tests/test_overloading_/test_overloading_'")]
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.13 
3.12" returned exit code 13
make: *** [debian/rules:11: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-09-19T07:47:55Z


If required, the full build log is available here (for the next 30 days):
https://debusine.debian.net/artifact/788826/

This bug has been filed at "normal" severity, as we haven't started the
transition to add 3.13 as a supported version, yet. This will be raised to RC
as soon as that happens, hopefully well before trixie.

Thanks,

Stefano

--- End Message ---
--- Begin Message ---
Source: python-sdjson
Source-Version: 0.5.0-3
Done: Colin Watson <cjwat...@debian.org>

We believe that the bug you reported is fixed in the latest version of
python-sdjson, 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 1082...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Colin Watson <cjwat...@debian.org> (supplier of updated python-sdjson 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: SHA256

Format: 1.8
Date: Wed, 13 Nov 2024 12:18:31 +0000
Source: python-sdjson
Architecture: source
Version: 0.5.0-3
Distribution: unstable
Urgency: medium
Maintainer: Debian Python Team <team+pyt...@tracker.debian.org>
Changed-By: Colin Watson <cjwat...@debian.org>
Closes: 1082269
Changes:
 python-sdjson (0.5.0-3) unstable; urgency=medium
 .
   * Team upload.
   * Sacrifice version number to dgit upload issues.
 .
 python-sdjson (0.5.0-2) unstable; urgency=medium
 .
   * Team upload.
   * Fix tests on Python 3.13 (closes: #1082269).
Checksums-Sha1:
 5d1d74032ff31225c4d60be8b8ae932303b4578f 2524 python-sdjson_0.5.0-3.dsc
 1bc3a83cf86390e7eb4b7e5c21b116b17f1cc1d3 9812 
python-sdjson_0.5.0-3.debian.tar.xz
Checksums-Sha256:
 913f29d8b00742e1a559d2d92c679f69ee3401f60568edca330e5b68ac43de45 2524 
python-sdjson_0.5.0-3.dsc
 3bd6334b1528b2c64d76f4b929cf0c66ad33cfaefd6afee8b4dc2c1f3a7d3d29 9812 
python-sdjson_0.5.0-3.debian.tar.xz
Files:
 f89a2e3b74df85e2cdc87ca5728a5226 2524 python optional python-sdjson_0.5.0-3.dsc
 cee3eb67d18b39d0bfd99f7056d27d62 9812 python optional 
python-sdjson_0.5.0-3.debian.tar.xz

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

iQIzBAEBCAAdFiEErApP8SYRtvzPAcEROTWH2X2GUAsFAmc0mXEACgkQOTWH2X2G
UAtWOw//eUhi5sSbL0b7ZXf+qgYf3pm/9TyYJKn102K6peW1JFGz7JzMyb5N70VE
NOkGCi9DWFNFC7LnTrcaszrGjmtqppo2bo/YuER6e23Q3BiQ51TdlkyiVtBL7UIa
ClvL+rTGZHpPsDT10HvFUgKuhj7E5ObwunOgVolFlCUNdY6U53ICH80KjiKBY5Jf
becDVz4Tv9d6bfOxCi7z/uyEi+0eGRDv8+Z5SyGGaZMmuegoCxDP0AKAmPNoUQvj
IdXrlzpttpN8nDPMvwY2Ji757r4Q8dkEVxReklNPYIeEClflKyu/PrH9IBr8tto+
s1HziKByrfzad1MfIy/DLGkaCpkQeWe84v8ywB/G2qYyz/BNuiy4mcNihQyoUT9k
gNN1oPAHOdKDXq7Q3EDpFIsPehpJICDjhgE7deSWwf0SoKUdbvnv+qxYeogxwn2E
2RxLziTUEnGplkf2C2b5N1xX+lp/vww5THRikUTmOXUNkiph4ikPsDH4MIOaTwVb
MtPyHeO7ndgOBTEMwvhcFxT2JE638fSTyg5HX/5HqCZel0scxcun6uKezXjEhxag
0/HchG7nIgHh1YFx0bFzGVIuHtb1WeVnpvkMVim6HDZPfR2FKRWCOYI9chQemKR4
XzK0AKa7t5MrwDDbEfqMUr+inSKbd7GrZDbw32ZPNkPs4N0tdLc=
=Ly7f
-----END PGP SIGNATURE-----

Attachment: pgp4m7JAQ2Bkb.pgp
Description: PGP signature


--- End Message ---

Reply via email to