Skip to content

[Vulcan] Clarify nullable properties and indexed range warnings - #337

Open
iliaal wants to merge 1 commit into
masterfrom
vulcan/docs-property-contracts-20261025
Open

iliaal wants to merge 1 commit into
masterfrom
vulcan/docs-property-contracts-20261025

Conversation

@iliaal

@iliaal iliaal commented Oct 25, 2026 •

Copy link
Copy Markdown
Owner

Rationale

Complete the API-reference correction for existing property contracts: six ExcelFormat getters/setters accept null to read without changing the value, while false remains a setter value. Correct two ExcelSheet parameter annotations and document getIndexRange() warning-plus-false behavior for negative indexes and, on 64-bit PHP, indexes above INT_MAX.

Only nine docblocks and the Unreleased documentation note change. Runtime, signatures and tests are unchanged.

Validation

  • Fresh strict native build: PHP 8.4.26 NTS / LibXL 5.2.0.1 trial, -Wall -Wextra -Wimplicit-fallthrough -Werror; zero compiler diagnostics.
  • Full PHPT suite: 254 passed, 7 skipped, 0 failed or warned (261 total).
  • 90 native XLS/XLSX contract assertions passed: nullable alignment/boolean getters, explicit false setters, print gridlines, zoom, valid/missing/negative/overflow named-range indexes and exact warning severity.
  • All 12 reference PHP files lint clean; non-comment PHP tokens unchanged; git diff --check passed. Independent review checked native macros, stubs and arginfo, including 32-bit wording.
  • Remote tree e35e1bcaccc8a9468520db478400d76565728d8e matches the tested local index. Actual merge-tree against current master is clean; no sibling PRs.

Limitations

Local build used retained official headers/library and direct compiler invocation, not a fresh phpize/configure install. Seven license/platform skips are not passes; no local Windows, ZTS, sanitizer or performance claim. Exact-head CI completed successfully: Tests run 40156107945 and Windows Build run 40156107911, all 36 executed jobs passed. One release-upload job was intentionally skipped, not passed. The workflow-security scan is path-filtered out for this docs-only change.

Audited CI logs: PHP 8.4 Linux 252 passed / 9 skipped; PHP 8.4 ZTS 253 / 8; Windows PHP 8.4 x64 NTS 247 / 14; both ASAN lanes 250 / 9 plus two isolated tests passed. All inspected summaries have zero failures or warnings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant