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

Bump pyinstrument from 3.4.2 to 5.0.0 #4787

Open
wants to merge 1 commit into
base: unstable
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Oct 16, 2024

Bumps pyinstrument from 3.4.2 to 5.0.0.

Release notes

Sourced from pyinstrument's releases.

v5.0.0

Loads of improvements to the HTML renderer!

  • Timeline mode - see and zoom into an interactive linear timeline!

    timeline mode

  • HTML mode now has interactive options, rather than needing to set the upfront.

  • Streamlined the design of the HTML page header.

  • HTML Call stack view supports arrow key navigation.

  • The way ‘library’ code is detected has been changed. Previously, if the string ‘/lib/’ occurred in the file path, that was considered library code (and collapsed by default). Now, pyinstrument captures the paths of the Python install and any active virtualenv/conda env at profile time. Files that are stored there are considered library. That should give fewer false positives.

  • Calls to profiler.start() can now pass a target_description parameter, which is displayed in the profile readout.

Check my blog post for more info on the new features.

v4.7.3

  • Fix a bug introduced in 4.7.0 which would cause the profiler to crash when profiling code with unusual locals, notably some pytest extensions (#332)
  • Fix a bug that causes pyinstrument to fail to import packages like glom on Python 3.12 or later, which mutate the locals() dict. (#336)
  • Fix a bug that caused a UnicodeDecodeError on some platforms (#330)
  • Fix a DivideByZero error that occurs in some situations (#335)
  • The IPython integration takes greater step to ensure a clean profile output, by ensuring internal frames are trimmed before printing. (#321)

v4.7.2

  • Add CPython 3.13 wheels
  • Fix a bug that caused the HTML output to fail to render in some browser contexts (#328)

v4.7.0

  • Adds a new, convenient API for profiling chunks of Python code! You can now profile simply using a with block, or a function/method decorator. This will profile the code and print a short readout into the terminal. (#327)
  • Adds new, lower overhead timing options. Pyinstrument calls timers on every Python function call, which is fine on systems with fast timing available, but it adds significant overhead on systems that require a syscall for each, such as some Docker environments. Pyinstrument will now detect slow timers present a warning with two choices. You can enable a 'timing thread', which offloads the timing workload from the profiled thread, or, if you're happy with lower resolution, you can opt to use a 'coarse' timer, which is provided on some Linux systems. (#273)
  • Alt-click rows in the HTML output to collapse/expand the whole tree (#325)
  • Adds a flat argument to the console output, to present a flat list of functions (#294)
  • Adds a Litestar example config and docs (#284)
  • Preliminary Python 3.13 support (#322)

v4.6.0

  • Adds a feature -c, which allows profiling code directly from the command line, like python -c. (#271)
  • Adds a convenience method Profiler.write_html, for writing HTML output to a file directly. (#266)

v4.5.3

  • Fix a problem in the packaging process that prevented upload to PyPI

v4.5.2

  • Show the program name in the header of the HTML output (#260)
  • Improve program name capture through resilience to other programs modifying sys.argv (#258)
  • Add support for Python 3.12 (#246)

v4.5.1

  • Fix a bug that caused [X frames hidden] in the output when frames were deleted due to __tracebackhide__ (#255)
  • Fix a bug causing built-in code to display the filepath None in the console output (#254)
  • Some docs improvements (#251)

... (truncated)

Commits
  • e362034 Bump version: v5.0.0
  • e5ad9c6 Add timeline screenshot
  • 92464eb Merge pull request #326 from joerick/html-features
  • a51f692 Update the versions of artifact actions
  • 0cfb26a Remove python 3.13 special cases
  • 187ed13 Some visual improvements and fixes for the call stack view
  • cbbab96 Add remove_useless_groups_processor to the HTML frontend, which removes group...
  • d9a084b Console renderer: dont bother printing groups with 0 or 1 hidden frames
  • 17ce4c4 New screenshot
  • f088741 Better scrolling logic
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [pyinstrument](https://github.com/joerick/pyinstrument) from 3.4.2 to 5.0.0.
- [Release notes](https://github.com/joerick/pyinstrument/releases)
- [Commits](joerick/pyinstrument@v3.4.2...v5.0.0)

---
updated-dependencies:
- dependency-name: pyinstrument
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added python Pull requests that update Python code TAG: dependencies labels Oct 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
python Pull requests that update Python code TAG: dependencies
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants