# 2.8.0.beta8: API Key Verbeteringen, Afbeelding alt Tekst Bewerken, Volledig Scherm Tabellen, en meer

**URL:** https://meta.discourse.org/t/2-8-0-beta8-api-key-improvements-image-alt-text-editing-fullscreen-tables-and-more/209178
**Category:** Announcements
**Tags:** release-notes
**Created:** [15 november 2021 om 16:26 UTC](https://meta.discourse.org/t/2-8-0-beta8-api-key-improvements-image-alt-text-editing-fullscreen-tables-and-more/209178 "2021-11-15T16:26:51Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![jomaxro](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jomaxro/32/126216_2.png) [@jomaxro](https://meta.discourse.org/u/jomaxro)
#### Post date: [15 november 2021 om 16:26 UTC](https://meta.discourse.org/t/2-8-0-beta8-api-key-improvements-image-alt-text-editing-fullscreen-tables-and-more/209178/1 "2021-11-15T16:26:51Z")

</div>

## New features in 2.8.0.beta8:

### API key improvements

**New read-only scope:** API Keys can now be created with a read-only scope, allowing the key to be used for any `GET` API requests. This is in addition to the existing global scope, allowing unrestricted access, and granular, allowing admins to specify which groups of routes the key grants access to.

**API key pagination:** The API Key page now properly handles large numbers of API keys, with auto-load support as one scrolls.

### Easier editing of image alt text

The alt text for an image has long been editable, but doing so required editing the image markdown, and a risk of breaking the upload if the wrong change was made. Users can now quickly edit the image alt text right from the preview window, just as image size can be changed. Hover over the image and the edit options will appear.

 ![image alt text screenshot](https://global.discourse-cdn.com/meta/original/3X/e/2/e2b29ea501b39fa1bff991f531f2e2252206e905.jpeg)

### Fullscreen tables

Are tables common place on your site? Do they tend to get large, requiring scrolling both vertically and horizontally?

Tables now support being expanded fullscreen, similar to large images. Hover over the table to see the new Expand Table button.

**Table in post:**

 ![image](https://global.discourse-cdn.com/meta/original/3X/c/0/c0401482c72b4e07b0bf0cdc9a71677a99bb04db.png)

**Expanded fullscreen table**

 ![image](https://global.discourse-cdn.com/meta/original/3X/6/e/6e529f0ffd2e71fe50af6f31894a02b036042c89.png)

### Accessibility

- Set modal widths with EMs; improves scaling
- Add prefers reduced motion

---

<div class="post-metadata">

### Author: ![jomaxro](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jomaxro/32/126216_2.png) [@jomaxro](https://meta.discourse.org/u/jomaxro)
#### Post date: [15 november 2021 om 16:26 UTC](https://meta.discourse.org/t/2-8-0-beta8-api-key-improvements-image-alt-text-editing-fullscreen-tables-and-more/209178/2 "2021-11-15T16:26:51Z")

</div>

### Even more!

But wait, there’s more! We do our best to highlight new features and changes for you, but there’s always too many changes to detail. For a full list of new features, bug fixes, UX improvements, and more, be sure to review the Additional Features and Fixes listed below.

### Security Updates

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

- Disallow caching of MIME/Content-Type errors
- Ensure `_forum_session` cookies cannot be reused between sites

## Plugin improvements

### Many plugins

- Translations
  - We’ve updated the translations in many of our plugins

### Assign

#### New Features

- Reassign workflow
- Small post action with link to post
- Display indirect assignments in the first post
- Assign to post

#### Bug Fixes

- Return proper aria-labels
- Correctly update UI when post is assigned/unassigned
- Rename action\_code\_href to action\_code\_path
- Missing assignee icon in search
- Move post assignment when move post
- Pin plugin version when running discourse `\<= 2.8.0.beta1
- Deprecate TopicAssigner

### Unhandled Tagger

#### Bug Fixes

- Use an atomic transaction to update tags
- Skip revision when adding unhandled tag

### Calendar

#### Bug Fixes

- Ensures notifications popup has a key

### Encrypt

#### Bug Fixes

- Swap fancy\_title with decrypted title

### SAML

#### New Features

- Added support for admin synchronisation
- Introduce saml\_groups\_ldap\_leafcn setting

### RSS Polling

#### New Features

- Allow to filter from feed category substring matches

### Subscriptions

#### Bug Fixes

- 500 error when editing a pricing plan

### Category Experts

#### Bug Fixes

- Add scores when creating reviewable
- Category link in reviewable
- Use preloaded post custom field
- Preload post custom fields

### Docs

#### Bug Fixes

- Hide navigation elements when printing a Docs topic

#### UX Changes

- Solved filter alignment adjustment

### Chat Integration

#### Bug Fixes

- Remove use of InputValidation library

## Additional Features and Fixes

> **Click to expand**
>
> ### New Features
> 
> - Direct S3 multipart uploads for backups
> - Use uppy for tags uploader
> - Small action post accepts href
> - Use uppy for watched word uploader
> - Move avatar uploader to uppy
> - Move emoji uploader to use uppy
> - Add setting to disable notifications for topic tags edits
> - Pull hotlinked images in user bios
> - Bypass topic bump when disable\_category\_edit\_notifications is enabled
> - Mark omniauth failures as HTML safe.
> - Include user custom fields in base exporter
> 
> ### Bug Fixes
> 
> - A screen-track/appEvents regression in #14929
> - Composer education message for group mentions were broken
> - Use previous chunk to check if local backup chunk upload complete
> - Set `null` to group if `groupAttrs` param is not available.
> - Use the same hljs version in prod and tests
> - Prevent `PreloadStore` from calling the finder when value is falsy
> - Use Map instead of Object for caching
> - Ensures minimum tags logic is correct and shared
> - Display top posts from private categories if the user has access.
> - Topic queryParams are removed from history state when scrolling.
> - `LocalJumpError` in rake tasks
> - Call `_clearFlash()` when displaying a modal
> - Don’t fail if `s3_install_cors_rule` is off
> - Use `127.0.0.1` instead of `localhost` for ember CLI
> - Disable scroll events while on full screen
> - Allow bulk invites to be used with [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)
> - In Ember CLI some plugin tests were referring to the wrong container
> - Make PostRevisor more consistent
> - Show perma-delete in menu without refresh
> - Remove xlink:href to favour href due to deprecation
> - Use correct attribute method to get post id from dataset.
> - Regression introduced in #14715
> - Keep topic context when redirecting to full search
> - Generate valid heading ids
> - Restore animation for like action on mobile
> - Persist notifications in OS X
> - Include admins in presence reply channel permissions
> - Rename action\_code\_href to action\_code\_path
> - Skip post validations for system revisions when author deletes post
> - Ensure CORS rules exist for S3 using rake task
> - Canonical URLs may be relative
> - Stop saving bookmark on modal press ESC
> - Ensure required\_tag\_group\_name is null if no value present
> - Exclude suppressed category topics in digest even if unmuted.
> - Rake categories:move\_topics shouldn’t move category description topic
> - Display Instagram Oneboxes in an iframe
> - Use mouse down event when cancelling search
> - Insert commas even when field value is null
> - Prevent duplicate search requests to backend
> - Deleting a for\_topic bookmark caused JS error
> - Use the same mode for chinese search when indexing and querying.
> - Resolve responses of 103 should be retried using small\_get
> - Include topic details when PMing
> - Allowed\_theme\_ids should not be persisted in GlobalSettings
> - Do not replace words in hashtags and mentions
> - Hide links to muted topics and in categories list
> - Avoid another N+1 query in `Site.json_for`
> - Update flair group of all members if primary group setting changed.
> - Should not receive topic invites from ignored users.
> - Do not perform link lookup for replaced links
> - Include new tags in validation if user can create one.
> - Cleanup PresenceChannel instances when composer closed
> - Prevents a circular json error in tests
> - Vanilla importer fixes
> - Avoid N+1 query in `Site.json_for`
> - Correctly avoid concurrent requests in PresenceChannel get
> - Do not send presence leave beacon if not present in any channels
> - Show right message when permanently deleting topic
> - Correct tracking context for some category routes
> - Include the Vary:Accept header on all Accept-based responses
> - Allow every tag for watched words
> - Remove superfluous topic allowed users on group invite
> - Correct site setting name
> - Don’t leak unhashed user API keys to redis
> - 2N+1 sql in admin /api/keys endpoint
> 
> ### UX Changes
> 
> - 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
> 
> ### Performance
> 
> - 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
