Commit Graph

120 Commits

Author SHA1 Message Date
iphydf 34e8d5ad58 chore: Add GitHub CodeQL workflow and local Docker runner. 2026-01-24 12:06:39 +00:00
iphydf 2e4b423eb6 refactor: Use specific typedefs for public API arrays.
Makes it clearer to static analysers and API generators what those
things are, and whether they are compatible.
2026-01-21 00:49:26 +00:00
iphydf e97b18ea99 chore: Improve Windows Docker support.
- Add `run` helper script and `.dockerignore` files.
- Update `build_dependencies.sh` to include GTest so we can run unit
  tests on Windows.
2026-01-17 03:50:47 +00:00
iphydf 1849f70fca refactor: Extract low-level networking code to net and os_network.
Move core networking types and the Network interface to net, and the
standard OS socket implementation to os_network. Update network to use
these new abstractions.
2026-01-14 23:44:18 +00:00
iphydf ea2e34ff26 chore: Disable cirrus. We're out of quota again. 2025-12-25 10:33:33 +00:00
Green Sky 5047ae5a24 chore: make the source tarball exhibit the old behavior 2025-10-05 21:51:36 +02:00
iphydf 14804a4b86 chore: Fix sonar-scan CI action. 2025-10-05 19:16:46 +00:00
iphydf 3accade676 chore: Fix CI, disabling some tests that no longer run on CI. 2025-10-05 18:05:23 +00:00
iphydf f81e30679b refactor: Use per-parameter nullability annotations.
This is less error-prone.
2025-07-12 09:20:18 +00:00
iphydf 8278e9cda4 chore: Add release issue template and workflow. 2025-02-16 19:58:08 +00:00
iphydf 6e0a641272 chore: Add a source tarball deploy workflow.
This builds the autotools files (configure, etc.) so people can build
the code without needing to install autotools.
2025-02-15 12:44:03 +00:00
iphydf 4adebe4d8b chore: Don't upload ios/macos variants in deploy workflows.
We already put them into an xcframework. There's no strong reason to
keep them as separate assets as well.

Also removed the Makefile for single-file uploads, because it
individually appears in the release assets. The .c files are
intentionally separate asset uploads, but the Makefile is always the
same so can be fetched directly from the repo if needed.
2025-02-15 12:10:04 +00:00
iphydf 18f1d858cc chore: Move one of the 3 freebsd builds to post-submit.
This one takes a long time and never fails because we ignore test
failures (of which it has many). The other 2 freebsd builds actually
check for test failures so are more valuable. We keep this one for now
because it's our own freebsd image build, so we at least want to keep it
building in case the other 2 freebsd builds break (e.g. Cirrus shuts
down or the freebsd vm workflow goes away).
2025-02-15 10:04:39 +00:00
iphydf 432ab60c00 feat: Add a Makefile for the single file deploy build.
This makefile is untested, so hope is the strategy here.
2025-02-15 09:44:40 +00:00
iphydf a86c0011fd chore: Add deploy job for single C file library. 2025-02-15 08:32:28 +00:00
iphydf 2e7495e8f2 docs: Update changelog format to use the new clog-compatible way. 2025-02-14 13:03:45 +00:00
iphydf 12f34cdff2 chore: Add wasm to the nightly binary deploys. 2025-02-09 22:56:18 +00:00
iphydf c53c30e09d chore: Add time option to manual fuzz trigger.
This allows us to test things with less than 1 hour of waiting time.
2025-02-05 21:49:53 +00:00
iphydf 2ccecdc2a1 chore: Add remaining fuzz tests to cflite.
So we can run them daily and get coverage info from them.
2025-02-05 21:03:48 +00:00
iphydf b4a0e617c4 refactor: Use IP string length from ip_ntoa instead of strlen.
Saves us a strlen and is slightly safer. Also, changed the event length
to not include the terminating NUL byte. Adding it is just confusing.
2025-02-05 16:58:20 +00:00
iphydf 01932ea2f7 chore: Add opus and vpx to the toxcore wasm build. 2025-01-29 23:31:00 +00:00
iphydf 21e2325934 chore: Fix xcframework tarball creation.
Also, always run the "create tarball" action on pull requests as well,
so we know whether it's going to work for master pushes.
2025-01-29 14:04:27 +00:00
iphydf b10c8b766b chore: Fix xcframework checksum creation. 2025-01-29 12:57:45 +00:00
iphydf 93787a9322 chore: Add ios/macos framework build. 2025-01-29 00:51:01 +00:00
iphydf 496cc70355 chore: Support arm64 iphone simulator. 2025-01-28 02:51:39 +00:00
iphydf aa0e2a8e92 chore: Add support for more iOS architectures.
Including simulator (i386 and x86_64).
2025-01-27 18:29:35 +00:00
iphydf 13ad8e81cb chore: Add binary deploy workflows. 2025-01-27 11:50:09 +00:00
iphydf 380dde9f2a test: Add more logging to TCP connection constructor.
Also add more asserts to the test so we don't do UB.
2025-01-10 23:45:41 +00:00
iphydf 4f09f4e147 chore: Fix tsan build by moving it to GitHub CI.
In exchange, moved some github actions to circleci.
2024-12-11 13:12:58 +00:00
iphydf 41fb1839c7 chore: Add check to ensure version numbers agree.
Across PR milestone, "next" milestone, and draft release.
2024-11-11 10:46:27 +00:00
iphydf df675786eb chore: Add release-drafter github action. 2024-11-06 23:55:40 +00:00
Robin Linden 7572888a21 chore: Fix GitHub actions deprecation warnings
actions/github-script@v6 is a Node.js 16 action, and Node.js 16 actions
have been deprecated.
2024-03-28 02:52:03 +01:00
Maxim Biro dfb9a0b02b fix: Test the current Windows Dockerfile, not an old Dockerhub image
A bit infuriating that when you submit a PR modifying the Windows
cross-compilation script, the CI *builds* the current image in one job,
but then *runs* an older (!) image from Dockerhub in another. So it
tests that the modified image builds successfully but doesn't test if it
runs successfully, instead testing if an older image runs successfully /
testing if the current toxcore changes run successfully in an older
image.

This should build and run the same image with the current changes.
2024-03-04 15:18:01 -05:00
iphydf d7f21010a1 chore: Update github actions. 2024-02-23 16:01:25 +00:00
iphydf 0627c36716 test: Add pkgsrc build.
Used by NetBSD, but we build on Alpine Linux for speed. Separately, we
will build on NetBSD without pkgsrc, to see whether it compiles and runs
there. That VM build is more expensive and harder to debug, so we keep
the pkgsrc Linux build for development.
2024-02-19 21:02:19 +00:00
iphydf 92578afe4b test: Add FreeBSD VM action on GitHub. 2024-02-19 20:15:18 +00:00
iphydf 52ece0f57b test: Build toxcore on NetBSD (VM). 2024-02-19 08:36:32 +00:00
iphydf 93c83fbc7c refactor: Use strong typedef instead of struct for Socket.
Sparse checks it. This is neater than using a struct, which has some
slightly weird syntax at times. This also reduces the risk of someone
adding another struct member.
2024-02-09 01:10:06 +00:00
iphydf 42010660e1 test: Add slimcc compiler compatibility test. 2024-02-02 23:50:46 +00:00
iphydf 8d29935b7a chore: Only check the bootstrap daemon checksum on release.
It's pure toil until then. It's only interesting as part of the release
checklist, not in regular PRs.
2024-01-31 20:40:49 +00:00
iphydf 511bfe39c8 cleanup: Use Bazel modules to enforce proper #include hygiene. 2024-01-30 23:51:43 +00:00
iphydf a975943564 chore: Really fix coverage docker image build.
It made progress, but then the last step failed.
2024-01-30 09:11:44 +00:00
iphydf c08409390f chore: Fix post-submit coverage image. 2024-01-29 22:56:31 +00:00
iphydf eeaa039222 chore: Fix rpm build; add a CI check for it. 2024-01-26 23:38:48 +00:00
iphydf 8328449c1a chore: Speed up docker builds a bit by reducing layer count.
This is especially noticeable on local builds (less so on the github
workers).
2024-01-26 14:13:34 +00:00
iphydf 662c2140f3 test: Add goblint static analyser. 2024-01-24 23:31:00 +00:00
iphydf 97bdd83937 refactor: Make event dispatch ordered by receive time. 2024-01-15 16:32:10 +00:00
Green Sky acdc67387b fix(ci): window builds now build in parallel
Co-authored-by: Maxim Biro <nurupo.contributions@gmail.com>
2024-01-14 10:01:35 -05:00
iphydf 05ce5c1ab9 test: Add "infer" CI check to github, remove from circle.
This now uses our own built image with the current master of infer.
2024-01-09 10:59:53 +00:00
iphydf b148a2afff chore: Simplify msvc build using vcpkg. 2024-01-06 12:27:31 +00:00