| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
|
|
| |
- Replace guru.nidi:graphviz-java with DOT based solution
- Draws the design space as well as the model states
- Design space nodes link to visualization of the sate
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Uses Graphviz to create a visualization of the models and can save them to disk as an image or various textual representations
|
| |
|
|
|
|
|
|
| |
- Transformation rules
- Design Space Exploration adapter
- Depth First Strategy
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Enable deterministic state-space exploration by ordering activations in
lexicographic order.
This preliminary implementation adds oredering as a wrapper for ResultSet
instances, but more sophisticated support could be built directly into query
engine adapters if a query engine supports deterministic output by default.
* Implements Comparable for tuples with loops unrolled for small tuples by hand.
* Cleans up the contents of the (root of the) tools.refinery.query package.
* Adds ResultSetListener to notify clients about ResultSet changes.
* Adds OrderStatisticTree data structure for determinisitc ordering of keys.
|
| |
| |
| |
| |
| | |
The filer can't return true for the default value, because tuples with default
value cannot be enumerated.
|
| |
| |
| |
| | |
We will need to rework rule execution according to recent Dnf changes.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Shorthad syntax for the most commonly used symbol types.
|
| | |
|
| |
| |
| |
| |
| | |
Add the ability to create assertions without pre-processing Dnf clauses (raw
matchin mode). Also fix tests broken by Dnf pre-processing.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
* Introduce parameter directions for constraints and DNF
* Introduce variable directions for literals
* Infer and check variable directions in DNF and topologically sort literals by
their input variables
|
| |
| |
| |
| |
| | |
Temporarily remove custom scrollbar and indentation styling, because they
interferred with cursor visibility.
|
| | |
|
| |
| |
| |
| | |
Disable some rules that we don't use but require repeated file parsing.
|
| |
| |
| |
| |
| |
| | |
* Avoid writing generated source files directly into sibling projects.
* Full project isolation cannot be enabled yet, because the frontend plugin
still requires cross-projects task dependencies for Node.js installation.
|
| |
| |
| |
| |
| | |
Also increases timeout in WebSocket integration test to avoid failures due to
increased CPU usage during build.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
* Separate different operators into different classes to make it easier to add
functionality (e.g., simplification) later.
* Add UpperCardinality terms.
* Move UpperCardinality aggregator and tests into refinery-store-query.
|
| |
| |
| |
| |
| |
| |
| |
| | |
* Remove the reflection-based machinery around adapter types.
* Adapter builders, store adapters, and model adapters are now only associated
with each other based on static and runtime types.
* Simplifies writing new adapters.
* Hierarchical syntax for adding adapter builders to the store builder.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
* Helps keeping variable scoping clear by limiting variable scopes to the body
of the corresponding lambda.
* Overloads for convenience where variables are automatically created for lambda
parameters.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Java 19 is out of support, but Gradle current does not run on Java 20:
https://github.com/gradle/gradle/issues/23488
To avoid the complexity of running the build tool on a different JDK than the
application, we temporarily remove code that depends on experimental Java 19 or
Java 20 features.
Revert once the build can run on Java 20.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Java 19 is out of support, but Gradle current does not run on Java 20:
https://github.com/gradle/gradle/issues/23488
To avoid the complexity of running the build tool on a different JDK than the
application, we temporarily remove code that depends on experimental Java 19 or
Java 20 features.
Revert once the build can run on Java 20.
|
| |
| |
| |
| | |
Also make sure Sonar can process TypeScript files.
|
| |
| |
| |
| |
| | |
* Add NodeFunctionView for symbols that hold function-like (single
associated object for each key) relations as integer values for performance.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure we obey the REUSE (https://reuse.software) specification and the
origin, copyright owner, and license of all files are clearly marked.
The whole project is under the EPL-2.0, except for trivial files where copyright
is not applicable that are marked with the CC0-1.0 license. Moreover, code
included from third parties is also available under the respective license.
chore: add CONTRIBUTORS.md
List all authors and supporting organizations in accordance with the REUSE
specification.
|
| |
| |
| |
| |
| |
| |
| | |
Also take advantage of precompiled Kotlin scripts to write build scripts in a
more straightforward manner through generated accessors.
Might increase memory usage of Gradle.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Always write ESLint output to a file in addition to the console to make the
lintFrontend task cacheable in Gradle (according to the output file).
* Make sure frontend task inputs are declared properly for caching.
* Make sure Typescript type checking is incremental.
* Do not use @tsconfig, because both Vite and SonarScanner have problems with
extending tsconfig files from Yarn PnP modules.
|
| |
| |
| |
| |
| |
| | |
Make sure we get slf4j in every test source set and every application by
default. Saves configuration effort when creating a new library that tests
VIATRA or other dependencies that require log4j.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Improves IDE support build scripts in IntelliJ.
There is no Eclipse IDE support, but Eclipse didn't have support for Groovy
either, so there is no degradation of functionality.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* Directly transform VIATRA tuples into Refinery tuples, since creating
the additional wrapper object doesn't save any memory.
* Adds static arity Tuple3 and Tuple4 implementations to be more
aligned with VIATRA internals and save memory for queries with up to
4 parameters.
* Makes sure no new objects are allocated (for varargs handling) when a
static arity tuple is hashed.
|