Ability to install fonts via…

Ability to install fonts via GutenbergGutenberg 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/ to wp-content/fonts for WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. sites.

Users are unable to install Google Fonts via the Gutenberg Site Editor due to permission errors related to the wp-content/fonts folder.

When a user tries to install a font, a rest apiREST 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/. call is made to a rest controller and checks permissions before installing the font. However wp_is_writable( $upload_dir ) is returning false.

What did we try so far:
The folder originally didn’t exist so we created the folder wp-content/fonts and deployedDeploy Launching code from a local development environment to the production web server, so that it's available to visitors. it to production (commit). However, we are still getting the same permissions error.

I’ve tried debugging permissions via my sandbox but I’m not sure that’s relevant:

Permissions of/home/wordcamp/public_html/wp-content/fonts: 40755 
Current User: wporgdev
Owner of /home/wordcamp/public_html/wp-content/fonts is: wporgdev

Can I get some help debugging this? I’m not quite sure what next to try.


Install Node.js 20.x on the build server

Could Node.js 20.x be installed on the build server? At the time of publishing this, the latest version is 20.10.0 paired with npm version 10.2.3.

18.x is now in Maintenance LTS (installed following this request). 20.x is now Active LTS until October 2024 when it will enter Maintenance LTS until April of 2026. While remaining on 18.x is fine, updating to the latest of 20.x is preferable because this will allow both CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and GutenbergGutenberg 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/ to use the latest version of Node.js, as well as completely skipping 18.x and eliminating the need for 16.x.

The current breakdown for WordPress versions to Node.js is as follows:

  • WP/Gutenberg trunk: Node.js 16.x with plans to upgrade to 18.x during the 6.5 cycle.
  • WP 6.4: Node.js 16.x.
  • WP <= 6.3: Node.js 14.x.

If 20.x is made available, WP trunk and the 6.4 branch can be upgraded to both use Node.js 20.x, essentially eliminating the need for both 16.x and 18.x on the build server from the perspective of Core and Gutenberg. I’ve confirmed that there are no changes to the built files after updating to 20.x as seen in the linked PR. Older branches of Core (6.3 and earlier) will remain on Node.js 14.x.


Sandbox request for learn.wordpress.org testing

I would like to request a Dotorg sandbox in order to test bug fixes and enhancements for learn.wordpress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/.

At the moment members of the WordPress training team do have a way to configure a local development environment for testing bug fixes and enhancements, but it doesn’t allow us to easily test those against as close to a copy of the live environment as possible.

This means we have to rely on someone who already has a sandbox to do a final test before we can merge any changes.

To achieve this, I’d like to request a sandbox that does not have svn commit access, meaning I would not be able to commit changes or trigger a deployment, but has write access to the files and folders relevant to learn.wordpress.org so that I could test code changes submitted as PRs on our GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ repository.

The relevant files and folders are:

  • wp-content/mu-plugins/pub/locale-switcher.php
  • wp-content/mu-plugins/pub/class-validator.php
  • wp-content/mu-plugins/pub/locales.php
  • wp-content/plugins/sensei-pro
  • wp-content/plugins/wporg-learn
  • wp-content/themes/pub/wporg-learn-2020

A sandbox with this configuration will allow us to perform this final test within the training team, without needing to rely on folks from other teams. DeployingDeploy Launching code from a local development environment to the production web server, so that it's available to visitors. the changes would still require an additional check from a member of the MetaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. team who does have svn commit access. 

Please let me know if you have any questions about this request, or if you need anything from me.


Support svn `@revnum` URLs?

URLs similar to `https://develop.svn.wordpress.org/trunk@56994` have been used for a long time in auto-generated commit and merge messages (example).

I understand that URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org structure is used internally by SubversionSVN Apache Subversion (often abbreviated SVN, after its command name svn) is a software versioning and revision control system. Software developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation. Its goal is to be a mostly compatible successor to the widely used Concurrent Versions System (CVS). WordPress core and the wordpress.org released code are all centrally managed through SVN. https://subversion.apache.org/. and perhaps some other tools; but the URLs don’t work in a browser or other httpHTTP 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. client:

% curl -I 'https://develop.svn.wordpress.org/trunk@56994'
HTTP/2 404 
server: nginx
date: Mon, 20 Nov 2023 01:03:04 GMT
content-type: text/html; charset=iso-8859-1
vary: Accept-Encoding

Is it possible for nginxNGINX NGINX is open source software for web serving, reverse proxying, caching, load balancing, media streaming, and more. It started out as a web server designed for maximum performance and stability. In addition to its HTTP server capabilities, NGINX can also function as a proxy server for email (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, TCP, and UDP servers. https://www.nginx.com/. to handle those URLs so they actually work, without interfering with Subversion or other tools?

One option might be to 302 redirect from https://develop.svn.wordpress.org/trunk@56994 to https://develop.svn.wordpress.org/trunk/?p=56994 (that second form appears to work as expected).

I suggested using a different format when generating commit messages, but this won’t deal with historical logs, emails, etc.

Detailed discussion here: https://wordpress.slack.com/archives/C02QB8GMM/p1698160954813579


wp-cli.org email addresses

For over a decade, info@wp-cli.org has lived as a forward in Andeas‘ Google Workspace account.

@schlessera, @swissspidy, and I would like to set up two new WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/ https://make.wordpress.org/cli/ email addresses that forward to the three of us.

Can we:

  1. Change wp-cli.org MX records to whatever system y’all use for email.
  2. Set up info@wp-cli.org, maintainers@wp-cli.org, and releases@wp-cli.org to forward to alain.schlesser@gmail.com, daniel@bachhuber.co, and pascal.birchler@gmail.com.

Thanks in advance!

#prio2 #email #wpcli