- Association field component improvements, support for multiple component switching
- Select
- Record picker
- Sub-form/Sub-details
- Sub-table
- File manager
- Title(read only)
- Quick creation of relational data, supports two quick creation modes
- Add in drop-down menu to quickly create a new record based on the title field
- Add in pop-up window to configure complex add forms
- Duplicate action, supports two modes
- Direct duplicate
- Copy into the form and continue to fill in
- Form data templates
- Filter data scope support variables
- List block
- Grid card block
- Mobile client plugin
- User authentication plugin, support for different authentication methods
- Email/Password
- SMS
- OIDC
- SAML
- Workflow nodes
- Manual node upgrade, support for adding and editing from existing collections
- Loop node
- Aggregate node
- File manager
- Provide file collection template
- Provide file manager component
## Upgrading applications
### Upgrading for Docker compose
No change, upgrade reference [Upgrading for Docker compose](/welcome/getting-started/upgrading/docker-compose)
### Upgrading for Git source code
v0.10 has a major upgrade of dependencies, so to prevent errors when upgrading the source code, you need to delete the following directories before upgrading
See [Upgrading for Git source code](/welcome/getting-started/upgrading/git-clone) for more details
### Upgrading for create-nocobase-app
It is recommended that `yarn create` re-download the new version and modify the `.env` configuration, for more details refer to [major version upgrade guide](/welcome/getting-started/upgrading/create-nocobase-app#major-upgrade)
## Upcoming deprecated and potentially incompatible changes
### Sub-table field component
Not compatible with new version, block fields need to be removed and reassigned (UI reassignment only)
### Attachment upload api changes
In addition to the built-in attachments table, users can also custom file collection, the upload api for attachments has been changed from `/api/attachments:upload` to `/api/<file-collection>:create`, upload is deprecated, still compatible with v0.10 but will be Removed.
### signin/signup api changes
The nocobase kernel provides a more powerful [auth module](https://github.com/nocobase/nocobase/tree/main/packages/plugins/auth) with the following changes to the user login, registration, verification, and logout apis:
```bash
/api/users:signin -> /api/auth:signIn
/api/users:signup -> /api/auth:signUp
/api/users:signout -> /api/auth:signOut
/api/users:check -> /api/auth:check
```
Note: The above users interface, which is deprecated, is still compatible with v0.10, but will be removed in the next major release.
### Adjustments to date field filtering
If date related filtering was previously configured in the data range, it needs to be deleted and reconfigured.
## Third-party plugin upgrade guide
### Dependencies upgrade
dependencies mainly including
-`react` upgrade to v18
-`react-dom` upgrade to v18
-`react-router` upgrade to v6.11
-`umi` upgrade to v4
-`dumi` upgrade to v2
The `package.json` dependencies should be changed to the latest version, e.g:
```diff
{
"devDependencies": {
+ "react": "^18".
+ "react-dom": "^18".
+ "react-router-dom": "^6.11.2".
- "react": "^17".
- "react-dom": "^17".
- "react-router-dom": "^5".
}
}
```
### Code changes
Because react-router has been upgraded, the related code also needs to be changed, the main changes include
### Layout Component
Layout component needs to use `<Outlet />` instead of `props.children`.
```diff
import React from 'react';
+ import { Outlet } from 'react-router-dom';
export default function Layout(props) {
return (
<div>
- { props.children }
+ <Outlet/>
</div>
);
}
```
if you use `React.cloneElement` to render the route component, you need to change it like this: