Skip to content

Stdlib: imap_setflag_full/clearflag_full + alerts/gc/thread/acl/headers/mailboxmsginfo missing when IMAP advertised (ext/imap/php_imap.stub.php) #27800

Description

@PurHur

Category

enhancement · php-src-strict · IMAP surface · pillar 4

Problem

With IMAP advertised, flag mutation, alert queue, GC, threading, ACL, and mailbox summary APIs are missing while siblings like imap_errors / imap_num_msg exist. Verified on master @ 6c206f7ff (2026-08-05). Distinct from mailbox list/subscribe (#pending sibling) and fetch/MIME open issues.

Symbol Zend (ext/imap) VM
imap_setflag_full / imap_clearflag_full present missing
imap_alerts present missing (imap_errors OK)
imap_gc present missing
imap_thread present missing
imap_getacl / imap_setacl present missing
imap_headers / imap_mailboxmsginfo present missing

php-src reference

PHP implementation target

  • ext/imap + VmImap* PHP-in-PHP; gate on IMAP advertisement; no new runtime/*.c

Repro

./script/docker-exec.sh -- bash -lc '
cat > /tmp/imap_flags.php <<'"'"'PHP'"'"'
<?php
echo "imap=", extension_loaded("imap") ? "yes" : "no", "\n";
foreach (["imap_setflag_full","imap_clearflag_full","imap_alerts","imap_gc","imap_thread","imap_getacl","imap_setacl","imap_headers","imap_mailboxmsginfo","imap_errors"] as $f) {
  echo $f, "=", function_exists($f) ? "yes" : "no", "\n";
}
PHP
php bin/vm.php /tmp/imap_flags.php
'

Done when

  • Listed symbols exist when IMAP advertised (except documenting any php-src version gates)
  • Invalid-handle error shapes match Zend; no crash
  • Compliance/repro guard; php-src-strict

Gate snapshot when filing (2026-08-05)

  • inventory OK 7016/7016; VM driver probe OK

No activity

Activity on this issue will appear here.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:vmVirtual machineenhancementNew feature or requestimplementation-readySpec complete: repro, php-src ref, done-when — safe for workers to claimphase-4:stdlibPhase 4 – stdlib for web appsstdlib

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions