GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — gh-115256: Remove refcycles from tarfile writing by pan324 · Pull Request #115257 · python/cpython

Conversation

@pan324

@pan324 pan324 commented Feb 10, 2024 •
edited by bedevere-app Bot
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Contributor
  • Issue: Remove reference cycle when writing tarfiles #115256

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@pan324
remove refcycles from tarfile writing
7997388
@pan324
pan324 requested a review from ethanfurman as a code owner February 10, 2024 17:13
@bedevere-app bedevere-app Bot added the awaiting review label Feb 10, 2024
@bedevere-app bedevere-app Bot mentioned this pull request Feb 10, 2024
Remove reference cycle when writing tarfiles #115256
Closed
blurb-it Bot and others added 5 commits February 10, 2024 17:18
@blurb-it
📜🤖 Added by blurb_it.
d927931
@pan324
added DeprecationWarning
de2eb93
@pan324
fixed rst
af3a422
@pan324
fixed rst
54005df
@encukou
Mention this in What's New
5cf1858
encukou
encukou approved these changes Mar 4, 2024
View reviewed changes
@bedevere-app bedevere-app Bot added awaiting merge and removed awaiting review labels Mar 4, 2024
@encukou
encukou enabled auto-merge (squash) March 4, 2024 13:04
@encukou
encukou merged commit 0dfa7ce into python:main Mar 4, 2024
@bedevere-app bedevere-app Bot removed the awaiting merge label Mar 4, 2024
@AlexWaygood

AlexWaygood commented Mar 4, 2024

Copy link
Copy Markdown
Member

Not the biggest issue in the world, but it's a shame the PR title wasn't changed here before it was merged. The title of the resulting commit is pretty inaccurate :(

pan324 reacted with thumbs up emoji encukou reacted with confused emoji
All reactions
  • 👍 1 reaction
  • 😕 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-bot

bedevere-bot commented Mar 4, 2024

Copy link
Copy Markdown

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

Hi! The buildbot AMD64 Debian root 3.x has failed when building commit 0dfa7ce.

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/all/#builders/345/builds/7318) and take a look at the build logs.
  4. Check if the failure is related to this commit (0dfa7ce) 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/all/#builders/345/builds/7318

Failed tests:

  • test_bytes
  • test_difflib
  • test_tokenize
  • test_io
  • test_statistics
  • test_pickle

Failed subtests:

  • test_threads - test.test_io.CBufferedReaderTest.test_threads
  • test_dict_chunking - test.test_pickle.CPicklerTests.test_dict_chunking
  • test_recursion_limit - test.test_difflib.TestSFpatches.test_recursion_limit
  • test_threads - test.test_io.PyBufferedRandomTest.test_threads
  • test_inv_cdf - test.test_statistics.TestNormalDistPython.test_inv_cdf
  • test_random_files - test.test_tokenize.TestRoundtrip.test_random_files

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

==

Click to see traceback logs
Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_tokenize.py", line 1959, in test_random_files
    self.check_roundtrip(f)
    ~~~~~~~~~~~~~~~~~~~~^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_tokenize.py", line 1825, in check_roundtrip
    bytes_from5 = tokenize.untokenize(tokens5)
                  ~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/tokenize.py", line 333, in untokenize
    out = ut.untokenize(iterable)
          ~~~~~~~~~~~~~^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/tokenize.py", line 249, in untokenize
    self.add_whitespace(start)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/tokenize.py", line 176, in add_whitespace
    if row < self.prev_row or row == self.prev_row and col < self.prev_col:
                                                       ^^^^^^^^^^^^^^^^^^^
TypeError: '<' not supported between instances of 'Untokenizer' and 'int'


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_statistics.py", line 2951, in test_inv_cdf
    self.assertAlmostEqual(iq.cdf(iq.inv_cdf(p)), p)
                                  ~~~~~~~~~~^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/statistics.py", line 1496, in inv_cdf
    if p <= 0.0 or p >= 1.0:
       ^^^^^^^^
TypeError: '<=' not supported between instances of 'NormalDist' and 'float'


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_io.py", line 2430, in test_threads
    BufferedReaderTest.test_threads(self)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_io.py", line 1574, in test_threads
    random.shuffle(l)
    ~~~~~~~~~~~~~~^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/random.py", line 361, in shuffle
    x[i], x[j] = x[j], x[i]
                 ~^^^
TypeError: list indices must be integers or slices, not Random


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_difflib.py", line 252, in test_recursion_limit
    difflib.SequenceMatcher(None, old, new).get_opcodes()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/difflib.py", line 525, in get_opcodes
    for ai, bj, size in self.get_matching_blocks():
                        ~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/difflib.py", line 454, in get_matching_blocks
    i, j, k = x = self.find_longest_match(alo, ahi, blo, bhi)
                  ~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/difflib.py", line 386, in find_longest_match
    if k > bestsize:
       ^^^^^^^^^^^^
TypeError: '>' not supported between instances of 'SequenceMatcher' and 'int'


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/pickletester.py", line 2279, in test_dict_chunking
    num_setitems = count_opcode(pickle.SETITEMS, s)
                   ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/pickletester.py", line 68, in count_opcode
    for op, dummy, dummy in pickletools.genops(pickle):
        if op.code == code.decode("latin-1"):
            n += 1
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/pickletools.py", line 2279, in _genops
    code = data.read(1)
           ~~~~~~~~~^^^
TypeError: '_io.BytesIO' object is not callable


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/test_io.py", line 1574, in test_threads
    random.shuffle(l)
    ~~~~~~~~~~~~~~^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/random.py", line 361, in shuffle
    x[i], x[j] = x[j], x[i]
    ~^^^
TypeError: 'Random' object does not support item assignment


Traceback (most recent call last):
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/string_tests.py", line 347, in test_find_periodic_pattern
    check_pattern(rr)
    ~~~~~~~~~~~~~^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/test/string_tests.py", line 339, in check_pattern
    right = ''.join(choices('abcdef', k=rr(2000)))
                    ~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
  File "/root/buildarea/3.x.angelico-debian-amd64/build/Lib/random.py", line 471, in choices
    return [population[floor(random() * n)] for i in _repeat(None, k)]
                             ~~~~~~^^
TypeError: 'Random' object is not callable
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@encukou

encukou commented Mar 4, 2024

Copy link
Copy Markdown
Member

That failure looks quite unrelated.

pan324 reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

woodruffw pushed a commit to woodruffw-forks/cpython that referenced this pull request Mar 4, 2024
@pan324 @woodruffw
pythongh-115256: Remove refcycles from tarfile writing (pythonGH-115257)
21bdf37
adorilson pushed a commit to adorilson/cpython that referenced this pull request Mar 25, 2024
@pan324 @adorilson
pythongh-115256: Remove refcycles from tarfile writing (pythonGH-115257)
7867353
diegorusso pushed a commit to diegorusso/cpython that referenced this pull request Apr 17, 2024
@pan324 @diegorusso
pythongh-115256: Remove refcycles from tarfile writing (pythonGH-115257)
6483b32
donbarbos added a commit to donbarbos/typeshed that referenced this pull request Apr 27, 2025
@donbarbos
Deprecate TarInfo.tarfile attribute
007ca15
Source: python/cpython#115257
@donbarbos donbarbos mentioned this pull request Apr 27, 2025
Deprecate TarInfo.tarfile attribute python/typeshed#13894
Merged
@sobolevn sobolevn mentioned this pull request May 10, 2026
Remove deprecated and unused TarInfo.tarfile attribute for 3.16 #149634
Closed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@encukou encukou encukou approved these changes
@ethanfurman ethanfurman Awaiting requested review from ethanfurman ethanfurman is a code owner

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

4 participants

@pan324 @AlexWaygood @bedevere-bot @encukou
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.