@@ -4,14 +4,13 @@ format:
4
4
cd " {{ justfile_directory ()}} /packages" ; yarn prettier -w .
5
5
6
6
# Build the WebAssembly for a specific target (usually either `web` or `bundler`)
7
- build-wasm target :
8
- cd " {{ justfile_directory ()}} /harper-wasm" && wasm-pack build --target {{ target }}
7
+ build-wasm :
8
+ cd " {{ justfile_directory ()}} /harper-wasm" && wasm-pack build --target web
9
9
10
10
# Build `harper.js` with all size optimizations available.
11
- build-harperjs :
11
+ build-harperjs : build-wasm
12
12
#! / bin/ bash
13
13
set -eo pipefail
14
- just build-wasm web
15
14
16
15
# Removes a duplicate copy of the WASM binary if Vite is left to its devices.
17
16
perl -pi -e ' s/new URL\(.*\)/new URL()/g' " {{ justfile_directory ()}} /harper-wasm/pkg/harper_wasm.js"
@@ -23,10 +22,9 @@ build-harperjs:
23
22
# Generate API reference
24
23
./ docs.sh
25
24
26
- test-harperjs :
25
+ test-harperjs : build-harperjs
27
26
#!/ bin/ bash
28
27
set -eo pipefail
29
- just build-harperjs
30
28
31
29
cd " {{ justfile_directory ()}} /packages/harper.js"
32
30
yarn install -f
@@ -50,22 +48,19 @@ dev-web:
50
48
yarn dev
51
49
52
50
# Build the Harper website.
53
- build-web :
51
+ build-web : build-harperjs
54
52
#! / bin/ bash
55
53
set -eo pipefail
56
54
57
- just build-harperjs
58
-
59
55
cd " {{ justfile_directory ()}} /packages/web"
60
56
yarn install -f
61
57
yarn run build
62
58
63
59
# Build the Harper Obsidian plugin.
64
- build-obsidian :
60
+ build-obsidian : build-harperjs
65
61
#! / bin/ bash
66
62
set -eo pipefail
67
63
68
- just build-harperjs
69
64
cd " {{ justfile_directory ()}} /packages/obsidian-plugin"
70
65
71
66
yarn install -f
@@ -169,51 +164,32 @@ check-rust:
169
164
cargo clippy -- -Dwarnings -D clippy::dbg_macro -D clippy::needless_raw_string_hashes
170
165
171
166
# Perform format and type checking.
172
- check :
167
+ check : check-rust build-web
173
168
#! / bin/ bash
174
169
set -eo pipefail
175
170
176
- just check-rust
177
-
178
171
cd " {{ justfile_directory ()}} /packages"
179
172
yarn install
180
173
yarn prettier --check .
181
174
yarn eslint .
182
175
183
176
# Needed because Svelte has special linters
184
177
cd web
185
- just build-web
186
178
yarn run check
187
179
188
180
# Populate build caches and install necessary local tooling (tools callable via `yarn run <tool>`).
189
- setup :
190
- #! / bin/ bash
191
- set -eo pipefail
192
-
193
- cargo build
194
- just build-harperjs
195
- just build-obsidian
196
- just test-vscode
197
- just test-harperjs
198
- just build-web
181
+ setup : build-harperjs build-obsidian test-vscode test-harperjs build-web
199
182
200
183
# Perform full format and type checking, build all projects and run all tests. Run this before pushing your code.
201
- precommit :
184
+ precommit : check test build-harperjs build-obsidian build-web
202
185
#! / bin/ bash
203
186
set -eo pipefail
204
187
205
- just check
206
- just test
207
-
208
188
cargo doc
209
189
cargo build
210
190
cargo build --release
211
191
cargo bench
212
192
213
- just build-harperjs
214
- just build-obsidian
215
- just build-web
216
-
217
193
# Install `harper-cli` and `harper-ls` to your machine via `cargo`
218
194
install :
219
195
cargo install --path harper-ls
@@ -230,10 +206,8 @@ dogfood:
230
206
done
231
207
232
208
# Test everything.
233
- test :
209
+ test : test-vscode test-harperjs
234
210
cargo test
235
- just test-vscode
236
- just test-harperjs
237
211
238
212
# Use `harper-cli` to parse a provided file and print out the resulting tokens.
239
213
parse file :
0 commit comments