openrndr / orx

A growing library of assorted data structures, algorithms and utilities for OPENRNDR
https://openrndr.org
BSD 2-Clause "Simplified" License
119 stars 35 forks source link

Use buildSrc to deduplicate build logic #262

Closed Vechro closed 1 year ago

Vechro commented 1 year ago

Warning This PR must be rebased on top of master before merging to avoid overwriting recent changes!

Yes, it is possible to move everything to a version catalog .toml even in this project, but should you? I sure don't know. So this PR makes use of resolution strategy for openrndr dependencies which enables us to move entirely to a .toml-based version catalog, but it requires a small change to publishing. We now specify to use the resolved version rather than the declared one. If you're not using rich versions or resolution management then it makes no difference, but here we actually want to ensure the library is published with dependency versions it actually resolved. Also uses ComponentMetadataRules to resolve runtime dependencies for Lwjgl and FFmpeg, sidestepping the openrndr natives dependencies entirely. Removes kotest, it wasn't actually used anywhere. Upgrades Dokka to 1.7.10 so it doesn't error out on Windows. Removes orx-filter-extension from settings.gradle.kts, it wasn't an actual module, the directory didn't even exist but it was in the include(... so it always got published regardless.