Welcome back to a new issue of Week in Core Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on Trac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between January 29 and February 5, 2024.
- 66 commits
- 117 contributors
- 79 tickets created
- 8 tickets reopened
- 56 tickets closed
Ticket Created for both bug reports and feature development on the bug tracker. numbers are based on the Trac timeline for the period above. The following is a summary of commits, organized by component and/or focus.
Code changes
Administration
- Accessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility): Use the default cursor style for labels and disabled form controls – #59733
Build/Test Tools
- Introduce Props Bot workflow – #60417
- Mock plugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party API An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. response in
WP_REST_Plugins_Controller_Test
– #59647
- Pass a token to the Codecov action – #59658
- Some improvements to the Props Bot workflow – #60417
- Test against MySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/. 8.3 – #59779
- Update the
codecov/codecov-action
action – #59658
- Update third-party Slack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. action – #59805
- Remove redundant unregister call in block Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. bindings tear down – #60282
Bundled Themes
- Twenty Eleven: Fix typo in
twentyeleven_widgets_init()
description – #60383
- Twenty Fifteen: Fix typo in
css/blocks.css
– #60383
- Twenty Twenty-Three: Rename Comments template part – #56999
Coding Standards
- Remove unnecessary access and internal annotations from two functions in WP_REST_Templates_Controller – #60358
- Rename the
$ID
parameter to $post_id
in trackback()
– #59650
- Rename the
$expires_offset
variable in cache_javascript_headers()
– #59650
- Update PHPCS PHP Code Sniffer, a popular tool for analyzing code quality. The WordPress Coding Standards rely on PHPCS. to version 3.8.1 – #60279
- Use strict comparison for functions lookup in plugin/theme editors – #60415
- Use strict comparison in
wp-admin/update-core.php
– #58061, #60415
Docs
- Fix typo in
do_robots()
docblock (phpdoc, xref, inline docs) – #60405
Editor
- Add Block Bindings API helpers – #60282
- Add
allowed_blocks
field to block registration and REST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. – #60403
- Add
viewStyle
property to block.json
for frontend-only block style – #59673
- Add deprecated functions from interactivity core blocks – #60380
- Add registry for block binding sources – #60282
- Add the Block Bindings API – #60282
- Fix PHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher warning in Layout block support – #60327
- Fix Theme.json JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. font settings in unit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. – #60341
- Fix Theme.json font settings unit test – #60341
- Refactor the way block bindings sources are handled – #60282
- Remove shadow support via direct attribute – #60377
- Sanitize nested array in theme.json properly – #60360
- Update WordPress packages to Gutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ 16.7 RC3 – #60315
- Update the WordPress packages to the Gutenberg 16.7 RC2 version – #60315
- Update the minimum compatible version of Gutenberg – #60315
- fix small typos in block bindings API docblocks – #60282, #60386
- introduce
dimensions.aspectRatio
block support – #60365
- reduce specificity of block style variation selector – #60312
General
- Add tests for
array_is_list
polyfill added in r57337 – #55105
HTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. API
- Fix CDATA lookalike matching invalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. CDATA – #60406
- Fix splitting single text node – #60385
- Fix typo setting the wrong self-closing flag
- Fix void tag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) nesting with next_token – #60382
- Reset parser state after seeking to bookmark – #60428
- Test cleanup – #59647
HTTP HTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. API
- Ensure cookie names are cast to strings – #58566
I18N Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.
- Add missing space after
foreach
keyword – #59656
- Add type declaration to new method missed in [57518] – #59656
- Delete
.l10n.php
files when deleting a theme – #59656
- Ensure
.l10n.php
files are deleted when upgrading language packs – #59656
- Fix plural forms parsing in
WP_Translation_File
– #59656
- Improve singular lookup of pluralized strings – #59656
- Improve singular lookup of pluralized strings – #59656
- Load new translation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. library in
wp_load_translations_early()
– #59656
- Revert [57386] pending further investigation – #59656
- Support loading
.l10n.php
translation files on their own – #59656
Upgrade/Install
- When populating options, maybe_serialize instead of always serialize
Media
REST API
- Add route for single styles revisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. – #59810
- Support assigning terms when creating attachments – #57897
Script Loader
- Remove unused
WP_Scripts::get_unaliased_deps()
method – #60438
- Use a global variable in
wp_script_modules()
– #56313
- Add import map polyfill for older browsers – #60348
Upload
- Fallback to
PclZip
to validate ZIP file uploads – #60398
- Check for and verify ZIP archives
Props
Thanks to the 117 (!) people who contributed to WordPress Core on Trac: @mukesh27 (12), @swissspidy (11), @gziolo (7), @peterwilsoncc (6), @jonsurrell (6), @costdev (5), @jorbin (5), @dmsnell (4), @youknowriad (4), @santosguillamot (4), @desrosj (4), @talldanwp (4), @czapla (4), @luisherranz (4), @azaozz (3), @joemcgill (3), @lgladdy (3), @sc0ttkclark (3), @artemiosans (3), @fabiankaegy (3), @shailu25 (3), @cbravobernal (3), @get_dave (3), @jeffpaul (2), @johnbillion (2), @kevin940726 (2), @joedolson (2), @dharm1025 (2), @harshgajipara (2), @isabel_brison (2), @audunmb (1), @britner (1), @cdevroe (1), @colorful-tones (1), @courane01 (1), @endymion00 (1), @feastdesignco (1), @halounsbury (1), @jsandtro (1), @karinclimber (1), @kevincoleman (1), @koesper (1), @maartenbelmans (1), @mathewemoore (1), @melcarthus (1), @mujuonly (1), @nerdpressteam (1), @olegfuture (1), @otto42 (1), @room34 (1), @sayful (1), @schutzsmith (1), @stephencronin (1), @svitlana41319 (1), @tnolte (1), @tobiasbg (1), @vikram6 (1), @welaunchio (1), @wpfy (1), @viralsampat (1), @adamsilverstein (1), @lukefiretoss (1), @ayeshrajans (1), @navjotjsingh (1), @Tyrannous (1), @jb510 (1), @gregbenz (1), @nickpagz (1), @JavierCasares (1), @yguyon (1), @mamaduka (1), @upadalavipul (1), @jsnajdr (1), @afercia (1), @Chouby (1), @dd32 (1), @pento (1), @noisysocks (1), @chrisdavidmiles (1), @wpscholar (1), @annezazu (1), @chanthaboune (1), @Chrystl (1), @codepo8 (1), @oglekler (1), @nicolefurlan (1), @antpb (1), @syamraj24 (1), @wildworks (1), @madhudollu (1), @westonruter (1), @mikachan (1), @poena (1), @nosilver4u (1), @darssen (1), @kraftbj (1), @engahmeds3ed (1), @barry-hughes (1), @schlessera (1), @aaronrobertshaw (1), @mmaattiiaass (1), @ramonopoly (1), @gaambo (1), @andrewserong (1), @flixos90 (1), @xknown (1), @tykoted (1), @afragen (1), @hellofromtonya (1), @ocean90 (1), @amieiro (1), @Dharm1025 (1), @Ankit-K-Gupta (1), @tanjimtc71 (1), @timothyblynjacobs (1), @spacedmonkey (1), @jrf (1), and @antonvlasenko (1).
Congrats and welcome to our 25 (!!) new contributors of the week: @audunmb, @cdevroe, @endymion00, @feastdesignco, @halounsbury, @kevincoleman, @koesper, @maartenbelmans, @mathewemoore, @melcarthus, @nerdpressteam, @olegfuture, @room34, @sayful, @svitlana41319, @vikram6, @welaunchio, @navjotjsingh, @gregbenz, @nickpagz, @chrisdavidmiles, @codepo8, @nosilver4u, @darssen, @barry-hughes ♥️
Core committers: @swissspidy (18), @youknowriad (11), @sergeybiryukov (7), @gziolo (7), @desrosj (6), @dmsnell (6), @peterwilsoncc (2), @adamsilverstein (2), @isabel_brison (2), @jorbin (2), @afercia (1), @joedolson (1), and @jorgefilipecosta (1).
#6-5, #core, #week-in-core