Releases: AOT-Technologies/forms-flow-ai
Form Versioning, Form Embedding, Draft Discard, Support for Resources, PDF templating Added & Modified Quick Installation
Added
forms-flow-web
- Added form versoning.
- Added discard option for draft feature.
- Added form embedding.
- Added support for resources
forms-flow-forms
- Added environment variable
FORMIO_CLIENT_UI
. - Added health check API-end point
/checkpoint
forms-flow-api
- Added DB changes to accomodate form type, parent form id.
- Added migration scripts in the alembic file to resolve schema conflicts while db upgrade and downgrade, check out here.
- Added new table for form history
- Added new api to get form history by form id.
- Added new api to delete draft.
- Added new api to get the list of users for a role/group from keycloak.
forms-flow-bpm
- Added environment variables
REDIS_ENABLED
,REDIS_HOST
,REDIS_PORT
,REDIS_PASSCODE
andSESSION_COOKIE_SECURE
.
forms-flow-documents
- Added support for PDF templating.
Modified
forms-flow-api
- Updated certifi to 2022.12.7, protobuf to 3.20.2 and joblib to 1.2.0.
- Modified swagger documentation.
forms-flow-bpm
Upgrade notes:
- spring boot upgraded from version 2.6.4. to 2.6.6.
- spring websocket upgraded from version 5.3.4 to 5.3.20.
- spring messaging upgraded from version 5.3.4 to 5.3.20.
- spring security Oauth2 upgraded from version 2.6.4. to 2.6.6.
- postgresql upgraded from version 42.4.1 to 42.4.3.
- jackson upgraded from version 2.13.3 to 2.14.0.
Fixed
forms-flow-api
- Fixed Python security vulnerabilities.
Generic Changes
-
In Quick Installation:
Fixed versions for databases.
Reduced script size.
Added IP confirmation to avoid IP issues. -
Moved form list of designer to forms-flow-api.
Known Issues
forms-flow-bpm
- Camunda Integration shows Invalid Credentials with formsflow.ai docker deployment, for more details refer here.
Note: Temporary fix added. Setting the value of environment variable SESSION_COOKIE_SECURE
to false
makes the camunda login works with ip.
For a production setup value should be true, which will work with Kubernetes and docker deployments with nginx.
Fixed form design window freeze issue.
forms-flow-web
Fixed
- Form design window freeze issue.
Patch release : Keycloak 15+ support
forms-flow-bpm:
- Added keycloak version 15+ support to BPM layer
Added Websocket Support for Multitenancy, API Support for Creating Application with data , Endpoints for process instance variables , Modified task page UI & Form Wizard Alignment
forms-flow-web
Added
- Added websocket support for multitenancy.
Modified
- Modified task page UI.
- Modified alignment of wizard.
Removed
- Removed environment variable
REACT_APP_FORMIO_JWT_SECRET
form config.sample.js.
forms-flow-api
Added
- Return the role name as path for authorization.
- Added formsflow API support to start application with data.
forms-flow-bpm
Added
- Added new endpoints for process instance variables.
Multitenancy Support, Draft Feature, Internationalization, Exporting PDF Feature, BPM Modeller, Form adapter, BPM Gateway, CD pipeline Added & Created new Formsflow.ai Documentation Page
Added
forms-flow-web
- Added pagination, search and sort for metrics page.
- Added default workflow for designer.
- Added Internationalization.
- Added multi-tenancy support.
- Added modal for submission details on metrics page.
- Added support for wizard forms.
- Added Export to PDF feature.
- Added application status
draft
for unfinished applications. - Added Processes page for camunda web modeller.
- Added Form Adapter to support form submission data to other data stores than Mongo with custom data URLs.
- Added environment variable
MULTI_TENANCY_ENABLED
,MT_ADMIN_BASE_URL
,MT_ADMIN_BASE_URL_VERSION
to support multitenancy. - Added environment variable
CUSTOM_SUBMISSION_URL
,CUSTOM_SUBMISSION_ENABLED
for support form adapter. - Added environment variables
DRAFT_ENABLED
,DRAFT_POLLING_RATE
to manage draft feature. - Added environment variable
EXPORT_PDF_ENABLED
for pdf service. - Added environment variable
DOCUMENT_SERVICE_URL
for document service.
forms-flow-forms
- Added new Repository , for more details checkout here.
- Added environment variable
MULTI_TENANCY_ENABLED
to support mulitenancy.
forms-flow-api
- Added multi-tenancy support.
- Added support for default workflow with form.
- Added API support for
draft
feature. - Added API support for
Form Adapter
. - Added environment variable
MULTI_TENANCY_ENABLED
,KEYCLOAK_ENABLE_CLIENT_AUTH
to support mulitenancy.
forms-flow-bpm
- Added default workflow.
- Added
Form Adapter
to support form submission data to other data stores than Mongo with custom data URLs. - Added bpm gateway with jersey implementation.
- Added environment variable
MULTI_TENANCY_ENABLED
,KEYCLOAK_ENABLE_CLIENT_AUTH
,KEYCLOAK_WEB_CLIENTID
,FORMSFLOW_ADMIN_URL
for multitenancy support. - Added environment variable
CUSTOM_SUBMISSION_URL
,CUSTOM_SUBMISSION_ENABLED
for support form adapter.
forms-flow-documents
- Added document API to provide generate pdf with form submission data.
- Added environment variable
MULTI_TENANCY_ENABLED
,KEYCLOAK_ENABLE_CLIENT_AUTH
to support mulitenancy .
forms-flow-analytics
- Added environment variable
REDASH_MULTI_ORG
to support multitenancy.
Modified
forms-flow-web
- Metrics page UI modified.
- Form page UI modified.
- Accessibility enhancement.
- service-worker updated.
- React build size optimized.
Upgrade notes:
- Environment variables modified
CAMUNDA_API_URL
toBPM_API_URL
. - Environment variables modified
REACT_APP_CAMUNDA_API_URI
toREACT_APP_BPM_URL
in config.sample.js
forms-flow-forms
- Modified Docker-compose to point to create image from the new Repository.
forms-flow-api
- Dependencies like utils, formio, JWT authentication moved to
forms-flow-api-utils
.
Upgrade notes:
- Environment variables modified
BPM_API_BASE
toBPM_API_URL
.
forms-flow-bpm
Upgrade notes:
- Camunda upgraded from 7.15 to 7.17.
- Java upgraded from 11 to 17.
- springboot upgraded from 2.4.8 to 2.6.4.
- camundaKeycloak upgraded from 2.2.1 to 2.2.3.
- camundaConnect upgraded from 7.15.0 to 1.5.0.
- camundaMail upgraded from 1.2.0 to 1.3.0.
- Environment variables modified
BPM_BASE_URL
toBPM_API_URL
. - formUrl parameter is changed to webFormUrl in DMN template.
- BPM base path changed from
/camunda/engine-rest
to/camunda/engine-rest-ext/v1
Removed
forms-flow-web
- Removed View submissions button from reviewer form list and view submissions route.
- Removed the environment variables
CLIENT_ROLE_ID
,DESIGNER_ROLE_ID
,REVIEWER_ROLE_ID
,ANONYMOUS_ID
,USER_RESOURCE_ID
, 'FORMIO_JWT_SECRET'.
Generic Changes
- Docker-compose files changed to single one.
- Added CI/CD pipeline.
- Environment variables updated with dynamic role-id fetching.
- Added new detailed documentation, checkout here.
Sentiment Analysis API Updates and public form authentication fixes
Fixed
forms-flow-web
- Fixed public form authentication check.
Modified
forms-flow-data-analysis-api
- Modified DataAnalysis API and Sentiment-analysis Jobs.
Anonymous form submission support added, Single click Installation Script added, Form search added, Form mapper version added, CI pipeline added and Task variables added to Task List
Added
forms-flow-web
- Added
anonymous user
feature . - Added count for Filter Tasks .
- Added form list page search and sort.
- Added new UI for task variable.
- Added form name as part of filename when downloaded.
- Added the status of the earlier version as inactive when a new version of the form is created/deleted.
- Added submitter name in the application history table.
- Added Cancel button for form edit.
- Added task variable in tasklist page at LHS.
- Added CI pipeline.
forms-flow-api
- Added public application create api for anonymous forms.
- Added migration scripts in the alembic file to resolve schema conflicts while db upgrade and downgrade, check out here.
- Added new api for updating user locale attribute in Keycloak with the help of Keycloak admin API.
- Added form list page search and sort.
- Added CI pipeline.
- Added DB changes to accomodate task variable.
forms-flow-data-analysis-api
- Added DataAnalysis API and Sentiment-analysis Jobs.
forms-flow-idm
- Added
manage-users
group to assigned client roles in realm-management.Check out the details at Service Accounts Tab from here. - Added project specific custom login theme , check out the steps here.
forms-flow-bpm
- New (Task / Execution) Listener FormBpmFilteredDataPipelineListener Included for the effective form to bpm data copy.
- Added CI pipeline.
Fixed
forms-flow-web
- Uploaded forms cannot submit by client issue fixed .
- Application not getting in iOS issue fixed.
- Fixed process variable's data type in task filter.
forms-flow-api
- Postgres schema upgraded to enable updating the workflow after publising the form
- Disabled internal workflows for process API.
forms-flow-bpm
- Security context/authorization was not propogated to web-client while enabling asynchronous continutaion/intermediate timer events.
- Many minor performance optimizations and fixes are done.
Modified
forms-flow-web
- Modified application name search with lowercase and by intermediate search.
- Front-end support for the form process mapper versioning and database normalization.
- User is not be able to change the workflow of published form.
- Form Url support both pathname and formid to fetch the form.
forms-flow-api
- API support for application name search with lowercase and by intermediate search.
- Postgres database normalization and provided support for form process mapper versioning.
Upgrade notes:
KEYCLOAK_BPM_CLIENT_SECRET
is not mandatory.
Due to the architectural changes to the Postgres database, it is recommended to back up the data before the upgrade.
forms-flow-bpm
Upgrade notes:
KEYCLOAK_BPM_CLIENT_SECRET
is not mandatory.
Removed
forms-flow-web
- Removed 'PDF' from display as option while creating form as designer.
forms-flow-api
Upgrade notes:
Environment variables KEYCLOAK_ADMIN_USERNAME
and KEYCLOAK_ADMIN_PASSWORD
are removed since now the
admin APIs are accessed using the service account.
forms-flow-bpm
- FormAccessTokenCacheListener is deprecated ,will be removed from the codebase in the upcoming releases.
- formio-access-token.bpmn workflow is permanently removed from the codebase.
Upgrade notes:
- For the upgrading user's formio-access-token.bpmn workflow should be manually stopped and deleted using these instructions from here
Generic Changes
- Added docker based automated installation.For installation guide, check out here.
- Existing users should build forms-flow-bpm,forms-flow-webapi and forms-flow-web together.
Test Cases added, Upgrades done for Formio, Camunda and Redash versions and Dashboard Configuration Page added for Insights
Added
forms-flow-bpm
- Added test cases and code coverage.
Upgrade notes:
New environment variables DATA_BUFFER_SIZE
, IDENTITY_PROVIDER_MAX_RESULT_SIZE
.
forms-flow-web
- Admin page to map insights dashboards to keycloak groups.
- Added test cases and code coverage, check out the details here.
Upgrade notes:
New environment variables FORMIO_JWT_SECRET
. It's highly recommended to change this environment variable for existing installations.
forms-flow-api
- Added
pagination
,sorting
andfiltering
for Application Page. - Added new APIs which acts as a gateway for calling forms-flow-analytics APIs.
- Added new API for modifying group details in Keycloak with the help of Keycloak admin APIs.
- Add application status list API.
- Added unit test cases and new script for CI operations.
Upgrade notes:
New environment variables KEYCLOAK_ADMIN_USERNAME
, KEYCLOAK_ADMIN_PASSWORD
, INSIGHT_API_URL
, INSIGHT_API_KEY
.
forms-flow-analytics
- Added Dashboard authorisation at Redash dashboard level.
forms-flow-forms
- Added indexes in Submission collection for applicationId, process_pid.
Upgrade notes:
New environment variables FORMIO_JWT_SECRET
. It's highly recommended to change this environment variable for existing installations.
forms-flow-idm
- Added new groups and mapper for Dashboard authorisation at Redash dashboard level.
Upgrade notes:
- To enable dashboards, and provide authorization the following changes are required in existing installations:
- Create a new main group called
formsflow-analytics
, and create as many subgroups as you want to associate various dashboards from Admin UI(in Designer) - Create a new mapper under forms-flow-web client in Keycloak, by following below steps:
* Name = dashboard-mapper
* Mapper Type = User Attribute
* User Attribute = dashboards
* Token Claim Name = dashboards
* Add to ID Token = ON
* Add to access token = ON
* Add to userinfo = ON
* Multivalued = ON
* Aggregate attribute values = ON
* Click Save
- Corresponding to each user, add the dashboard-groups you want to enable for dashboard authorization.
This will give users permission to as many dashboards which the group have been enabled with from Admin.
Fixed
forms-flow-api
- Fixed application metrics showing incorrect results by changing date to filtered based on timezone.
forms-flow-bpm
- Improved token creation logic using Oauth2RestTemplate.
- Code cleanup and optimization.
forms-flow-web
- Fixed total task count shown on the task LHS side and updated only after refreshing the page.
- Tasklist API updated.
Modified
forms-flow-web
Upgrade notes:
Removed environment variables INSIGHT_API_URL
, INSIGHT_API_KEY
Solution Component Upgrades
forms-flow-bpm
- Camunda upgrade from
7.13.0
to7.15.0
. - Upgraded springboot from
2.4.2
to2.4.8
- Upgraded spring-security-oauth2 from
2.4.2
to2.4.8
Upgrade notes:
After v4.0.4 version upgrade, Run the migrations with upgrade file.
forms-flow-analytics
- Upgraded redash library to version from
9.0.0-beta
to10.1.0
Upgrade notes:
After v4.0.4 version upgrade, run the following command first to run the necessary migrations with the command:
docker-compose -f docker-compose-linux.yml run --rm server manage db upgrade
docker-compose -f docker-compose-linux.yml up --force-recreate --build
In case you want to downgrade to the v9.0-beta of forms-flow-analytics component after formsflow.ai version upgrade.
To update the migrations and rebuild formsflow.ai. Use the below commands which was used in setup.
Also note that we are not supporting downgrade to any version below Redash v9.0(which has be used from formsflow.ai v4.0 onwards).
forms-flow-forms
- Formio upgrade from
2.0.0-rc.34
to2.3.0
.
Known Issues
- In case you are facing mongodb connection refused error for forms-flow-forms, downgrade to the next lowest mongo stable version
- Consoles related to http://localhost:3001/current Api Failing. The console messages can be ignored. Please refer to Issue-#106 for more details.
Task List Optimization, Added Support for Form Migration from UI, Logging Improvements and Metrics Updated
Added
forms-flow-bpm
- Added new postman collections for camunda API.
- Runtime logger level updation
forms-flow-web
- Added upload/download forms feature.
- Added a feature to search submissions in metrics based on created or modified date range.
forms-flow-api
- Better logging for Python API including coloured logs and API time details.
- Add pessimistic Database disconnection handling mechanism.
Fixed
forms-flow-bpm
- Fixed the issue of Oauth2 RestTemplate was recreating each time, so the session was getting created so many times.
- Exception handling & Retry for External form submission listener in ExternalFormSubmissionListener
- Usage issue fixed with ApplicationAuditListener.
forms-flow-analytics
- Resolve analytics component breaking due to SIGSEV Memory issue.
forms-flow-web
- Fixed server side pagination for
Task
page. - Fixed Items per page dropdown in the form page for designer.
Modified
forms-flow-bpm
- Upgraded Camunda BPM Identity Keycloak to 2.2.1
forms-flow-api
- Add orderBy field to
metrics
API to display API based on created date and modified date. - Changed default timezone to UTC time instead of being set as users local time.
forms-flow-web
- Footer was modified to display formsflow.ai with the version number.
- Optimized task list page by limiting the number of backend calls.
BPM Task Listener Event Updates, Analytics build Update, Task UI functionality/performance Improvement and Added gitter Community
Added
forms-flow-bpm
- Added a new property called websocket.messageEvents. It allows configuring the required task listener events that will be published. The default value for this property is DEFAULT which publishes CREATE, UPDATE, and COMPLETE events.
generic
- Introduced gitter community for formsflow.ai
Fixed
forms-flow-analytics
- Creation of new data source which always failed.
forms-flow-bpm
- Approver action dropdown appearing on the clerk's task section once the approver does a
return
action on the form is fixed for theNew Business License Application form
.
forms-flow-idm
- Additional parameters present in the default configuration import file caused the import to fail in Keycloak v11.0.
forms-flow-web
- When a user completes a task, it is not removed from Left-Hand-Side on the tasks page if that is the last task on a workflow.
- Npm dependent package vulnerabilities fixed.
- A form that was open on the Right-Hand-Side is not refreshed when the user claims it. This issue occurs when another person works on the same form and then saves their changes. That saved changes won’t be visible to the first user without a hard refresh.
- Identified & removed redundant calls that were happening due to client-side API recalls and multiple events on updating the task details.
Modified
forms-flow-api
- Refactored Code usage of Application Audit to Application History (Note: database table names not changed).
- Removed Sentiment Analysis component and database, which will be separate micro-service in an upcoming release.
forms-flow-bpm
- Keycloak integration component no longer makes Keycloak API calls to retrieve user group information. Instead, it will be retrieving this information from the JWT token.
- Formio Access Token Cache (Internal) workflow is modified to start immediately after deployment and includes scripts for cleaning up older process deployment an instance.
forms-flow-web
- An application status component is created as a hidden element by default during form design.