Releases: Squidex/squidex
7.15.0
Fixed
- Contents: Fix to also deliver fields that have the same name as meta fields.
- Contents: Never return null statuses for content queries.
- Migration: Fix log message in migration.
- UI: Correctly remove the filter row, when the delete button is returned.
- UI: Fix autocompletion for code editors.
- UI: Fix clipboard behavior for rich text editor.
- UI: Fix seperator in login screen.
- UI: Navigate to the correct page when the back button on the content page is fixed.
- UI: Show filters in query dialog when selecting references.
- UI: Use correct npm packages to prevent version conflicts.
Added
- Contents: New flag to also enrich required fields.
- Contents: New header flag to not enrich queried content items with default values.
- UI: Make the code editor editable in the markdown mode of the rich text editor.
- UI: New event for editor extensions when the context has been changed.
- UI: Support data attributes for Squidex tokens in embed SDK.
7.14.0
Fixed
- AI: Add article generation with embedded images using Open-AI and Dall-E.
- AI: Add image generation with Dall-E.
- AI: Add streaming to AI tools.
- AI: Show used tools in the AI chat.
- API: Fixes some type in OpenAPI.
- Assets: Make
sourceUrl
in GraphQL nullable. - Contents: Fixed sharding for very long content IDs.
- Contents: Fixes to inline editor in content list.
- Contents: Improve translation for
IN
operator. - Contents: Proper positioning of cursors in content view.
- Contents: Use correct name for reference fields.
- Contents: Use the correct version (normal vs draft) for workflows.
- GraphQL: Use proper JSON type in GraphQL to allow mutations with variables.
- Monitoring: Use correct version of Google Traces.
- Sharding: Use deterministic hash codes for content items.
- UI: Add support for
NOT
operator in filter UI. - UI: Fix layout of modal dialogs with proper alignment.
- UI: Fix positioning of buttons on the top right of each content field.
- UI: Several fixes to text and translations.
- UI: Show a correct name if a language has no display name.
Changed
- UI: Improve error messages for background jobs.
- UI: Improvements to the navigation to keep the browser history intact.
- UI: Update to Angular 18.
- UI: Update to Angular control flow syntax.
Added
- Assets: Make file hash optional in MongoDB to be more compatible with old installations.
- Assets: New metadata for SVG dimensions (
svgWidth
,svgHeight
,viewBox
). - Contents: Added menu item to content list item to open content in new tab.
- Contents: New update statements for Upsert, Update and Patch.
- Docker: Build ARM images.
- Identity: Added prompt parameter for OIDC authentication.
- Identity: Allow custom OIDC servers for teams.
- Rules: Make fluid extensions more flexible.
7.13.0
Fixed
- API: Do not normalize field names in error response.
- Apps: Fix registration of app deleter when permanent app deleteion is enabled.
- Contents: Fix full text handling for large content IDs.
- Contents: Rich Editor. Allow overlapping class names.
- Contents: Rich Editor. Correctly calculate the word and character count.
Changed
- API: Update NSwag
- API: Update OpenIdDict.
Added
- Jobs: Notification when jobs are completed.
7.12.0
Fixed
- Assets: Correct deserialization of assets without total asset size.
- Comments: Allow to reply to all comments, not only own comments.
Changed
- Jobs: New job system to unify rules, backups and future background jobs.
7.11.0
Fixed
- UI: Fixed the usage rule form.
- UI: Fixed deserialization of schemas.
Added
- Contents: New endpoint and methods to apply default values to existing content items.
7.10.0
This release will rebuild the text indexes for improved performance. Usually it will handle around 500 events per second, so depending on the number of changes in your system it can take from a few minutes up to several minutes. Other endpoints are not effected. If you have a dedicated worker, you can deploy this first and wait for the process to be finished before you deploy other nodes. This will not cause any downtimes in the full text search functionality.
This release also updates the backend to .NET 8.
Fixed
- UI: Fixes to the chat dialog.
Changed
- Assets: New configuration flag to enable the automatic conversion of assets into AVIF or WEBP, depending on the browser support.
- ContentS: Change field names for field rules to the JSON compatible name (e.g.
data.fieldName
). - Contents: Use correct indexes for improved performance.
- UI: Add script for redoc directly to the output and do not rely on CDN.
- Update: Update to .NET 8.
- Update: Update to Angular 17 and standalone components.
Added
- Contents: New rich text field that stores the content as JSON structure and provides on demand formatting into HTML and markdown over GraphQL.
- MongoDB: Ability to split up your assets database into multiple databases by using the app ID as a partition key. Only important if you have many apps.
- MongoDB: Ability to split up your contents database into multiple databases by using the app ID as a partition key. Only important if you have many apps.
- MongoDB: Ability to split up your texts database into multiple databases by using the app ID as a partition key. Only important if you have many apps.
- UI: Annotations for rich text editor.
- UI: Plugin for contents list.
Security
- Security: Set secure policy on antiforgery cookie to always.
7.9.0
This release contains a breaking change. Due to security reasons content policy headers where added to prevent script execution for assets. If you have uploaded html files with scripts as assets, this will not work anymore. There is no fallback, you haveto upload your files to another location like a github repository. We might remove the header if we have a better solution for that.
Fixed
- Events: Fixes the query to use the correct index.
- Rules: Fix the UI for content trigger to always show the schem names.
Changed
- UI: New content editor for markdown fields. The old editor is available under: https://squidex.github.io/squidex-samples/editors/markdown/index.html
- UI: New content editor for rich text fields. The old editor is available under: https://squidex.github.io/squidex-samples/editors/richtext/index.html
- UI: New collaboration feature based on yjs. This removes all existing comments and notifications.
- UI: Improved AI chat dialog.
- UI: Only show the AI button when a chat bot is enabled in the settings.
Added
- GraphQL: Add the schema name to component types.
Security
- CVE-2023-46253 / Assets: Fix a bug where an asset could be written outside the app folder: GHSA-phqq-8g7v-3pg5
- CVE-2023-46252 / Editor: Remove the editor js sample from the file system, because it allows to execute arbitrary JavaScript code in the context of a user authenticated to Squidex: GHSA-7q4f-fprr-5jw8
- CVE-2023-46857 / Assets: Incorrect SVG filtering. Implemented a more restrict filter: GHSA-xfr4-qg2v-7v5m
7.8.2
Fixed
- Assets: Fixed S3 configuration.
- Contents: Fixed a query that was causing exceptions when using pagination.
- UI: Generate unique IDs for radio groups to fix a problem when multiple groups exist per page.
Changed
- UI: Migration to angular 16.
- UI: Better chat dialog.
Added
- Contents: Default values for array fields.
- Contents: Default values for components fields.
- Rules: Support for deep detect to annotate images with AI models.
- UI: Widget plugins for teams and app dashboard.
7.8.1
Fixed
- Rules: Scripting inputs are saved as plain text and therefore not interpreted.
7.8.0
Fixed
- API: Reduced memory allocations when computing hashes.
- API: Reduced memory usage for GraphQL schemas.
- Comments: Fixed mentions for longer comments.
- GraphQL: Use the data loaders correctly, which increases performance up to factor 5, depending on the queries.
- OpenAPI: Use camel-casing for shared models for content APIs, e.g.
ErrorDto
.
Changed
- Assets: Remove all metadata when uploading an image.
- General: Rework of asynchronous background processes.
- GraphQL: Only query the selected fields from MongoDB to increase performance.
- UI: Fixes autocompletion for Liquid templates.
Added
- API: New header to only query the selected fields from MongoDB to increase performance.