aboutsummaryrefslogtreecommitdiffstats
path: root/buildSrc
Commit message (Collapse)AuthorAge
* chore(deps): Java 21Libravatar Kristóf Marussy2023-12-03
| | | | Also bumps other dependencies.
* build: silence test-fixtures publication warningLibravatar Kristóf Marussy2023-11-17
|
* build: prepare for Maven publicationLibravatar Kristóf Marussy2023-11-17
|
* chore: remove VIATRA brandingLibravatar Kristóf Marussy2023-09-16
| | | | | | | | Rename VIATRA subprojects to Refinery Interpreter to avoid interfering with Eclipse Foundation trademarks. Uses refering to a specific (historical) version of VIATRA were kept to avoid ambiguity.
* build: fix Sonar quality gate issuesLibravatar Kristóf Marussy2023-09-16
| | | | | Removes VIATRA sources from coverage anaylsis, since those files are maintained by the VIATRA project.
* build: add DockerfileLibravatar Kristóf Marussy2023-09-03
|
* chore: import VIATRA sourceLibravatar Kristóf Marussy2023-08-19
| | | | | Make our modifications more maintainable by editing the source code directly instead of using reflection.
* build: fix deprecation warningLibravatar Kristóf Marussy2023-08-17
| | | | https://docs.gradle.org/8.2.1/userguide/upgrading_version_8.html#test_framework_implementation_dependencies
* build: improve Xtext project isolationLibravatar Kristóf Marussy2023-04-26
| | | | | | * 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.
* chore(deps): bump dependenciesLibravatar Kristóf Marussy2023-04-25
|
* chore(deps): downgrade to Java 17Libravatar Kristóf Marussy2023-04-15
| | | | | | | | | | | 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.
* chore: add copyright headersLibravatar Kristóf Marussy2023-04-15
| | | | | | | | | | | | | | 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.
* build: organize build scripts into packagesLibravatar Kristóf Marussy2023-04-09
| | | | | | | 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.
* build: avoid repeating task names in build scriptsLibravatar Kristóf Marussy2023-04-09
|
* build: add clobberEclipse taskLibravatar Kristóf Marussy2023-04-09
| | | | Allows removing Eclipse-specific generated files from the source tree quickly.
* build: always prefer slf4j instead of log4j 1.xLibravatar Kristóf Marussy2023-04-08
| | | | | | 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.
* build: convert Gradle scripts to KotlinLibravatar Kristóf Marussy2023-04-08
| | | | | | | 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.
* build: downgrade to Gradle 7.6Libravatar Kristóf Marussy2023-02-02
| | | | | | Sonarqube is not yet compatible with Gradle 8: https://sonarsource.atlassian.net/browse/SONARGRADL-84 https://github.com/SonarSource/sonar-scanner-gradle/pull/146
* refactor: be more conservative w/preview featuresLibravatar Kristóf Marussy2022-12-09
| | | | Also test with virtual threads in we are using them in production.
* chore(web): fix lint errorLibravatar Kristóf Marussy2022-12-09
|
* chore: upgrade to Java 19Libravatar Kristóf Marussy2022-11-22
| | | | | Use Java 19 and Jetty 12 to take advantage of Project Loom preview features to reduce CPU usage due to XtextWebDocumentAccess thread pools.
* chore: fix some warningsLibravatar Kristóf Marussy2022-10-03
|
* refactor: simplify language projectLibravatar Kristóf Marussy2022-07-29
| | | | | | * Move all utilities for language-model to language, since they do not make sense on their own * Convert xtend code into java
* build: clean up buildSrc scriptsLibravatar Kristóf Marussy2022-07-29
|
* build: file encoding import into EclipseLibravatar Kristóf Marussy2022-07-28
| | | | See https://github.com/gradle/gradle/issues/898
* build: fix testFixtures classpath in eclipseLibravatar Kristóf Marussy2022-07-28
|
* chore: bump dependenciesLibravatar Kristóf Marussy2022-07-27
|
* build: refactor java-application conventionsLibravatar Kristóf Marussy2021-12-12
|
* build: add versions plugin to monitor updatesLibravatar Kristóf Marussy2021-12-12
|
* ci: do not modify yarn lockfile in ciLibravatar Kristóf Marussy2021-11-21
|
* build: move to yarn workspacesLibravatar Kristóf Marussy2021-11-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The root project (worktree) must have a valid package.json, .yarnrc.yaml, and have the gradle precompiled script plugin refinery-frontend-worktree applied to it. All frontend modules (workspaces) must have a valid package.json, be referenced in the worktree project.json, and be a valid gradle subproject with the gradle precompiled script plugin refinery-frontend-workspace applied to it. To reduce unnecessary downloads, we do the following workarounds: * The node version is pinned in gradle.properties and the installed node version is stored in .node/frontend.properties. A new node version is only downloaded if it differs from the installed one (or none is installed). This improves on the default gradle behavior, which would download a new node version if the classpath of the installNode task was changed. * The yarn classic version is pinned in gradle.properties and the installed yarn classic version is stored in .node/frontend.properties. This improves on the default gradle behavior, which would reinstall the yarn npm package at every build. * We disable the enableYarnBerry task, since a yarn berry version is already committed into the repository at .yarn/versions as it is recommended in http://yarnpkg.com/getting-started/qa/ * We use yarn set version --only-if-needed in the installYarn task. * The installFrontend task takes package.json and yarn.lock as inputs and produces .pnp.cjs and .pnp.loader.mjs as outputs. Whether this task is up-to-date can be checked by gradle quickly, since it doesn't have to traverse the node_module folder due to pnp resoltion: https://yarnpkg.com/features/pnp/ All workspaces have the installNode, installYarnGlobally, installYarn and installFrontend tasks disabled. However, these tasks depend on the task with the same name in the worktree project, so installation is still triggered globally. Moreover, the installFrontend task in the worktree has the package.json of the workspaces as inputs, so reinstallation is triggered when the workspace package.json changes.
* build: fix cross-project group and version configLibravatar Kristóf Marussy2021-11-19
|
* build: fix cross-project sonar configurationLibravatar Kristóf Marussy2021-11-19
|
* build: library and application convetion pluginsLibravatar Kristóf Marussy2021-11-17
|
* build: merge java and junit conventionsLibravatar Kristóf Marussy2021-11-17
| | | | All Java code should have tests, anyways.
* build: move scripts into script pluginsLibravatar Kristóf Marussy2021-11-17
Script plugins allow applying other plugins from plugins { } blocks, which simplifies the build script.