aboutsummaryrefslogtreecommitdiffstats
path: root/build.gradle
Commit message (Collapse)AuthorAge
* build: add versions plugin to monitor updatesLibravatar Kristóf Marussy2021-12-12
|
* 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: move scripts into script pluginsLibravatar Kristóf Marussy2021-11-17
| | | | | Script plugins allow applying other plugins from plugins { } blocks, which simplifies the build script.
* build: use version catalogsLibravatar Kristóf Marussy2021-11-16
| | | | | | | | | | | Gradle version catalogs allow centralized management of dependency artifact coordinates using a toml file. Previously, we use the gradle.properties file, which cannot manage group and name coordinates, only versions. Node and yarn versions still have to be in gradle.properties, because they do not correspond to any coordiates of a maven artifact.
* chore: bump dependency versionsLibravatar Kristóf Marussy2021-10-31
|
* build: fix artifact coordinatesLibravatar Kristóf Marussy2021-10-14
|
* build: refactor task dependenciesLibravatar Kristóf Marussy2021-10-03
|
* build: fix Eclipse project generation instructionsLibravatar Kristóf Marussy2021-10-02
| | | | | | | | | | | | BuildShip and Gradle :eclipse are incompatible: https://github.com/eclipse/buildship/issues/267#issuecomment-547318667 Therefore, we run :eclipseJdt manually instead to genrate the JDT configuration to ignore @SuppressWarning unknown warnings, which lets us silence Sonar warnings in-line. We also run :generateXtext to make sure all generated sources are ready for the Eclipse build.
* build: migration to Gradle 7Libravatar Kristóf Marussy2021-09-29
|
* Simplify brandingLibravatar Kristóf Marussy2021-09-28
|
* ci: Sonar fixesLibravatar Kristóf Marussy2021-09-24
|
* ci: add GH actions build and SonarScannerLibravatar Kristóf Marussy2021-09-24
|
* Refactoring based on Sonar reportsLibravatar Kristóf Marussy2021-07-29
|
* Pin all m2 dependency versionsLibravatar Kristóf Marussy2021-06-29
|
* Generate all files on buildLibravatar Kristóf Marussy2021-06-29
|
* Add scoping tests and simplify implicit nodesLibravatar Kristóf Marussy2021-06-28
| | | | | | | * Do not export implicit nodes to the global scope * Enum literals must not be quoted * Plan for the future: unify quoted nodes from the global scope in post-processing
* Fix running outside of EclipseLibravatar Kristóf Marussy2021-06-27
|
* Simplify project layoutLibravatar Kristóf Marussy2021-06-27