Slackbot
04/04/2023, 1:44 PMEl Zhang
04/04/2023, 2:01 PMJendrik Johannes
04/04/2023, 2:01 PMShaun Reich
04/04/2023, 4:27 PMAdam
04/05/2023, 9:42 AM@Language
annotation so IntelliJ can help out example, but this isn’t great. It’s often really awkward editing the strings, and I don’t get the full power of auto-complete
• Writing gradle.kts fragments and merging them - example - the fragments aren’t loaded in IJ and don’t get auto-complete
• Using template projects (standalone examples) can work… but it’s awkward if I want to re-use an example but tweak some of the config
• I haven’t dug too much into using includedBuilds, because I keep overthinking it and I don’t want to get into a confusing mess of inter-dependent projects!
I’d love for the testing framework to be improved. I’ve been mulling over these ideas:
• publishing the DSL I wrote for creating test projects (it’s nice for creating smaller sample project)
• helpers for managing copying template projects (Gradle’s sync task is really helpful, especially for find-and-replace, it’d be nice to have that available - can I inject Gradle services in my test classes?)
• generate the Kotlin DSL accessors for my plugin (and any others that I may want) that are unscoped and available in my test sources, and create some sort of ‘test project’ DSL that will - so I can fluently create a test project
• maybe some sort of specialised kotlin-dsl-test-fixtures source set, which has the kotlin-dsl
plugin applied so I can write pre-compiled script plugins that would then be built and made available for use in my test projects?
• replace withPluginClasspath()
with a Gradle task that will publish my plugin to a local Maven dir, and then my test-projects can load my plugin from that file-based repo. I made a start on a plugin for this, but it’s kind of buggy.