Skip to content

chore(deps): bump io.github.charlietap.chasm:chasm from 0.9.6 to 0.9.53 #457

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

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Mar 10, 2025

Bumps io.github.charlietap.chasm:chasm from 0.9.6 to 0.9.53.

Release notes

Sourced from io.github.charlietap.chasm:chasm's releases.

0.9.53

APIs for reading and writing strings from memory

You'll now find three new api calls in chasms embedding api:

  • readUtf8String()
  • writeUtf8String()
  • readNullTerminatedUtf8String()

The latter of the three is useful when dealing with modules created by languages like C which use null terminating bytes to signal the end of a string. I've done what I can to optimise the algorithm which finds the null byte on native, which is powered by a wide SIMD search. The Java impl is more primitive but will be improved in the future when I start to specialise the JVM memory implementation.

0.9.52

Performance

  • When exiting blocks, functions and exception handlers chasm will no longer attempt to null out the respective stack elements. Instead it will simply move the stack pointer, this gives around 7% boost to control flow dispatch with the tradeoff that stack frames and labels are not released. These objects don't actually have much state so this has no meaningful memory impact.

Bug fixes

  • Fixed a complex issue around type pointers mismatching during instantiation
  • Fixed Issue where breaking from blocks would not cleanup relevant exception handlers, this could cause future exceptions to caught by handlers that should not exist and hold incorrect stack depths.

0.9.51

Bugfix

This release includes a small bug fix for programs that use array_new_default on an array who's field type is a non null reference type. This would cause an issue that would leak a concrete defined type heap type onto the stack, which chasm cannot serialise.

0.9.42

Performance

Performance is improved roughly 50% for all types of workloads

  • The dispatch loop has been shrunken to just a jump, a compare and load and an invocation of a function reference
  • Branches have been removed from all stack operations, all operations are now optimistic
  • Host functions are no longer type checked when they return results, this checking was introducing several branches per value in the result. A future release will add functions to chasms api that allow authors of HostFunction libraries the ability to type check them whilst they are developed.
  • Locals now have their defaults predecoded, saving several branches on call entrance

0.9.41

Bugfix

  • Modules with large amounts of recursive types should now have a small memory footprint

Full Changelog: CharlieTap/chasm@0.9.4...0.9.41

Commits
  • b9ee43f release 0.9.53
  • 1e23ed9 add api to read null terminated strings from memory
  • 089bc70 add function to write utf8 encoded string to memory
  • de92de4 optimise readBytes to reinterpret the cpointer as a byte array and use memcpy...
  • 2676d46 add function for reading ut8 encoded string from memory
  • 68ab902 gradle 8.12.1
  • f5e6ba2 release 0.9.52
  • a2361a0 remove copy code from control stack shrinking
  • 4fbce5e shrink handler stack when breaking labels
  • ec2f73d reverse lookup defined types by equality rather than pointer equality as new ...
  • 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 [io.github.charlietap.chasm:chasm](https://github.com/CharlieTap/chasm) from 0.9.6 to 0.9.53.
- [Release notes](https://github.com/CharlieTap/chasm/releases)
- [Commits](CharlieTap/chasm@0.9.6...0.9.53)

---
updated-dependencies:
- dependency-name: io.github.charlietap.chasm:chasm
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot requested a review from sureshg March 10, 2025 22:32
@dependabot dependabot bot added dependencies Changes that affect dependencies gradle Gradle changes labels Mar 10, 2025
Copy link

@sureshg sureshg closed this Mar 10, 2025
Copy link
Contributor Author

dependabot bot commented on behalf of github Mar 10, 2025

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot bot deleted the dependabot/gradle/io.github.charlietap.chasm-chasm-0.9.53 branch March 10, 2025 22:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Changes that affect dependencies gradle Gradle changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant