Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh-131357: Add a set of asserts to test.test_capi.test_bytearray #131554

Merged
merged 1 commit into from
Mar 23, 2025

Conversation

nybblista
Copy link
Contributor

@nybblista nybblista commented Mar 21, 2025

  1. Assert empty bytearray object for PyByteArray_Check.
  2. Assert empty bytearray object for PyByteArray_CheckExact.
  3. Assert 0-size bytearray object for PyByteArray_Size.
  4. Assert empty bytearray object for PyByteArray_AsString.
  5. Assert concatenation of the bytearray object with itself for PyByteArray_Concat.

1. Assert empty bytearray object for PyByteArray_Check.
2. Assert empty bytearray object for PyByteArray_CheckExact.
3. Assert 0-size bytearray object for PyByteArray_Size.
4. Assert empty bytearray object for PyByteArray_AsString.
5. Assert concatenation of the bytearray object with itself for PyByteArray_Concat.
@bedevere-app bedevere-app bot added tests Tests in the Lib/test dir awaiting review labels Mar 21, 2025
@nybblista nybblista changed the title gh-131552: Add a set of asserts to test.test_capi.test_bytearray gh-131357: Add a set of asserts to test.test_capi.test_bytearray Mar 21, 2025
@nybblista
Copy link
Contributor Author

@sobolevn

Copy link
Member

@sobolevn sobolevn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@sobolevn sobolevn merged commit f3bf304 into python:main Mar 23, 2025
48 checks passed
@sobolevn sobolevn added awaiting merge needs backport to 3.12 bug and security fixes needs backport to 3.13 bugs and security fixes labels Mar 23, 2025
@miss-islington-app
Copy link

Thanks @nybblista for the PR, and @sobolevn for merging it 🌮🎉.. I'm working now to backport this PR to: 3.13.
🐍🍒⛏🤖

@miss-islington-app
Copy link

Thanks @nybblista for the PR, and @sobolevn for merging it 🌮🎉.. I'm working now to backport this PR to: 3.12.
🐍🍒⛏🤖

@miss-islington-app
Copy link

Sorry, @nybblista and @sobolevn, I could not cleanly backport this to 3.12 due to a conflict.
Please backport using cherry_picker on command line.

cherry_picker f3bf304c2799c31c045033f22db7eb8766a5f939 3.12

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request Mar 23, 2025
pythonGH-131554)

add a set of asserts to test.test_capi.test_bytearray

1. Assert empty bytearray object for PyByteArray_Check.
2. Assert empty bytearray object for PyByteArray_CheckExact.
3. Assert 0-size bytearray object for PyByteArray_Size.
4. Assert empty bytearray object for PyByteArray_AsString.
5. Assert concatenation of the bytearray object with itself for PyByteArray_Concat.
(cherry picked from commit f3bf304)

Co-authored-by: Nybblista <170842536+nybblista@users.noreply.github.com>
@bedevere-app
Copy link

bedevere-app bot commented Mar 23, 2025

GH-131601 is a backport of this pull request to the 3.13 branch.

@bedevere-app bedevere-app bot removed the needs backport to 3.13 bugs and security fixes label Mar 23, 2025
@sobolevn
Copy link
Member

@nybblista can you please do a manual 3.12 backport?

sobolevn pushed a commit that referenced this pull request Mar 23, 2025
…ay (GH-131554) (#131601)

gh-131357: Add a set of asserts to test.test_capi.test_bytearray (GH-131554)

add a set of asserts to test.test_capi.test_bytearray

1. Assert empty bytearray object for PyByteArray_Check.
2. Assert empty bytearray object for PyByteArray_CheckExact.
3. Assert 0-size bytearray object for PyByteArray_Size.
4. Assert empty bytearray object for PyByteArray_AsString.
5. Assert concatenation of the bytearray object with itself for PyByteArray_Concat.
(cherry picked from commit f3bf304)

Co-authored-by: Nybblista <170842536+nybblista@users.noreply.github.com>
@bedevere-bot
Copy link

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot aarch64 Fedora Stable Refleaks 3.x (tier-2) has failed when building commit f3bf304.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/#/builders/123/builds/844) and take a look at the build logs.
  4. Check if the failure is related to this commit (f3bf304) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/#/builders/123/builds/844

Failed tests:

  • test_perf_profiler

Failed subtests:

  • test_python_calls_appear_in_the_stack_if_perf_activated - test.test_perf_profiler.TestPerfProfilerWithDwarf.test_python_calls_appear_in_the_stack_if_perf_activated

Summary of the results of the build (if available):

==

Click to see traceback logs
Traceback (most recent call last):
  File "/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/Lib/test/test_perf_profiler.py", line 364, in test_python_calls_appear_in_the_stack_if_perf_activated
    self.assertIn(f"py::foo:{script}", stdout)
    ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 'py::foo:/tmp/test_python__0zmyq1e/tmpuhasqrh6/perftest.py' not found in 'python   48213 1583648.221160:          1 cycles:Pu: \n\t    ffff9c449ac0 _start+0x0 (/usr/lib/ld-linux-aarch64.so.1)\n\npython   48213 1583648.221201:          1 cycles:Pu: \n\tffffc95efcdffc78 [unknown] ([unknown])\n\tffffc95efce0049c [unknown] ([unknown])\n\tffffc95efb9a15e4 [unknown] ([unknown])\n\t    ffff9c449ac0 _start+0x0 (/usr/lib/ld-linux-aarch64.so.1)\n\npython   48213 1583648.222280:          1 cycles:Pu: \n\t    ffff9c43b0d0 _dl_relocate_object+0x170 (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c4473d3 dl_main+0x15d3 (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c4445ff _dl_sysdep_start+0x1df (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c445b17 _dl_start_final+0x5ab (inlined)\n\t    ffff9c445b17 _dl_start+0x5ab (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c449ad3 _start+0x13 (/usr/lib/ld-linux-aarch64.so.1)\n\npython   48213 1583648.222319:        343 cycles:Pu: \n\t    ffff9c43b0e0 _dl_relocate_object+0x180 (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c4473d3 dl_main+0x15d3 (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c4445ff _dl_sysdep_start+0x1df (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c445b17 _dl_start_final+0x5ab (inlined)\n\t    ffff9c445b17 _dl_start+0x5ab (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c449ad3 _start+0x13 (/usr/lib/ld-linux-aarch64.so.1)\n\npython   48213 1583648.222964:        702 cycles:Pu: \n\t    ffff9c43b0e0 _dl_relocate_object+0x180 (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c4473d3 dl_main+0x15d3 (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c4445ff _dl_sysdep_start+0x1df (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c445b17 _dl_start_final+0x5ab (inlined)\n\t    ffff9c445b17 _dl_start+0x5ab (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffff9c449ad3 _start+0x13 (/usr/lib/ld-linux-aarch64.so.1)\n\npython   48213 1583648.223283:      22425 cycles:Pu: \n\t    ffff9c437774 <i
)\n\t          5066b7 fill_mem_debug+0x17 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          5067cf _PyMem_DebugRawMalloc+0x17 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t              33 [unknown] ([unknown])\n\npython   48213 1583648.239192:   10632094 cycles:Pu: \n\t          50102c new_reference+0x4 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          50244f _Py_NewReference+0x2b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          49782b _PyObject_Init+0x37 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4978af _PyObject_InitVar+0x2f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          49796b _PyBytes_FromSize+0x5b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          49a727 PyBytes_FromStringAndSize+0xc3 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          65ee03 r_object+0x3d3 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          65f653 r_object+0xc23 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          65f087 r_object+0x657 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          65f5cf r_object+0xb9f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          65fc1f read_object+0x93 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          660657 PyMarshal_ReadObjectFromString+0x4b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          6422f7 unmarshal_frozen_code+0x1b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          645fbf PyImport_ImportFrozenModuleObject+0x4f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          64625f PyImport_ImportFrozenModule+0x1b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          6462d3 init_importlib+0x43 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          646ec3 _PyImport_InitCore+0x2b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          666877 pycore_interp_init+0x243 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66693b pyinit_config+0xaf (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66e197 pyinit_core+0xdb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66e26f Py_InitializeFromConfig+0x97 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f13f pymain_init+0xff (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f20f pymain_main+0xf (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f2a3 Py_BytesMain+0x27 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          41f137 main+0xb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t    ffff9c1d625b __libc_start_call_main+0x7b (/usr/lib64/libc.so.6)\n\t    ffff9c1d633b __libc_start_main@GLIBC_2.17+0x9b (inlined)\n\t          41f02f _start+0x2f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\npython   48213 1583648.249288:   13790614 cycles:Pu: \n\t          5ff4ac _PyEval_EvalFrameDefault+0x20fb0 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          5ff5b3 _PyEval_EvalFrame+0x23 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          5ff733 _PyEval_Vector+0x123 (/home/buildb


Traceback (most recent call last):
  File "/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/Lib/test/test_perf_profiler.py", line 364, in test_python_calls_appear_in_the_stack_if_perf_activated
    self.assertIn(f"py::foo:{script}", stdout)
    ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: 'py::foo:/tmp/test_python__41fxp19/tmpxf4lmvt3/perftest.py' not found in 'python  170157 1584586.440010:          1 cycles:Pu: \n\t    ffffb72c7ac0 _start+0x0 (/usr/lib/ld-linux-aarch64.so.1)\n\npython  170157 1584586.440071:        212 cycles:Pu: \n\t    ffffb72c7ac0 _start+0x0 (/usr/lib/ld-linux-aarch64.so.1)\n\npython  170157 1584586.440085:        212 cycles:Pu: \n\t    ffffb72c356c _dl_start+0x0 (/usr/lib/ld-linux-aarch64.so.1)\n\t    ffffb72c7ad3 _start+0x13 (/usr/lib/ld-linux-aarch64.so.1)\n\npython  170157 1584586.441067:       4612 cycles:Pu: \n\t          663a98 precmdline_get_preconfig+0x0 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          6648a7 _PyPreCmdline_Read+0x1f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          64bf0b core_read_precmdline+0xcb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          64e4ef _PyConfig_Read+0xc3 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66e163 pyinit_core+0xa7 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66e26f Py_InitializeFromConfig+0x97 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f13f pymain_init+0xff (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f20f pymain_main+0xf (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f2a3 Py_BytesMain+0x27 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          41f137 main+0xb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t    ffffb705625b __libc_start_call_main+0x7b (/usr/lib64/libc.so.6)\n\t    ffffb705633b __libc_start_main@GLIBC_2.17+0x9b (inlined)\n\t          41f02f _start+0x2f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\n
build/python)\n\t          69f13f pymain_init+0xff (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f20f pymain_main+0xf (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f2a3 Py_BytesMain+0x27 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          41f137 main+0xb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t    ffffb705625b __libc_start_call_main+0x7b (/usr/lib64/libc.so.6)\n\t    ffffb705633b __libc_start_main@GLIBC_2.17+0x9b (inlined)\n\t          41f02f _start+0x2f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\npython  170157 1584586.442441:     771663 cycles:Pu: \n\t          5067d0 _PyMem_DebugRawMalloc+0x18 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          50757f _PyMem_DebugMalloc+0x2f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          51d94f PyMem_Malloc+0x23 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4e8b6b new_keys_object+0x93 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4eb3bb dictresize+0x5b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4eb997 insertion_resize+0x33 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4ef283 insert_combined_dict+0xef (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4ef99b insertdict+0x1e7 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4efb53 setitem_take2_lock_held+0x73 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4f015b _PyDict_SetItem_Take2+0xb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          4f01b3 PyDict_SetItem+0x4f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          5369af type_ready_set_hash+0x6b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          542cbb type_ready+0xbb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          542f23 init_static_type+0x1a7 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          543027 _PyStaticType_InitBuiltin+0x2f (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          5022d3 _PyTypes_InitTypes+0xa7 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66613f pycore_init_types+0x1b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66673f pycore_interp_init+0x10b (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66693b pyinit_config+0xaf (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66e197 pyinit_core+0xdb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          66e26f Py_InitializeFromConfig+0x97 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f13f pymain_init+0xff (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f20f pymain_main+0xf (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          69f2a3 Py_BytesMain+0x27 (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t          41f137 main+0xb (/home/buildbot/buildarea/3.x.cstratak-fedora-stable-aarch64.refleak/build/python)\n\t    ffffb705625b __libc_start_call_main+0x7b (/usr/lib64/libc.so.6)\n\t    ffffb705633b __libc_start_main@GLIBC_2.17+0x9b (inlined)\n\t          41f02f _start+0x2f (/home/buildbot/builda

@bedevere-app
Copy link

bedevere-app bot commented Mar 23, 2025

GH-131629 is a backport of this pull request to the 3.12 branch.

@bedevere-app bedevere-app bot removed the needs backport to 3.12 bug and security fixes label Mar 23, 2025
@nybblista nybblista deleted the test-bytearray branch March 23, 2025 13:52
sobolevn pushed a commit that referenced this pull request Mar 23, 2025
…ay (GH-131554) (#131629)

[3.12] gh-131357: Add a set of asserts to test.test_capi.test_bytearray (#131554)

add a set of asserts to test.test_capi.test_bytearray

1. Assert empty bytearray object for PyByteArray_Check.
2. Assert empty bytearray object for PyByteArray_CheckExact.
3. Assert 0-size bytearray object for PyByteArray_Size.
4. Assert empty bytearray object for PyByteArray_AsString.
5. Assert concatenation of the bytearray object with itself for PyByteArray_Concat.

(cherry picked from commit f3bf304)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting merge skip news tests Tests in the Lib/test dir
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants