# 3.1.0.beta4: New notifications menu, chat and sidebar improvements, security fixes, and more

**URL:** https://meta.discourse.org/t/3-1-0-beta4-new-notifications-menu-chat-and-sidebar-improvements-security-fixes-and-more/262044
**Category:** Announcements
**Tags:** release-notes
**Created:** [April 18, 2023, 9:25am UTC](https://meta.discourse.org/t/3-1-0-beta4-new-notifications-menu-chat-and-sidebar-improvements-security-fixes-and-more/262044 "2023-04-18T09:25:44Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![nat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nat/32/235063_2.png) [@nat](https://meta.discourse.org/u/nat)
#### Post date: [April 18, 2023, 9:25am UTC](https://meta.discourse.org/t/3-1-0-beta4-new-notifications-menu-chat-and-sidebar-improvements-security-fixes-and-more/262044/1 "2023-04-18T09:25:44Z")

</div>

## New features in 3.1.0.beta4

### New notifications menu

Two weeks back we’ve [announced](https://meta.discourse.org/t/rolling-out-the-new-notification-menu-to-all-discourse-communities/260358) that the menu will be rolled out to everyone. Here it is!

> [@Try out the new sidebar and notification menus!](https://meta.discourse.org/t/try-out-the-new-sidebar-and-notification-menus/238821/1):
>
> ![notifications-menu](https://global.discourse-cdn.com/meta/original/4X/3/1/e/31ec80d816887be2d260d17513bb4348a76c2d63.png)
> 
> The new notifications menu has tabs for each type of notification so when you’re looking for those two recent replies but have gotten a few more recent likes and mentions, you can find them easily without navigating away from the current page.
> 
> Counts for different types of unread notifications are shown on each tab so you can see at a glance what kinds of things may be waiting for you. Dismiss a subset of notifications on a given tab when you want to clear one out but still want to follow up on the others.

### Sidebar improvements

If you’ve enabled [custom sidebar sections](https://meta.discourse.org/t/custom-sidebar-sections-being-tested-on-meta/255303) for a group of users, they will now be able to reorder sidebar links through drag and drop.

### Emoji deny site setting

We’ve added a new site setting that prevents emojis from showing up in titles, PMs, chat, and [other scenarios](https://github.com/discourse/discourse/pull/20929).

 ![add emojis to deny list](https://global.discourse-cdn.com/meta/original/4X/8/9/e/89ec6b63e3ca964c090fb33f0ae89d4f53563fd1.png)

### Chat

Shift+esc lets you mark all chat messages as read ✨

### Other 🆕 features

- Better thread reply counter cache
- Hook up chat bulk delete for threads
- Add a setting to allowlist [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true) return path domains
- Reacting to MessageBus in chat thread panel
- Initial chat thread indicator and disabling echo mode in channels
- Increase pbkdf2 iterations to 600k
- Persist password hashing algorithm/params in database
- Add category name in articleSection meta tag for schema.
- SiteSetting for creation of small action on tag change
- Add CSS class generation for category colors and hashtags
- Allow invite only and [Discourse connect](https://meta.discourse.org/t/13045?silent=true)
- SiteSetting to default user path to different routes
- Use “Comment” schema type for post replies.
- Experimental API for custom full-page search types.
- Modifier API for plugins
- Move bootstrap mode indicator to header
- Allow site owners to disable impersonation
- Auto-remove users without permission from channel
- Log manual bounce reset

## Security Updates

This release includes fixes for these security issues reported by our community and [HackerOne](https://hackerone.com/discourse).

- Encode embed URLs ([CVE-2023-29196](https://github.com/discourse/discourse/security/advisories/GHSA-986p-4x8q-8f48))
- Ensure site setting being updated is a configurable site setting ([CVE-2023-30606](https://github.com/discourse/discourse/security/advisories/GHSA-jj93-w3mv-3jvv))
- Strip `xlink:href` from uploaded SVGs ([CVE-2023-30538](https://github.com/discourse/discourse/security/advisories/GHSA-w5mv-4pjf-xj43))
- Update URI gem to 0.12.1 to address [CVE-2023-28755](https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/)
- Limit URL length for theme remote ([CVE-2023-28440](https://github.com/discourse/discourse/security/advisories/GHSA-vm65-pv5h-6g3w))

---

<div class="post-metadata">

### Author: ![nat](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/nat/32/235063_2.png) [@nat](https://meta.discourse.org/u/nat)
#### Post date: [April 18, 2023, 9:25am UTC](https://meta.discourse.org/t/3-1-0-beta4-new-notifications-menu-chat-and-sidebar-improvements-security-fixes-and-more/262044/2 "2023-04-18T09:25:44Z")

</div>

The beta also includes a bunch of other bug fixes, UX, performance, and accessibility improvements.

## Plugins

### discourse-adplugin

> **New Features**
>
> - Add per-ad visibility settings for anons and logged-in users

### discourse-akismet

> **Bug Fixes**
>
> - Pin plugin for older version of Discourse

> **UX Changes**
>
> - Add review queue tag styling for akismet flags

### discourse-assign

> **Bug Fixes**
>
> - Show user status tooltip on the assign modal
> - Also evaluate list controller extensions

### discourse-automation

> **Bug Fixes**
>
> - PG::NotNullViolation when prefers\_encrypt is not set
> - Update migration to prevent `PG::NotNullViolation` error
> - Stores encrypt preference in pending PMs
> - Do not error on deleted topic in post script

### discourse-calendar

> **Bug Fixes**
>
> - Quebec’s national holiday observed Monday

### discourse-category-experts

> **New Features**
>
> - SiteSetting to remove advanced search filters

### discourse-chat-integration

> **New Features**
>
> - New rule filter to send message when topic tags change

### discourse-data-explorer

> **New Features**
>
> - Allow [data explorer](https://meta.discourse.org/t/32566?silent=true) query result to be sent as recurring PM

> **Bug Fixes**
>
> - Ensures explorer is using default values when provided
> - Reset results on query redirect
> - Flaky test fix for [Data Explorer](https://meta.discourse.org/t/32566?silent=true) Automated PM Feature

### discourse-docs

> **New Features**
>
> - Make user status on mentions on docs live

> **Bug Fixes**
>
> - Fix an issue where deselecting a filter tag would cause no results
> - Make `docsCategories` ignore invalid ids

> **UX Changes**
>
> - Hide non-functional revision history button

### discourse-follow

> **UX Changes**
>
> - Re-use UserStreamItem from core

### discourse-prometheus

> **New Features**
>
> - Add `content_type` label to web performance metrics
> - Label all timing metrics with logged\_in boolean
> - Add cache and success label to web duration metrics

### discourse-reactions

> **UX Changes**
>
> - Re-use UserStreamItem from core

> **Security Changes**
>
> - Publish reactions based on topic permissions

### discourse-salesforce

> **New Features**
>
> - Add default Contact ID for Case Sync Site Setting
> - Optionally skip contact creation on case sync

### discourse-solved

> **UX Changes**
>
> - Tweak ‘Solution’ button design

### discourse-staff-alias

> **New Features**
>
> - Allow topic title edits where topic user is the staff alias user
> - Allow posts to change ownership to the staff alias user

> **Bug Fixes**
>
> - Events should not return

### discourse-theme-creator

> **Bug Fixes**
>
> - Various fixes following core changes

### discourse-translator

> **Bug Fixes**
>
> - Typo for Serbian Cyrillic

### discourse-voting

> **Bug Fixes**
>
> - Don’t remove custom fields when adding a new one to category serializer
