22 Commits

Author SHA1 Message Date
Cornelius Riemenschneider
4c21444dd5 Bazel: Flip --incompatible_use_plus_in_repo_names.
We've hardcoded the tilde in a lot of places :(
This improves performance on Windows and gets us ready for Bazel 8.

We need an upgrade of rules_rust for this to work.
2024-10-09 14:04:05 +02:00
Paolo Tranquilli
183a825841 Kotlin: expose kotlin version picker for internal packaging 2024-06-12 09:29:57 +02:00
Paolo Tranquilli
99f70a64e9 Kotlin: address review comments 2024-06-04 09:00:35 +02:00
Paolo Tranquilli
514e24ce62 Kotlin: bring back lazy LFS dependencies
This reverts commit d7ecaae245.

Problems with lazy LFS rules were solved by
https://github.com/github/codeql/pull/16393 and
https://github.com/github/codeql/pull/16434.
2024-05-06 17:31:50 +02:00
Paolo Tranquilli
d4e0a5629d Kotlin: update wrapper location 2024-04-29 17:33:40 +02:00
Paolo Tranquilli
d7ecaae245 Kotlin: back off from lazy LFS rules
Those have shown to cause problems with too many concurrent downloads.

This changes kotlinc dependencies fetching to:
* use `resource/kotlinc-dependencies` if available (which is the case
  for the internal repo)
* otherwise, download them from maven.

This means sha256 hashes need to be written down for bazel.
2024-04-29 17:26:25 +02:00
Paolo Tranquilli
c014cd84f4 Bazel: fix kotlin wrapper version dependency 2024-04-23 15:15:38 +02:00
Paolo Tranquilli
b07fa70133 Kotlin/Bazel: provide wrapper for managing versions of kotlinc
By adding `java/kotlinc-extractor/deps/dev` to `PATH`, one gets a
`kotlinc` wrapper that takes care of downloading and extracting the
desired version of `kotlinc` on demand. The desired version can be
selected with `kotlinc --select x.y.z`, or left to the current default
of `1.9.0`.

Moreover, this default version is integrated with the Bazel build, so
that when using this wrapper, changes in the selected version will be
picked up to define the default single version kotlin extractor build,
without needing to do anything else (like `bazel fetch --force` or
similar).

Selected and installed version data is stored in `.gitignore`d files
in the same directory, and can be cleared with `kotlinc --clear`.
2024-04-15 10:48:57 +02:00
Paolo Tranquilli
a78124b2d5 Bazel/Kotlin: use a wrapper to get the current kotlin version 2024-04-12 14:47:21 +02:00
Paolo Tranquilli
24c7ad5d28 Bazel/Kotlin: use plain kotlinc instead of result of repository_ctx.which 2024-04-12 14:00:46 +02:00
Paolo Tranquilli
0ad8ed3822 Kotlin/Bazel: use kotlinc.bat instead of kotlinc.exe on Windows 2024-04-12 12:15:26 +02:00
Paolo Tranquilli
65df2bb16d Bazel/Kotlin: add .exe to kotlinc on windows 2024-04-12 11:56:33 +02:00
Paolo Tranquilli
4822de3313 Kotlin/Bazel: add fail printouts to _default_version 2024-04-12 10:19:10 +02:00
Paolo Tranquilli
3d1465439a Bazel/Kotlin: tentatively fix version detection on Windows 2024-04-11 17:39:09 +02:00
Paolo Tranquilli
7f495b1851 Bazel/kotlin: make version detection more robust 2024-04-11 17:17:57 +02:00
Paolo Tranquilli
54156650d7 Bazel/Kotlin: make _embeddable_source more robust 2024-04-11 16:40:37 +02:00
Paolo Tranquilli
5df1abcd26 Bazel/Kotlin: use "all" for extension metadata direct dependencies 2024-04-10 15:41:27 +02:00
Paolo Tranquilli
c9565b3657 Bazel/Kotlin: fix version comparison logic, add default version printing 2024-04-10 11:29:58 +02:00
Paolo Tranquilli
e7c680e963 Kotlin: reuse generated dbscheme in embeddable, and tweak comments 2024-04-09 16:33:17 +02:00
Paolo Tranquilli
a970c2d11c Kotlin: move empty zip from git to internal bazel repo rule 2024-04-08 14:37:53 +02:00
Paolo Tranquilli
5d6baea174 Kotlin: add aliases for default versions 2024-04-04 15:34:48 +02:00
Paolo Tranquilli
55ff7109fa Kotlin: support embeddable build in bazel 2024-04-04 12:53:14 +02:00