Skip to content

Commit

Permalink
Merge pull request #281 from netgrif/dev
Browse files Browse the repository at this point in the history
Release/6.4.0
  • Loading branch information
machacjozef authored Dec 24, 2024
2 parents 188e92d + 1ea1ea6 commit f57bcb7
Show file tree
Hide file tree
Showing 278 changed files with 9,668 additions and 2,369 deletions.
7 changes: 7 additions & 0 deletions .github/workflows/master-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,13 @@ jobs:
- 9300:9300
options: -e="discovery.type=single-node" -e="xpack.security.enabled=false" --health-cmd="curl http://localhost:9200/_cluster/health" --health-interval=10s --health-timeout=5s --health-retries=10

minio:
image: docker.io/bitnami/minio:2022
ports:
- 9000:9000
- 9001:9001
options: -e="MINIO_ROOT_USER=root" -e="MINIO_ROOT_PASSWORD=password" -e="MINIO_DEFAULT_BUCKETS=default"

steps:
- name: Test Database
env:
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/pr-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,13 @@ jobs:
- 9300:9300
options: -e="discovery.type=single-node" -e="xpack.security.enabled=false" --health-cmd="curl http://localhost:9200/_cluster/health" --health-interval=10s --health-timeout=5s --health-retries=10

minio:
image: docker.io/bitnami/minio:2022
ports:
- 9000:9000
- 9001:9001
options: -e="MINIO_ROOT_USER=root" -e="MINIO_ROOT_PASSWORD=password" -e="MINIO_DEFAULT_BUCKETS=default"

steps:
- name: Test Database
env:
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/release-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,13 @@ jobs:
- 9300:9300
options: -e="discovery.type=single-node" -e="xpack.security.enabled=false" --health-cmd="curl http://localhost:9200/_cluster/health" --health-interval=10s --health-timeout=5s --health-retries=10

minio:
image: docker.io/bitnami/minio:2022
ports:
- 9000:9000
- 9001:9001
options: -e="MINIO_ROOT_USER=root" -e="MINIO_ROOT_PASSWORD=password" -e="MINIO_DEFAULT_BUCKETS=default"

steps:
- name: Test Database
env:
Expand Down
49 changes: 47 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,53 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres
to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

Full Changelog: [https://github.com/netgrif/application-engine/commits/v6.3.2](https://github.com/netgrif/application-engine/commits/v6.3.2)
Full Changelog: [https://github.com/netgrif/application-engine/commits/v6.4.0](https://github.com/netgrif/application-engine/commits/v6.4.0)

## [6.4.0](https://github.com/netgrif/application-engine/releases/tag/v6.4.0) (2024-12-24)

### Fixed
- [NAE-1908] NAE-1906 Improvements
- [NAE-1937] Fix the problem with empty string in filter
- [NAE-1884] Improve execution of auto trigger tasks
- [NAE-1956] setData fails on setting allowedNets without value key
- [NAE-1959] Indexing enumerationMap field fails when no options exist
- [NAE-1960] Enumeration Map does not propagate changes when selecting
- [NAE-1967] Elasticsearch disable dynamic field mapping
- [NAE-2006] WorkflowService.deleteInstancesOfPetriNet does not remove all cases
- [NAE-1983] Public view file handling
- [NAE-2007] Vulnerabilities fix
- [NAE-1952] Fix Loading Issue for Duplicate TaskRef Entries
- [NAE-2014] Mismatch in PublicTaskController and TaskController endpoint
- [NAE-2024] Collective bug fix
- [NAE-1948] Bugs after merge to 6.4.0

### Added
- [NAE-1901] Taskref list rendering update
- [NAE-1497] Frontend Actions
- [NAE-1916] Serializable core objects
- [NAE-1918] Tags on process resources
- [NAE-1929] Data field type list of strings
- [NAE-1936] Disable create case button using menu items
- [NAE-1876] Process URI v2
- [NAE-1882] Filter folder process
- [NAE-1906] Merge NAE-1882 with NAE-1904
- [NAE-1908] switch UriNode to MongoDB
- [NAE-1944] Server-side JavaScript Code Injection (SSJI)
- [NAE-1654] Find actions for Elasticsearch
- [NAE-1813] Field id as path variable in TaskController
- [NAE-1955] Update setData to handle options / choices
- [NAE-1958] Make component properties changeable
- [NAE-1962] Event properties
- [NAE-1946] Remote file connector to S3
- [NAE-1927] Shared Roles
- [NAE-1945] External resource loader
- [NAE-2008] Serialisation of classes
- [NAE-2016] Global roles for menu items permissions

### Changed
- [NAE-1947] HistoryService findAllSetDataEventLogs is not working
- [NAE-1979] Optimize Maven Resources Plugin Configuration for Correct File Filtering and Copying


## [6.3.3](https://github.com/netgrif/application-engine/releases/tag/v6.3.3) (2024-01-19)

Expand All @@ -20,7 +66,6 @@ Full Changelog: [https://github.com/netgrif/application-engine/commits/v6.3.2](h

- [NAE-1932] Enhancement of Redis Connector to Support Authentication


## [6.3.2](https://github.com/netgrif/application-engine/releases/tag/v6.3.2) (2023-11-08)

### Fixed
Expand Down
1 change: 0 additions & 1 deletion THIRD-PARTY.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@ Lists of 378 third-party dependencies.
(The Apache Software License, Version 2.0) project ':json-path' (com.jayway.jsonpath:json-path:2.6.0 - https://github.com/jayway/JsonPath)
(Eclipse Public License, Version 1.0) (GNU Lesser General Public License, Version 2.1) mchange-commons-java (com.mchange:mchange-commons-java:0.2.15 - https://github.com/swaldman/mchange-commons-java)
(The Apache Software License, Version 2.0) lang (com.mysema.commons:mysema-commons-lang:0.2.4 - http://www.github.com/mysema/mysema-commons-lang)
(Unknown license) quartz-mongodb (com.novemberain:quartz-mongodb:2.2.0-rc2 - no url defined)
(Apache License, Version 2.0) Querydsl - Codegen utils (com.querydsl:codegen-utils:5.0.0 - https://querydsl.github.io/codegen-utils/)
(Apache License, Version 2.0) Querydsl - APT support (com.querydsl:querydsl-apt:5.0.0 - http://www.querydsl.com)
(Apache License, Version 2.0) Querydsl - Codegen module (com.querydsl:querydsl-codegen:5.0.0 - http://www.querydsl.com)
Expand Down
20 changes: 20 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,26 @@ services:
image: redis:6
ports:
- "6379:6379"
minio:
image: docker.io/bitnami/minio:2022
ports:
- '9000:9000'
- '9001:9001'
networks:
- minionetwork
volumes:
- 'minio_data:/data'
environment:
- MINIO_ROOT_USER=root
- MINIO_ROOT_PASSWORD=password
- MINIO_DEFAULT_BUCKETS=default
networks:
minionetwork:
driver: bridge

volumes:
minio_data:
driver: local

# kibana:
# image: docker.elastic.co/kibana/kibana:7.17.4
Expand Down
25 changes: 25 additions & 0 deletions docs/actions/frontend-actions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Frontend Actions
Frontend actions are type of actions that are executed on frontend. The action implementation is done as part of
frontend code and they can be called from inside data or transition events.

## Calling an action from process code

A frontend action is being called from inside events. The syntax is as follows:
```
Frontend.<action_name>(Object args...)
```

Example:
```
<event type="set">
<id>data_set_event</id>
<actions phase="post">
<action id="action_0">
Frontend.redirect("login")
</action>
</actions>
</event>
```

This code is sent to frontend as an attribute of `outcome` object, then frontend parses it
and calls the required action.
35 changes: 35 additions & 0 deletions docs/resources/resources_loading.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Resource Loading

If you want to load resources, which are not included in JAR (for example large files), you can use the resource loader.
ResourceLoader returns an InputStreamResource. You can turn it into an InputStream and load resources from the directory **resource/** in the working directory of the app.
The prefix for ExternalResourceLoader is

```
resource:
```

For use you can use code like this in your runner:
```java
@Autowired
private ResourceLoader resourceLoader;

@Value("resource:nameOfFile.txt")
private Resource customResource;

@Override
void run(String... strings) throws Exception {
loadResources("resource:nameOfFile.txt");
}

void loadResources(String resourceUrl) {
var resource = resourceLoader.getResource(resourceUrl);
var txt = new String(resource.getInputStream().readAllBytes());
System.out.println("File content: " + txt);
}

void getCustomResource() throws IOException {
var txt = new String(customResource.getInputStream().readAllBytes());
System.out.println("Resource from property: " + txt);
}
```

36 changes: 36 additions & 0 deletions docs/roles/shared_roles.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Shared roles
Shared roles or global roles are roles that are only created once and can be used and referenced across Petri nets.
To use a shared role in Petri nets first we must declare it. We can declare it as any other role with addition of ``global``
attribute set to ``true``:
```xml
<document xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xsi:noNamespaceSchemaLocation='https://petriflow.com/petriflow.schema.xsd'>
<id>nae_1927</id>
...
<role global="true">
<id>admin_global</id>
<title>Global Administrator</title>
</role>
...
</document>
```
Then we can reference it as usual:
```xml
...
<transition>
<id>t1</id>
<x>460</x>
<y>180</y>
<label>Global roles</label>
<roleRef>
<id>admin_global</id>
<logic>
<view>true</view>
<perform>true</perform>
</logic>
</roleRef>
</transition>
...
```
When importing a Petri net, the importer checks, whether the global role has already existed.
If not, the importer creates one. If there has been already one, the importer passes it to a the newly created net.
Loading

0 comments on commit f57bcb7

Please sign in to comment.