Skip to content

Commit ac1ebfc

Browse files
committed
Publish header files explicitly
While glob style matches are convenient, we're better off to installing the headers we want to publish *explicitly*. Otherwise, we may end up with issues we cannot easily fix without breaking ABI compatibility. And we may confuse users by installing headers which they can't even use, such as Windows specific headers on non Windows systems.
1 parent 18f61ad commit ac1ebfc

File tree

11 files changed

+816
-19
lines changed

11 files changed

+816
-19
lines changed

.github/labeler.yml

Lines changed: 266 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -393,8 +393,8 @@
393393
"ABI break":
394394
- changed-files:
395395
- any-glob-to-any-file:
396-
- 'TSRM/*.h'
397-
- 'Zend/*.h'
396+
- 'TSRM/TSRM.h'
397+
- 'TSRM/tsrm_win32.h'
398398
- 'Zend/Optimizer/zend_call_graph.h'
399399
- 'Zend/Optimizer/zend_cfg.h'
400400
- 'Zend/Optimizer/zend_dfg.h'
@@ -404,6 +404,101 @@
404404
- 'Zend/Optimizer/zend_optimizer.h'
405405
- 'Zend/Optimizer/zend_ssa.h'
406406
- 'Zend/Optimizer/zend_worklist.h'
407+
- 'Zend/zend.h'
408+
- 'Zend/zend_API.h'
409+
- 'Zend/zend_alloc.h'
410+
- 'Zend/zend_alloc_sizes.h'
411+
- 'Zend/zend_arena.h'
412+
- 'Zend/zend_ast.h'
413+
- 'Zend/zend_atomic.h'
414+
- 'Zend/zend_attributes.h'
415+
- 'Zend/zend_attributes_arginfo.h'
416+
- 'Zend/zend_bitset.h'
417+
- 'Zend/zend_build.h'
418+
- 'Zend/zend_builtin_functions.h'
419+
- 'Zend/zend_builtin_functions_arginfo.h'
420+
- 'Zend/zend_call_stack.h'
421+
- 'Zend/zend_closures.h'
422+
- 'Zend/zend_closures_arginfo.h'
423+
- 'Zend/zend_compile.h'
424+
- 'Zend/zend_config.w32.h'
425+
- 'Zend/zend_constants.h'
426+
- 'Zend/zend_constants_arginfo.h'
427+
- 'Zend/zend_cpuinfo.h'
428+
- 'Zend/zend_dtrace.h'
429+
- 'Zend/zend_enum.h'
430+
- 'Zend/zend_enum_arginfo.h'
431+
- 'Zend/zend_errors.h'
432+
- 'Zend/zend_exceptions.h'
433+
- 'Zend/zend_exceptions_arginfo.h'
434+
- 'Zend/zend_execute.h'
435+
- 'Zend/zend_extensions.h'
436+
- 'Zend/zend_fibers.h'
437+
- 'Zend/zend_fibers_arginfo.h'
438+
- 'Zend/zend_float.h'
439+
- 'Zend/zend_frameless_function.h'
440+
- 'Zend/zend_gc.h'
441+
- 'Zend/zend_gdb.h'
442+
- 'Zend/zend_generators.h'
443+
- 'Zend/zend_generators_arginfo.h'
444+
- 'Zend/zend_globals.h'
445+
- 'Zend/zend_globals_macros.h'
446+
- 'Zend/zend_hash.h'
447+
- 'Zend/zend_highlight.h'
448+
- 'Zend/zend_hrtime.h'
449+
- 'Zend/zend_inheritance.h'
450+
- 'Zend/zend_ini.h'
451+
- 'Zend/zend_ini_scanner.h'
452+
- 'Zend/zend_interfaces.h'
453+
- 'Zend/zend_interfaces_arginfo.h'
454+
- 'Zend/zend_iterators.h'
455+
- 'Zend/zend_language_scanner.h'
456+
- 'Zend/zend_lazy_objects.h'
457+
- 'Zend/zend_list.h'
458+
- 'Zend/zend_llist.h'
459+
- 'Zend/zend_long.h'
460+
- 'Zend/zend_map_ptr.h'
461+
- 'Zend/zend_max_execution_timer.h'
462+
- 'Zend/zend_mmap.h'
463+
- 'Zend/zend_modules.h'
464+
- 'Zend/zend_multibyte.h'
465+
- 'Zend/zend_multiply.h'
466+
- 'Zend/zend_object_handlers.h'
467+
- 'Zend/zend_objects.h'
468+
- 'Zend/zend_objects_API.h'
469+
- 'Zend/zend_observer.h'
470+
- 'Zend/zend_operators.h'
471+
- 'Zend/zend_portability.h'
472+
- 'Zend/zend_property_hooks.h'
473+
- 'Zend/zend_ptr_stack.h'
474+
- 'Zend/zend_range_check.h'
475+
- 'Zend/zend_signal.h'
476+
- 'Zend/zend_smart_str.h'
477+
- 'Zend/zend_smart_str_public.h'
478+
- 'Zend/zend_smart_string.h'
479+
- 'Zend/zend_smart_string_public.h'
480+
- 'Zend/zend_sort.h'
481+
- 'Zend/zend_stack.h'
482+
- 'Zend/zend_stream.h'
483+
- 'Zend/zend_string.h'
484+
- 'Zend/zend_strtod.h'
485+
- 'Zend/zend_strtod_int.h'
486+
- 'Zend/zend_system_id.h'
487+
- 'Zend/zend_type_info.h'
488+
- 'Zend/zend_types.h'
489+
- 'Zend/zend_variables.h'
490+
- 'Zend/zend_verify_type_inference.h'
491+
- 'Zend/zend_virtual_cwd.h'
492+
- 'Zend/zend_vm.h'
493+
- 'Zend/zend_vm_def.h'
494+
- 'Zend/zend_vm_execute.h'
495+
- 'Zend/zend_vm_handlers.h'
496+
- 'Zend/zend_vm_opcodes.h'
497+
- 'Zend/zend_vm_trace_handlers.h'
498+
- 'Zend/zend_vm_trace_lines.h'
499+
- 'Zend/zend_vm_trace_map.h'
500+
- 'Zend/zend_weakrefs.h'
501+
- 'Zend/zend_weakrefs_arginfo.h'
407502
- 'ext/curl/php_curl.h'
408503
- 'ext/date/lib/timelib.h'
409504
- 'ext/date/lib/timelib_config.h'
@@ -413,7 +508,21 @@
413508
- 'ext/dom/xml_common.h'
414509
- 'ext/dom/xpath_callbacks.h'
415510
- 'ext/filter/php_filter.h'
416-
- 'ext/gd/libgd/*.h'
511+
- 'ext/gd/libgd/bmp.h'
512+
- 'ext/gd/libgd/gd.h'
513+
- 'ext/gd/libgd/gd_errors.h'
514+
- 'ext/gd/libgd/gd_intern.h'
515+
- 'ext/gd/libgd/gd_io.h'
516+
- 'ext/gd/libgd/gd_tga.h'
517+
- 'ext/gd/libgd/gdcache.h'
518+
- 'ext/gd/libgd/gdfontg.h'
519+
- 'ext/gd/libgd/gdfontl.h'
520+
- 'ext/gd/libgd/gdfontmb.h'
521+
- 'ext/gd/libgd/gdfonts.h'
522+
- 'ext/gd/libgd/gdfontt.h'
523+
- 'ext/gd/libgd/gdhelpers.h'
524+
- 'ext/gd/libgd/jisx0208.h'
525+
- 'ext/gd/libgd/wbmp.h'
417526
- 'ext/gd/php_gd.h'
418527
- 'ext/gmp/php_gmp_int.h'
419528
- 'ext/hash/php_hash.h'
@@ -457,8 +566,40 @@
457566
- 'ext/mbstring/php_onig_compat.h'
458567
- 'ext/mysqli/mysqli_mysqlnd.h'
459568
- 'ext/mysqli/php_mysqli_structs.h'
460-
- 'ext/mysqlnd/*.h'
461-
- 'ext/pcre/pcre2lib/*.h'
569+
- 'ext/mysqlnd/config-win.h'
570+
- 'ext/mysqlnd/mysql_float_to_double.h'
571+
- 'ext/mysqlnd/mysqlnd.h'
572+
- 'ext/mysqlnd/mysqlnd_alloc.h'
573+
- 'ext/mysqlnd/mysqlnd_auth.h'
574+
- 'ext/mysqlnd/mysqlnd_block_alloc.h'
575+
- 'ext/mysqlnd/mysqlnd_charset.h'
576+
- 'ext/mysqlnd/mysqlnd_commands.h'
577+
- 'ext/mysqlnd/mysqlnd_connection.h'
578+
- 'ext/mysqlnd/mysqlnd_debug.h'
579+
- 'ext/mysqlnd/mysqlnd_enum_n_def.h'
580+
- 'ext/mysqlnd/mysqlnd_ext_plugin.h'
581+
- 'ext/mysqlnd/mysqlnd_libmysql_compat.h'
582+
- 'ext/mysqlnd/mysqlnd_plugin.h'
583+
- 'ext/mysqlnd/mysqlnd_portability.h'
584+
- 'ext/mysqlnd/mysqlnd_priv.h'
585+
- 'ext/mysqlnd/mysqlnd_protocol_frame_codec.h'
586+
- 'ext/mysqlnd/mysqlnd_ps.h'
587+
- 'ext/mysqlnd/mysqlnd_read_buffer.h'
588+
- 'ext/mysqlnd/mysqlnd_result.h'
589+
- 'ext/mysqlnd/mysqlnd_result_meta.h'
590+
- 'ext/mysqlnd/mysqlnd_reverse_api.h'
591+
- 'ext/mysqlnd/mysqlnd_statistics.h'
592+
- 'ext/mysqlnd/mysqlnd_structs.h'
593+
- 'ext/mysqlnd/mysqlnd_vio.h'
594+
- 'ext/mysqlnd/mysqlnd_wireprotocol.h'
595+
- 'ext/mysqlnd/php_mysqlnd.h'
596+
- 'ext/pcre/pcre2lib/config.h'
597+
- 'ext/pcre/pcre2lib/pcre2.h'
598+
- 'ext/pcre/pcre2lib/pcre2_internal.h'
599+
- 'ext/pcre/pcre2lib/pcre2_intmodedep.h'
600+
- 'ext/pcre/pcre2lib/pcre2_jit_neon_inc.h'
601+
- 'ext/pcre/pcre2lib/pcre2_jit_simd_inc.h'
602+
- 'ext/pcre/pcre2lib/pcre2_ucp.h'
462603
- 'ext/pcre/php_pcre.h'
463604
- 'ext/pdo/pdo_sql_parser.h'
464605
- 'ext/pdo/php_pdo.h'
@@ -487,11 +628,127 @@
487628
- 'ext/spl/spl_heap.h'
488629
- 'ext/spl/spl_iterators.h'
489630
- 'ext/spl/spl_observer.h'
490-
- 'ext/standard/*.h'
631+
- 'ext/standard/base64.h'
632+
- 'ext/standard/basic_functions.h'
633+
- 'ext/standard/basic_functions_arginfo.h'
634+
- 'ext/standard/crc32.h'
635+
- 'ext/standard/crc32_x86.h'
636+
- 'ext/standard/credits.h'
637+
- 'ext/standard/credits_ext.h'
638+
- 'ext/standard/credits_sapi.h'
639+
- 'ext/standard/crypt_blowfish.h'
640+
- 'ext/standard/crypt_freesec.h'
641+
- 'ext/standard/css.h'
642+
- 'ext/standard/datetime.h'
643+
- 'ext/standard/dir_arginfo.h'
644+
- 'ext/standard/dl.h'
645+
- 'ext/standard/dl_arginfo.h'
646+
- 'ext/standard/exec.h'
647+
- 'ext/standard/file.h'
648+
- 'ext/standard/file_arginfo.h'
649+
- 'ext/standard/flock_compat.h'
650+
- 'ext/standard/fsock.h'
651+
- 'ext/standard/head.h'
652+
- 'ext/standard/html.h'
653+
- 'ext/standard/html_tables.h'
654+
- 'ext/standard/info.h'
655+
- 'ext/standard/md5.h'
656+
- 'ext/standard/pack.h'
657+
- 'ext/standard/pageinfo.h'
658+
- 'ext/standard/password_arginfo.h'
659+
- 'ext/standard/php_array.h'
660+
- 'ext/standard/php_assert.h'
661+
- 'ext/standard/php_browscap.h'
662+
- 'ext/standard/php_crypt.h'
663+
- 'ext/standard/php_crypt_r.h'
664+
- 'ext/standard/php_dir.h'
665+
- 'ext/standard/php_dir_int.h'
666+
- 'ext/standard/php_dns.h'
667+
- 'ext/standard/php_ext_syslog.h'
668+
- 'ext/standard/php_filestat.h'
669+
- 'ext/standard/php_fopen_wrappers.h'
670+
- 'ext/standard/php_http.h'
671+
- 'ext/standard/php_image.h'
672+
- 'ext/standard/php_incomplete_class.h'
673+
- 'ext/standard/php_mail.h'
674+
- 'ext/standard/php_math.h'
675+
- 'ext/standard/php_math_round_mode.h'
676+
- 'ext/standard/php_net.h'
677+
- 'ext/standard/php_password.h'
678+
- 'ext/standard/php_smart_string.h'
679+
- 'ext/standard/php_smart_string_public.h'
680+
- 'ext/standard/php_standard.h'
681+
- 'ext/standard/php_string.h'
682+
- 'ext/standard/php_uuencode.h'
683+
- 'ext/standard/php_var.h'
684+
- 'ext/standard/php_versioning.h'
685+
- 'ext/standard/proc_open.h'
686+
- 'ext/standard/quot_print.h'
687+
- 'ext/standard/scanf.h'
688+
- 'ext/standard/sha1.h'
689+
- 'ext/standard/streamsfuncs.h'
690+
- 'ext/standard/url.h'
691+
- 'ext/standard/url_scanner_ex.h'
692+
- 'ext/standard/user_filters_arginfo.h'
693+
- 'ext/standard/winver.h'
491694
- 'ext/xml/expat_compat.h'
492695
- 'ext/xml/php_xml.h'
493-
- 'main/*.h'
494-
- 'main/streams/*.h'
696+
- 'main/SAPI.h'
697+
- 'main/fastcgi.h'
698+
- 'main/fopen_wrappers.h'
699+
- 'main/http_status_codes.h'
700+
- 'main/main_arginfo.h'
701+
- 'main/php.h'
702+
- 'main/php_compat.h'
703+
- 'main/php_content_types.h'
704+
- 'main/php_getopt.h'
705+
- 'main/php_globals.h'
706+
- 'main/php_ini.h'
707+
- 'main/php_ini_builder.h'
708+
- 'main/php_main.h'
709+
- 'main/php_memory_streams.h'
710+
- 'main/php_network.h'
711+
- 'main/php_odbc_utils.h'
712+
- 'main/php_open_temporary_file.h'
713+
- 'main/php_output.h'
714+
- 'main/php_reentrancy.h'
715+
- 'main/php_scandir.h'
716+
- 'main/php_streams.h'
717+
- 'main/php_syslog.h'
718+
- 'main/php_ticks.h'
719+
- 'main/php_variables.h'
720+
- 'main/php_version.h'
721+
- 'main/rfc1867.h'
722+
- 'main/snprintf.h'
723+
- 'main/spprintf.h'
724+
- 'main/streams/php_stream_context.h'
725+
- 'main/streams/php_stream_filter_api.h'
726+
- 'main/streams/php_stream_glob_wrapper.h'
727+
- 'main/streams/php_stream_mmap.h'
728+
- 'main/streams/php_stream_plain_wrapper.h'
729+
- 'main/streams/php_stream_transport.h'
730+
- 'main/streams/php_stream_userspace.h'
731+
- 'main/streams/php_streams_int.h'
732+
- 'main/streams/userspace_arginfo.h'
495733
- 'sapi/cli/cli.h'
496734
- 'sapi/embed/php_embed.h'
497-
- 'win32/*.h'
735+
- 'win32/codepage.h'
736+
- 'win32/console.h'
737+
- 'win32/fnmatch.h'
738+
- 'win32/getrusage.h'
739+
- 'win32/glob.h'
740+
- 'win32/ioutil.h'
741+
- 'win32/ipc.h'
742+
- 'win32/nice.h'
743+
- 'win32/param.h'
744+
- 'win32/php_registry.h'
745+
- 'win32/php_win32_globals.h'
746+
- 'win32/readdir.h'
747+
- 'win32/select.h'
748+
- 'win32/sendmail.h'
749+
- 'win32/signal.h'
750+
- 'win32/sockets.h'
751+
- 'win32/syslog.h'
752+
- 'win32/time.h'
753+
- 'win32/unistd.h'
754+
- 'win32/winutil.h'

0 commit comments

Comments
 (0)