Skip to content

Commit a3bd7d9

Browse files
authored
Fix vale issues in MDX files (TraceMachina#1086)
1 parent 846b25b commit a3bd7d9

File tree

4 files changed

+37
-36
lines changed

4 files changed

+37
-36
lines changed

.github/styles/config/vocabularies/TraceMachina/accept.txt

+5-2
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,25 @@ Cloudflare
55
ELB
66
GPUs
77
Goma
8+
Kustomization
9+
[Hh]ermeticity
10+
Kustomization
811
LLD
912
LLVM
1013
Machina
11-
Mintlify
14+
[Mm]onorepo
1215
NVMe
1316
NativeLink
1417
OCI
1518
OSSF
1619
Reclient
1720
SPDX
1821
Starlark
19-
TIP
2022
Tokio
2123
TraceMachina
2224
[Tt]oolchain
2325
Qwik
26+
Verilog
2427
alex
2528
autoscaling
2629
blazingly

.vale.ini

+3-4
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,10 @@ Vocab = TraceMachina
88

99
Packages = alex, Microsoft, write-good
1010

11-
# TODO(aaronmondal): Fix mdx files and enable this.
12-
# [formats]
13-
# mdx = md
11+
[formats]
12+
mdx = md
1413

15-
[*.md]
14+
[*.{md,mdx}]
1615
BasedOnStyles = alex, Vale, Microsoft, write-good
1716

1817
# Too harsh. The `write-good.Passive` check already covers many cases.

docs/src/content/docs/explanations/history.mdx

+12-13
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,15 @@ description: 'What is NativeLink?'
66
This project was first created due to frustration with similar projects not
77
working or being extremely inefficient. Rust was chosen as the language to
88
write it in because at the time Rust was going through a revolution in the
9-
new-ish feature async-await. This made making multi-threading extremely
10-
simple when paired with a runtime like tokio while still giving all the
11-
lifetime and other protections that Rust gives. This pretty much guarantees
12-
that we will never have crashes due to race conditions. This kind of project
13-
seemed perfect, since there is so much asynchronous activity happening and
14-
running them on different threads is most preferable. Other languages like
15-
Go are good candidates, but other similar projects rely heavily on channels
16-
and mutex locks which are cumbersome and have to be carefully designed by
17-
the developer. Rust doesn't have these issues, since the compiler will
18-
always tell you when the code you are writing might introduce undefined
19-
behavior. The last major reason is because Rust is extremely fast, +/- a
20-
few percent of C++ and has no garbage collection (like C++, but unlike Java,
21-
Go, or Typescript).
9+
new-ish feature async-await. This made making multi-threading more accessible
10+
when paired with a runtime like Tokio while still giving all the lifetime and
11+
other protections that Rust gives. This pretty much guarantees that we will
12+
never have crashes due to race conditions. This kind of project seemed perfect,
13+
since there is so much asynchronous activity happening and running them on
14+
different threads is most preferable. Other languages like Go are good
15+
candidates, but other similar projects rely heavily on channels and mutex locks
16+
which are cumbersome and have to be carefully designed by the developer. Rust
17+
doesn't have these issues, since the compiler will always tell you when the code
18+
you are writing might introduce undefined behavior. The last major reason is
19+
because Rust is extremely fast, comparable to C++ and has no garbage collection
20+
(like C++, but unlike Java, Go, or Typescript).

docs/src/content/docs/reference/glossary.mdx

+17-17
Original file line numberDiff line numberDiff line change
@@ -33,33 +33,33 @@ interacts with the NativeLink's server to leverage features such as caching
3333
Content Addressable Storage (CAS) is a storage system in which data is
3434
identified and accessed based on its content rather than its location. Each
3535
piece of data (artifact) is hashed, generating a unique identifier (digest)
36-
based on the data's content. In NativeLink, the CAS stores the binary artifacts
36+
based on the data content. In NativeLink, the CAS stores the binary artifacts
3737
resulting from build actions. It stores identical data pieces only once and
3838
reuses the data pieces as needed.
3939

4040
## Reclient
4141

4242
Reclient is an open source build tool created by Google as the successor to
43-
Goma. In terms of NativeLink, it is a client that interacts with NativeLink's
43+
Goma. In terms of NativeLink, it's a client that interacts with NativeLink's
4444
server to leverage features such as caching (CAS), distributed execution, and
45-
artifact management. It is mostly used to compile and build Chromium, an open
45+
artifact management. It's mostly used to compile and build Chromium, an open
4646
source project behind the Google Chrome browser.
4747

4848
## Hermeticity
4949

5050
For build systems, hermeticity refers to the property of creating isolated and
5151
self-contained environments for building and testing software. A hermetic build
52-
environment ensures that builds are not influenced by the external state, such
52+
environment ensures that builds aren't influenced by the external state, such
5353
as your local environment or variations in system dependencies. This isolation
5454
is achieved by using precise, versioned dependencies and fully specifying the
5555
build configuration. In NativeLink, hermeticity is achieved using Nix.
5656

57-
## Mono Repo
57+
## Monorepo
5858

59-
A mono repository, also referred to as a mono repo, contains the source code for
60-
multiple projects, often across different domains or areas of a single
59+
A monolithic repository, also referred to as a monorepo, contains the source
60+
code for multiple projects, often across different domains or areas of a single
6161
organization. They require unique tooling to handle multiple languages and
62-
technologies within the repo. A good example of a mono repo is the Chromium
62+
technologies within the repository. A good example of a monorepo is the Chromium
6363
project.
6464

6565
## NativeLink
@@ -74,9 +74,9 @@ usage and reduce build times.
7474

7575
Nix is an open source tool that builds packages in isolation from each other.
7676
It's how builds remain hermetic in NativeLink. Nix ensures that builds are
77-
reproducible and don't have undeclared dependencies, makes it easy to share
78-
development and build environments for projects, and ensures that installing or
79-
upgrading packages cannot break other packages.
77+
reproducible and don't have undeclared dependencies, lets you share development
78+
and build environments for projects, and ensures that installing or upgrading
79+
packages can't break other packages.
8080

8181
## Remote caching
8282

@@ -89,12 +89,12 @@ times and improves compute resource usage by avoiding redundant computations.
8989
Remote execution refers to the process of running computational tasks, such as
9090
building, compiling, and testing code, on remote servers rather than on a local
9191
machine. By using remote servers, tasks can be distributed across multiple
92-
servers (i.e., parallel processing). This can speed up build and test processes
93-
faster than local machines.
92+
servers (that is, parallel processing). This can speed up build and test
93+
processes faster than local machines.
9494

9595
## Remote Build Execution
9696

97-
The Remote Execution Protocol is a set of protobol buffers (As of V2) which act
97+
The Remote Execution Protocol is a set of protocol buffers (As of V2) which act
9898
as standardized guidelines and API specifications that enable clients (such as
9999
build systems like Bazel) to distribute build and test action across multiple
100100
remote machines. This protocol facilitates the interaction between clients and
@@ -109,7 +109,7 @@ source code is written in Rust.
109109

110110
## Scheduler
111111

112-
The scheduler is a core component in NativeLink. It is responsible for managing
112+
The scheduler is a core component in NativeLink. It's responsible for managing
113113
and coordinating the execution of tasks on remote workers based on resource
114114
availability and dependencies. It leverages the DAG representation of task
115115
dependencies to ensure tasks are executed in the correct order and optimizes the
@@ -121,12 +121,12 @@ A simulation is a computer-based model to replicate the behavior and
121121
interactions of robots within a virtual environment. People can test an analyze
122122
robotic systems without the need of physical robots in real-world environments.
123123
NativeLink executes high-fidelity simulations through its advanced caching
124-
system, distributed execution of design layouts (with Verilog & VHDL), and
124+
system, distributed execution of design layouts (such as Verilog & VHDL), and
125125
continuous, real-time monitoring to detect anomalies.
126126

127127
## Workers
128128

129-
The workers are one of the core components of NativeLink. They are responsible
129+
The workers are one of the core components of NativeLink. They're responsible
130130
for executing the build tasks assigned by the scheduler and create the build
131131
artifacts. The worker pool can consist of multiple workers running on powerful
132132
remote machines.

0 commit comments

Comments
 (0)