UX Changes
- Fix composer popup placement
- Apply new quote-button spacing behavior to all mobile devices
- Fix layout issues with long category names
- Center emoji picker when limited space
- No border-radius on textarea
- Animate the movement of the quote button on selection change
- Flat-btn should also respond to Enter
- Use https protocol for markdown help link
- Adjust invite and related form spacing
- Change text of public_topic action code in login required sites.
- Tweak emoji picker css
- Updated “accept invite” error page
- Prevent crawler view topic-list overflow
- Better invite accept form
- Post action spacing refactor & consistency
- Improved invite accept page layout
- Maximize the preview space in composer
- Update navigation-container scaling & wrapping
- Correctly handles escape on emoji picker
- Always show avatar on mobile topic lists
- Let mobile post controls scroll on overflow
- Show group card with animated loading state
- Prevent timeline overflow in extreme cases
- Extend user hyperlink in staff action logs
- Fix topic status icon size in mobile search results
- Only apply link formats on paste to selections that do not contain bbcode-like tags
- Make toggling to filtered replies mode less jumpy.
- Improve composer presence-display positioning
- Scroll row to top of container in select-kit
- Fix flair dropdown styling in user account
- Remove style that breaks composer on pm page
- Reduce composer jumpiness on android
- Prevent overflow on mobile timeline dates
- Improve tag info style
- Fix alignment in group navigation bar
- Only apply link formats on paste to selections that do not contain links
- Tweak mobile composer styling
- Tweak composer styling
- Add title attribute to reports cells
- Closes multi-select on selection when maximum=1
- Fix extra indent on lists when supporting mixed text direction
- Add additional tests for pasting a link on a selection
- When pasting a link use linkify rules
- Pasting links on a selection will apply a link format
- Timestamp should not hide handle of topic timeline in mobile.
- Fallback to regular title if screen-reader title is unavailable
- Make banner full-width
- Lower digest suppress period from a year to 6 months
- Fix fast edit save button color in dark schemes
- Move share topic warning to modal flash alert
- Add more search aliases for emojis.
- Launch full page search on second
Enter
hit - Mobile topic list fixes follow-up to 0e371d4
- Fix share/notify modal styles
- Number steps in cloud installation README
- Layout fixes for admin permalinks page
- Remove tags chooser on PMs for non-staff users
- Fix several issues with topic progress refactor
- Fix bar-style category dropdown
- Better accommodate PM composer with tags
- Fix short post width on mobile
- Show quick search hint more consistently
- Remove animation in admin theme list
- Change login tabindex, follow-up to 6aa6275
- Change tabindex on login to skip email login link
- Apply tags during PM creation
- Make PresenceChannel changes more responsive
- Never show back button if less than current position
- Don’t show anchor icon on touch devices
- Re-order auth-related site settings for clarity
- Add special case for user search when in a topic
- Sometimes the footer would show up while refreshing a list route
- Adjust quick search input width
- Better topic search experience
- Show fewer toolbar icons in mobile composer
- Display full-page user search in a grid
- Better visibility for context search
- Add
Enter
hint to search dropdown - Add missing translation
- Remove
aria-label
for buttons whentitle
attribute exists. - Improve route hierarchy in for user-invites
- Restore new messages button on mobile on PM route.
- Adds shortcuts for quote (q) and fast edit (e)
- Add keyboard shortcut for fast edits
- More consistent shortcut labels for macOS
- Fix alignment of composer when tags are disabled
- Revamp quick search
- Change layout of invites page to match other user pages
- Global notice no longer accepts HTML.
- Capitalize unsubscribed email locale
- Use consistent category badge font size in dropdowns
- Fix label in search when tagging is disabled
- PM inboxes being expanded incorrectly when viewing tags.
- Don’t display group messages link for group with no messages.
- Show scrollbar only when needed in dropdowns
- Adjust mobile spacing for full page search
- Ensure sticky elements don’t overflow header
- Better placement for bulk select actions button
- Move fast edit before sharing
- Adjust quote button position on mobile
- Add second Search button on mobile
- Share button margin consistency
- Fix profile button spacing
- Improve composer button bar on mobile
- Prevent invite form fields from resizing
- Fix date input icon display issues
- Minor fast edit tweaks
- Improves fast edit fallback handling
- Optionally show a “Summarize” button in topic timeline
- Fix tab groups editing layout issues on mobile
- Use standard font size for buttons at the end of /top page
- Fix mobile styling for admin color schemes
- Fix alignment for admin controls on mobile
- Fix date input display in iOS
- Minor layout tweaks to dropdowns
- Normalize sizing for inputs, buttons, dropdowns
- Adjust button spacing
- Limit select-kit tag chooser width
- Remove
:empty
on topic-statuses, clean up - Comma separate public custom field lists
- Select-kit update alignment fixes
- Better login/signup styling for small desktop windows
- Use existing guardian method to check messageable group.
- Display correct replies count in embedded comments view.
- Improve blank page syndrome on the user messages page
- Add Styling step to wizard
- Update “get a room” composer message
- Do not show selected composer education messages on whisper post
- Add a title to the user filter input
- README logo SVG that supports dark mode
- Add margin to share input
- Add data-topic-id to featured topic items
- Fix mobile PM nav for regular users
- Show flair help text for private member visibility only
- Indicate capped history revisions only when they’re actually capped
- Update member visibility help text to include flair information
- Fixes sidebar settings border and active styles
- Missing translation for title attribute for PM tag route.
- Disable “Queue For Review” button if user can’t perform action.
- Append ellipsis to actions that have follow-up screen
- Ensure external login icons are visible on hover
- UX Fixes
- Adds hover title with full date to admin users columns
- History controls should use nav-pill styles
- Improve copy when a group member search returns no results
- Use share modal in dominating topic msg
- User bookmark page style adjustments
- Update styling of readonly values in signup form
- Remove theme-specific css, fix space
- Prioritize moderator bg color in PMs
- Improve quick search suggestions
- New text and style for dominating topic message
- Suspend forever time period messages
- Tweak groups page css
- Consistent share modal & popup, refactoring
- Stop imgur/google photo mobile onebox overflow
- Make sure there’s always a margin on badges page
- Improve share modal consistency
- Move the skip auth confirmation spinner inside the modal body.
- Add copy button to theme public key
- Improve the link to the preferences page on the new and unread tabs
- Add success state to copy button
- Fix z-index for new topic alert
- Translate the action type in watched words regex error
- Layout issues with topic last visit line.
- Remove background image after image has loaded
- Remove top border on small action after last visit line.
- Use topic list bulk select toggle for user messages list.
- Make emoji size consistent for oneboxed GH issues with short tags.
- Make poll content selectable
- Tweak spacing in the admin dashboard
- Adds ‘Processing Upload’ to the composer status area during upload optimization
- Horizontal scroll bar on top of user directory (when needed)
- Tweak the timestamp line in Twitter onebox
- Improve blockquote styling in emails
- Add notice when watched words are regexes
- Margin improvement for mobile alerts
- Make bulk select checkbox easier to target
- Fix mobile alert spacing
- Make it easier to hide the emoji on signup
- Hide email columns when
Hide Emails
is selected - Improve lightbox gallery zoom/navigation
- Fix jump-to-post layout on mobile
- Fix mobile progress bar button alignment
- Daily automatic grouping for less than 34 days instead of 30
- Use button instead of anchor in filtered replies bar
- Remove reference to contact form in setting
- Improve user delete error message & return correct post count.
- Improvements for reordering categories
- Add a hint that tags can be included in tag groups
- Fix search topic titles wrapping
- Fix bulk-select icon and button alignment
- Group dropdown filter height should match
- More consistent mobile spacing
- Improve tag truncation in scrolled header
- Copy edit
- Revert some search dropdown styles
- More consistent setting/edit buttons
- Adjustments to tag groups layout
- Update search panel styles, consistency
- Use icons as bulleted list in invite modal
- Fix “last visit” line overlap in Chrome
- Fix PM header title alignment
- Fix the PM title icon alignment
- Align the bulk-select icon
- Improve style of GitHub PR body in emails
- Don’t show reply prompt if current topic is closed
- Change color of focus & hover on user menu tabs
- Show grandparent category badge in sticky header on desktop
- Alert screen readers when there is an issue saving a post
- Twitter onebox layout adjustments
- Unconditionally focus modals
- Make search result styles more consistent
- Add auto focus to hamburger and user menu dropdowns
- Align list-controls & topic-title top margins
- Consistent padding on mobile/desktop
.wrap
- Adjust list and onebox margins
- Change categories page dropdown to a wrench
- Improve navigation on topic lists for screen readers
- Provide a region for various topic actions
- Users can postpone discobot’s tutorial.
- Search result link title color change
- Make discobot flag tutorial copy clearer
- Add ARIA region role to posts
- Show Update button instead of Enable button when slow mode is already enabled
- Improve positioning of controls in lightboxes
- Fix theme upload width, remove class clash, prettier
Security Changes
- Do not sign in unapproved users
- Advanced group search did not respect visiblity of groups.
- Hide user’s bio if profile is restricted
- Only show user suggestions with regular post
- Disable MessageBus::Diagnostics.
- Remove ember-cli specific response from application routes
- Only show tags to users with permission
- Strip unrendered unicode bidirectional chars in code blocks
- Ensure _forum_session cookies cannot be reused between sites
- Disallow caching of MIME/Content-Type errors
- Improve validation of SNS subscription confirm
- Escape watched word in error message
- Escape cat name
- User’s read state for topic is leaked to unauthorized clients.
- Sanitize d-popover attributes
- Destroy
EmailToken
whenEmailChangeRequest
is destroyed - Don’t leak user of previous whisper post when deleting a topic.
- Do not reveal post whisperer in personal messages.
- Validate period param for top topic routes
- Sanitize YouTube Onebox data
- Onebox canonical links bypassing FinalDestination checks
- Ensures timeouts are correctly used on connect
- XSS in bookmarks list
- Do not allow unauthorized access to category edit UI
Performance
- Turn common test prefixes into contexts in topics_controller_spec
- Make tests faster by prefabricating more things
- Prefabricate more parts of users_controller_spec
- Speed up the tests by pre-fabricating more things
- Prefabricate posters in topics_controller_spec
- Prefabricate more of topics_controller_spec.rb
- Redis snapshotting during tests
- Speed up tests
- Add index on email_tokens.token_hash
- Shave off some test-suite time
- Migrate normalized_emails in a migrations
- Update widget hooks to avoid global scroll-blocking events
- Update scrolling mixin implementation
- Disable ember touchstart listener
- Use passive event listeners for touchstart, touchmove
- Set --header-offset property only when changed
- Updating first unread PM for user not respecting limits.
- Use more efficient text-direction check in select-kit init
- Reduce records queried in
UserStat.update_first_unread_pm
. - Move
preload
hints to the<head>
- Improve JS app boot speed by optimizing
customResolve()
- Update like count in visible posts without an extra GET per like
- Use different column for better query plan
- There was a large performance regression in Logster
- Optimize search in private messages query
- Reduce work when external sources are allowed in
InlineUploads
- Use a subquery when excluding a tag from topic query.
- Avoid running ignored users DB query for anon users.
- Revert all inboxes from messages route.
- Improve database query perf when loading topics for a category.
- Fix N+1 queries in SiteSerialier.
- Improve query performance all inbox private messages. (#14304)"
- Improve query performance all inbox private messages.
- Avoid running query unnecessarily when updating bookmark.
- Avoid additional database query when viewing own user.
- Improve query perf when fetching unread for PM topic tracking state.
- Make
TopicViewSerializer#requested_group_name
more efficient. - Remove redundant post_timings_summary index
- Generates dates tooltip on demand
- Reduces rendering time of local-dates
- Add scheduled job to delete old stylesheet cache rows
- Improve topic_user.liked update performance when moving posts
- Improve post_timing performance when moving posts
- Optimise backfilling of topic_id
- Cache categories in Site model take 3.
- Remove n+1 in user directory
- Update post uploads secure status in a job
- Eager load Theme associations in Stylesheet Manager.
- Cache categories in Site model take 2.
- Cache categories in Site model.
- Remove extra PG query.
- Perform user filtering in SQL
- Avoid running a pointless PG query when theme has no variables.
- Animate request animation frame
- Preload client settings json while booting app.
- Switch ActiveRecord PG connection active check to use empty query.
- Preload
Post#image_upload
inTopicView
. - Defer setting of distributed cache in category.
- Defer setting of distributed cache in more spots.
- Preload settings, groups and badge icons in SvgSprite.
- Defer setting of distributed cache in performance critical paths.
- Remove N+1 query in
SiteSerializer#user_color_schemes
. - Warm up caches in
SiteSerializer
while preloading app. - Cache categories query in
Stylesheet::Manager.color_scheme_digest
. - Memoize core svgs in memory to avoid expensive XML parsing.
- Precompile child theme stylesheets.
Accessibility
- Tag should be “role” not “aria-role”
- Do not use duplicate IDs
- Focus last viewed topic in topic lists
- Move focus to highlighted post when visiting a topic
- Remove dupe label on signup confirm field
- Set modal widths with EMs; improves scaling
- Add prefers reduced motion"
- Don’t output aria label identical to title
- Use shorter label for hamburger menu
- Fix several minor issues
- Add labels to some search fields, category notification selector
- Add more descriptive labels for some dropdowns
- Use listbox role for dropdowns
- Do not default to label for aria-label
- Improve create account modal for screen readers
- Add “skip to main content” link
- Add labels where needed
- Adjust heading rules on topic lists
- Don’t mark multiple form labels as applying to the same element
- Improve topic details toggle button label
- Add aria-label to modal close button
- Include aria-label for avatar images in widgets
- Add heading role for post titles.
- Fix post control and user-menu focus styles