Skip to content

Commit

Permalink
Merge branch 'developer'
Browse files Browse the repository at this point in the history
  • Loading branch information
abainczyk committed Jun 12, 2020
2 parents aac26a4 + 13626b7 commit c063e41
Show file tree
Hide file tree
Showing 1,634 changed files with 90,137 additions and 46,203 deletions.
2 changes: 0 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ frontend/src/main/javascript/node_modules
frontend/src/main/javascript/dist
frontend/src/main/javascript/test/coverage
frontend/src/main/javascript/npm-debug\.log
frontend/src/main/javascript/package-lock\.json
frontend/src/main/javascript/dist

# uploaded files
Expand All @@ -27,4 +26,3 @@ main/uploads
# genereated user documentation
documentation/src/main/docs/.vuepress/dist
documentation/src/main/docs/node_modules
documentation/src/main/docs/package-lock\.json
19 changes: 4 additions & 15 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,17 +1,8 @@
language: java

dist: trusty
dist: bionic
sudo: true

addons:
apt:
sources:
- sourceline: "deb https://deb.nodesource.com/node_10.x trusty main"
key_url: "https://deb.nodesource.com/gpgkey/nodesource.gpg.key"
packages:
- nodejs
- chromium-chromedriver

cache:
directories:
- $HOME/.m2
Expand All @@ -26,7 +17,7 @@ install:
- cp ${TRAVIS_BUILD_DIR}/.travis/settings.xml ${HOME}/.m2/settings.xml

script:
- mvn clean install -Pbootstrap,code-analysis,documentation,integration-tests
- mvn clean install -Pcode-analysis,documentation,integration-tests

branches:
only:
Expand All @@ -35,12 +26,10 @@ branches:

jobs:
include:
- jdk: openjdk8
- jdk: openjdk11
- jdk: oraclejdk8
- jdk: oraclejdk11
- stage: "Coverage"
jdk: openjdk8
jdk: openjdk11
script:
- mvn install -Pbootstrap,code-analysis,integration-tests # code-analysis currently includes JaCoCo
- mvn clean install -Pcode-analysis,integration-tests
- mvn coveralls:report
32 changes: 32 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,35 @@
# ALEX 2.0.0

## Fixes

* Scoping issues with variables

## Improvements

* Add Flyway support
* Migrate frontend to Angular 8
* Server-side import and export
* Add stack trace for failed tests
* Abort test processes more quickly
* Show symbol references
* Support for Java 11

## Features

* Project environments: create environments and environment variables
* New actions:
* Drag and drop operations
* goto-like jumps
* waiting for a script
* Update a test suite during test generation
* Extend "switch to" action for handling windows
* Import and export for projects
* Specify default test configurations
* Multiple pre and post steps for test cases
* Queue test and learning processes
* Save learning setups
* Collaboration for projects

# ALEX 1.7.2

## Fixes
Expand Down
25 changes: 25 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
FROM node:12 as builder-frontend
WORKDIR /root/workdir
COPY ./frontend/src/main/javascript .
RUN npm ci
RUN npm run build

FROM maven:3 as builder-backend
WORKDIR /root/workdir
COPY . .
COPY --from=builder-frontend /root/workdir/dist ./frontend/target/classes
RUN mvn install package -P !build-frontend

FROM debian as builder-ltsmin
WORKDIR /root/workdir
RUN apt-get update -qq && apt-get upgrade -qq && apt-get install -qq wget
RUN wget http://github.com/utwente-fmt/ltsmin/releases/download/v3.0.2/ltsmin-v3.0.2-linux.tgz
RUN tar -xzf ltsmin-v3.0.2-linux.tgz
RUN mv v3.0.2 ltsmin

FROM openjdk:12
COPY --from=builder-backend /root/workdir/build/target/alex-2.0.0.war /usr/share/java/alex/alex.war
COPY --from=builder-ltsmin /root/workdir/ltsmin /opt/ltsmin
WORKDIR /var/lib/alex
EXPOSE 8000
CMD java -jar /usr/share/java/alex/alex.war --ltsmin.path=/opt/ltsmin/bin
2 changes: 1 addition & 1 deletion LICENSE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

END OF TERMS AND CONDITIONS

Copyright 2015 - 2019 TU Dortmund
Copyright 2015 - 2020 TU Dortmund

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand Down
16 changes: 9 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ an automaton model (a [Mealy machine][mealy]), which represents the behavior of

## Installation

Make sure you have Java 8 installed on your system.
Make sure you have Java 8 or 11 installed on your system.
We advise to use a modern web browser like Google Chrome, Mozilla Firefox or Microsoft Edge with JavaScript enabled.

1. [Download](https://github.com/LearnLib/alex/releases/latest) the latest version.
2. Open a terminal and start ALEX via `java -jar alex-1.7.2.war [--server.port=XXXX]`.
2. Open a terminal and start ALEX via `java -jar alex-2.0.0.war [--server.port=XXXX]`.
3. Wait until the command line prints something like `de.learnlib.alex.App - Started App in XX.XXX seconds`.
3. Open *http://localhost:8000* in a web browser.

Expand All @@ -32,9 +32,9 @@ Password: *admin*

In order to build ALEX from source make sure your system matches the following requirements:

* Java JDK 8
* Java JDK 8 or 11
* Maven 3
* Node.js (v10.0.0) and the NPM (v6.0.0)
* Node.js (v12.*.*) and the NPM (v6.*.*)

To build ALEX, open a terminal and follow the instructions below:

Expand All @@ -49,7 +49,9 @@ cd alex
mvn install package [-DskipTests]
```

The bundle can then be found at `build/target/alex-build-1.7.2.war`.
The bundle can then be found at `build/target/alex-2.0.0.war`.

Only build the REST API and skip the frontend with `mvn package -P!build-frontend`

## Connecting to a database

Expand All @@ -71,7 +73,7 @@ spring.jpa.hibernate.ddl-auto=update

Then, start ALEX like this:

`java -jar alex-buid-1.7.2.war "--spring.config.location=/path/to/your/application.properties"`
`java -jar alex-buid-2.0.0.war "--spring.config.location=/path/to/your/application.properties"`


## Using LTSMin
Expand All @@ -81,7 +83,7 @@ If you want to use its capabilities, download version **3.0.2** and append the `
The value for the argument should be the *bin* directory where the compiled binaries of LTSMin are located.
Example:

`java -jar alex-1.7.2.war --ltsmin.path="/path/to/ltsmin/bin"`
`java -jar alex-2.0.0.war --ltsmin.path="/path/to/ltsmin/bin"`



Expand Down
67 changes: 39 additions & 28 deletions backend/pom.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright 2015 - 2019 TU Dortmund
~ Copyright 2015 - 2020 TU Dortmund
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
Expand All @@ -23,7 +23,7 @@
<parent>
<groupId>de.learnlib.alex</groupId>
<artifactId>alex-parent</artifactId>
<version>1.7.2</version>
<version>2.0.0</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand All @@ -38,7 +38,7 @@
<!--===== properties ======-->
<properties>
<!-- general -->
<start-class>de.learnlib.alex.App</start-class>
<start-class>de.learnlib.alex.AlexApp</start-class>

<!-- plugin versions -->
<javadoc-plugin.version>2.10.4</javadoc-plugin.version>
Expand All @@ -49,34 +49,28 @@
<pmd.version>3.6</pmd.version>

<!-- dependencies versions -->
<spring.version>5.1.2.RELEASE</spring.version>
<jersey.version>2.27</jersey.version>
<learnlib.version>0.14.0</learnlib.version>
<automatalib.version>0.8.0</automatalib.version>
<jersey.version>2.30.1</jersey.version>
<learnlib.version>0.15.0</learnlib.version>
<automatalib.version>0.9.0</automatalib.version>
<selenium.version>3.141.59</selenium.version>
<htmlunitdriver.version>2.33.2</htmlunitdriver.version>
<jose4j.version>0.6.4</jose4j.version>
<shiro.version>1.4.0</shiro.version>
<xml-apis.version>2.0.2</xml-apis.version>
<jsoup.version>1.11.3</jsoup.version>
<htmlunitdriver.version>2.38.0</htmlunitdriver.version>
<jose4j.version>0.7.0</jose4j.version>
<shiro.version>1.5.2</shiro.version>
<xml-apis.version>1.4.01</xml-apis.version>
<jsoup.version>1.13.1</jsoup.version>
<json-path.version>2.4.0</json-path.version>
<hsqldb.version>2.4.1</hsqldb.version>
<jackson-datatype.version>2.9.7</jackson-datatype.version>
<junit.version>4.12</junit.version>
<hsqldb.version>2.5.0</hsqldb.version>
<jackson-datatype.version>2.10.3</jackson-datatype.version>
<junit.version>4.13</junit.version>
<mockito.version>2.23.0</mockito.version>
<json-schema-validator.version>2.2.10</json-schema-validator.version>
<mysql-connector.version>8.0.13</mysql-connector.version>
<mysql-connector.version>8.0.19</mysql-connector.version>
<jaxb.version>2.4.0-b180830.0359</jaxb.version>
<flyway.version>5.2.4</flyway.version>
</properties>

<!--===== dependencies ======-->
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${spring.version}</version>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
Expand All @@ -87,6 +81,11 @@
<artifactId>spring-boot-starter-log4j2</artifactId>
<version>${spring-boot.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
<version>${spring-boot.version}</version>
</dependency>

<dependency>
<groupId>org.springframework.boot</groupId>
Expand Down Expand Up @@ -130,11 +129,6 @@
<artifactId>spring-boot-starter-data-jpa</artifactId>
<version>${spring-boot.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
Expand All @@ -147,6 +141,13 @@
<version>${json-schema-validator.version}</version>
</dependency>

<!-- flyway -->
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>${flyway.version}</version>
</dependency>

<dependency>
<groupId>org.hsqldb</groupId>
<artifactId>hsqldb</artifactId>
Expand Down Expand Up @@ -200,6 +201,16 @@
<artifactId>automata-modelchecking-ltsmin</artifactId>
<version>${automatalib.version}</version>
</dependency>
<dependency>
<groupId>net.automatalib</groupId>
<artifactId>automata-util</artifactId>
<version>${automatalib.version}</version>
</dependency>
<dependency>
<groupId>net.automatalib</groupId>
<artifactId>automata-dot-visualizer</artifactId>
<version>${automatalib.version}</version>
</dependency>

<!-- LearnLib -->
<dependency>
Expand Down Expand Up @@ -364,7 +375,7 @@
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<mainClass>de.learnlib.alex.App</mainClass>
<mainClass>de.learnlib.alex.AlexApp</mainClass>
<addResources>false</addResources>
</configuration>
<executions>
Expand Down
Loading

0 comments on commit c063e41

Please sign in to comment.