Skip to content

Shutdown crash: "fatal error: non-Go code disabled sigaltstack" #2137

@Th3Mouk

Description

@Th3Mouk

What happened?

Hello !

I've upgraded my Docker image from 1.9.1... to frankenphp:1.11.1-php8.5.2-bookworm and since when I stop or restart a container that had handled at least 1 HTTP request, I've got a crash.
It can be an issue for projects that are using blue/green deployments or horizontal scaling because containers will not stop gracefully.

I'm not used to Go development so I asked an LLM to lead an investigation to ensure the problem was not on my side, and then propose a clue here to see if it can help you.

According to it's "analyse" ARM64 architecture seems impacted due to a stricter signal management.

This is what it has proposed:

Root Cause

PR #2033 added runtime.Gosched() at the start of handleRequestWithRegularPHPThreads() to improve tail latency. During graceful shutdown:

  1. Final request arrives (health check, connection draining)
  2. runtime.Gosched() yields control to scheduler
  3. PHP thread shutdown begins while Go is yielded
  4. C layer disables sigaltstack during cleanup
  5. Go resumes from Gosched, expects sigaltstack configured
  6. PANIC on ARM64 (strict signal stack requirements)

Timeline visualization:

handleRequestWithRegularPHPThreads() → Gosched() yields
                                       ↓
                     PHP cleanup disables sigaltstack
                                       ↓
                     Go resumes, expects sigaltstack
                                       ↓
                     CRASH: "non-Go code disabled sigaltstack"

Solution

Check if ANY thread is in shutdown state before calling runtime.Gosched():

// Only yield if no threads are shutting down
// Prevents ARM64 sigaltstack race during cleanup
if !isAnyThreadShuttingDown() {
    runtime.Gosched()
}

func isAnyThreadShuttingDown() bool {
    regularThreadMu.RLock()
    defer regularThreadMu.RUnlock()

    for _, thread := range regularThreads {
        state := thread.state.Get()
        if state == state.ShuttingDown || state == state.Done {
            return true
        }
    }
    return false
}

If I can help by any way to debug it further tell me.

TY for your time and consideration.

Build Type

Docker (Debian Bookworm)

Worker Mode

No

Operating System

macOS

CPU Architecture

Apple Silicon

PHP configuration

phpinfo()
PHP Version => 8.5.2

System => Linux 5b663fc7c974 6.12.54-linuxkit #1 SMP Tue Nov  4 21:21:47 UTC 2025 aarch64
Build Date => Jan 16 2026 23:20:06
Build System => Linux - Docker
Build Provider => https://github.com/docker-library/php
Configure Command =>  './configure'  '--build=aarch64-linux-gnu' '--sysconfdir=/usr/local/etc' '--with-config-file-path=/usr/local/etc/php' '--with-config-file-scan-dir=/usr/local/etc/php/conf.d' '--enable-option-checking=fatal' '--with-mhash' '--with-pic' '--enable-mbstring' '--enable-mysqlnd' '--with-password-argon2' '--with-sodium=shared' '--with-pdo-sqlite=/usr' '--with-sqlite3=/usr' '--with-curl' '--with-iconv' '--with-openssl' '--with-readline' '--with-zlib' '--enable-phpdbg' '--enable-phpdbg-readline' '--with-pear' '--with-libdir=lib/aarch64-linux-gnu' '--enable-embed' '--enable-zts' '--disable-zend-signals' 'build_alias=aarch64-linux-gnu' 'PHP_UNAME=Linux - Docker' 'PHP_BUILD_PROVIDER=https://github.com/docker-library/php'
Server API => Command Line Interface
Virtual Directory Support => enabled
Configuration File (php.ini) Path => /usr/local/etc/php
Loaded Configuration File => /usr/local/etc/php/php.ini
Scan this dir for additional .ini files => /usr/local/etc/php/conf.d
Additional .ini files parsed => /usr/local/etc/php/conf.d/98-ddtrace.ini,
/usr/local/etc/php/conf.d/docker-php-ext-bcmath.ini,
/usr/local/etc/php/conf.d/docker-php-ext-gd.ini,
/usr/local/etc/php/conf.d/docker-php-ext-intl.ini,
/usr/local/etc/php/conf.d/docker-php-ext-pdo_pgsql.ini,
/usr/local/etc/php/conf.d/docker-php-ext-sodium.ini,
/usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini,
/usr/local/etc/php/conf.d/docker-php-ext-xsl.ini,
/usr/local/etc/php/conf.d/docker-php-ext-zip.ini

PHP API => 20250925
PHP Extension => 20250925
Zend Extension => 420250925
Zend Extension Build => API420250925,TS
PHP Extension Build => API20250925,TS
PHP Integer Size => 64 bits
Debug Build => no
Thread Safety => enabled
Thread API => POSIX Threads
Zend Signal Handling => disabled
Zend Memory Manager => disabled
Zend Multibyte Support => provided by mbstring
Zend Max Execution Timers => enabled
IPv6 Support => enabled
DTrace Support => disabled

Registered PHP Streams => https, ftps, compress.zlib, php, file, glob, data, http, ftp, phar, zip
Registered Stream Socket Transports => tcp, udp, unix, udg, ssl, tls, tlsv1.0, tlsv1.1, tlsv1.2, tlsv1.3
Registered Stream Filters => zlib.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, convert.*, consumed, dechunk

This program makes use of the Zend Scripting Language Engine:
Zend Engine v4.5.2, Copyright (c) Zend Technologies
    with Xdebug v3.5.0, Copyright (c) 2002-2025, by Derick Rethans
    with Zend OPcache v8.5.2, Copyright (c), by Zend Technologies
    with ddtrace v1.15.2, Copyright Datadog, by Datadog
    with datadog-profiling v1.15.2, Copyright Datadog, by Datadog
    with ddappsec v1.15.2, Copyright Datadog, by Datadog


 _______________________________________________________________________


Configuration

bcmath

BCMath support => enabled

Directive => Local Value => Master Value
bcmath.scale => 0 => 0

Core

PHP Version => 8.5.2

Directive => Local Value => Master Value
allow_url_fopen => On => On
allow_url_include => Off => Off
arg_separator.input => & => &
arg_separator.output => & => &
auto_append_file => no value => no value
auto_globals_jit => On => On
auto_prepend_file => no value => no value
browscap => no value => no value
default_charset => UTF-8 => UTF-8
default_mimetype => text/html => text/html
disable_functions => no value => no value
display_errors => STDOUT => STDOUT
display_startup_errors => On => On
doc_root => no value => no value
docref_ext => no value => no value
docref_root => no value => no value
enable_dl => Off => Off
enable_post_data_reading => On => On
error_append_string => no value => no value
error_log => no value => no value
error_log_mode => 0644 => 0644
error_prepend_string => no value => no value
error_reporting => 30719 => 30719
expose_php => On => On
extension_dir => /usr/local/lib/php/extensions/no-debug-zts-20250925 => /usr/local/lib/php/extensions/no-debug-zts-20250925
fatal_error_backtraces => On => On
fiber.stack_size => no value => no value
file_uploads => On => On
hard_timeout => 2 => 2
highlight.comment => <span style="color: #FF8000">#FF8000</span> => <span style="color: #FF8000">#FF8000</span>
highlight.default => <span style="color: #0000BB">#0000BB</span> => <span style="color: #0000BB">#0000BB</span>
highlight.html => <span style="color: #000000">#000000</span> => <span style="color: #000000">#000000</span>
highlight.keyword => <span style="color: #007700">#007700</span> => <span style="color: #007700">#007700</span>
highlight.string => <span style="color: #DD0000">#DD0000</span> => <span style="color: #DD0000">#DD0000</span>
html_errors => Off => Off
ignore_repeated_errors => Off => Off
ignore_repeated_source => Off => Off
ignore_user_abort => Off => Off
implicit_flush => On => On
include_path => .:/usr/local/lib/php => .:/usr/local/lib/php
input_encoding => no value => no value
internal_encoding => no value => no value
log_errors => On => On
mail.add_x_header => Off => Off
mail.cr_lf_mode => crlf => crlf
mail.force_extra_parameters => no value => no value
mail.log => no value => no value
mail.mixed_lf_and_crlf => Off => Off
max_execution_time => 0 => 0
max_file_uploads => 20 => 20
max_input_nesting_level => 64 => 64
max_input_time => -1 => -1
max_input_vars => 1000 => 1000
max_memory_limit => -1 => -1
max_multipart_body_parts => -1 => -1
memory_limit => 256M => 256M
open_basedir => no value => no value
output_buffering => 0 => 0
output_encoding => no value => no value
output_handler => no value => no value
post_max_size => 100M => 100M
precision => 14 => 14
realpath_cache_size => 16M => 16M
realpath_cache_ttl => 600 => 600
register_argc_argv => Off => Off
report_memleaks => On => On
report_zend_debug => Off => Off
request_order => GP => GP
sendmail_from => no value => no value
sendmail_path => /usr/sbin/sendmail -t -i => /usr/sbin/sendmail -t -i
serialize_precision => -1 => -1
short_open_tag => Off => Off
SMTP => localhost => localhost
smtp_port => 25 => 25
sys_temp_dir => no value => no value
syslog.facility => LOG_USER => LOG_USER
syslog.filter => no-ctrl => no-ctrl
syslog.ident => php => php
unserialize_callback_func => no value => no value
upload_max_filesize => 100M => 100M
upload_tmp_dir => no value => no value
user_dir => no value => no value
user_ini.cache_ttl => 300 => 300
user_ini.filename => .user.ini => .user.ini
variables_order => GPCS => GPCS
xmlrpc_error_number => 0 => 0
xmlrpc_errors => Off => Off
zend.assertions => 1 => 1
zend.detect_unicode => On => On
zend.enable_gc => On => On
zend.exception_ignore_args => Off => Off
zend.exception_string_param_max_len => 15 => 15
zend.max_allowed_stack_size => 0 => 0
zend.multibyte => Off => Off
zend.reserved_stack_size => 0 => 0
zend.script_encoding => no value => no value

ctype

ctype functions => enabled

curl

cURL support => enabled
cURL Information => 7.88.1
Age => 10
Features
AsynchDNS => Yes
CharConv => No
Debug => No
GSS-Negotiate => No
IDN => Yes
IPv6 => Yes
krb4 => No
Largefile => Yes
libz => Yes
NTLM => Yes
NTLMWB => Yes
SPNEGO => Yes
SSL => Yes
SSPI => No
TLS-SRP => Yes
HTTP2 => Yes
GSSAPI => Yes
KERBEROS5 => Yes
UNIX_SOCKETS => Yes
PSL => Yes
HTTPS_PROXY => Yes
MULTI_SSL => No
BROTLI => Yes
ALTSVC => Yes
HTTP3 => No
UNICODE => No
ZSTD => Yes
HSTS => Yes
GSASL => No
Protocols => dict, file, ftp, ftps, gopher, gophers, http, https, imap, imaps, ldap, ldaps, mqtt, pop3, pop3s, rtmp, rtmpe, rtmps, rtmpt, rtmpte, rtmpts, rtsp, scp, sftp, smb, smbs, smtp, smtps, telnet, tftp
Host => aarch64-unknown-linux-gnu
SSL Version => OpenSSL/3.0.18
ZLib Version => 1.2.13
libSSH Version => libssh2/1.10.0

Directive => Local Value => Master Value
curl.cainfo => no value => no value

datadog-profiling

Version => 1.15.2
Profiling Enabled => true
Profiling Experimental Features Enabled => false
Experimental CPU Time Profiling Enabled => true
Allocation Profiling Enabled => true
Timeline Enabled => true
Exception Profiling Enabled => true
I/O Profiling Enabled => false
Endpoint Collection Enabled => true
Platform's CPU Time API Works => true
Profiling Log Level => off
Profiling Agent Endpoint => http://localhost:8126/
Application's Environment (DD_ENV) =>  
Application's Service (DD_SERVICE) => cli.command
Application's Version (DD_VERSION) =>  

Directive => Local Value => Master Value
datadog.profiling.allocation_enabled => On => On
datadog.profiling.allocation_sampling_distance => 4194304 => 4194304
datadog.profiling.enabled => On => On
datadog.profiling.endpoint_collection_enabled => On => On
datadog.profiling.exception_enabled => On => On
datadog.profiling.exception_message_enabled => Off => Off
datadog.profiling.exception_sampling_distance => 100 => 100
datadog.profiling.experimental_allocation_enabled => On => On
datadog.profiling.experimental_cpu_enabled => On => On
datadog.profiling.experimental_cpu_time_enabled => On => On
datadog.profiling.experimental_exception_enabled => On => On
datadog.profiling.experimental_exception_sampling_distance => 100 => 100
datadog.profiling.experimental_features_enabled => Off => Off
datadog.profiling.experimental_io_enabled => Off => Off
datadog.profiling.experimental_timeline_enabled => On => On
datadog.profiling.log_level => off => off
datadog.profiling.output_pprof => no value => no value
datadog.profiling.timeline_enabled => On => On
datadog.profiling.walltime_enabled => On => On

date

date/time support => enabled
timelib version => 2022.14
"Olson" Timezone Database Version => 2025.2
Timezone Database => internal
Default timezone => UTC

Directive => Local Value => Master Value
date.default_latitude => 31.7667 => 31.7667
date.default_longitude => 35.2333 => 35.2333
date.sunrise_zenith => 90.833333 => 90.833333
date.sunset_zenith => 90.833333 => 90.833333
date.timezone => UTC => UTC

ddappsec


Datadog PHP AppSec extension
(c) Datadog 2021

State managed by remote config => Yes
Current state => Not configured
Version => 1.15.2
Connected to helper? => No

Directive => Local Value => Master Value
datadog.api_security_enabled => On => On
datadog.api_security_sample_delay => 30.0 => 30.0
datadog.appsec.auto_user_instrumentation_mode => ident => ident
datadog.appsec.automated_user_events_tracking => ident => ident
datadog.appsec.automated_user_events_tracking_enabled => On => On
datadog.appsec.cli_start_on_rinit => Off => Off
datadog.appsec.enabled => Off => Off
datadog.appsec.extra_headers => no value => no value
datadog.appsec.helper_launch => On => On
datadog.appsec.helper_log_file => /dev/null => /dev/null
datadog.appsec.helper_log_level => info => info
datadog.appsec.helper_path => /opt/datadog/dd-library/1.15.2/lib/libddappsec-helper.so => /opt/datadog/dd-library/1.15.2/lib/libddappsec-helper.so
datadog.appsec.helper_runtime_path => /tmp => /tmp
datadog.appsec.http_blocked_template_html => no value => no value
datadog.appsec.http_blocked_template_json => no value => no value
datadog.appsec.log_file => php_error_reporting => php_error_reporting
datadog.appsec.log_level => warn => warn
datadog.appsec.max_body_buff_size => 524288 => 524288
datadog.appsec.max_stack_trace_depth => 32 => 32
datadog.appsec.max_stack_traces => 2 => 2
datadog.appsec.obfuscation_parameter_key_regexp => (?i)pass|pw(?:or)?d|secret|(?:api|private|public|access)[_-]?key|token|consumer[_-]?(?:id|key|secret)|sign(?:ed|ature)|bearer|authorization|jsessionid|phpsessid|asp\.net[_-]sessionid|sid|jwt => (?i)pass|pw(?:or)?d|secret|(?:api|private|public|access)[_-]?key|token|consumer[_-]?(?:id|key|secret)|sign(?:ed|ature)|bearer|authorization|jsessionid|phpsessid|asp\.net[_-]sessionid|sid|jwt
datadog.appsec.obfuscation_parameter_value_regexp => (?i)(?:p(?:ass)?w(?:or)?d|pass(?:[_-]?phrase)?|secret(?:[_-]?key)?|(?:(?:api|private|public|access)[_-]?)key(?:[_-]?id)?|(?:(?:auth|access|id|refresh)[_-]?)?token|consumer[_-]?(?:id|key|secret)|sign(?:ed|ature)?|auth(?:entication|orization)?|jsessionid|phpsessid|asp\.net(?:[_-]|-)sessionid|sid|jwt)(?:\s*=([^;&]+)|"\s*:\s*("[^"]+"|\d+))|bearer\s+([a-z0-9\._\-]+)|token\s*:\s*([a-z0-9]{13})|gh[opsu]_([0-9a-zA-Z]{36})|ey[I-L][\w=-]+\.(ey[I-L][\w=-]+(?:\.[\w.+\/=-]+)?)|[\-]{5}BEGIN[a-z\s]+PRIVATE\sKEY[\-]{5}([^\-]+)[\-]{5}END[a-z\s]+PRIVATE\sKEY|ssh-rsa\s*([a-z0-9\/\.+]{100,}) => (?i)(?:p(?:ass)?w(?:or)?d|pass(?:[_-]?phrase)?|secret(?:[_-]?key)?|(?:(?:api|private|public|access)[_-]?)key(?:[_-]?id)?|(?:(?:auth|access|id|refresh)[_-]?)?token|consumer[_-]?(?:id|key|secret)|sign(?:ed|ature)?|auth(?:entication|orization)?|jsessionid|phpsessid|asp\.net(?:[_-]|-)sessionid|sid|jwt)(?:\s*=([^;&]+)|"\s*:\s*("[^"]+"|\d+))|bearer\s+([a-z0-9\._\-]+)|token\s*:\s*([a-z0-9]{13})|gh[opsu]_([0-9a-zA-Z]{36})|ey[I-L][\w=-]+\.(ey[I-L][\w=-]+(?:\.[\w.+\/=-]+)?)|[\-]{5}BEGIN[a-z\s]+PRIVATE\sKEY[\-]{5}([^\-]+)[\-]{5}END[a-z\s]+PRIVATE\sKEY|ssh-rsa\s*([a-z0-9\/\.+]{100,})
datadog.appsec.rules => no value => no value
datadog.appsec.stack_trace_enabled => On => On
datadog.appsec.testing => Off => Off
datadog.appsec.testing_abort_rinit => Off => Off
datadog.appsec.testing_helper_metrics => Off => Off
datadog.appsec.testing_raw_body => Off => Off
datadog.appsec.trace_rate_limit => 100 => 100
datadog.appsec.waf_timeout => 10000 => 10000
datadog.extra_services => no value => no value
datadog.remote_config_poll_interval => 1000 => 1000

ddtrace


Datadog PHP tracer extension
For help, check out the documentation at https://docs.datadoghq.com/tracing/languages/php/
(c) Datadog 2020

Datadog tracing support => enabled
Version => 1.15.2
DATADOG TRACER CONFIGURATION => {
    "date": "2026-01-22T14:26:08Z",
    "os_name": "Linux 5b663fc7c974 6.12.54-linuxkit #1 SMP Tue Nov  4 21:21:47 UTC 2025 aarch64",
    "os_version": "6.12.54-linuxkit",
    "version": "1.15.2",
    "lang": "php",
    "lang_version": "8.5.0RC3",
    "env": null,
    "enabled": true,
    "service": null,
    "enabled_cli": true,
    "agent_url": "http:\/\/localhost:8126",
    "debug": false,
    "analytics_enabled": false,
    "sample_rate": -1,
    "sampling_rules": [],
    "tags": [],
    "service_mapping": [],
    "distributed_tracing_enabled": true,
    "dd_version": null,
    "architecture": "aarch64",
    "instrumentation_telemetry_enabled": true,
    "sapi": "cli",
    "datadog.trace.sources_path": "\/opt\/datadog\/dd-library\/1.15.2\/dd-trace-sources\/src",
    "open_basedir_configured": false,
    "uri_fragment_regex": null,
    "uri_mapping_incoming": null,
    "uri_mapping_outgoing": null,
    "auto_flush_enabled": true,
    "generate_root_span": true,
    "http_client_split_by_domain": false,
    "measure_compile_time": true,
    "report_hostname_on_root_span": false,
    "traced_internal_functions": null,
    "enabled_from_env": true,
    "opcache.file_cache": null,
    "sidecar_trace_sender": true,
    "loaded_by_ssi": false,
    "agent_error": "Failed to connect to localhost port 8126 after 0 ms: Couldn't connect to server"
}

                               Diagnostics                               
agent_error => Failed to connect to localhost port 8126 after 0 ms: Couldn't connect to server
Diagnostic checks => failed

Directive => Local Value => Master Value
datadog[Removed...]

dom

DOM/XML => enabled
DOM/XML API Version => 20031129
libxml Version => 2.9.14
HTML Support => enabled
XPath Support => enabled
XPointer Support => enabled
Schema Support => enabled
RelaxNG Support => enabled

fileinfo

fileinfo support => enabled
libmagic => 5.46

filter

Input Validation and Filtering => enabled

Directive => Local Value => Master Value
filter.default => unsafe_raw => unsafe_raw
filter.default_flags => no value => no value

gd

GD Support => enabled
GD Version => bundled (2.1.0 compatible)
FreeType Support => enabled
FreeType Linkage => with freetype
FreeType Version => 2.12.1
GIF Read Support => enabled
GIF Create Support => enabled
JPEG Support => enabled
libJPEG Version => 6b
PNG Support => enabled
libPNG Version => 1.6.39
WBMP Support => enabled
XPM Support => enabled
libXpm Version => 30411
XBM Support => enabled
WebP Support => enabled
BMP Support => enabled
AVIF Support => enabled
TGA Read Support => enabled

Directive => Local Value => Master Value
gd.jpeg_ignore_warning => On => On

hash

hash support => enabled
Hashing Engines => md2 md4 md5 sha1 sha224 sha256 sha384 sha512/224 sha512/256 sha512 sha3-224 sha3-256 sha3-384 sha3-512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost gost-crypto adler32 crc32 crc32b crc32c fnv132 fnv1a32 fnv164 fnv1a64 joaat murmur3a murmur3c murmur3f xxh32 xxh64 xxh3 xxh128 haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5 

MHASH support => Enabled
MHASH API Version => Emulated Support

iconv

iconv support => enabled
iconv implementation => glibc
iconv library version => 2.36

Directive => Local Value => Master Value
iconv.input_encoding => no value => no value
iconv.internal_encoding => no value => no value
iconv.output_encoding => no value => no value

intl

Internationalization support => enabled
ICU version => 72.1
ICU Data version => 72.1
ICU TZData version => 2022e
ICU Unicode version => 15.0

Directive => Local Value => Master Value
intl.default_locale => no value => no value
intl.error_level => 0 => 0
intl.use_exceptions => Off => Off

json

json support => enabled

lexbor

Lexbor support => active
Lexbor version => 2.5.0

libxml

libXML support => active
libXML Compiled Version => 2.9.14
libXML Loaded Version => 20914
libXML streams => enabled

mbstring

Multibyte Support => enabled
Multibyte string engine => libmbfl
HTTP input encoding translation => disabled
libmbfl version => 1.3.2

mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1.

Multibyte (japanese) regex support => enabled
Multibyte regex (oniguruma) version => 6.9.8

Directive => Local Value => Master Value
mbstring.detect_order => no value => no value
mbstring.encoding_translation => Off => Off
mbstring.http_input => no value => no value
mbstring.http_output => no value => no value
mbstring.http_output_conv_mimetypes => ^(text/|application/xhtml\+xml) => ^(text/|application/xhtml\+xml)
mbstring.internal_encoding => no value => no value
mbstring.language => neutral => neutral
mbstring.regex_retry_limit => 1000000 => 1000000
mbstring.regex_stack_limit => 100000 => 100000
mbstring.strict_detection => Off => Off
mbstring.substitute_character => no value => no value

mysqlnd

mysqlnd => enabled
Version => mysqlnd 8.5.2
Compression => supported
core SSL => supported
extended SSL => supported
Command buffer size => 4096
Read buffer size => 32768
Read timeout => 86400
Collecting statistics => Yes
Collecting memory statistics => Yes
Tracing => n/a
Loaded plugins => mysqlnd,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password,auth_plugin_caching_sha2_password,auth_plugin_sha256_password
API Extensions =>  

openssl

OpenSSL support => enabled
OpenSSL Library Version => OpenSSL 3.0.18 30 Sep 2025
OpenSSL Header Version => OpenSSL 3.0.18 30 Sep 2025
Openssl default config => /usr/lib/ssl/openssl.cnf

Directive => Local Value => Master Value
openssl.cafile => no value => no value
openssl.capath => no value => no value
openssl.libctx => custom => custom

pcre

PCRE (Perl Compatible Regular Expressions) Support => enabled
PCRE Library Version => 10.44 2024-06-07
PCRE Unicode Version => 15.0.0
PCRE JIT Support => enabled
PCRE JIT Target => ARM-64 64bit (little endian + unaligned)

Directive => Local Value => Master Value
pcre.backtrack_limit => 1000000 => 1000000
pcre.jit => On => On
pcre.recursion_limit => 100000 => 100000

PDO

PDO support => enabled
PDO drivers => sqlite, pgsql

pdo_pgsql

PDO Driver for PostgreSQL => enabled
PostgreSQL(libpq) Version => 15.15

pdo_sqlite

PDO Driver for SQLite 3.x => enabled
SQLite Library => 3.40.1

Phar

Phar: PHP Archive support => enabled
Phar API version => 1.1.1
Phar-based phar archives => enabled
Tar-based phar archives => enabled
ZIP-based phar archives => enabled
gzip compression => enabled
bzip2 compression => disabled (install ext/bz2)
Native OpenSSL support => enabled


Phar based on pear/PHP_Archive, original concept by Davey Shafik.
Phar fully realized by Gregory Beaver and Marcus Boerger.
Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle.
Directive => Local Value => Master Value
phar.cache_list => no value => no value
phar.readonly => On => On
phar.require_hash => On => On

posix

POSIX support => enabled

random

Version => 8.5.2

readline

Readline Support => enabled
Readline library => 8.2

Directive => Local Value => Master Value
cli.pager => no value => no value
cli.prompt => \b \>  => \b \> 

Reflection

Reflection => enabled

session

Session Support => enabled
Registered save handlers => files user 
Registered serializer handlers => php_serialize php php_binary 

Directive => Local Value => Master Value
session.auto_start => Off => Off
session.cache_expire => 180 => 180
session.cache_limiter => nocache => nocache
session.cookie_domain => no value => no value
session.cookie_httponly => Off => Off
session.cookie_lifetime => 0 => 0
session.cookie_partitioned => Off => Off
session.cookie_path => / => /
session.cookie_samesite => no value => no value
session.cookie_secure => Off => Off
session.gc_divisor => 1000 => 1000
session.gc_maxlifetime => 1440 => 1440
session.gc_probability => 1 => 1
session.lazy_write => On => On
session.name => PHPSESSID => PHPSESSID
session.referer_check => no value => no value
session.save_handler => files => files
session.save_path => no value => no value
session.serialize_handler => php => php
session.sid_bits_per_character => 4 => 4
session.sid_length => 32 => 32
session.upload_progress.cleanup => On => On
session.upload_progress.enabled => On => On
session.upload_progress.freq => 1% => 1%
session.upload_progress.min_freq => 1 => 1
session.upload_progress.name => PHP_SESSION_UPLOAD_PROGRESS => PHP_SESSION_UPLOAD_PROGRESS
session.upload_progress.prefix => upload_progress_ => upload_progress_
session.use_cookies => On => On
session.use_only_cookies => On => On
session.use_strict_mode => Off => Off
session.use_trans_sid => Off => Off

SimpleXML

SimpleXML support => enabled
Schema support => enabled

sodium

sodium support => enabled
libsodium headers version => 1.0.18
libsodium library version => 1.0.18

SPL

SPL support => enabled
Interfaces => OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject
Classes => AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, CallbackFilterIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveCallbackFilterIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException

sqlite3

SQLite3 support => enabled
SQLite Library => 3.40.1

Directive => Local Value => Master Value
sqlite3.defensive => On => On
sqlite3.extension_dir => no value => no value

standard

Dynamic Library Support => enabled
Path to sendmail => /usr/sbin/sendmail -t -i

Directive => Local Value => Master Value
assert.active => On => On
assert.bail => Off => Off
assert.callback => no value => no value
assert.exception => On => On
assert.warning => On => On
auto_detect_line_endings => Off => Off
default_socket_timeout => 60 => 60
from => no value => no value
session.trans_sid_hosts => no value => no value
session.trans_sid_tags => a=href,area=href,frame=src,form= => a=href,area=href,frame=src,form=
unserialize_max_depth => 4096 => 4096
url_rewriter.hosts => no value => no value
url_rewriter.tags => form= => form=
user_agent => no value => no value

tokenizer

Tokenizer Support => enabled

uri

URI support => active
uriparser bundled version => 1.0.0

xdebug

__   __   _      _                 
\ \ / /  | |    | |                
 \ V / __| | ___| |__  _   _  __ _ 
  > < / _` |/ _ \ '_ \| | | |/ _` |
 / . \ (_| |  __/ |_) | |_| | (_| |
/_/ \_\__,_|\___|_.__/ \__,_|\__, |
                              __/ |
                             |___/ 

Version => 3.5.0
Support Xdebug on Patreon, GitHub, or as a business: https://xdebug.org/support

          Enabled Features (through 'XDEBUG_MODE' env variable)          
Feature => Enabled/Disabled
Development Helpers => ✘ disabled
Coverage => ✘ disabled
GC Stats => ✘ disabled
Profiler => ✘ disabled
Step Debugger => ✔ enabled
Tracing => ✘ disabled

                            Optional Features                            
Compressed File Support => no
Clock Source => clock_gettime
TSC Clock Source => unavailable
'xdebug://gateway' pseudo-host support => yes
'xdebug://nameserver' pseudo-host support => yes
Systemd Private Temp Directory => not enabled

Debugger => enabled
IDE Key => PHPSTORM

Directive => Local Value => Master Value
xdebug.auto_trace => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.cli_color => 0 => 0
xdebug.client_discovery_header => HTTP_X_FORWARDED_FOR,REMOTE_ADDR => HTTP_X_FORWARDED_FOR,REMOTE_ADDR
xdebug.client_host => host.docker.internal => localhost
xdebug.client_port => 9003 => 9003
xdebug.cloud_id => no value => no value
xdebug.collect_assignments => Off => Off
xdebug.collect_includes => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.collect_params => On => On
xdebug.collect_return => Off => Off
xdebug.collect_vars => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.connect_timeout_ms => 200 => 200
xdebug.control_socket => off => off
xdebug.coverage_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.default_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.discover_client_host => Off => Off
xdebug.dump.COOKIE => no value => no value
xdebug.dump.ENV => no value => no value
xdebug.dump.FILES => no value => no value
xdebug.dump.GET => no value => no value
xdebug.dump.POST => no value => no value
xdebug.dump.REQUEST => no value => no value
xdebug.dump.SERVER => no value => no value
xdebug.dump.SESSION => no value => no value
xdebug.dump_globals => On => On
xdebug.dump_once => On => On
xdebug.dump_undefined => Off => Off
xdebug.file_link_format => no value => no value
xdebug.filename_format => no value => no value
xdebug.force_display_errors => Off => Off
xdebug.force_error_reporting => 0 => 0
xdebug.gc_stats_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.gc_stats_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.gc_stats_output_name => gcstats.%p => gcstats.%p
xdebug.halt_level => 0 => 0
xdebug.idekey => PHPSTORM => no value
xdebug.log => no value => no value
xdebug.log_level => 7 => 7
xdebug.max_nesting_level => 512 => 512
xdebug.max_stack_frames => -1 => -1
xdebug.mode => no value => no value
xdebug.output_dir => /tmp => /tmp
xdebug.overload_var_dump => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.path_mapping => 0 => 0
xdebug.profiler_append => Off => Off
xdebug.profiler_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.profiler_enable_trigger => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.profiler_enable_trigger_value => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.profiler_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.profiler_output_name => cachegrind.out.%p => cachegrind.out.%p
xdebug.remote_autostart => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_connect_back => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_enable => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_host => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_log => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_log_level => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_mode => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_port => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.remote_timeout => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.scream => Off => Off
xdebug.show_error_trace => Off => Off
xdebug.show_exception_trace => Off => Off
xdebug.show_local_vars => Off => Off
xdebug.show_mem_delta => (setting removed in Xdebug 3) => (setting removed in Xdebug 3)
xdebug.start_upon_error => default => default
xdebug.start_with_request => default => default
xdebug.trace_enable_trigger => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.trace_enable_trigger_value => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.trace_format => 0 => 0
xdebug.trace_options => 0 => 0
xdebug.trace_output_dir => (setting renamed in Xdebug 3) => (setting renamed in Xdebug 3)
xdebug.trace_output_name => trace.%c => trace.%c
xdebug.trigger_value => no value => no value
xdebug.use_compression => 0 => 0
xdebug.var_display_max_children => 128 => 128
xdebug.var_display_max_data => 512 => 512
xdebug.var_display_max_depth => 3 => 3

xml

XML Support => active
XML Namespace Support => active
libxml2 Version => 2.9.14

xmlreader

XMLReader => enabled

xmlwriter

XMLWriter => enabled

xsl

XSL => enabled
libxslt Version => 1.1.35
libxslt compiled against libxml Version => 2.9.14
EXSLT => enabled
libexslt Version => 0.8.20

Zend OPcache

Opcode Caching => Up and Running
Optimization => Disabled
SHM Cache => Enabled
File Cache => Disabled
JIT => Disabled
Startup => OK
Shared memory model => mmap
Cache hits => 0
Cache misses => 0
Used memory => 26727656
Free memory => 107490072
Wasted memory => 0
Interned Strings Used memory => 4652864
Interned Strings Free memory => 20512960
Cached scripts => 0
Cached keys => 0
Max keys => 32531
OOM restarts => 0
Hash keys restarts => 0
Manual restarts => 0
Start time => 2026-01-22T14:26:08+0000
Last restart time => none
Last force restart time => none

Directive => Local Value => Master Value
opcache.blacklist_filename => no value => no value
opcache.dups_fix => Off => Off
opcache.enable => On => On
opcache.enable_cli => On => On
opcache.enable_file_override => Off => Off
opcache.error_log => no value => no value
opcache.file_cache => no value => no value
opcache.file_cache_consistency_checks => On => On
opcache.file_cache_only => Off => Off
opcache.file_cache_read_only => Off => Off
opcache.file_update_protection => 2 => 2
opcache.force_restart_timeout => 180 => 180
opcache.huge_code_pages => Off => Off
opcache.interned_strings_buffer => 24 => 24
opcache.jit => disable => disable
opcache.jit_bisect_limit => 0 => 0
opcache.jit_blacklist_root_trace => 16 => 16
opcache.jit_blacklist_side_trace => 8 => 8
opcache.jit_buffer_size => 64M => 64M
opcache.jit_debug => 0 => 0
opcache.jit_hot_func => 127 => 127
opcache.jit_hot_loop => 61 => 61
opcache.jit_hot_return => 8 => 8
opcache.jit_hot_side_exit => 8 => 8
opcache.jit_max_exit_counters => 8192 => 8192
opcache.jit_max_loop_unrolls => 8 => 8
opcache.jit_max_polymorphic_calls => 2 => 2
opcache.jit_max_recursive_calls => 2 => 2
opcache.jit_max_recursive_returns => 2 => 2
opcache.jit_max_root_traces => 1024 => 1024
opcache.jit_max_side_traces => 128 => 128
opcache.jit_max_trace_length => 1024 => 1024
opcache.jit_prof_threshold => 0.005 => 0.005
opcache.lockfile_path => /tmp => /tmp
opcache.log_verbosity_level => 1 => 1
opcache.max_accelerated_files => 20000 => 20000
opcache.max_file_size => 0 => 0
opcache.max_wasted_percentage => 5 => 5
opcache.memory_consumption => 128 => 128
opcache.opt_debug_level => 0 => 0
opcache.optimization_level => 0 => 0x7FFEBFFF
opcache.preferred_memory_model => no value => no value
opcache.preload => no value => no value
opcache.preload_user => no value => no value
opcache.protect_memory => Off => Off
opcache.record_warnings => Off => Off
opcache.restrict_api => no value => no value
opcache.revalidate_freq => 2 => 2
opcache.revalidate_path => Off => Off
opcache.save_comments => On => On
opcache.use_cwd => On => On
opcache.validate_permission => Off => Off
opcache.validate_root => Off => Off
opcache.validate_timestamps => On => On

zip

Zip => enabled
Zip version => 1.22.7
Libzip version => 1.7.3
BZIP2 compression => Yes
XZ compression => No
ZSTD compression => No
AES-128 encryption => Yes
AES-192 encryption => Yes
AES-256 encryption => Yes

zlib

ZLib Support => enabled
Stream Wrapper => compress.zlib://
Stream Filter => zlib.inflate, zlib.deflate
Compiled Version => 1.2.13
Linked Version => 1.2.13

Directive => Local Value => Master Value
zlib.output_compression => Off => Off
zlib.output_compression_level => -1 => -1
zlib.output_handler => no value => no value

Additional Modules

Module Name

Environment

Variable => Value
HOSTNAME => 5b663fc7c974
PHP_INI_DIR => /usr/local/etc/php
HOME => /root
GODEBUG => cgocheck=0
XDEBUG_CONFIG => client_host=host.docker.internal
PHP_LDFLAGS => -Wl,-O1 -pie
PHP_CFLAGS => -fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
PHP_VERSION => 8.5.2
GPG_KEYS => 1198C0117593497A5EC5C199286AF1F9897469DC 49D9AF6BC72A80D6691719C8AA23F5BE9C7097D4 D95C03BC702BE9515344AE3374E44BC9067701A5
PHP_CPPFLAGS => -fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
PHP_ASC_URL => https://www.php.net/distributions/php-8.5.2.tar.xz.asc
COMPOSER_ALLOW_SUPERUSER => 1
PHP_URL => https://www.php.net/distributions/php-8.5.2.tar.xz
TERM => xterm
XDEBUG_MODE => debug
PATH => /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
XDG_CONFIG_HOME => /config
XDG_DATA_HOME => /data
APP_ENV_NAME => local
PHPIZE_DEPS => autoconf                 dpkg-dev                file            g++             gcc             libc-dev                make            pkg-config              re2c
APP_ENV => dev
PWD => /app
PHP_SHA256 => cb75a9b00a2806f7390dd64858ef42a47b443b3475769c8af6af33a18b1381f1
SERVER_PORT => 80
LOG_MODE => file
SERVER_NAME => :80

PHP Variables

Variable => Value
$_SERVER['HOSTNAME'] => 5b663fc7c974
$_SERVER['PHP_INI_DIR'] => /usr/local/etc/php
$_SERVER['HOME'] => /root
$_SERVER['GODEBUG'] => cgocheck=0
$_SERVER['XDEBUG_CONFIG'] => client_host=host.docker.internal
$_SERVER['PHP_LDFLAGS'] => -Wl,-O1 -pie
$_SERVER['PHP_CFLAGS'] => -fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
$_SERVER['PHP_VERSION'] => 8.5.2
$_SERVER['GPG_KEYS'] => 1198C0117593497A5EC5C199286AF1F9897469DC 49D9AF6BC72A80D6691719C8AA23F5BE9C7097D4 D95C03BC702BE9515344AE3374E44BC9067701A5
$_SERVER['PHP_CPPFLAGS'] => -fstack-protector-strong -fpic -fpie -O2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
$_SERVER['PHP_ASC_URL'] => https://www.php.net/distributions/php-8.5.2.tar.xz.asc
$_SERVER['COMPOSER_ALLOW_SUPERUSER'] => 1
$_SERVER['PHP_URL'] => https://www.php.net/distributions/php-8.5.2.tar.xz
$_SERVER['TERM'] => xterm
$_SERVER['XDEBUG_MODE'] => debug
$_SERVER['PATH'] => /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
$_SERVER['XDG_CONFIG_HOME'] => /config
$_SERVER['XDG_DATA_HOME'] => /data
$_SERVER['APP_ENV_NAME'] => local
$_SERVER['PHPIZE_DEPS'] => autoconf             dpkg-dev                file            g++             gcc             libc-dev                make            pkg-config            re2c
$_SERVER['APP_ENV'] => dev
$_SERVER['PWD'] => /app
$_SERVER['PHP_SHA256'] => cb75a9b00a2806f7390dd64858ef42a47b443b3475769c8af6af33a18b1381f1
$_SERVER['SERVER_PORT'] => 80
$_SERVER['LOG_MODE'] => file
$_SERVER['SERVER_NAME'] => :80
$_SERVER['PHP_SELF'] => 
$_SERVER['SCRIPT_NAME'] => 
$_SERVER['SCRIPT_FILENAME'] => 
$_SERVER['PATH_TRANSLATED'] => 
$_SERVER['DOCUMENT_ROOT'] => 
$_SERVER['REQUEST_TIME_FLOAT'] => 1769091968.6422
$_SERVER['REQUEST_TIME'] => 1769091968

Relevant log output

/root/go/pkg/mod/github.com/caddyserver/caddy/v2@v2.10.2/cmd/cobra.go:141 +0x34 fp=0x4000679c30 sp=0x4000679be0 pc=0xaf2f34

github.com/spf13/cobra.(*Command).execute(0x40007d0308, {0x400011f830, 0x3, 0x3})

	/root/go/pkg/mod/github.com/spf13/cobra@v1.10.2/command.go:1015 +0x7d4 fp=0x4000679de0 sp=0x4000679c30 pc=0x600734

github.com/spf13/cobra.(*Command).ExecuteC(0x400020db08)

	/root/go/pkg/mod/github.com/spf13/cobra@v1.10.2/command.go:1148 +0x350 fp=0x4000679ed0 sp=0x4000679de0 pc=0x600eb0

github.com/spf13/cobra.(*Command).Execute(...)

	/root/go/pkg/mod/github.com/spf13/cobra@v1.10.2/command.go:1071

github.com/caddyserver/caddy/v2/cmd.Main()

	/root/go/pkg/mod/github.com/caddyserver/caddy/v2@v2.10.2/cmd/main.go:72 +0x6c fp=0x4000679f30 sp=0x4000679ed0 pc=0xaec06c

main.main()

	/go/src/app/caddy/frankenphp/main.go:15 +0x1c fp=0x4000679f40 sp=0x4000679f30 pc=0x16440bc

runtime.main()

	/usr/local/go/src/runtime/proc.go:285 +0x278 fp=0x4000679fd0 sp=0x4000679f40 pc=0x44c9f8

runtime.goexit({})

	/usr/local/go/src/runtime/asm_arm64.s:1268 +0x4 fp=0x4000679fd0 sp=0x4000679fd0 pc=0x48b4e4


goroutine 17 gp=0x4000002700 m=nil [chan receive, locked to thread]:

runtime.gopark(0x400009c008?, 0x40006c2680?, 0x18?, 0xad?, 0x485ac4?)

	/usr/local/go/src/runtime/proc.go:460 +0xc0 fp=0x40000aacd0 sp=0x40000aacb0 pc=0x482e60

runtime.chanrecv(0x40000ce460, 0x0, 0x1)

	/usr/local/go/src/runtime/chan.go:667 +0x428 fp=0x40000aad50 sp=0x40000aacd0 pc=0x416f28

runtime.chanrecv1(0x40002fe130?, 0x0?)

	/usr/local/go/src/runtime/chan.go:509 +0x14 fp=0x40000aad80 sp=0x40000aad50 pc=0x416ac4

github.com/dunglas/frankenphp/internal/state.(*ThreadState).WaitFor(0x40002fe120, {0x4000062e80, 0x1, 0x1})

	/go/src/app/internal/state/state.go:129 +0x19c fp=0x40000aae00 sp=0x40000aad80 pc=0x142945c

github.com/dunglas/frankenphp.go_frankenphp_main_thread_is_ready()

	/go/src/app/phpmainthread.go:152 +0x94 fp=0x40000aae30 sp=0x40000aae00 pc=0x153aa64

_cgoexp_634fea83287e_go_frankenphp_main_thread_is_ready(0x40000aae98?)

	_cgo_gotypes.go:2061 +0x1c fp=0x40000aae40 sp=0x40000aae30 pc=0x15418fc

runtime.cgocallbackg1(0x15418e0, 0xffff457ae3f0, 0x0)

	/usr/local/go/src/runtime/cgocall.go:446 +0x248 fp=0x40000aaf10 sp=0x40000aae40 pc=0x414f68

runtime.cgocallbackg(0x15418e0, 0xffff457ae3f0, 0x0)

	/usr/local/go/src/runtime/cgocall.go:350 +0x104 fp=0x40000aaf80 sp=0x40000aaf10 pc=0x414c54

runtime.cgocallbackg(0x15418e0, 0xffff457ae3f0, 0x0)

	<autogenerated>:1 +0x1c fp=0x40000aafb0 sp=0x40000aaf80 pc=0x48d4ac

runtime.cgocallback(0x0, 0x0, 0x0)

	/usr/local/go/src/runtime/asm_arm64.s:1180 +0xb0 fp=0x40000aafe0 sp=0x40000aafb0 pc=0x48b400

runtime.goexit({})

	/usr/local/go/src/runtime/asm_arm64.s:1268 +0x4 fp=0x40000aafe0 sp=0x40000aafe0 pc=0x48b4e4

[...]

Too long

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions