Commit graph

23 commits

Author SHA1 Message Date
Damien Elmes
f3aebcc786 update to Rust 1.57 + latest rules_rust 2021-12-03 20:35:52 +10:00
Damien Elmes
f01b52a244 default to a vendored copy of Python
Brings Python in line with our other dependencies, and means users
no longer need to install it prior to building, or deal with
issues caused by having the wrong version available.
2021-10-15 22:14:05 +10:00
Damien Elmes
fb6e1a73f5 bump minimum Python to 3.9 2021-10-04 15:05:15 +10:00
Damien Elmes
79aa52c082 update Rust deps 2021-10-02 20:42:03 +10:00
Damien Elmes
b90388bee2 use separate integration test for links
If we run into issues with unreliable network connections in the future,
we'll be able to mark the test as flaky so Bazel can retry it multiple
times.
2021-07-24 10:12:25 +10:00
Damien Elmes
032b2b272b disable link check outside CI 2021-07-23 20:22:32 +10:00
Damien Elmes
606e2d37fc fix release builds 2021-06-24 15:01:32 +10:00
Damien Elmes
cf623731a2 update to latest rules_rust incremental compilation 2021-04-09 12:48:24 +10:00
Damien Elmes
8770eb74f5 update rules_rust with worker refactor
If you were using the optional Rust worker support, please see the
change to development.md
2021-03-30 17:24:51 +10:00
Damien Elmes
2338998304 update to the latest rules_rust + security framework update 2021-03-27 19:28:19 +10:00
Damien Elmes
0e136f13de we no longer need to force CI to local 2021-03-21 00:25:59 +10:00
Damien Elmes
51ac1ea935 turn top bar dark when night mode enabled on macOS 2021-02-04 19:19:56 +10:00
Damien Elmes
2dcb945781 update pinned Bazel version to 4.0 release 2021-01-21 19:58:41 +10:00
Damien Elmes
b58c5ea603 typo 2020-12-29 15:26:06 +10:00
Damien Elmes
8388b1d838 use local strategy for Svelte on CI
Allows some type errors to surface that were only being picked up
on Windows.

The root cause seems to be TypeScript picking up other .d.ts/.tsx
files in the same folder, which it can only do on Windows due to the
lack of sandboxing. On other platforms the other files can't be found,
and tsc changes the types into 'any'.

I experimented with modifying rules_svelte to build all .tsx files up
front and convert them to .d.ts in bulk, but ran into further issues
with conflicting types, as the typings in svelte2tsx seem to conflict
with Svelte's built-in types, and passing the dependencies in explicitly
causes them to be checked even though --skipLibCheck is passed in to
TypeScript.

Forcing sandboxing off is an ugly hack, and our best approach moving
forward may be to switch to ts_project for the Svelte generation -
it does appear that rules_nodejs favours it over ts_library anyway.
2020-12-29 14:50:33 +10:00
Damien Elmes
4a039bd26a use PYTHON_SYS_EXECUTABLE for setting path to Python 2020-12-23 21:53:13 +10:00
Damien Elmes
11ac38d27b document worker and disable it by default 2020-12-11 21:04:06 +10:00
Damien Elmes
45b5b7cc3a update rules_rust + persistent_worker 2020-12-10 15:35:37 +10:00
Damien Elmes
dc810c7339 manual tag on rslib was preventing clippy lints 2020-11-24 20:10:16 +10:00
Damien Elmes
715f976a21 update Windows CI 2020-11-09 19:09:23 +10:00
Damien Elmes
54c4462292 support user bazelrc 2020-11-04 22:11:28 +10:00
Damien Elmes
35066d6950 extract version from defs.bzl; gate buildhash on optimized build 2020-11-04 14:02:08 +10:00
Damien Elmes
ce3b08ac58 initial Bazel conversion
Running and testing should be working on the three platforms, but
there's still a fair bit that needs to be done:

- Wheel building + testing in a venv still needs to be implemented.
- Python requirements still need to be compiled with piptool and pinned;
need to compile on all platforms then merge
- Cargo deps in cargo/ and rslib/ need to be cleaned up, and ideally
unified into one place
- Currently using rustls to work around openssl compilation issues
on Linux, but this will break corporate proxies with custom SSL
authorities; need to conditionally use openssl or use
https://github.com/seanmonstar/reqwest/pull/1058
- Makefiles and docs still need cleaning up
- It may make sense to reparent ts/* to the top level, as we don't
nest the other modules under a specific language.
- rspy and pylib must always be updated in lock-step, so merging
rspy into pylib as a private module would simplify things.
- Merging desktop-ftl and mobile-ftl into the core ftl would make
managing and updating translations easier.
- Obsolete scripts need removing.
- And probably more.
2020-11-01 14:26:58 +10:00