[ImgBot] Optimize images#471
Open
imgbot[bot] wants to merge 39 commits into
Open
Conversation
* feat: database queue * chore: add screenshot of db queue settings * chore: typo * chore: env vars
Flarum 2.x has been upgraded to Laravel 12. Updates the 2.x upgrade guide to reflect the new version and adds notable Laravel 12 breaking changes (HasUuids v7, Schema multi-schema defaults, SVG image validation). Also updates all laravel.com/docs/11.x links to 12.x across the extension docs. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds a detailed PHPStan/Larastan section to the 2.x upgrade guide covering the version bumps, recommended level 6 increase, removed config parameters, and Larastan 3.x breaking changes (explicit relation generics, annotation renames). Updates the static-code-analysis setup guide to reflect level 6 and remove the now-invalid checkMissingIterableValueType parameter. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds a less.php dependency entry under the Dependencies section and a breaking change bullet under LESS Preprocessing for the math expression behaviour change in CSS custom properties introduced with Less.js 3.5+. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
…avelServiceProvider support (#505) Covers three undocumented additions from the beta.4–beta.7 cycle: - settings.md: new Conditional Extenders section documenting all four methods (whenExtensionEnabled, whenExtensionDisabled, whenSetting, when) with examples including invokable class strings and strict comparison - backend-events.md: new Notable Core Events section with ApplicationBooted documented — timing, use case, and a warning that it fires every request - service-provider.md: add step 6 to boot process (ApplicationBooted event), note that Illuminate\Support\ServiceProvider is now also accepted by the ServiceProvider extender, with a third-party package example Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
…ed package support (#506) Documents changes introduced in flarum/framework#4392: - Extension Categories: new section in admin.md covering how to declare a category in composer.json, the full table of built-in categories with keys, labels and icons, and how to register custom categories via app.extensionCategories. - Extension Health Widget: new section in admin.md covering the three widget sections (abandoned, suggested, disabled), how Packagist's abandoned field works, how to use Composer's suggest field, and the flarum.abandoned_overrides forward-compatibility hook for future scheduled checking. - update-2_0.md: notable entry for the new admin dashboard (old extension grid removed, health widget added); notable entry for the collapsible sidebar overhaul with count badges, icons, and search auto-expand. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add dedicated FontAwesome page covering Local/CDN/Kit sources, icon class name reference, renamed icons table, and extension dev notes - Add FontAwesome page to Management sidebar - Update config.md: prose and CDN example URL to FA7 - Update themes.md: version reference and link to new FA page - Update extend/i18n.md: replace dead fortawesome.github.io URL - Update extend/update-2_0.md: add FontAwesome 5→7 upgrade section under Backend > Dependencies Relates to flarum/framework#4388 Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* docs: add avatar drivers guide for User extender Documents the new avatar driver system introduced in flarum/framework#4130. Includes implementation guide, examples, and admin configuration. * wip * docs: add avatar drivers guide for User extender Documents the new avatar driver system introduced in flarum/framework#4130. Includes implementation guide, examples, and admin configuration. * docs: update avatars.md to match Flarum documentation style - Use more direct, technical language - Remove verbose explanations and marketing-style wording - Simplify code examples with minimal comments - Remove redundant sections - Match tone and word choices from mail.md, filesystem.md, notifications.md - Reduce file length from ~300 to ~75 lines * wip * wip * wip * docs: address PR review feedback for avatar drivers guide - Correct intro to reflect only DefaultDriver exists (Gravatar is planned) - Add note about raw driver identifier and BasicsPage.driverLocale override - Link to existing DefaultDriver instead of non-existent GravatarDriver
* docs: add haptic feedback guide for extension developers Documents the haptic() utility added in flarum/framework#<framework-pr>: - Named presets, custom patterns, isHapticSupported - User gesture requirement (Android + iOS) — must call synchronously before async - Where core uses haptics (reference table) - Extension integration examples: buttons, API saves, extend(), reactions, settings Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(haptic-feedback): correct custom pattern iOS support and update type refs - Custom patterns do work on iOS — web-haptics simulates them via repeated checkbox clicks using rAF; previous claim they were Android-only was wrong - Replace HapticPreset/HapticPattern type references with HapticInput, matching the updated haptic.ts in flarum/framework Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
… changes (#508) Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Flarum core now ships a Device settings toggle for haptic feedback. Update the guide to reflect that haptic() gates on the preference automatically and extensions don't need to manage this themselves. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
…#4448) (#510) The /logout route is now a POST action. The GET route is renamed to logoutPage and only shows a no-JS confirmation page. Extension authors generating logout URLs or submitting logout requests directly need to update their code. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Covers ResponseFactory::make() signature change, removal of authenticationComplete(), makeLoggedInResponse/makeRegistrationResponse promoted to protected, the new POST /api/registration-token endpoint, _flarum_auth and _flarum_linked query params, and SignUpModal label additions. Includes a warning pointing developers to the fof/oauth upgrade notes for the companion package changes.
Documents the Realtime PHP and JS extender API introduced in flarum/framework#4473. Covers: - broadcastModelEvent / broadcastDialogEvent / broadcastFlagEvent - registerModelEndpoint for custom model types - JS RealtimeExtend extender (onDiscussionStreamEvent, onUserChannelEvent, onPublicChannelEvent, onBothChannelsEvent) - Direct channel access via RealtimeState - Complete likes integration as a real-world example - Security model (permission-gated payload generation + channel auth)
* docs: document changes around custom route resolvers * style: whitespacing
* docs: rewrite v1 to v2 upgrade guide * docs: correct minimum-stability guidance for beta period
#526) flarum/testing on 2.x now requires PHPUnit 12. Refresh the testing guide example configs to PHPUnit 12's schema (the 9.x example was already broken on PHPUnit 10+), replace @test docblocks in the examples with #[Test] attributes, and add a dedicated PHPUnit section to the 2.0 update guide covering annotations → attributes, config schema attribute/element removals, and the new AllowMockObjectsWithoutExpectations notice.
Flarum 2.0 is in its release-candidate phase, not beta. Update the install and update warning boxes to reflect that the API is stable and many forums run it in production, while keeping a back-up-and-test caution. The composer minimum-stability flag stays at `beta` (it accepts RC and above), so version constraints are unchanged — only the status prose is updated.
The deploy workflow has failed on every push since early April: webpack resolved through @docusaurus/core's `^5.73.0` range to 5.107.x, whose ProgressPlugin schema rejects the `name`/`color`/`reporters` options that webpackbar@5.0.2 (a Docusaurus 2.3.1 dependency) passes it, so the build aborts with a ValidationError before any deploy. Pin webpack to 5.88.2 via an `overrides` entry — the last 5.x that accepts those options — and commit a `package-lock.json` so installs are reproducible. Switch CI from `npm i` to `npm ci` so it installs from the lockfile instead of re-resolving every range on each run (which is what let this break silently with no repo change). Verified locally: `npm ci && npm run build` now generates all locales.
…nce (#530) Cross-referenced the 2.x extend docs against framework source and fixed confirmed inaccuracies: - api: removeField/Endpoint/Sort -> plural array forms; avgReation typo; stray comma in endpoint chain; Rsource namespace typo - admin: generalIndexItems type arg; Admin.setting/.permission method names; corrected Available Categories to the four registered ones; abandoned-extensions scheduled checker documented as shipped - frontend: avatar/icon are components not helpers; ItemList.toArray is descending; ExtensionLinkButton (AdminLinkButton does not exist) - frontend-pages: PageStructure/BasicsPage namespaces; homePageItems is static; matches() is on PageState; IndexPage import - console: fire(): int with return; drop unused PSR HTTP imports - database: when* macros require both callback and - interactive-components: isDismissible split into three properties - notifications: getSubjectModel; excerpt; add missing imports; drop stale ConfigureNotificationTypes import - routes: pass component class, not a JSX instance - mail/search/settings/testing/views/authorization/avatars/forms/i18n: namespace, method-name, path, and key corrections - update-2_0-api: OriginalContext -> Context - update-2_0: UserValidator is not removed; AbstractGlobalSearch path - rest-api: only the current token is deleted on logout (global logout and password change delete all) - api-throttling: actor via RequestUtil::getActor(), not getAttribute Also document the recommended declarative admin extend.ts pattern (with the required index.ts re-export) for settings/permissions/page, and add recommended database-version guidance (MySQL 8.4 LTS, MariaDB 11.8 LTS, PostgreSQL 15-17; MySQL 5.7 / MariaDB 10.x not recommended) to the install and update guides.
Both pages were carried over verbatim from the 1.x docs and described APIs that no longer exist in 2.x. mail.md: - buildTransport() now returns a Symfony Mailer TransportInterface, not a Swift_Transport (Swiftmailer was replaced by Symfony Mailer) - validate() must return its MessageBag - model the example on core's real MailgunDriver (Symfony transport factory + Dsn), and note the symfony/*-mailer bridge packages - Extend\Mail::driver() takes (identifier, class), not just the class middleware.md: - the Middleware extender has no 'frontend' stack; only forum/admin/api - replace the removed Tobscure JsonApi Document/ResponseBag example with the 2.x approach: throw Flarum\Foundation\ValidationException, or build a JsonApiResponse from a plain document array
… stale 2.x translations (#532) Docusaurus 3 upgrade: - @docusaurus/* 2.3.1 -> 3.10.1, React 17 -> 18, MDX 1 -> 3, prism-react-renderer 1 -> 2 (named-export theme import), clsx/@svgr bumps - drop the webpack 5.88.2 `overrides` pin (no longer needed on v3; the webpackbar/ProgressPlugin schema mismatch that forced it is gone) - migrate onBrokenMarkdownLinks to markdown.hooks (v3 location) - escape MDX-v3-breaking literals ({user}, <=0.1.0, stray <) in English, versioned, and locale content so all 7 builds compile Tooling: - standardize on Yarn (regenerate yarn.lock, remove package-lock.json); CI uses `yarn install --frozen-lockfile` + `yarn build` with yarn cache - bump workflow Node 20 -> 24; pin actions/checkout to @v4 - README: Node >=20, Yarn commands, and a Translations section documenting the Crowdin workflow SEO: - fix `url` to https://docs.flarum.org (was flarum.org) — corrects canonical, og:url, sitemap domain, and hreflang across the site - set themeConfig.image to a Flarum banner for og:image/twitter:image - site-level WebSite/Organization JSON-LD via headTags - per-page TechArticle + BreadcrumbList JSON-LD via a local postBuild plugin (no theme swizzle; works across all locales) - onBrokenAnchors: 'warn' Translations: - invalidate the 2.x (current) translations for all locales: they were frozen at a Dec-2024 snapshot, ~18 months and 40+ commits behind, and translated since-corrected content (e.g. the pre-Symfony mail API). Docusaurus falls back to English for untranslated 2.x pages. - 1.x translations, code.json, and theme translations are kept - disable the 2.x source mapping in crowdin.yml so it isn't regenerated
*Total -- 2,134.49kb -> 1,495.14kb (29.95%) /static/img/flarum-banner.png -- 170.77kb -> 44.43kb (73.98%) /docs/assets/extension-manager-page.png -- 416.47kb -> 238.49kb (42.74%) /docs/assets/home_screenshot.png -- 675.84kb -> 431.92kb (36.09%) /docs/assets/config-repositories.png -- 72.91kb -> 56.17kb (22.97%) /static/en/img/config-repositories.png -- 72.91kb -> 56.17kb (22.97%) /static/en/img/update-extension.png -- 41.38kb -> 34.19kb (17.37%) /docs/assets/uninstall-extension.png -- 55.98kb -> 46.74kb (16.51%) /static/en/img/uninstall-extension.png -- 55.98kb -> 46.74kb (16.51%) /static/en/img/install-extension.png -- 50.48kb -> 42.65kb (15.51%) /docs/assets/update-extension.png -- 83.82kb -> 72.99kb (12.91%) /docs/assets/install-extension.png -- 43.96kb -> 38.50kb (12.43%) /docs/assets/gambit_autocomplete_dropdown.png -- 60.26kb -> 54.91kb (8.89%) /src/assets/cube.svg -- 0.28kb -> 0.27kb (2.13%) /src/assets/arrow-down-tray.svg -- 0.30kb -> 0.29kb (1.95%) /src/assets/adjustments-vertical.svg -- 0.40kb -> 0.39kb (1.47%) /src/assets/book-open.svg -- 0.43kb -> 0.42kb (1.36%) /src/assets/light-bulb.svg -- 0.43kb -> 0.43kb (1.35%) /src/assets/document-arrow-up.svg -- 0.47kb -> 0.47kb (1.24%) /src/assets/cog-6-tooth.svg -- 1.27kb -> 1.26kb (0.77%) /docs/assets/api_flowchart.svg -- 296.43kb -> 294.15kb (0.77%) /src/assets/lifebuoy.svg -- 1.17kb -> 1.17kb (0.5%) /docs/assets/global_search_modal.png -- 32.54kb -> 32.41kb (0.4%) Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Beep boop. Your images are optimized!
Your image file size has been reduced by 30% 🎉
Details
📝 docs |
repo | 🙋🏾 issues | 🏪 marketplace
~Imgbot - Part of Optimole family