aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-02-25Merge pull request #26 from ↵tricktron
tricktron/f-only-compile-mainModule-and-replModule-files Only Compile Specified Files if Specified
2022-02-25fix: runFrege and replFrege task compile only the specified module andThibault Gagnaux
its dependencies
2022-02-23Merge pull request #23 from tricktron/f-minimal-frege-repltricktron
New Simpler Repl Task
2022-02-23fix: normalize path to make test pass on windows as wellThibault Gagnaux
2022-02-23chore: uddates readmeThibault Gagnaux
2022-02-23feat: simplifies the replFrege taskThibault Gagnaux
The replFregeTask has the following new logic: 1. Compiles the specified fregeRepl module (either in the `build.gradle` via command line option `--replModule=...`) and all its dependencies. 2. Sets up the correct classpath so that dependent modules don't have to be imported manually. In addition, it solves the shadowing problem by removing the replModule java and class file from the classpath. 3. It prints one single command to directly start the repl and load the specified module. Bonus: I designed the task so that you can even automate step 3 with the following bash command: `eval $(./gradlew -q replFrege)`.
2022-02-23refactor: finishes the replFregeTask refactoringThibault Gagnaux
2022-02-12refactor: finishes the runFregeTask refctoringf-minimal-frege-replThibault Gagnaux
2022-02-11refactor: finishes the compileFregeTask refactoringThibault Gagnaux
2022-02-09refactor: continues with staged builder refactoringThibault Gagnaux
2022-02-09refactor: introduces staged builder patterns for frege project setupThibault Gagnaux
(WIP)
2022-02-02feat: simplifies the whole gradle pluginThibault Gagnaux
- the `compileFregeTask` has a new optional input called `mainModuleName`. If it is set, it and only its dependencies will be compiled, otherwise all `.fr`files in the `mainSourceDir`will be compiled. - the internal `DependencyFregeTask` is deleted because it was only used by the vscode plugin and I decided to remove this gradle plugin as a dependency. - an example project folder was added to test the plugin manually.
2022-01-18Merge pull request #20 from tricktron/f-java-target-versiontricktron
Set Java 11 as Target Version
2022-01-18chore: updates readme and version 1.6.0 -> 1.6.1Thibault Gagnaux
2022-01-18chore: updates junit jupiter 5.8.1 -> 5.8.2Thibault Gagnaux
2022-01-18feat: uses java 11 toolchain and upgrades the gradle wrapper to version 7.3.3Thibault Gagnaux
2021-12-21Merge pull request #17 from tricktron/f-repl-with-source-depstricktron
Repl with all Source Dependencies
2021-12-21fix: only compile `*.fr` filesThibault Gagnaux
2021-12-21chore: renames `replModule` -> `replSource` and updates readmeThibault Gagnaux
2021-12-21feat: adds `replSource` property and command-line optionThibault Gagnaux
The `replSource` property specifies the frege source file that you want to load into the repl. It is excluded in the `fregeCompile` task so that we don't get two java class files (one from `compileFrege` and one from the fregeRepl `:l` command) that shadow each other on the classpath. As a result, we can make interactive changes to the `replSource` file and use the `:r` reload command to see them.
2021-12-21refactor: extracts common `setupClasspath` logic to util classThibault Gagnaux
2021-12-21feat: adds `outputDir` to classpathThibault Gagnaux
2021-12-11Merge pull request #13 from tricktron/f-repl-frege-v2v1.5.0-alphatricktron
Frege Repl Refactoring
2021-12-11chore: updates readme for `replFrege` task v2Thibault Gagnaux
2021-12-10refactor: adds an internal `depsFrege` task and simplifes `replFrege`Thibault Gagnaux
- `depsFregeTask`: only internal use for the vscode plugin to automate the repl code lens. - `replFregeTask`: simplified to only print the command to start the repl because starting and interacting through a console is not gradle's core strength. See https://github.com/tricktron/frege-gradle-plugin/issues/11.
2021-12-09fix: only asserts a substring of the classpathThibault Gagnaux
Increases the max number of test processes, which may reduce the test execution time.
2021-12-09refactor: adds test case for classpath with external dependenciesThibault Gagnaux
2021-12-08feat: replFrege task v2 returns classpath with all dependenciesThibault Gagnaux
2021-11-28fix: adds `System.in` as StandardInput to make `ReplFrege` task interactivelyThibault Gagnaux
2021-11-24Merge pull request #6 from tricktron/f-repl-taskv1.4.0-alphatricktron
Adds `replFrege` Task
2021-11-24feat: adds `replFrege` taskf-repl-taskThibault Gagnaux
2021-11-24chore: updates readmeThibault Gagnaux
2021-11-24Merge pull request #5 from tricktron/f-classpath-configtricktron
Implementation Dependency Configuration
2021-11-24refactor: allows to configure the classpath with the groovy dependency notationThibault Gagnaux
e.g: ```groovy dependencies { implementation 'org.frege-lang:fregefx:0.8.2-SNAPSHOT' } ```
2021-11-21Merge pull request #4 from tricktron/f-dependent-frege-filestricktron
Dependent Frege Files
2021-11-21fix: adds dependent frege files test casesThibault Gagnaux
If a Frege module A depends on Frege module B, then you need to compile with the `-make` flag so that the compiler resolves the dependencies and compiles the module B before the module A.
2021-11-17Merge pull request #3 from tricktron/f-incremental-compilev1.3.0-alphatricktron
Incremental Build and Cache Support
2021-11-17feat: Adds incremental build and build cache support for the `fregeCompile` taskThibault Gagnaux
2021-11-16Merge pull request #2 from tricktron/f-compiler-flagstricktron
Frege Compiler Flags
2021-11-16refactor: adds testcase with illegal compiler flagThibault Gagnaux
2021-11-16feat: adds `compilerFlags` property to configure the Frege compilerThibault Gagnaux
2021-11-10fix: run github workflow on `master` branch as wellThibault Gagnaux
2021-11-10Merge pull request #1 from tricktron/f-runTasktricktron
RunFrege Task
2021-11-10chore: updates junit 5.7.2 -> 5.8.1, README and versionThibault Gagnaux
2021-11-10feat: `mainModule` property can be configured with command-line optionThibault Gagnaux
2021-11-10refactor: tests and makes `FregeDTOBuilder` a singletonThibault Gagnaux
2021-11-09feat: adds two tests and makes them pass for new `runFregeTask`Thibault Gagnaux
2021-07-20chore: adds readmedevelopThibault Gagnaux
2021-07-14chore: run github workflow on `main` and `develop` branchesv1.0.0-alphaThibault Gagnaux
2021-07-14chore: adds `maven-publish` plugin to publish to `mavenLocal` repof-simple-javaExec-task-alternativeThibault Gagnaux