From 6c5e448a0776dd30e597973acb455fd78594865d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20M=C3=BCller?= Date: Fri, 15 Nov 2024 11:26:48 +0100 Subject: [PATCH] Fix markdownlint issues with tables (#798) --- docs/man/required_libraries.md | 30 ++--- .../compile_time_flags.md | 106 +++++++++--------- docs/syntax_and_semantics/operators.md | 14 +-- docs/syntax_and_semantics/platform_support.md | 22 ++-- 4 files changed, 86 insertions(+), 86 deletions(-) diff --git a/docs/man/required_libraries.md b/docs/man/required_libraries.md index ced26b37e..5da0aef50 100644 --- a/docs/man/required_libraries.md +++ b/docs/man/required_libraries.md @@ -30,9 +30,9 @@ which may be part of the C library or standalone libraries. On most platforms al | Library | Description | License | |---------|-------------|---------| -| [Boehm GC][libgc] | The Boehm-Demers-Weiser conservative garbage collector. Performs automatic memory management. | [MIT-style](https://github.com/ivmai/bdwgc/blob/master/LICENSE) -| [Libevent][libevent] | An event notification library. Implements concurrency features such as [`Fiber`](https://crystal-lang.org/api/Fiber.html) and the event loop on POSIX platforms. Not used on Windows. | [Modified BSD](https://github.com/libevent/libevent/blob/master/LICENSE) -| [compiler-rt builtins][compiler-rt] | Provides optimized implementations for low-level routines required by code generation, such as integer multiplication. Several of these routines are ported to Crystal directly. | [MIT / UIUC][compiler-rt] +| [Boehm GC][libgc] | The Boehm-Demers-Weiser conservative garbage collector. Performs automatic memory management. | [MIT-style](https://github.com/ivmai/bdwgc/blob/master/LICENSE) | +| [Libevent][libevent] | An event notification library. Implements concurrency features such as [`Fiber`](https://crystal-lang.org/api/Fiber.html) and the event loop on POSIX platforms. Not used on Windows. | [Modified BSD](https://github.com/libevent/libevent/blob/master/LICENSE) | +| [compiler-rt builtins][compiler-rt] | Provides optimized implementations for low-level routines required by code generation, such as integer multiplication. Several of these routines are ported to Crystal directly. | [MIT / UIUC][compiler-rt] | ## Optional standard library dependencies @@ -45,8 +45,8 @@ PCRE2 support was added in Crystal 1.7 and it's the default since 1.8 (see [Rege | Library | Description | License | |---------|-------------|---------| -| [PCRE2][libpcre] | Perl Compatible Regular Expressions, version 2. | [BSD](http://www.pcre.org/licence.txt) -| [PCRE][libpcre] | Perl Compatible Regular Expressions. | [BSD](http://www.pcre.org/licence.txt) +| [PCRE2][libpcre] | Perl Compatible Regular Expressions, version 2. | [BSD](http://www.pcre.org/licence.txt) | +| [PCRE][libpcre] | Perl Compatible Regular Expressions. | [BSD](http://www.pcre.org/licence.txt) | ### Big Numbers @@ -54,7 +54,7 @@ Implementations for `Big` types such as [`BigInt`](https://crystal-lang.org/api/ | Library | Description | License | |---------|-------------|---------| -| [GMP][libgmp] | GNU multiple precision arithmetic library. | [LGPL v3+ / GPL v2+](https://gmplib.org/manual/Copying) +| [GMP][libgmp] | GNU multiple precision arithmetic library. | [LGPL v3+ / GPL v2+](https://gmplib.org/manual/Copying) | | [MPIR][libmpir] | Multiple Precision Integers and Rationals, forked from GMP. Used on Windows. | [GPL-3.0](https://github.com/wbhart/mpir/blob/master/COPYING) and [LGPL-3.0](https://github.com/wbhart/mpir/blob/master/COPYING.LIB) | ### Internationalization conversion @@ -64,7 +64,7 @@ Using a standalone library over the system library implementation can be enforce | Library | Description | License | |---------|-------------|---------| -| [libiconv][libiconv-gnu] (GNU) | Internationalization conversion library. | [LGPL-3.0](https://www.gnu.org/licenses/lgpl.html) +| [libiconv][libiconv-gnu] (GNU) | Internationalization conversion library. | [LGPL-3.0](https://www.gnu.org/licenses/lgpl.html) | ### TLS @@ -74,17 +74,17 @@ Both `OpenSSL` and `LibreSSL` are supported and the bindings automatically detec | Library | Description | License | |---------|-------------|---------| -| [OpenSSL][openssl] | Implementation of the SSL and TLS protocols | [Apache v2 (3.0+), OpenSSL / SSLeay (1.x)](https://www.openssl.org/source/license.html) -| [LibreSSL][libressl] | Implementation of the SSL and TLS protocols; forked from OpenSSL in 2014 | [ISC / OpenSSL / SSLeay](https://github.com/libressl-portable/openbsd/blob/master/src/lib/libssl/LICENSE) +| [OpenSSL][openssl] | Implementation of the SSL and TLS protocols | [Apache v2 (3.0+), OpenSSL / SSLeay (1.x)](https://www.openssl.org/source/license.html) | +| [LibreSSL][libressl] | Implementation of the SSL and TLS protocols; forked from OpenSSL in 2014 | [ISC / OpenSSL / SSLeay](https://github.com/libressl-portable/openbsd/blob/master/src/lib/libssl/LICENSE) | ### Other stdlib libraries | Library | Description | License | |---------|-------------|---------| -| [LibXML2][libxml2] | XML parser developed for the Gnome project. Implements the [`XML`](https://crystal-lang.org/api/XML.html) module. | [MIT](https://gitlab.gnome.org/GNOME/libxml2/-/blob/master/Copyright) -| [LibYAML][libyaml] | YAML parser and emitter library. Implements the [`YAML`](https://crystal-lang.org/api/YAML.html) module. | [MIT](https://github.com/yaml/libyaml/blob/master/License) -| [zlib][zlib] | Lossless data compression library. Implements the [`Compress`](https://crystal-lang.org/api/Compress.html) module. May be disabled with the `-Dwithout_zlib` compile-time flag. | [zlib](http://zlib.net/zlib_license.html) -| [LLVM][libllvm] | Target-independent code generator and optimizer. Implements the [`LLVM`](https://crystal-lang.org/api/LLVM.html) API. | [Apache v2 with LLVM exceptions](https://llvm.org/docs/DeveloperPolicy.html#new-llvm-project-license-framework) +| [LibXML2][libxml2] | XML parser developed for the Gnome project. Implements the [`XML`](https://crystal-lang.org/api/XML.html) module. | [MIT](https://gitlab.gnome.org/GNOME/libxml2/-/blob/master/Copyright) | +| [LibYAML][libyaml] | YAML parser and emitter library. Implements the [`YAML`](https://crystal-lang.org/api/YAML.html) module. | [MIT](https://github.com/yaml/libyaml/blob/master/License) | +| [zlib][zlib] | Lossless data compression library. Implements the [`Compress`](https://crystal-lang.org/api/Compress.html) module. May be disabled with the `-Dwithout_zlib` compile-time flag. | [zlib](http://zlib.net/zlib_license.html) | +| [LLVM][libllvm] | Target-independent code generator and optimizer. Implements the [`LLVM`](https://crystal-lang.org/api/LLVM.html) API. | [Apache v2 with LLVM exceptions](https://llvm.org/docs/DeveloperPolicy.html#new-llvm-project-license-framework) | ## Compiler dependencies @@ -93,8 +93,8 @@ In addition to the [core runtime dependencies](#core-runtime-dependencies), thes | Library | Description | License | |---------|-------------|---------| | [PCRE2][libpcre] | See above. | | -| [LLVM][libllvm] | See above. | [Apache v2 with LLVM exceptions](https://llvm.org/docs/DeveloperPolicy.html#new-llvm-project-license-framework) -| [libffi][libffi] | Foreign function interface. Used for implementing binary interfaces in the interpreter. May be disabled with the `-Dwithout_interpreter` compile-time flag. | [MIT](https://github.com/libffi/libffi/blob/master/LICENSE) +| [LLVM][libllvm] | See above. | [Apache v2 with LLVM exceptions](https://llvm.org/docs/DeveloperPolicy.html#new-llvm-project-license-framework) | +| [libffi][libffi] | Foreign function interface. Used for implementing binary interfaces in the interpreter. May be disabled with the `-Dwithout_interpreter` compile-time flag. | [MIT](https://github.com/libffi/libffi/blob/master/LICENSE) | [bionic-libc]: https://android.googlesource.com/platform/bionic/+/refs/heads/master/libc/ [compiler-rt]: https://compiler-rt.llvm.org/ diff --git a/docs/syntax_and_semantics/compile_time_flags.md b/docs/syntax_and_semantics/compile_time_flags.md index e40501898..1227747c9 100644 --- a/docs/syntax_and_semantics/compile_time_flags.md +++ b/docs/syntax_and_semantics/compile_time_flags.md @@ -49,14 +49,14 @@ The target architecture is the first component of the target triple. | Flag name | Description | |-----------|-------------| -| `aarch64` | AArch64 architecture -| `avr` | AVR architecture -| `arm` | ARM architecture -| `i386` | x86 architecture (32-bit) -| `wasm32` | WebAssembly -| `x86_64` | x86-64 architecture -| `bits32` *(derived)* | 32-bit architecture -| `bits64` *(derived)* | 64-bit architecture +| `aarch64` | AArch64 architecture | +| `avr` | AVR architecture | +| `arm` | ARM architecture | +| `i386` | x86 architecture (32-bit) | +| `wasm32` | WebAssembly | +| `x86_64` | x86-64 architecture | +| `bits32` *(derived)* | 32-bit architecture | +| `bits64` *(derived)* | 64-bit architecture | #### Vendor @@ -65,9 +65,9 @@ so the most common vendor is `unknown`. | Flag name | Description | |-----------|-------------| -| `macosx` | Apple -| `portbld` | FreeBSD variant -| `unknown` | Unknown vendor +| `macosx` | Apple | +| `portbld` | FreeBSD variant | +| `unknown` | Unknown vendor | #### Operating System @@ -75,16 +75,16 @@ The operating system is derived from the third component of a the target triple. | Flag name | Description | |-----------|-------------| -| `bsd` *(derived)* | BSD family (DragonFlyBSD, FreeBSD, NetBSD, OpenBSD) -| `darwin` | Darwin (MacOS) -| `dragonfly` | DragonFlyBSD -| `freebsd` | FreeBSD -| `linux` | Linux -| `netbsd` | NetBSD -| `openbsd` | OpenBSD -| `solaris` | Solaris/illumos -| `unix` *(derived)* | UNIX-like (BSD, Darwin, Linux, Solaris) -| `windows` | Windows +| `bsd` *(derived)* | BSD family (DragonFlyBSD, FreeBSD, NetBSD, OpenBSD) | +| `darwin` | Darwin (MacOS) | +| `dragonfly` | DragonFlyBSD | +| `freebsd` | FreeBSD | +| `linux` | Linux | +| `netbsd` | NetBSD | +| `openbsd` | OpenBSD | +| `solaris` | Solaris/illumos | +| `unix` *(derived)* | UNIX-like (BSD, Darwin, Linux, Solaris) | +| `windows` | Windows | #### ABI @@ -92,14 +92,14 @@ The ABI is derived from the last component of the target triple. | Flag name | Description | |-----------|-------------| -| `android` | Android (Bionic C runtime) -| `armhf` *(derived)* | ARM EABI with hard float -| `gnu` | GNU -| `gnueabihf` | GNU EABI with hard float -| `msvc` | Microsoft Visual C++ -| `musl` | musl -| `wasi` | Web Assembly System Interface -| `win32` *(derived)* | Windows API +| `android` | Android (Bionic C runtime) | +| `armhf` *(derived)* | ARM EABI with hard float | +| `gnu` | GNU | +| `gnueabihf` | GNU EABI with hard float | +| `msvc` | Microsoft Visual C++ | +| `musl` | musl | +| `wasi` | Web Assembly System Interface | +| `win32` *(derived)* | Windows API | ### Compiler options @@ -107,11 +107,11 @@ The compiler sets these flags based on compiler configuration. | Flag name | Description | |-----------|-------------| -| `release` | Compiler operates in release mode (`--release` or `-O3 --single-module` CLI option) -| `debug` | Compiler generates debug symbols (without `--no-debug` CLI option) -| `static` | Compiler creates a statically linked executable (`--static` CLI option) -| `docs` | Code is processed to generate API docs (`crystal docs` command) -| `interpreted` | Running in the interpreter (`crystal i`) +| `release` | Compiler operates in release mode (`--release` or `-O3 --single-module` CLI option) | +| `debug` | Compiler generates debug symbols (without `--no-debug` CLI option) | +| `static` | Compiler creates a statically linked executable (`--static` CLI option) | +| `docs` | Code is processed to generate API docs (`crystal docs` command) | +| `interpreted` | Running in the interpreter (`crystal i`) | ## User-provided flags @@ -132,18 +132,18 @@ Crystal program. | Flag name | Description | |-----------|-------------| -| `gc_none` | Disables garbage collection ([#5314](https://github.com/crystal-lang/crystal/pull/5314)) -| `debug_raise` | Debugging flag for `raise` logic. Prints the backtrace before raising. -| `preview_mt` | Enables multithreading preview. Introduced in 0.28.0 ([#7546](https://github.com/crystal-lang/crystal/pull/7546)) -| `skip_crystal_compiler_rt` | Exclude Crystal's native `compiler-rt` implementation. -| `tracing` | Build with support for [runtime tracing](../guides/runtime_tracing.md). -| `use_libiconv` | Use `libiconv` instead of the `iconv` system library -| `use_pcre2` | Use PCRE2 as regex engine (instead of legacy PCRE). Introduced in 1.7.0. -| `use_pcre` | Use PCRE as regex engine (instead of PCRE2). Introduced in 1.8.0. -| `win7` | Use Win32 WinNT API for Windows 7 -| `without_iconv` | Do not link `iconv`/`libiconv` -| `without_openssl` | Build without OpenSSL support -| `without_zlib` | Build without Zlib support +| `gc_none` | Disables garbage collection ([#5314](https://github.com/crystal-lang/crystal/pull/5314)) | +| `debug_raise` | Debugging flag for `raise` logic. Prints the backtrace before raising. | +| `preview_mt` | Enables multithreading preview. Introduced in 0.28.0 ([#7546](https://github.com/crystal-lang/crystal/pull/7546)) | +| `skip_crystal_compiler_rt` | Exclude Crystal's native `compiler-rt` implementation. | +| `tracing` | Build with support for [runtime tracing](../guides/runtime_tracing.md). | +| `use_libiconv` | Use `libiconv` instead of the `iconv` system library | +| `use_pcre2` | Use PCRE2 as regex engine (instead of legacy PCRE). Introduced in 1.7.0. | +| `use_pcre` | Use PCRE as regex engine (instead of PCRE2). Introduced in 1.8.0. | +| `win7` | Use Win32 WinNT API for Windows 7 | +| `without_iconv` | Do not link `iconv`/`libiconv` | +| `without_openssl` | Build without OpenSSL support | +| `without_zlib` | Build without Zlib support | ### Compiler features @@ -152,9 +152,9 @@ These flags enable or disable compiler features when building a Crystal program. | Flag name | Description | |-----------|-------------| | `no_number_autocast` | Will not [autocast](autocasting.md#number-autocasting) numeric expressions, only literals | -| `no_restrictions_augmenter` | Disable enhanced restrictions augmenter. Introduced in 1.5 ([#12103](https://github.com/crystal-lang/crystal/pull/12103)). -| `preview_overload_order` | Enable more robust ordering between def overloads. Introduced in 1.6 ([#10711](https://github.com/crystal-lang/crystal/issues/10711)). -| `strict_multi_assign` | Enable strict semantics for [one-to-many assignment](assignment.md#one-to-many-assignment). Introduced in 1.3.0 ([#11145](https://github.com/crystal-lang/crystal/pull/11145), [#11545](https://github.com/crystal-lang/crystal/pull/11545)) +| `no_restrictions_augmenter` | Disable enhanced restrictions augmenter. Introduced in 1.5 ([#12103](https://github.com/crystal-lang/crystal/pull/12103)). | +| `preview_overload_order` | Enable more robust ordering between def overloads. Introduced in 1.6 ([#10711](https://github.com/crystal-lang/crystal/issues/10711)). | +| `strict_multi_assign` | Enable strict semantics for [one-to-many assignment](assignment.md#one-to-many-assignment). Introduced in 1.3.0 ([#11145](https://github.com/crystal-lang/crystal/pull/11145), [#11545](https://github.com/crystal-lang/crystal/pull/11545)) | ### Compiler build features @@ -162,10 +162,10 @@ These flags enable or disable features when building the Crystal compiler. | Flag name | Description | |-----------|-------------| -| `without_ffi` | Build the compiler without `libffi` -| `without_interpreter` | Build the compiler without interpreter support -| `without_playground` | Build the compiler without playground (`crystal play`) -| `i_know_what_im_doing` | Safety guard against involuntarily building the compiler +| `without_ffi` | Build the compiler without `libffi` | +| `without_interpreter` | Build the compiler without interpreter support | +| `without_playground` | Build the compiler without playground (`crystal play`) | +| `i_know_what_im_doing` | Safety guard against involuntarily building the compiler | ### User code features diff --git a/docs/syntax_and_semantics/operators.md b/docs/syntax_and_semantics/operators.md index 6a4dc6b1e..f59788e17 100644 --- a/docs/syntax_and_semantics/operators.md +++ b/docs/syntax_and_semantics/operators.md @@ -120,14 +120,14 @@ ones. | Additive | `+`, `&+`, `-`, `&-` | | Shift | `<<`, `>>` | | Binary AND | `&` | -| Binary OR/XOR | `|`,`^` | +| Binary OR/XOR | `\|`,`^` | | Equality and Subsumption | `==`, `!=`, `=~`, `!~`, `===` | | Comparison | `<`, `<=`, `>`, `>=`, `<=>` | | Logical AND | `&&` | -| Logical OR | `||` | +| Logical OR | `\|\|` | | Range | `..`, `...` | | Conditional | `?:` | -| Assignment | `=`, `[]=`, `+=`, `&+=`, `-=`, `&-=`, `*=`, `&*=`, `/=`, `//=`, `%=`, `|=`, `&=`,`^=`,`**=`,`<<=`,`>>=`, `||=`, `&&=` | +| Assignment | `=`, `[]=`, `+=`, `&+=`, `-=`, `&-=`, `*=`, `&*=`, `/=`, `//=`, `%=`, `\|=`, `&=`,`^=`,`**=`,`<<=`,`>>=`, `\|\|=`, `&&=` | | Splat | `*`, `**` | @@ -185,7 +185,7 @@ ones. | Operator | Description | Example | Overloadable | Associativity | |---|---|---|---|---| | `&` | binary AND | `1 & 2` | yes | left | -| `|` | binary OR | `1 | 2` | yes | left | +| `\|` | binary OR | `1 \| 2` | yes | left | | `^` | binary XOR | `1 ^ 2` | yes | left | ### Relational operators @@ -283,7 +283,7 @@ For instance, `a == b <= c` is equivalent to `a == b && b <= c`, while `a <= b = | Operator | Description | Example | Overloadable | Associativity | |---|---|---|---|---| | `&&` | [logical AND](and.md) | `true && false` | no | left | -| `||` | [logical OR](or.md) | `true || false` | no | left | +| `\|\|` | [logical OR](or.md) | `true \|\| false` | no | left | ### Range @@ -362,13 +362,13 @@ The receiver can't be anything else than a variable or call. | `/=` | division *and* assignment | `i /= 1` | no | right | | `//=` | floor division *and* assignment | `i //= 1` | no | right | | `%=` | modulo *and* assignment | `i %= 1` | yes | right | -| `|=` | binary or *and* assignment | `i |= 1` | no | right | +| `\|=` | binary or *and* assignment | `i \|= 1` | no | right | | `&=` | binary and *and* assignment | `i &= 1` | no | right | | `^=` | binary xor *and* assignment | `i ^= 1` | no | right | | `**=` | exponential *and* assignment | `i **= 1` | no | right | | `<<=` | left shift *and* assignment | `i <<= 1` | no | right | | `>>=` | right shift *and* assignment | `i >>= 1` | no | right | -| `||=` | logical or *and* assignment | `i ||= true` | no | right | +| `\|\|=` | logical or *and* assignment | `i \|\|= true` | no | right | | `&&=` | logical and *and* assignment | `i &&= true` | no | right | ### Index Accessors diff --git a/docs/syntax_and_semantics/platform_support.md b/docs/syntax_and_semantics/platform_support.md index 04fbccdb0..a28459e69 100644 --- a/docs/syntax_and_semantics/platform_support.md +++ b/docs/syntax_and_semantics/platform_support.md @@ -19,10 +19,10 @@ and drop into *Tier 2*. | Target | Description | Supported versions | Comment | | ------ | ----------- | ------------------ | ------- | -| `aarch64-darwin` | Aarch64 macOS
(Apple Silicon) | 11+ *(testing only on 14)* | :material-checkbox-marked-circle: tests
:material-checkbox-marked-circle: builds -| `x86_64-darwin` | x64 macOS
(Intel) | 11+
*(testing only on 13; expected to work on 10.7+)* | :material-checkbox-marked-circle: tests
:material-checkbox-marked-circle: builds -| `x86_64-linux-gnu` | x64 Linux | kernel 4.14+, GNU libc 2.26+
*(expected to work on kernel 2.6.18+)* | :material-checkbox-marked-circle: tests
:material-checkbox-marked-circle: builds -| `x86_64-linux-musl` | x64 Linux | kernel 4.14+, MUSL libc 1.2+
*(expected to work on kernel 2.6.18+)* | :material-checkbox-marked-circle: tests
:material-checkbox-marked-circle: builds +| `aarch64-darwin` | Aarch64 macOS
(Apple Silicon) | 11+ *(testing only on 14)* | :material-checkbox-marked-circle: tests
:material-checkbox-marked-circle: builds | +| `x86_64-darwin` | x64 macOS
(Intel) | 11+
*(testing only on 13; expected to work on 10.7+)* | :material-checkbox-marked-circle: tests
:material-checkbox-marked-circle: builds | +| `x86_64-linux-gnu` | x64 Linux | kernel 4.14+, GNU libc 2.26+
*(expected to work on kernel 2.6.18+)* | :material-checkbox-marked-circle: tests
:material-checkbox-marked-circle: builds | +| `x86_64-linux-musl` | x64 Linux | kernel 4.14+, MUSL libc 1.2+
*(expected to work on kernel 2.6.18+)* | :material-checkbox-marked-circle: tests
:material-checkbox-marked-circle: builds | *** @@ -35,13 +35,13 @@ Details are described in the *Comment* column. | Target | Description | Supported versions | Comment | | ------ | ----------- | ------------------ | ------- | -| `aarch64-linux-gnu` | Aarch64 Linux | GNU libc 2.26+ | :material-checkbox-marked-circle: tests
:material-selection-ellipse: builds -| `aarch64-linux-musl` | Aarch64 Linux | MUSL libc 1.2+ | :material-checkbox-marked-circle: tests
:material-selection-ellipse: builds -| `arm-linux-gnueabihf` | Aarch32 Linux
(hardfloat) | GNU libc 2.26+ | :material-selection-ellipse: tests
:material-selection-ellipse: builds -| `i386-linux-gnu` | x86 Linux | kernel 4.14+, GNU libc 2.26+
*(expected to work on kernel 2.6.18+)* | :material-selection-ellipse: tests
:material-selection-ellipse: builds -| `i386-linux-musl` | x86 Linux | kernel 4.14+, MUSL libc 1.2+
*(expected to work on kernel 2.6.18+)* | :material-selection-ellipse: tests
:material-selection-ellipse: builds -| `x86_64-openbsd` | x64 OpenBSD | 6+ | :material-selection-ellipse: tests
:material-selection-ellipse: builds -| `x86_64-freebsd` | x64 FreeBSD | 12+ | :material-selection-ellipse: tests
:material-selection-ellipse: builds +| `aarch64-linux-gnu` | Aarch64 Linux | GNU libc 2.26+ | :material-checkbox-marked-circle: tests
:material-selection-ellipse: builds | +| `aarch64-linux-musl` | Aarch64 Linux | MUSL libc 1.2+ | :material-checkbox-marked-circle: tests
:material-selection-ellipse: builds | +| `arm-linux-gnueabihf` | Aarch32 Linux
(hardfloat) | GNU libc 2.26+ | :material-selection-ellipse: tests
:material-selection-ellipse: builds | +| `i386-linux-gnu` | x86 Linux | kernel 4.14+, GNU libc 2.26+
*(expected to work on kernel 2.6.18+)* | :material-selection-ellipse: tests
:material-selection-ellipse: builds | +| `i386-linux-musl` | x86 Linux | kernel 4.14+, MUSL libc 1.2+
*(expected to work on kernel 2.6.18+)* | :material-selection-ellipse: tests
:material-selection-ellipse: builds | +| `x86_64-openbsd` | x64 OpenBSD | 6+ | :material-selection-ellipse: tests
:material-selection-ellipse: builds | +| `x86_64-freebsd` | x64 FreeBSD | 12+ | :material-selection-ellipse: tests
:material-selection-ellipse: builds | ***