I think that my bascule project has reached the end of its life. My attempt to upgrade the project to a newer version of Kotlin has failed. The project compiles, and runs, and can still build this website. But all the unit tests are broken, and the IntelliJ IDE can no longer understand the project - it fails to import the libraries correctly. The decision to use the Spek test framework has proven to be a mistake, as Spek now appears to be dead and not supported. The decision to remove the Koin DI library was also a mistake, though it was a decision forced by incompatibilities with the newer version of Kotlin and other libraries.
I can disable the tests, and can compile the project, so this website will live on for now. But I think it is time to retire bascule, and think to the future. Options include:
- use an existing project like Hugo or Jekyll to build this website
- Rewrite bascule as an online webapp running on AWS Lambda
I'll continue to explore the AWS Lambda approach, but I'm aware that rewriting bascule is a non-trivial task, and it may not suit being split into a number of independent lambda functions.