• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

extphprs / ext-php-rs
66%
master: 66%

Build:
Build:
LAST BUILD BRANCH: dependabot/github_actions/actions/upload-artifact-7
DEFAULT BRANCH: master
Repo Added 29 Oct 2025 05:59AM UTC
Files 91
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH fix/module-entry-memory-leak
branch: fix/module-entry-memory-leak
CHANGE BRANCH
x
Reset
  • fix/module-entry-memory-leak
  • 102_refs
  • 138_inheritance
  • 173_simple_extends_and_implements
  • 176_getter_test
  • 182_objects_in_props
  • 184_missing_property_types_in_stubs
  • 186_stubs_constants
  • 191_zend_callable
  • 199_union_intersection_dnf
  • 237_zval_flags
  • 252_static_props_and_methods
  • 310_performance
  • 325_static_str
  • 369_better_stubs
  • 424_zval_heap_corruption
  • 492_lit_suffixes_in_defaults
  • 493_feat_sets_in_arguments
  • 499_document_superglobals
  • 502_returning_self
  • 508_php_write
  • 515_ref_mutability
  • 518_cargo_php_install
  • 522_indexmap
  • 523_custom_allocator_and_stubs
  • 525_zend_ht_entry
  • 536_identifiers
  • 537_zend_bailout
  • 538_nullable_param
  • 590_interfaces
  • 599-add-performance-test-infrastructure
  • abstract_methods
  • add-grpc-php-rs
  • add-sapi-send-headers
  • add-sapi-zts-test
  • cargo_watch
  • chore/add-coc
  • chore/bump-edition-2024
  • chore/cargo-php-stubs-tests
  • chore/context7
  • chore/php-8-5
  • chore/php-86-nightly
  • ci/musl
  • ci/zts-embed
  • customize-guide-logo
  • dependabot/cargo/convert_case-0.10.0
  • dependabot/cargo/convert_case-0.11.0
  • dependabot/cargo/convert_case-0.9.0
  • dependabot/cargo/darling-0.23
  • dependabot/cargo/libloading-0.9
  • dependabot/cargo/zip-7.0
  • dependabot/cargo/zip-8.0
  • dependabot/github_actions/JamesIves/github-pages-deploy-action-4.7.4
  • dependabot/github_actions/JamesIves/github-pages-deploy-action-4.7.6
  • dependabot/github_actions/JamesIves/github-pages-deploy-action-4.8.0
  • dependabot/github_actions/actions/cache-5
  • dependabot/github_actions/actions/checkout-6
  • dependabot/github_actions/actions/github-script-8
  • dependabot/github_actions/actions/upload-artifact-7
  • dependabot/github_actions/dawidd6/action-download-artifact-19
  • dependabot/github_actions/docker/build-push-action-7
  • dependabot/github_actions/docker/setup-buildx-action-4
  • docs/move-showcase-to-awesome
  • embed-zts
  • feat/cargo-llvm-cov
  • feat/embed-php-code
  • feat/error-observer
  • feat/interface_impl
  • feat/observer-api
  • feat/separated-phpref-types
  • feat/zend-extension
  • feat/zero-alloc-fast-path
  • feat/zval-ref-deref-inline
  • feat_immutable_empty_array
  • feat_zval_coercion
  • fix-valid-method-name
  • fix/184-property-type-stubs
  • fix/bencher-host
  • fix/binary-return-memory-leak
  • fix/cargo-php-install-musl
  • fix/ci-badge-workflow-reference
  • fix/clang-arm64-preserve-none
  • fix/clippy--
  • fix/clippy-1-93-0
  • fix/clippy-hasher
  • fix/clippy-rust-1-91
  • fix/cloning-class
  • fix/deploy-doc
  • fix/disable-zts-embed
  • fix/github-templates
  • fix/mock-unint
  • fix/musl-8-5-build
  • fix/parking-lot-min-version
  • fix/releaze-plz-workflow
  • fix/releaze-plz-workflow-permission
  • fix/segfault-empy-array
  • fix/use-fork-bindgen
  • fix/windows-bindgen-nommx
  • fix/windows-dev-pack
  • fix_prop_visibility
  • fix_stub_gen
  • hotload
  • json_serializable
  • lazy
  • master
  • named_arguments
  • patch-1
  • perf/zend-string-init-fast
  • readonly_class
  • release-plz-2025-10-29T06-23-17Z
  • release-plz-2025-10-29T13-44-17Z
  • release-plz-trigger
  • release-plz-trigger-v2
  • release-plz-trigger-v3
  • remove-php80-testing
  • showcase
  • smartstring
  • trusted-publishing

30 Mar 2026 11:56AM UTC coverage: 65.597% (-0.5%) from 66.102%
23743465206

Pull #707

github

ptondereau
fix(memory): eliminate module definition memory leak

Store the ModuleEntry in a static (StaticModuleEntry) instead of
Box::into_raw, mirroring how C extensions use a static zend_module_entry.
Free all secondary heap allocations (name, version, functions, arg_info,
class-name pointers) during MSHUTDOWN via cleanup_module_allocations().

Cleanup only runs for shared extensions (handle != NULL) to avoid
use-after-free in embed SAPI where PHP still references module pointers
during later shutdown phases.

Closes #540
Pull Request #707: fix(memory): eliminate module definition memory leak

6 of 62 new or added lines in 1 file covered. (9.68%)

54 existing lines in 5 files now uncovered.

8071 of 12304 relevant lines covered (65.6%)

31.89 hits per line

Relevant lines Covered
Build:
Build:
12304 RELEVANT LINES 8071 COVERED LINES
31.89 HITS PER LINE
Source Files on fix/module-entry-memory-leak
  • Tree
  • List 89
  • Changed 8
  • Source Changed 6
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
23743465206 fix/module-entry-memory-leak fix(memory): eliminate module definition memory leak Store the ModuleEntry in a static (StaticModuleEntry) instead of Box::into_raw, mirroring how C extensions use a static zend_module_entry. Free all secondary heap allocations (name, version, fu... Pull #707 30 Mar 2026 11:59AM UTC ptondereau github
65.6
23743442514 fix/module-entry-memory-leak fix(memory): eliminate module definition memory leak Store the ModuleEntry in a static (StaticModuleEntry) instead of Box::into_raw, mirroring how C extensions use a static zend_module_entry. Free all secondary heap allocations (name, version, fu... push 30 Mar 2026 11:58AM UTC ptondereau github
65.6
23743444734 fix/module-entry-memory-leak Merge 87b7f8bab into 030380f14 Pull #707 30 Mar 2026 11:58AM UTC web-flow github
65.79
23742596401 fix/module-entry-memory-leak fix(memory): eliminate module definition memory leak Store the ModuleEntry in a static (StaticModuleEntry) instead of Box::into_raw, mirroring how C extensions use a static zend_module_entry. Free all secondary heap allocations (name, version, fu... Pull #707 30 Mar 2026 11:35AM UTC ptondereau github
65.61
23741753953 fix/module-entry-memory-leak fix(memory): eliminate module definition memory leak Store the ModuleEntry in a static (StaticModuleEntry) instead of Box::into_raw, mirroring how C extensions use a static zend_module_entry. Free all secondary heap allocations (name, version, fu... Pull #707 30 Mar 2026 11:13AM UTC ptondereau github
65.91
23741756225 fix/module-entry-memory-leak Merge aa2f9eea0 into 030380f14 Pull #707 30 Mar 2026 11:13AM UTC web-flow github
66.11
23741511588 fix/module-entry-memory-leak fix(memory): eliminate module definition memory leak Store the ModuleEntry in a static (StaticModuleEntry) instead of Box::into_raw, mirroring how C extensions use a static zend_module_entry. Free all secondary heap allocations (name, version, fu... Pull #707 30 Mar 2026 11:07AM UTC ptondereau github
65.91
23741513796 fix/module-entry-memory-leak Merge 5749e6f0a into 030380f14 Pull #707 30 Mar 2026 11:06AM UTC web-flow github
66.11
23741464792 fix/module-entry-memory-leak fix(memory): eliminate module definition memory leak Store the ModuleEntry in a static (StaticModuleEntry) instead of Box::into_raw, mirroring how C extensions use a static zend_module_entry. Free all secondary heap allocations (name, version, fu... push 30 Mar 2026 11:05AM UTC ptondereau github
65.91
23741466805 fix/module-entry-memory-leak Merge adf7d2eb9 into 030380f14 Pull #707 30 Mar 2026 11:05AM UTC web-flow github
66.1
See All Builds (849)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc