Skip to content

build(deps): bump perfmark-api from 0.23.0 to 0.26.0 #19

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

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

Conversation

dependabot[bot]
Copy link

@dependabot dependabot bot commented on behalf of github Nov 9, 2022

Bumps perfmark-api from 0.23.0 to 0.26.0.

Release notes

Sourced from perfmark-api's releases.

Release 0.26.0

API Changes

  • PerfMark.setEnabled() now returns if setting the value succeeded. (#181).

Implementation Improvements

  • Added work arounds for Java 19's Virtual threads, which may not be able to use Thread Local storage. If this is the case, PerfMark attempts to emulate thread local trace buffers using a concurrent map.
  • Trace storage now more eagerly removes storage when it find the thread is gone, and is more GC friendly. PerfMark still attempts to preserve trace data after a thread finishes, but without strongly referring to it.

Unstable API Changes

The following changes are to unstable APIs of PerfMark. This section describes APIs for advanced users to try out new functionality before it becomes API stable.

  • Added Methods to Storage for clearing thread local and global storage (#177)
    • Storage.clearLocalStorage() enables individual threads to clear their storage
    • Storage.clearGlobalIndex() marks storage as SoftlyReachable where possible It can be used to indiciate that future calls to Storage.read() should not include data after the point that the global index was cleared. Both clearLocalStorage and clearGlobalIndex can be used to remove old trace data.
    • LocalMarkHolder was added to enter and exit critical sections of of MarkHolder mutation. The only implementation currently pulls the MarkHolder out of thread local storage for editing. However, this designed to work with other context-specific storage mechanisms, such as Kotlin's Coroutines.

Release 0.25.0

New Features

  • Added an experimental JDK15 MarkHolder backend. This MarkHolder uses hidden classes which allows creating classes at runtime with custom storage sizes, without giving up constant propagation in the compiler. The trade off is additional memory per thread for the additional class structure. This can be tested by setting a system property (e.g. -Dio.perfmark.PerfMark.markHolderProvider=io.perfmark.java15.SecretHiddenClassMarkHolderProvider.HiddenClassMarkHolderProvider) ( 5fa4adf1c40baf87ae2bf021fb9e6162821b6b2d )

General Improvements

  • PerfMark disables itself safely now in the event of a strict Security Manager. (tests: 45de84d7d9d812115fa160b2448d686a4217d60e)
  • Debug logging was modified to use reflection, to avoid accidentally loading classes, even if io.perfmark.Perfmark.debug was set to false. This also avoid accidentally requiring the java.logging module (4f87fb72c2077df6ade958b524d6d217766c9f93, 957986dd76e9bad5891614d710a3186da900d7f0)

Breaking Changes

  • The Automatic Module Name for java6, java7 jars were changed to javasix and javaseven respectively. Auto module naming has trouble working with packages that end in numbers, as it conflicts with the version detection. javanine was already set correctly.

Release v0.24.0

New Features

  • Added an examples subproject which shows how to serve the TraceUI over the web. This uses Perfetto which can help in reducing the large jar size that the traceviewer subproject uses. ( c1f3f634379809c40cfd1334f4c7743a5b97f57f )
  • TaskCloseable is now stabilized ( ac7249129e4b47d5fbf522fa4a36fb933412f971 )
  • Added JPMS Support (Java 9 Modules) via Automatic-Module-Name ( 6a9145717e836d2e1e199488639521a7237603ec )

... (truncated)

Commits
  • ace407c Bump to v0.26.0
  • 7e159b6 Minor quality of life improvements for PerfMark (#182)
  • ef41d3c api: record if PerfMark.setEnabled succeeded (#181)
  • 28cff69 impl: store generation with microsecond precision (#179)
  • bff10bc impl: more eagerly reclaim stale MarkHolders
  • f9609ec all: silence jmh warnings from errorprone
  • 10c5b8e Bump to Gradle 7.5.1
  • 808e971 all: rename Storage test methods
  • 6e5673b impl: Factor Thread Storage into pluggable provider
  • 8e74dfa all: fix warnings
  • 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 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 [perfmark-api](https://github.com/perfmark/perfmark) from 0.23.0 to 0.26.0.
- [Release notes](https://github.com/perfmark/perfmark/releases)
- [Commits](perfmark/perfmark@v0.23.0...v0.26.0)

---
updated-dependencies:
- dependency-name: io.perfmark:perfmark-api
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file java Pull requests that update Java code labels Nov 9, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file java Pull requests that update Java code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants