<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>MyBB Blog</title>
	<atom:link href="https://blog.mybb.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.mybb.com</link>
	<description></description>
	<lastBuildDate>Mon, 22 Dec 2025 17:47:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>

<image>
	<url>https://blog.mybb.com/wp-content/uploads/2018/10/logo-white-on-blue.png?w=32</url>
	<title>MyBB Blog</title>
	<link>https://blog.mybb.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">36724248</site><cloud domain='blog.mybb.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<atom:link rel="search" type="application/opensearchdescription+xml" href="https://blog.mybb.com/osd.xml" title="MyBB Blog" />
	<atom:link rel='hub' href='https://blog.mybb.com/?pushpress=hub'/>
	<item>
		<title>Warm up to MyBB 1.9</title>
		<link>https://blog.mybb.com/2025/12/22/warm-up-to-mybb-1-9/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Mon, 22 Dec 2025 17:47:14 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Resources]]></category>
		<category><![CDATA[Updates]]></category>
		<category><![CDATA[1.9]]></category>
		<category><![CDATA[extend]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3925</guid>

					<description><![CDATA[Yearly wrap-ups, parcels, garlands&#8230; the summer is here, mate. If you found yourself on a chilly night (or hemisphere), read on to warm up as we take a look at another MyBB 1.9 milestone. &#160; Fresh Out the Oven Recent code on the development branch included the topping up of the new theme logic — [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><img src="https://blog.mybb.com/wp-content/uploads/2025/12/mybb-fireplace404x.png" alt="Line drawing of a fireplace behind a laptop projecting code imitating fire, and a fragment of the MyBB.com website" /></p>
<p>Yearly wrap-ups, parcels, garlands&#8230; the summer is here, <a href="https://community.mybb.com/thread-167092.html">mate</a>. If you found yourself on a chilly night (or hemisphere), read on to warm up as we take a look at another <strong>MyBB 1.9 milestone</strong>.</p>
<p>&nbsp;</p>
<h2>Fresh Out the Oven</h2>
<p>Recent code on the development branch included the topping up of the new <strong>theme logic</strong> — with its Admin CP interface and front-end switches.</p>
<p>The majority of work on MyBB 1.9 focuses on how the file-based extension packages work, interact, and tie into the rest of the application. While managing themes, you&#8217;ll now find that every theme will be linked to a package found in the filesystem.</p>
<p><img src="https://blog.mybb.com/wp-content/uploads/2025/12/acp-themes-frame.png" alt="Screenshot of the Admin CP Themes page, listing a Built-in Package with 3 themes, and Imported Packages" /></p>
<p>The individual, database-tied <em>Themes</em> will be the place to customize options defined by package authors.</p>
<p>You&#8217;ll still recognize most of the Admin CP styling section, as templates and stylesheets in the legacy format — inserted by plugins — will continue to be supported in the new series to ease the transition, while extensions are modernized.</p>
<p>Even though many authors prefer working in their favorite IDE, we want to bring a similar experience of creating and editing file packages to the Admin CP. We&#8217;re preparing to introduce an interface for <em>Packages</em>, where developers will find package-level tools — to prepare their themes and plugins for release — as well as a web editor for individual resources.</p>
<p>&nbsp;<br />
&nbsp;</p>
<p>Another natural stepping stone up to MyBB 1.9 relates to how we all get there: the <strong>upgrade process</strong>.</p>
<p><img style="margin-left: 20px" src="https://blog.mybb.com/wp-content/uploads/2025/12/1.9-upgrade-cut-frame.png" alt="Partial screenshot of the MyBB 1.9 upgrade script" width="50%" align="right" />Using the <a href="https://blog.mybb.com/2023/03/07/designing-mybb-1-9s-installer-2/">new installer</a> — with a CLI and a web UI that causes less mouse button wear — the upgrade has caught up with the rest of the application. The necessary adjustments for the theme system, new features, and internals are now checked and applied to carry over existing forums to MyBB 1.9 (<em>and it worked on the first try, too</em>).</p>
<p>This means you can <a href="https://community.mybb.com/thread-241225.html">grab the latest version</a> and follow the familiar, improved procedure to upgrade a test copy of your MyBB 1.8-based forum. How does the 1.9 series suit it so far?</p>
<p>&nbsp;</p>
<p>Between the headline changes, there are a number of miscellaneous improvements.</p>
<p>Moderators will see their toolset expanded with the ability suspend <a href="https://github.com/mybb/mybb/pull/5198">avatars</a> and <a href="https://github.com/mybb/mybb/issues/5134">private messages</a>. When handing out warnings, they can also require them to be <a href="https://github.com/mybb/mybb/pull/5200">acknowledged</a>.</p>
<p>Users will enjoy the smooth curves of built-in smilies <a href="https://community.mybb.com/thread-243754.html">remastered</a> in vector format (<em>if you prefer to <img src="https://blog.mybb.com/wp-content/uploads/2025/12/rolleyes.png" alt="rolleyes.png" style="vertical-align:middle"> with the force of all pixels, your old files will still be there</em>). The general visual experience has also been brushed up around the deprecated post subjects, thread ratings, and a toggle to hide post icons globally.</p>
<p>And, to tell who&#8217;s who in the first place, a <a href="https://github.com/mybb/mybb/pull/4944">group legend</a> for your forum community&#8217;s hierarchical needs.</p>
<p>&nbsp;</p>
<p>A new theme and UI handling mean that we&#8217;ll continue applying visual, performance, and internal tweaks to the engine. An overview of source code languages — now including Twig and SCSS — helps convey the extent of changes to MyBB&#8217;s GUI (even larger when factoring in PHP controller code and theme logic). Code in those languages will be in focus, as we balance the cool hues of MyBB&#8217;s new default <em>Base Theme</em>.</p>
<p><a href="https://github.com/mybb/mybb"><img src="https://blog.mybb.com/wp-content/uploads/2025/12/mybb-github-linguist-breakdown.png" alt="Graph showing distribution of source code languages, including 81% PHP, 13.5% Twig, 2.6% JavaScript, 1.6% SCSS, 1.1% CSS, 0.2% HTML" /></a></p>
<p>As always, you&#8217;ll find the stream of changes in <a href="https://github.com/mybb/mybb/pulls?q=is%3Apr">our repository</a>.</p>
<p>&nbsp;</p>
<h2>Hot Reload</h2>
<p>How do you keep an eye on the new branch? Most of our Community members prefer the simple <a href="https://community.mybb.com/thread-241225.html">build package</a>, updated seconds after any change is committed to the repository. In our quest to improve quality of life, and to bridge users with code progress, we&#8217;ve made it easier to tell whether your local installation could use a refresh — to see the latest layer of tweaks.</p>
<p><img style="margin-right: 20px;margin-bottom: 10px" src="https://blog.mybb.com/wp-content/uploads/2025/12/mybb-version-latest-commit-frame.png" alt="Partial screenshot of the Admin CP Dashboard, showing the MyBB version 1.9.0-alpha, commit hash, and latest commit hash below" width="60%" align="right" />Now, when using:</p>
<ul>
<li>the automated package,</li>
<li>a <code>.zip</code> from GitHub, or</li>
<li>simply <code>git clone</code>,</li>
</ul>
<p>MyBB will show you the exact <a href="https://github.com/mybb/mybb/commits/dev-1.9/">commit</a> for the preview version you&#8217;re running — displayed on the Admin CP <em>Dashboard</em>.</p>
<p>Additionally, if further commits are made to the official development version — checked together with regular updates — the top commit will be shown below.</p>
<p>Take a glance at the <em>Home</em> page to see if any new changes made their way up since your download, to ensure <em>that bug</em> is still reproducible, or to simply live on the edge of <code>dev-1.9</code>.</p>
<p><em>We recommend pairing this with the <a href="https://blog.mybb.com/2023/03/07/designing-mybb-1-9s-installer-2/#:~:text=The%20processes%20support,suitable%20for%20development."><code>&amp;fast</code> parameter</a> during (re)installation. Which one of your setups has MyBB installing itself the fastest?</em></p>
<p>This shift in approach keeps code contributors in a closer loop, compared to individually tagged test releases along the development timeline.</p>
<p>&nbsp;</p>
<p>To stay in the loop, the relevant discussions for the series — and later, its maintenance — can now be found in its own <a href="https://community.mybb.com/forum-198.html">MyBB 1.9 Development</a> category on our Forums. Additionally, the <em>1.9 Bugs and Issues</em> forum has been opened to catch reports that don&#8217;t appear directly on GitHub.</p>
<p>&nbsp;</p>
<h2>Cooking Resources</h2>
<p><em>What does this button do?</em></p>
<p>Ensuring everybody can confidently use the software comes in many forms.</p>
<p>As users, we don&#8217;t usually thumb through manuals — in part, because it&#8217;s baked into the UI as descriptions, hints, or visual cues. More extensive usage, however, gives rise to many non-trivial questions. As developers, we can parse the code, but the question becomes where to start. Those questions need to be answered somewhere, and providing the answers — often preemptively — is a large chunk of activities in a software project.</p>
<p>&nbsp;</p>
<p>Shortly after progress moves on from chats and first drafts, it bubbles up the information ladder, starting on the technical level. To help developers find their way in 1.9, we now attach high-level <strong>architectural summaries</strong> of code regions, starting with <a href="https://github.com/mybb/mybb/blob/dev-1.9/inc/src/View/ARCHITECTURE.md">one for <code>MyBB\View</code></a>.</p>
<p>This authoritative information hierarchy then continues with content published more widely and with fewer technicalities.</p>
<p>Every now and then, we like to take people through <strong>preview workshops</strong> in the <a href="https://community.mybb.com/forum-161.html">Development forums</a> to demonstrate features still cooling off, and to gather feedback — while leaving options to make further adjustments.</p>
<p>&nbsp;</p>
<p>Next? If <em>code is poetry</em>, documentation is its close reading; tutorials teach the craft; and Blog posts are authors&#8217; notes. As the code for MyBB 1.9 begins to rhyme, it can be used to derive all the above.</p>
<p>Our <strong>Docs</strong> explain how the app works in living documents, maintained long-term, on par with stable code. Above articles <a href="https://docs.mybb.com/1.9/development/directory-structure/">updated</a> for any new MyBB series, you&#8217;ll now find a switch to access content for the given branch.</p>
<p>We expect several key content related to MyBB 1.9&#8217;s new functionality, including the specification of new data formats. The go-to reference will include articles for:</p>
<ul>
<li><strong>Resource files</strong> and metadata — the new system&#8217;s building blocks,</li>
<li><strong>Templates</strong> — on using Twig, useful theme functions, and variables,</li>
<li><strong>Assets</strong> — explaining the definition files, API functions, and pipeline,</li>
<li><strong>Theme packages</strong> — on theme types, inheritance, and features, and</li>
<li><strong>Plugin interfaces</strong> — on handling templates and styles, the new way.</li>
</ul>
<p>&nbsp;</p>
<p>While the changes and new features are great to look at for users, people building their forums, extensions, and contributing to the core, will feel more comfortable with a few cheatsheets. This is why, close to feature completion, we&#8217;ll begin a practical comparison and commentary relevant for each of those audiences hosted here, on the Blog.</p>
<p>The <strong>Blog tour</strong>, leading up to a stable release, will recap <strong>new features</strong> — big and small; what the new <strong>theme system</strong> is all about; how to update <strong>extensions</strong> so they stay compatible; practical tips for <strong>administrators</strong> upgrading their forums; and all notable <strong>internal changes</strong> for code contributors.</p>
<p>&nbsp;</p>
<p>From chats to stable software, code is best accompanied by <em>prose</em> appropriate for each stage.</p>
<p>&nbsp;</p>
<h2>Warm Community</h2>
<p>The extension ecosystem is part of MyBB&#8217;s identity.</p>
<p>One of the <em>preview guides</em> is the recently published <a href="https://community.mybb.com/thread-244673.html">introduction to UI plugins on MyBB 1.9.x</a>, which shows the new, soon-to-be-canonical techniques to use when your plugin touches the user interface.</p>
<p>Even though the new methods implicitly make plugin code cleaner, the transition will be smoothed out by a set of <strong>compatibility features</strong>.</p>
<p>While 1.9 themes don&#8217;t use the legacy format, such templates and stylesheets will continue to be available for use by plugins — and attached to pages by MyBB. The plugin engine will <a href="https://github.com/mybb/mybb/issues/4863">collect</a> legacy template variables, so they can be repurposed in 1.9 themes without modifying plugin code. The core will also <a href="https://github.com/mybb/mybb/issues/5137">assist</a> legacy plugins with the rendering of full pages, when they don&#8217;t yet use the new HTML layout.</p>
<p>When your extensions are ready, you&#8217;ll be able to upload them to the <a href="https://community.mybb.com/mods.php">Extend platform</a>, and mark your new and existing projects as compatible with <em>1.9.x</em>.</p>
<p>In addition to the <a href="https://community.mybb.com/forum-201.html">Extensions</a> category on the Forums, you can discuss those and other aspects of developing extensions in the unified <a href="https://mybb.com/get-involved/discord/">chat</a> channel <code>#extend</code>.</p>
<p>&nbsp;</p>
<p>Before we wrap the post (<em>and some presents</em>), we&#8217;d like to look at the past and to the future, as this month marks two decades since MyBB began shaping internet communities — with its first stable version <a href="https://community.mybb.com/thread-5184.html">announced</a> twenty years ago. Here&#8217;s to 20 more. We start with 1.9.</p>
<p>&nbsp;</p>
<p>Thanks,<br />
The MyBB Team</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3925</post-id>
		<media:thumbnail url="https://blog.mybb.com/wp-content/uploads/2025/12/mybb-fireplace404x.png" />
		<media:content url="https://blog.mybb.com/wp-content/uploads/2025/12/mybb-fireplace404x.png" medium="image">
			<media:title type="html">mybb-fireplace@4x</media:title>
		</media:content>

		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2025/12/acp-themes-frame.png" medium="image">
			<media:title type="html">Screenshot of the Admin CP Themes page, listing a Built-in Package with 3 themes, and Imported Packages</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2025/12/1.9-upgrade-cut-frame.png" medium="image">
			<media:title type="html">Partial screenshot of the MyBB 1.9 upgrade script</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2025/12/rolleyes.png" medium="image">
			<media:title type="html">rolleyes.png</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2025/12/mybb-github-linguist-breakdown.png" medium="image">
			<media:title type="html">Graph showing distribution of source code languages, including 81% PHP, 13.5% Twig, 2.6% JavaScript, 1.6% SCSS, 1.1% CSS, 0.2% HTML</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2025/12/mybb-version-latest-commit-frame.png" medium="image">
			<media:title type="html">Partial screenshot of the Admin CP Dashboard, showing the MyBB version 1.9.0-alpha, commit hash, and latest commit hash below</media:title>
		</media:content>
	</item>
		<item>
		<title>MyBB 1.8.39 Released — Security &#038; Maintenance Release</title>
		<link>https://blog.mybb.com/2025/06/02/mybb-1-8-39-released-security-maintenance-release/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Mon, 02 Jun 2025 15:18:25 +0000</pubDate>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Updates]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3912</guid>

					<description><![CDATA[MyBB 1.8.39 is now available, and is a security &#38; maintenance release. 2 security vulnerabilities addressed: Medium risk: Upgrade local file inclusion (advisory) &#8212; reported by Cillian Collins Low risk: Unviewable threads title disclosure in search (advisory) &#8212; reported by Huseyn (Khatai) Gadashov (Exploit Azerbaijan) 37 issues resolved Check the Release Notes for more information. [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>MyBB 1.8.39 is now available, and is a security &amp; maintenance release.</p>
<ul>
<li>
        <strong>2 security vulnerabilities addressed:</strong></p>
<ul>
<li>Medium risk: Upgrade local file inclusion (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-q4jv-xwjx-37cp">advisory</a>) &mdash; reported by Cillian Collins</li>
<li>Low risk: Unviewable threads title disclosure in search (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-f847-57xc-ffwr">advisory</a>) &mdash; reported by Huseyn (Khatai) Gadashov (Exploit Azerbaijan)</li>
</ul>
</li>
<li>
        <a href="https://github.com/mybb/mybb/issues?q=is%3Aclosed%20label%3As%3Aresolved%20-label%3Adev-branch%20milestone%3A1.8.39"><strong>37 issues resolved</strong></a>
    </li>
</ul>
<p>
Check the <a href="https://mybb.com/versions/1.8.39/"><strong>Release Notes</strong></a> for more information.</p>
<p><a href="https://mybb.com/download"><strong>Get latest MyBB Full &amp; Upgrade Packages &rarr;</strong></a></p>
<p>The MyBB Project extends thanks to reporters and researchers following responsible disclosure.<br />
Go to <a href="https://mybb.com/get-involved/security/">mybb.com/security</a> to report possible security concerns or to learn more about security research at MyBB.<br />
If you would like to contribute to the Project, <a href="https://mybb.com/get-involved/">Get Involved</a>.</p>
<p>Thanks,<br />
MyBB Team</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3912</post-id>
		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>
	</item>
		<item>
		<title>Exponential Project Update</title>
		<link>https://blog.mybb.com/2024/07/03/exponential-project-update/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Wed, 03 Jul 2024 18:56:30 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Team]]></category>
		<category><![CDATA[Updates]]></category>
		<category><![CDATA[1.9]]></category>
		<category><![CDATA[extend]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[MyBB]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3900</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-jetpack-markdown"><p><img src="https://blog.mybb.com/wp-content/uploads/2024/07/mybb-exponential404x.png" alt="mybb-exponential@4x"></p>
<p>MyBB’s ecosystem spans across several platforms connecting contributors, authors, and users. In this post, we’ll collect a number of recent highlights from around the Project.</p>
<h2>10³ Stars on GitHub</h2>
<p>Software is often divided into <a href="https://en.wikipedia.org/wiki/The_Cathedral_and_the_Bazaar">closed- and open-style development</a>.</p>
<p>Back in <a href="//blog.mybb.com/2009/08/19/getting-involved-development-site-opens/)">2009</a>, MyBB switched from the former to the latter, enabling administrators and developers, who tweak their forums in the most random ways, to submit and see their fixes in official releases. The move also opened up the development process and allowed a crowd of enthusiasts to critique any upcoming changes and test them on their own servers, and with custom plugins.</p>
<p>Since then, code from 100+ contributors has made its way into MyBB, and earlier this year, the Project’s <a href="https://github.com/mybb/mybb">main repository</a> passed the symbolic threshold of <strong>1K stars</strong> from members of the open source community.</p>
<p>If you have patches of your own, or would like to otherwise make MyBB a better forum software, explore some of the options in the <a href="https://github.com/mybb/mybb/blob/feature/.github/CONTRIBUTING.md"><code>CONTRIBUTING.md</code></a> file.</p>
<h2>10² Stars for Top Extensions</h2>
<p>If you’ve been using MyBB, you’ll know that the core package is only a part of its identity: extensions have an important place in the ecosystem that’s been maturing for two decades.</p>
<p>Today, the <a href="https://community.mybb.com/mods.php">Extend platform</a> hosts over 1300 projects that have published more than five thousand releases downloaded well over two million times, and a pair of extensions have already crossed the <strong>100-star mark</strong> — taking a portion of over 6.5 thousand stars given in total.</p>
<p>Starring projects allows you to find them in a <a href="https://community.mybb.com/mods.php?action=panel&amp;panelaction=stars">single place</a> when you’re ready to start your new forum, and subscribing to them (which was done more than a thousand times) will notify you of new releases to check out.</p>
<p>As we work to define MyBB as lightweight software with modern features,
we aim to further strengthen extensions as a pillar of the application by <a href="https://github.com/orgs/mybb/projects/3/views/3">building</a> authoring aids and APIs into the core to make the experience easier and more pleasant for everyone involved.</p>
<h2>10¹ Development News</h2>
<p>In recent months, numerous key elements of the upcoming series have taken shape. Read ten notes about the View system, extending MyBB, merged features, requirements, and upcoming works in the <a href="https://community.mybb.com/thread-241255.html"><strong>1.9 Development Milestone</strong></a> thread.</p>
<p>We have also published a <a href="https://community.mybb.com/thread-241225.html">Quick Start</a> cheatsheet, allowing you to set up the development branch and preview it right away using your favorite workflow.</p>
<p>If you’re ready for some tinkering and a deeper dive, read <a href="https://community.mybb.com/thread-241300.html">Experimenting with Inheritance Basics</a>, where we make use of the new theming system and track how the application handles it so far.</p>
<h2>10⁰ Familiar-looking Theme</h2>
<p>When patrolling the Extend section, we noticed one submission was particularly reminiscent, but we couldn’t put our finger on it. A careful investigation that included, among other methods, reading its documentation revealed that it’s MyBB 1.9’s official theme — for MyBB 1.8.</p>
<p>The <a href="https://community.mybb.com/mods.php?action=view&amp;pid=1594">Curves UI</a> takes the upcoming series’ look and backports it visually into the current stable version. It is also maintained on GitHub, where you can work with authors to improve it further.</p>
<p>It joins many responsive <a href="https://community.mybb.com/mods.php?action=browse&amp;category=themes">Community-maintained themes</a>, so it’s another good starting point for customization, and if you’re looking to prepare your forum for the style transition into 1.9.x, you can now use its latest build to make the eventual switch extra smooth.</p>
<h2>The Base</h2>
<p>With the Community-driven environment giving the Project its <em>power</em>, the <em>base</em> of organizing work and tying up all loose ends is done by the MyBB Team.</p>
<p>To ensure this exponentiation yields the best product, we’ve recently brushed up and published the <a href="https://mybb.com/about/team/roles/">list of Roles</a>, including ten non<a href="https://mermaid.ink/img/pako:eNqVlE2P2jAQhv-K5YruBaoE6HaVQ6XCUqmHVbeA2kPTwxAP4DaxU9tZESH--8Y2AZMVK60vieZ9Zub1555mkiFNaK-354KbhOxTQZpxY7ZY4E1CUroCjSnt-3hK_1fAFAgz3YIyKT1leLWUXJgl7swjMMbFxgKD-K4fMm0Fiy1lGZCfPvZfFJsD45W26shrh5MV5_EnKA6rHPVLL4oXoGrbZipzqSyQ0ndRFJ2mcwFOpGKoQhQAOmjrPf7K8_xIrddRtF7H8RV0GKBN79fQ0QVq615Fxx0Dr6CxXYEAv3NjPL7m92346G34-Cp-3N1UHA69Xiouz5nTDDc5kod6MiFLhILMpd124cXdAHZck0clM9SaDAaf7T-rMqM9UHtgqhAMl8IRC1RPPMO2RttzEJNZJnWtDRYdZUi-CYNKQE6-l6hcKd1hRrbzX8wMeQABm-aQCtNBxmSOGkFlW_Ke3OMT5rL0mAfPiQn5HX0YNTeDuM8fr__ClROGLn47bOMzxo1sLkTu1I4Y9HGyLxrImm-EU26Hl9ICs0pxU4diUFWW-tzvbHLx40vQ5xStylKq0MEpYbYzKLRd0bDReQJTWRSVaH20ubRPC1QFcNY8ZO4FOD4N_ogxUP_s6To0HFRGLmqR0cSoCvu0KhkYvOewUVDQZA25xsMzLOh9uw?type=png">&#8211;</a>management focus areas within the Team. Those now include separate teams for testing and developer relations, in adjustment according to the direction we’d like to take.</p>
<p>While those spots are often filled through invitation, if some of the listed activities pique your interest, <a href="https://community.mybb.com/newthread.php?fid=135&amp;threadprefix=45">tell us about it</a> (the worst you’ll get is a friendly nudge in the right direction on how to make a positive impact!).</p>
<p><br>
<br>
<em>If you’d like to keep up to date with various news related to MyBB development and the Project behind it on the fediverse, use our verified handle <a href="https://fosstodon.org/@mybb"><code>@mybb@fosstodon.org</code></a>.</em></p>
</div>



<p></p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3900</post-id>
		<media:thumbnail url="https://blog.mybb.com/wp-content/uploads/2024/07/mybb-exponential404x.png" />
		<media:content url="https://blog.mybb.com/wp-content/uploads/2024/07/mybb-exponential404x.png" medium="image">
			<media:title type="html">mybb-exponential@4x</media:title>
		</media:content>

		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>
	</item>
		<item>
		<title>MyBB 1.8.38 Released — Security &#038; Maintenance Release</title>
		<link>https://blog.mybb.com/2024/04/30/mybb-1-8-38-released-security-maintenance-release/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Tue, 30 Apr 2024 16:04:46 +0000</pubDate>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Updates]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3897</guid>

					<description><![CDATA[MyBB 1.8.38 is now available, and is a security &#38; maintenance release. Administrators of installed boards should update the existing configuration (inc/config.php) to include all addresses blocked by default in Disallowed Remote Addresses. 2 security vulnerabilities addressed: Low risk: Incomplete disallowed remote addresses list SSRF (advisory) &#8212; reported by shin24 Low risk: Backups directory .htaccess [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>MyBB 1.8.38 is now available, and is a security &amp; maintenance release.</p>
<p>Administrators of installed boards should update the existing configuration (<code>inc/config.php</code>) to include all <a href="https://github.com/mybb/mybb/security/advisories/GHSA-qfrj-65mv-h75h">addresses blocked by default</a> in <em>Disallowed Remote Addresses</em>.</p>
<ul>
<li>
        <strong>2 security vulnerabilities addressed:</strong></p>
<ul>
<li>Low risk: Incomplete disallowed remote addresses list SSRF (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-qfrj-65mv-h75h">advisory</a>) &mdash; reported by shin24</li>
<li>Low risk: Backups directory .htaccess deletion (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-94xr-g4ww-j47r">advisory</a>) &mdash; reported by shin24</li>
</ul>
</li>
<li>
        <a href="https://github.com/mybb/mybb/issues?q=is%3Aissue+is%3Aclosed+label%3As%3Aresolved+-label%3Adev-branch+milestone%3A1.8.38"><strong>16 issues resolved</strong></a>
    </li>
</ul>
<p>
Check the <a href="https://mybb.com/versions/1.8.38/"><strong>Release Notes</strong></a> for more information.</p>
<p><a href="https://mybb.com/download"><strong>Get latest MyBB Full &amp; Upgrade Packages &rarr;</strong></a></p>
<p>The MyBB Project extends thanks to reporters and researchers following responsible disclosure.<br />
Go to <a href="https://mybb.com/get-involved/security/">mybb.com/security</a> to report possible security concerns or to learn more about security research at MyBB.<br />
If you would like to contribute to the Project, <a href="https://mybb.com/get-involved/">Get Involved</a>.</p>
<p>Thanks,<br />
MyBB Team</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3897</post-id>
		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>
	</item>
		<item>
		<title>MyBB 1.8.37 Released — Security &#038; Maintenance Release</title>
		<link>https://blog.mybb.com/2023/11/04/mybb-1-8-37-released-security-maintenance-release/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Sat, 04 Nov 2023 17:28:30 +0000</pubDate>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Updates]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3887</guid>

					<description><![CDATA[MyBB 1.8.37 is now available, and is a security &#38; maintenance release. This version includes improvements for compatibility with mailing configurations and recent PHP versions. 2 security vulnerabilities addressed: Medium risk: Visual editor size code persistent XSS (advisory) &#8212; reported by Paulos Yibelo (Octagon Networks) Low risk: ACP Themes persistent XSS (advisory) &#8212; reported by [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>MyBB 1.8.37 is now available, and is a security &amp; maintenance release.</p>
<p>This version includes improvements for compatibility with mailing configurations and recent PHP versions.</p>
<ul>
<li>
        <strong>2 security vulnerabilities addressed:</strong></p>
<ul>
<li>Medium risk: Visual editor size code persistent XSS (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-wj33-q7vj-9fr8">advisory</a>) &mdash; reported by Paulos Yibelo (Octagon Networks)</li>
<li>Low risk: ACP Themes persistent XSS (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-4xqm-3cm2-5xgf">advisory</a>) &mdash; reported by Or4nG.M4n</li>
</ul>
</li>
<li>
        <a href="https://github.com/mybb/mybb/issues?q=is%3Aissue+is%3Aclosed+label%3As%3Aresolved+-label%3Adev-branch+milestone%3A1.8.37"><strong>12 issues resolved</strong></a>
    </li>
</ul>
<p>
Check the <a href="https://mybb.com/versions/1.8.37/"><strong>Release Notes</strong></a> for more information.</p>
<p><a href="https://mybb.com/download"><strong>Get latest MyBB Full &amp; Upgrade Packages &rarr;</strong></a></p>
<p>The MyBB Project extends thanks to reporters and researchers following responsible disclosure.<br />
Go to <a href="https://mybb.com/get-involved/security/">mybb.com/security</a> to report possible security concerns or to learn more about security research at MyBB.<br />
If you would like to contribute to the Project, <a href="https://mybb.com/get-involved/">Get Involved</a>.</p>
<p>Thanks,<br />
MyBB Team</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3887</post-id>
		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>
	</item>
		<item>
		<title>MyBB 1.8.36 Released — Security Release</title>
		<link>https://blog.mybb.com/2023/08/28/mybb-1-8-36-released-security-release/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Mon, 28 Aug 2023 17:20:52 +0000</pubDate>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Updates]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3878</guid>

					<description><![CDATA[MyBB 1.8.36 is now available, and is a security release. After applying the patch, we recommend using the Admin CP&#8217;s Tools &#38; Maintenance → System Health → Check Templates tool to scan for security issues that may not have been detected before this version. 1 security vulnerability addressed: High risk: ACP Templates RCE (advisory) &#8212; [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>MyBB 1.8.36 is now available, and is a security release.</p>
<p>After applying the patch, we recommend using the Admin CP&#8217;s <i>Tools &amp; Maintenance → System Health → Check Templates</i> tool to scan for security issues that may not have been detected before this version.</p>
<ul>
<li>
        <strong>1 security vulnerability addressed:</strong></p>
<ul>
<li>High risk: ACP Templates RCE (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-pr74-wvp3-q6f5">advisory</a>) &mdash; reported by <a href="https://sorcery.ie">Emmet Leahy</a></li>
</ul>
</li>
</ul>
<p>
Check the <a href="https://mybb.com/versions/1.8.36/"><strong>Release Notes</strong></a> for more information.</p>
<p><a href="https://mybb.com/download"><strong>Get latest MyBB Full &amp; Upgrade Packages &rarr;</strong></a></p>
<p>The MyBB Project extends thanks to reporters and researchers following responsible disclosure.<br />
Go to <a href="https://mybb.com/get-involved/security/">mybb.com/security</a> to report possible security concerns or to learn more about security research at MyBB.<br />
If you would like to contribute to the Project, <a href="https://mybb.com/get-involved/">Get Involved</a>.</p>
<p>Thanks,<br />
MyBB Team</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3878</post-id>
		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>
	</item>
		<item>
		<title>MyBB 1.8.35 Released — Maintenance Release</title>
		<link>https://blog.mybb.com/2023/07/17/mybb-1-8-35-released-maintenance-release/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Mon, 17 Jul 2023 17:17:57 +0000</pubDate>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[Updates]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3875</guid>

					<description><![CDATA[MyBB 1.8.35 is now available, and is a maintenance release. This version improves stability and compatibility with various PHP versions. 7 issues resolved Check the Release Notes for more information. Get latest MyBB Full &#38; Upgrade Packages &#8594; Go to mybb.com/security to report possible security concerns or to learn more about security research at MyBB. [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>MyBB 1.8.35 is now available, and is a maintenance release.</p>
<p>This version improves stability and compatibility with various PHP versions.</p>
<ul>
<li>
        <a href="https://github.com/mybb/mybb/issues?q=is%3Aissue+is%3Aclosed+label%3As%3Aresolved+-label%3Adev-branch+milestone%3A1.8.35"><strong>7 issues resolved</strong></a>
    </li>
</ul>
<p>
Check the <a href="https://mybb.com/versions/1.8.35/"><strong>Release Notes</strong></a> for more information.</p>
<p><a href="https://mybb.com/download"><strong>Get latest MyBB Full &amp; Upgrade Packages &rarr;</strong></a></p>
<p>Go to <a href="https://mybb.com/get-involved/security/">mybb.com/security</a> to report possible security concerns or to learn more about security research at MyBB.<br />
If you would like to contribute to the Project, <a href="https://mybb.com/get-involved/">Get Involved</a>.</p>
<p>Thanks,<br />
MyBB Team</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3875</post-id>
		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>
	</item>
		<item>
		<title>MyBB 1.8.34 Released — Security &#038; Maintenance Release</title>
		<link>https://blog.mybb.com/2023/05/21/mybb-1-8-34-released-security-maintenance-release/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Sun, 21 May 2023 17:05:52 +0000</pubDate>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Updates]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3867</guid>

					<description><![CDATA[MyBB 1.8.34 is now available, and is a security &#38; maintenance release. 1 security vulnerability addressed: Low risk: User CP email persistent XSS (advisory) &#8212; reported by Ahmet Altuntaş 13 issues resolved Check the Release Notes for more information. Get latest MyBB Full &#38; Upgrade Packages &#8594; The MyBB Project extends thanks to reporters and [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>MyBB 1.8.34 is now available, and is a security &amp; maintenance release.</p>
<ul>
<li>
        <strong>1 security vulnerability addressed:</strong></p>
<ul>
<li>Low risk: User CP email persistent XSS (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-3q8x-9fh2-v646">advisory</a>) &mdash; reported by Ahmet Altuntaş</li>
</ul>
</li>
<li>
        <a href="https://github.com/mybb/mybb/issues?q=is%3Aissue+is%3Aclosed+label%3As%3Aresolved+-label%3Adev-branch+milestone%3A1.8.34"><strong>13 issues resolved</strong></a>
    </li>
</ul>
<p>
Check the <a href="https://mybb.com/versions/1.8.34/"><strong>Release Notes</strong></a> for more information.</p>
<p><a href="https://mybb.com/download"><strong>Get latest MyBB Full &amp; Upgrade Packages &rarr;</strong></a></p>
<p>The MyBB Project extends thanks to reporters and researchers following responsible disclosure.<br />
Go to <a href="https://mybb.com/get-involved/security/">mybb.com/security</a> to report possible security concerns or to learn more about security research at MyBB.<br />
If you would like to contribute to the Project, <a href="https://mybb.com/get-involved/">Get Involved</a>.</p>
<p>To keep up with Project news, you can now follow <a href="https://fosstodon.org/@mybb">MyBB on Mastodon</a>.</p>
<p>Thanks,<br />
MyBB Team</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3867</post-id>
		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>
	</item>
		<item>
		<title>Designing MyBB 1.9&#8217;s Installer</title>
		<link>https://blog.mybb.com/2023/03/07/designing-mybb-1-9s-installer-2/</link>
		
		<dc:creator><![CDATA[dvz]]></dc:creator>
		<pubDate>Tue, 07 Mar 2023 15:32:54 +0000</pubDate>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[1.9]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3863</guid>

					<description><![CDATA[How the out-of-box experience for developers, webmasters, and administrators was refactored.]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-jetpack-markdown"><p><img src="https://user-images.githubusercontent.com/8020837/218833490-8b837f35-8b0a-484d-906f-1743586b42c0.png" alt=""></p>
<p>One key to keeping software projects and the surrounding communities healthy is keeping <em>friction</em> for all audiences to a minimum.</p>
<p>In MyBB, this friction is derivative of <em>user experience</em> and <em>developer experience</em>. Our largest audience is formed by the end users — people browsing online forums, not expected to know what <em>MyBB</em> is, yet benefitting from fine-tuned visuals, phrases, and flows that come out-of-the-box. At the same time, we target two groups further down the forum assembly line, for whom both UX and DX apply.</p>
<p>For site owners and community leaders, the software needs to be approachable and intuitive — without requiring particular knowledge of languages and technologies — but also allow tweaking its look and functionality by maintainers with technical experience.</p>
<p>For developers, in addition to a useful extension system, APIs, and documentation, the software needs to expose the appropriate tools to allow speedy development and testing — without assuming one&#8217;s familiarity with it.</p>
<p>These factors are crucial in the world of free and open-source software, where the development relies on external contributors and their ease of work.</p>
<p>A <strong>setup mechanism</strong> is where their paths cross: it has to break down unavoidable complexity, without getting in expert users&#8217; way. Besides having to meet best UX and DX practices, it also carries the weight of defining the first impression of the product for everyone.</p>
<h2>The Need for Speed</h2>
<blockquote>
<p><em>kawaii — 2:56 PM</em></p>
<p><em>I wonder how many of the PostgreSQL installs are me with my Docker stack</em></p>
</blockquote>
<p>People who work with, and on MyBB, install it <em>a lot</em>. To comfortably test new code and eliminate bugs in the core and extensions, their setup should require minimal time and attention better spent on the task at hand.</p>
<p>The <a href="https://docs.mybb.com/1.8/install/">existing</a> installation experience left much to be desired — among others, the old installer:</p>
</div>


<div class="wp-block-image">
<figure class="alignleft size-large is-resized"><a href="https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png"><img data-attachment-id="3745" data-permalink="https://blog.mybb.com/mybb-18-install-tables-frame/" data-orig-file="https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png" data-orig-size="945,1414" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="mybb-18-install-tables-frame" data-image-description="" data-image-caption="" data-medium-file="https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png?w=200" data-large-file="https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png?w=640" src="https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png?w=684" alt="A screenshot of the Table Creation page displayed during the installation of MyBB 1.8, with an unnecessarily long list of names of created tables." class="wp-image-3745" width="239" height="357" title="" srcset="https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png?w=239 239w, https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png?w=478 478w, https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png?w=100 100w, https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png?w=200 200w" sizes="(max-width: 239px) 100vw, 239px" /></a></figure>
</div>

<ul>
<li style="list-style-type: none">
<ul>
<li style="list-style-type: none">
<ul>
<li style="list-style-type: none">
<ul>
<li style="list-style-type: none">
<ul>
<li style="list-style-type: none">
<ul>
<li style="list-style-type: none">
<ul>
<li>is strictly synchronous and static, making users alternate between waiting and filling out forms,</li>
<li>asks for information that&#8217;s either nonessential (e.g. a website URL for the optionally displayed link), or derived (e.g. cookie settings that can be deduced from the forum URL),</li>
<li>contains technical details of little to no relevance, which also makes it more difficult to navigate,</li>
<li>loads pages only for the user to press <em>Next</em>, instead of proceeding automatically,</li>
<li>offers no shortcuts for quick setup for testing or development, and</li>
<li>can&#8217;t be scripted or automated.</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>The special part of the application accessed through <code>install/</code> was largely self-contained and separate from the rest, offering a good target for improvements parallel to other work on the 1.9 series.</p>
<p>In this post, we share how the system was disassembled, redesigned, and rebuilt.</p>
<p><span id="more-3863"></span></p>
<h2>Key Changes</h2>
<p><a href="https://github.com/mybb/mybb/pull/4654"><img style="float: right;width: 60%" src="https://blog.mybb.com/wp-content/uploads/2023/02/process-definition-api-usage.png" alt="A snippet of new code for the installation &quot;process&quot; with individual operations defined as function callbacks; and a snippet demonstrating its usage, involving passing the parameters as a PHP array and calling a &quot;run&quot; method, which doesn't produce side effects." /></a></p>
<p>The new implementation was expected not only to address the web GUI problems, but also to introduce a mirror interface for the command line, as well as a PHP API for direct execution.</p>
<p>Rather than tailoring the interfaces to any specific business logic, the GUI and CLI were generally prepared for miscellaneous future usage (i.a. by the <a href="https://mybb.com/download/merge-system/">Merge System</a>, which currently has to carry its own UI).</p>
<p>Correspondingly, the existing activities — installation and upgrade — were rewritten as universal <em>processes</em> with controlled input, output, and better-isolated logic, while the miscellaneous, reusable code was refactored into functions.</p>
<p> </p>
<h4><kbd>Del</kbd></h4>
<p>The best kind of code improvement is its deletion. With MyBB 1.9 switching to file-based themes, the most time-consuming operation of inserting the templates into the database was safely removed. In the same spirit, the <em>GNU GPL</em> license agreement was left out, given that it relates to <em>distribution</em>, rather than <em>usage</em> of software. The installation&#8217;s final page was scrapped, and the summary information was moved to a <em>Welcome to MyBB</em> thread, which additionally serves as dummy content for new users to play with after being redirected there from the installer.</p>
<p>Process operations are executed automatically until user input is needed, without unnecessary confirmation or technical output. For example, the installer skips the full list of <a href="https://docs.mybb.com/1.8/install/requirements/">requirements</a> — available on <em>Download</em> and <em>Docs</em> pages — and only produces relevant details when problems are found.</p>
<p>Input for settings related to HTTP cookies (responsible for the <code>Domain</code> and <code>Path</code> attributes) — effectively derivative of the <em>Board URL</em> — was removed, and the values are determined automatically instead. Similarly, the setting for the <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie"><code>Secure</code></a> flag will now be immediately enabled for HTTPS-based URLs.</p>
<p>The reorganization reduced the number of steps (and displayed screens) to four, grouping all related operations according to the types of data they depend upon (gathered using forms in the browser, or series of prompts in the CLI).</p>
<h4><kbd>Ctrl</kbd> <kbd>V</kbd></h4>
<p>Both processes were supplemented with a mechanism previously exclusive to the Admin Control Panel: checksum verification. Given the potential for various problems to occur during upload, MyBB will run an integrity check of its files during installation and upgrade.</p>
<p>Another feature brought in line with the core was language support: although a <code>.lang.php</code> phrases file was utilized, applying non-English languages required overwriting it, which was a pain point when distributing translations. In 1.9, the file was moved to the <code>inc/languages/</code> structure, meaning that it can be supplied within ordinary language packs. When non-English packs are detected, a selection is displayed, and if just one extra language is present, it becomes the default option. This choice also changes the board&#8217;s <em>Default Language</em>, and that of the new administrator account.</p>
<p>Finally, the version check functionality was replicated in the GUI, allowing webmasters to easily confirm they are about to install, or update to, the application&#8217;s latest available version.</p>
<h4><kbd>Insert</kbd></h4>
<p>To help prevent accidental overwriting of data, signs of an existing instance will result in alternative headings and descriptions, indicating a <em>reinstallation</em>. As forgotten forums may appear broken for numerous reasons (e.g. failed database connection, or missing content), a more precise status is attached to the first step.</p>
<p>Lowering the bar for new forum owners, we made two improvements to the database credentials form — likely to be the most difficult one. First, the process now provides instant feedback for parameters at multiple stages (server connection, authentication, database access, and existence of old tables). Second, while the default database engine selection was already filtered according to enabled PHP extensions, the new process will also perform a number of educated guesses to pre-fill the rest of the form. This behavior may be especially beneficial to testers and developers who use <a href="https://github.com/mybb/mybb/blob/f3e4d92cc4c3c1d83ec72555e932686904bca46a/inc/src/Maintenance/functions_db.php#L125-L197">standardized</a> credential sets.</p>
<h2>User Interfaces</h2>
<h3>Web UI</h3>
<p><img src="https://blog.mybb.com/wp-content/uploads/2023/02/gui-frame-light.png" alt="A screenshot of the Database page displayed during the installation of MyBB using the new system, with some fields filled out and annotated with &quot;Discovered running server&quot; and &quot;Discovered accepted credentials&quot; labels." /></p>
<p>The new web-based interface uses a single <code>index.php</code> entry point, which contains fallback code to provide friendly error messages when PHP cannot be executed, or its version is not supported.</p>
<p>In MyBB 1.8 and before, when accessing the directory with a functional forum, administrators would be presented with an upgrade/install choice screen — this was simplified by opening the upgrade screen by default, with a link to force reinstallation for local network requests that indicate a non-production board.</p>
<p>The flow in the browser-based GUI is managed by a client-side controller, capable of handling input and output asynchronously, letting users fill out and submit subsequent forms as the attached operations execute in the background. A server-side controller provides fallback support for no-JavaScript clients.</p>
<p>More form fields take advantage of input verification and autocomplete features supported by browsers and password managers. Password fields were enriched with reveal toggles (in browsers other than Microsoft Edge, which provides the feature natively) — balancing the UX with the removal of redundant <em>retype password</em> input — and then placed at the end of forms to detect usage of other entered data (like site details, username, or email) for score calculation, powered by the <a href="https://github.com/dropbox/zxcvbn">zxcvbn library</a>.</p>
<p>The auto-login feature was extended to likewise initialize a session for the Admin CP, enabling administrators to instantly explore it and finish configuring their forums.</p>
<p> </p>


<figure class="wp-block-video alignleft wp-block-embed is-type-video is-provider-videopress"><div class="wp-block-embed__wrapper" style="max-width:312px;margin:auto">
<iframe title='VideoPress Video Player' aria-label='VideoPress Video Player' width='640' height='824' src='https://video.wordpress.com/embed/Pj3eXvUr?cover=1&amp;autoPlay=1&amp;loop=1&amp;preloadContent=metadata&amp;useAverageColor=1&amp;hd=0' frameborder='0' allowfullscreen data-resize-to-parent="true"  allow='clipboard-write' ></iframe><script src='https://v0.wordpress.com/js/next/videopress-iframe.js?m=1739540970'></script>
</div></figure>



<div class="wp-block-jetpack-markdown"><p>The processes support <em>flags</em> that can be provided as URL parameters.</p>
<p>Developers can use the <code>dev</code> flag to skip <em>File Verification</em> and pre-fill administrator account details for quicker setup.</p>
<p>With the <code>fast</code> flag, the application will attempt a zero-click installation, proceeding automatically with provided data and defaults suitable for development.</p>
</div>



<p></p>



<p></p>



<p></p>



<p></p>



<p></p>



<p>When installing in development mode, an additional post is created in the <em>welcome</em> thread with convenient links to launch the process again and reset MyBB to its default state.</p>



<p></p>



<p>Over six years ago, we <a href="https://blog.mybb.com/2016/12/01/securing-your-mybb-forums-with-https/">pointed out</a> the tip-over in observed web traffic into the majority using HTTPS — today&#8217;s <a href="https://transparencyreport.google.com/https/overview">data</a> shows that secure transmission for publicly-available sites is a universal standard. Although administrators of new forums should be well-aware of this, and have HTTPS already <a href="https://docs.mybb.com/1.8/administration/security/https/">set up</a>, some may delay this step until after the installation. This, of course, is dangerous, given that passwords and login keys already start being transmitted. Therefore, the installer warns about an unsafe connection for public network requests (limiting <a href="https://en.wikipedia.org/wiki/Alarm_fatigue">warning fatigue</a> during non-production usage).</p>



<p>Consistent with our long-term development <a href="https://github.com/mybb/mybb/issues/4328">plans</a>, the new setup system has no inline styles nor scripts, which allowed us to add a restrictive <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP">Content Security Policy</a> by default.</p>



<p>The web implementation tracks the time of each operation using the <a href="https://developer.mozilla.org/en-US/docs/Web/API/Performance">Performance API</a>, and the custom measurements can be observed using developer tools built into some web browsers.</p>



<h4 class="wp-block-heading">Safety</h4>



<p>The installer has been equipped with additional checks to prevent misuse. Previously, authentication was only required to access the upgrade script, but not installation, which may have allowed third parties to access it when the complete directory was uploaded and the <code>lock</code> file was deleted for upgrading.</p>



<p>The new system will check for additional, process-specific lock files, with <code>lock_install</code> created automatically. To reinstall the board, administrators will be also required to delete or empty the configuration file, which will provide another cue that existing data will be overwritten. These constraints don&#8217;t apply in a development environment, in which case a detailed installation status is simply shown on the first screen.</p>



<p>Authentication-related logic tied to the upgrade script was reworked by removing assumptions about the stability of initialization and credential handling, which may become temporarily broken during the upgrade process (e.g. after uploading new files, but before applying database changes). Instead, the upgrade process validates administrators&#8217; sessions carried over from the forum front-end opportunistically, and otherwise relies on an ad-hoc proof by prompting them to create a temporary file with the name cryptographically tied to a cookie value.</p>



<h3 class="wp-block-heading">CLI</h3>



<figure class="wp-block-image size-large"><img width="1024" height="726" data-attachment-id="3747" data-permalink="https://blog.mybb.com/cli-frame-dark/" data-orig-file="https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png" data-orig-size="1407,998" data-comments-opened="0" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="cli-frame-dark" data-image-description="" data-image-caption="" data-medium-file="https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png?w=300" data-large-file="https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png?w=640" src="https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png?w=1024" alt="A screenshot of a command line window with sections &quot;Re-install Board&quot; and &quot;Connect to a Database&quot; printed to the output, containing annotations about automatically matched credentials, and an input prompt with a default value." class="wp-image-3747" srcset="https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png?w=1024 1024w, https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png?w=150 150w, https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png?w=300 300w, https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png?w=768 768w, https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png 1407w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<div class="wp-block-jetpack-markdown"><p>The new <code>bin/cli</code> command line-executable PHP script, built with Symfony&#8217;s <a href="https://symfony.com/doc/current/components/console.html">Console component</a>, comes with commands for each maintenance process, walking users through steps in a fashion similar to the web GUI. It can also execute any of the processes non-interactively, allowing integration into various automated scripts.</p>
<p>When using this interface, the input can be:</p>
<ul>
<li>
<p>provided interactively:</p>
<pre><code>Board URL:
&gt; https://example.net/forum
</code></pre>
</li>
<li>
<p>passed as direct parameters with the command:</p>
<pre><code class="language-bash">$ bin/cli install --param bburl=https://example.net/forum
</code></pre>
</li>
<li>
<p>picked up from environment variables:</p>
<pre><code class="language-ini">MYBB_INSTALL_BBURL=https://example.net/forum
</code></pre>
</li>
<li>
<p>skipped entirely — by accepting defaults:</p>
<pre><code class="language-bash">$ bin/cli install --fast
</code></pre>
<p><em>(here, we rely on database discovery and an existing installation, where the URL — unavailable in CLI mode — can be retrieved from old settings)</em></p>
</li>
</ul>
<p>Similarly to the web mode, the commands support i.a. <code>--dev</code> and <code>--fast</code> flags, in addition to Symfony&#8217;s built-in usability and debugging options.</p>
<h2>Maintenance Pages</h2>
</div>



<figure class="wp-block-video alignleft wp-block-embed is-type-video is-provider-videopress"><div class="wp-block-embed__wrapper" style="max-width:328px;margin:auto">
<iframe title='VideoPress Video Player' aria-label='VideoPress Video Player' width='640' height='495' src='https://video.wordpress.com/embed/XazM3zAT?cover=1&amp;autoPlay=1&amp;controls=0&amp;loop=1&amp;preloadContent=metadata&amp;useAverageColor=1&amp;hd=0' frameborder='0' allowfullscreen data-resize-to-parent="true"  allow='clipboard-write' ></iframe><script src='https://v0.wordpress.com/js/next/videopress-iframe.js?m=1739540970'></script>
</div></figure>



<div class="wp-block-jetpack-markdown"><p>The installer&#8217;s new look belongs to the new family of <em>maintenance</em> pages — used during special conditions of MyBB&#8217;s operation, and inspired by the design of the 1.9 front-end and the Project&#8217;s website.</p>
<p>Each condition was assigned a distinct color, and the pages differ in what elements are displayed according the subject in a given context: the board, or its underlying software.</p>
<p>MyBB&#8217;s own branding is toned down on the <em>error</em> and <em>board closed</em> pages — which usually depend on the individual environment and administrator&#8217;s activity — and appropriately displayed in full during installation and subsequent upgrades.</p>
</div>



<div class="wp-block-jetpack-markdown"><p>By handling thousands of support cases, we see how the subtle changes in error message phrasing reflect in future help requests, and have a general idea of how people — both the administrators and the users of their forums — respond to them. The error pages address both groups with specific (but still concise) suggestions for reaching out for technical assistance, depending on the circumstances and configured contact settings.</p>
<h2>Data Reorganization</h2>
<p>Data previously distributed — and uploaded — with the installation directory was absorbed into the core.</p>
<p>The permanent availability of the database schemas, initial data seeds, and upgrades — moved from <code>install/resources/</code> to respective subdirectories under <a href="https://github.com/mybb/mybb/tree/dev-1.9/inc"><code>inc/</code></a> — will enable the core to i.a. extend its self-verification features to cover the database structure, and allow resetting settings to default values. This effort included a refactoring of some data from individual SQL queries to arrays, and increasing the usage of multi-row insert queries, yielding improved performance.</p>
<p>Given that static assets tied to the GUI were also extracted, any upgrade packages (<em>Changed Files</em>) involving the upgrade process for MyBB 1.9 will only contain: the entry point file, and truly new or modified resources — compared to the growing set of 80+ <code>install/</code> files to upload (and remove shortly after) on MyBB ≤ 1.8.</p>
<p>Another kind of relocation was made to the file containing the application&#8217;s checksums: the once-online feature of <em>File Verification</em>, which would download it from the <em>MyBB.com</em> server before comparing it against the filesystem, was modified to include it in the package for offline verification, improving reliability and privacy.</p>
</div>



<p></p>



<div class="wp-block-jetpack-markdown"><h2>Flattening Workflows</h2>
</div>



<div class="wp-block-jetpack-markdown"><p>If you manage MyBB forums or develop extensions, you have likely encountered more broad friction: to run MyBB locally, a complete web stack has to be installed — including the HTTP server, PHP interpreter, and a database system. This can quickly become overwhelming if you need to test against various versions and systems to mimic your live forum&#8217;s setup, or investigate reported problems.</p>
<p>Our <a href="https://github.com/mybb/deploy/tree/dev">Docker Compose configuration</a> — which already took care of setting up the web stack components — was recently updated to also install Composer dependencies for MyBB 1.9, and now, with the MyBB CLI, to install the application itself. This means that after the initial <a href="https://www.docker.com/products/docker-desktop/">Docker</a> installation, you can get MyBB up and running from the source (in any branch or Pull Request), without the overhead of setting up the underlying software on your host system, or manually handling the intermediate steps of installing dependencies — or MyBB — using a single command.</p>
</div>



<div class="wp-block-jetpack-markdown"><p>Similarly, the scriptable installer was used to create a default configuration for GitHub Codespaces — an additional layer that provides an instant web-based IDE to run, debug, and modify MyBB and its source code.</p>
</div>



<div class="wp-block-jetpack-markdown"></div>



<br style="clear:both">



<hr class="wp-block-separator has-alpha-channel-opacity is-style-dots" />



<br style="clear:both">



<div class="wp-block-jetpack-markdown"><p>Go to the MyBB 1.9 development branch to preview the recent updates, try <em>Codespaces</em> with your free quota on GitHub, and help track down any problems in the new series of our forum software.</p>
</div>



<div class="wp-block-jetpack-markdown"><p><a href="https://github.com/mybb/mybb/tree/dev-1.9"><img src="https://blog.mybb.com/wp-content/uploads/2017/10/github.png" alt="View on GitHub"></a></p>
</div>



<div class="wp-block-jetpack-markdown"><p>If you like working on improvements — that are sometimes measured by how well they blend into the background — <a href="https://mybb.com/get-involved/">Get Involved</a>.</p>
</div>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3863</post-id>
		<media:thumbnail url="https://blog.mybb.com/wp-content/uploads/2023/02/designing-mybb-19s-installer.png" />
		<media:content url="https://blog.mybb.com/wp-content/uploads/2023/02/designing-mybb-19s-installer.png" medium="image">
			<media:title type="html">designing-mybb-19s-installer</media:title>
		</media:content>

		<media:content url="https://0.gravatar.com/avatar/6dfff422717af5b54c6ff44c276d39029db25e07912d9f4eb4d31b3d74c0b8bf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">devilshakerz</media:title>
		</media:content>

		<media:content url="https://user-images.githubusercontent.com/8020837/218833490-8b837f35-8b0a-484d-906f-1743586b42c0.png" medium="image" />

		<media:content url="https://blog.mybb.com/wp-content/uploads/2023/02/mybb-18-install-tables-frame.png?w=684" medium="image">
			<media:title type="html">A screenshot of the Table Creation page displayed during the installation of MyBB 1.8, with an unnecessarily long list of names of created tables.</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2023/02/process-definition-api-usage.png" medium="image">
			<media:title type="html">A snippet of new code for the installation &#034;process&#034; with individual operations defined as function callbacks; and a snippet demonstrating its usage, involving passing the parameters as a PHP array and calling a &#034;run&#034; method, which doesn&#039;t produce side effects.</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2023/02/gui-frame-light.png" medium="image">
			<media:title type="html">A screenshot of the Database page displayed during the installation of MyBB using the new system, with some fields filled out and annotated with &#034;Discovered running server&#034; and &#034;Discovered accepted credentials&#034; labels.</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2023/02/cli-frame-dark.png?w=1024" medium="image">
			<media:title type="html">A screenshot of a command line window with sections &#034;Re-install Board&#034; and &#034;Connect to a Database&#034; printed to the output, containing annotations about automatically matched credentials, and an input prompt with a default value.</media:title>
		</media:content>

		<media:content url="https://blog.mybb.com/wp-content/uploads/2017/10/github.png" medium="image">
			<media:title type="html">View on GitHub</media:title>
		</media:content>
	</item>
		<item>
		<title>MyBB 1.8.33 Released — Security &#038; Maintenance Release</title>
		<link>https://blog.mybb.com/2023/01/03/mybb-1-8-33-released-security-maintenance-release/</link>
		
		<dc:creator><![CDATA[MyBB Team]]></dc:creator>
		<pubDate>Tue, 03 Jan 2023 17:11:14 +0000</pubDate>
				<category><![CDATA[Releases]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Updates]]></category>
		<guid isPermaLink="false">http://blog.mybb.com/?p=3725</guid>

					<description><![CDATA[MyBB 1.8.33 is now available, and is a security &#38; maintenance release. This version improves cache system stability, and compatibility with PostgreSQL (PDO) and recent PHP versions. 1 security vulnerability addressed: High risk: ACP Languages local file inclusion (advisory) &#8212; reported by yelang123 (Stealien), NGA (Stealien) 8 issues resolved Check the Release Notes for more [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>MyBB 1.8.33 is now available, and is a security &amp; maintenance release.</p>
<p>This version improves cache system stability, and compatibility with PostgreSQL (PDO) and recent PHP versions.</p>
<ul>
<li>
        <strong>1 security vulnerability addressed:</strong></p>
<ul>
<li>High risk: ACP Languages local file inclusion (<a href="https://github.com/mybb/mybb/security/advisories/GHSA-cpfv-6f8w-759r">advisory</a>) &mdash; reported by yelang123 (Stealien), NGA (Stealien)</li>
</ul>
</li>
<li>
        <a href="https://github.com/mybb/mybb/issues?q=is%3Aissue+is%3Aclosed+label%3As%3Aresolved+-label%3Adev-branch+milestone%3A1.8.33"><strong>8 issues resolved</strong></a>
    </li>
</ul>
<p>
Check the <a href="https://mybb.com/versions/1.8.33/"><strong>Release Notes</strong></a> for more information.</p>
<p><a href="https://mybb.com/download"><strong>Get latest MyBB Full &amp; Upgrade Packages &rarr;</strong></a></p>
<p>The MyBB Project extends thanks to reporters and researchers following responsible disclosure.<br />
Go to <a href="https://mybb.com/get-involved/security/">mybb.com/security</a> to report possible security concerns or to learn more about security research at MyBB.<br />
If you would like to contribute to the Project, <a href="https://mybb.com/get-involved/">Get Involved</a>.</p>
<p>Thanks,<br />
MyBB Team</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3725</post-id>
		<media:content url="https://1.gravatar.com/avatar/7a171df9275fe978057716007fe259f8700c7face98ead0ae1864631982154d1?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">mybbteam</media:title>
		</media:content>
	</item>
	</channel>
</rss>
