Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Attempt at defining honk runtime #217

Open
wants to merge 73 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
73 commits
Select commit Hold shift + click to select a range
19ce26d
[honk] initial commit?
anp Nov 3, 2020
10f7dd1
[honk] stub out maintain/converge distinction
anp Nov 3, 2020
d12537f
[honk] stub out root module loading
anp Nov 4, 2020
b7be115
[honk] actually evaluate! yay!
anp Nov 4, 2020
19ab927
[honk] store codemap with eval errors
anp Nov 4, 2020
32dc13a
[honk] remove import alias
anp Nov 4, 2020
cb41bd8
[honk] print starlark errors
anp Nov 4, 2020
fd08bc1
[honk] move environment creation to loader
anp Nov 4, 2020
e502647
[honk] wait for file changes we care about instead of a timer
anp Nov 4, 2020
4a55c6d
[honk] support loading files
anp Nov 8, 2020
3836fe1
[honk] expose command() function to environment
anp Nov 8, 2020
1a2eb5a
[honk] refactor command builtins to a submodule
anp Nov 8, 2020
0ce2b0f
[honk] require commands to succeed by default
anp Nov 8, 2020
38ee294
[honk] implement json parsing, get cargo metadata with it
anp Nov 8, 2020
2a61eb6
[honk] accept non-string args to commands
anp Nov 8, 2020
df1a369
[honk] verify metadata version we get from cargo
anp Nov 8, 2020
1f30650
[honk] extract cargo metadata function to separate file
anp Nov 9, 2020
459dc01
[honk] reorder target fields to improve readability
anp Nov 9, 2020
ee3dee7
[honk] stub out cargo target discovery
anp Nov 14, 2020
a1b661b
[honk] move noisy logs to debug
anp Nov 22, 2020
5e5fe7a
[honk] add todo
anp Nov 22, 2020
6427502
[honk] stub out formatting
anp Nov 22, 2020
aa60394
[honk] capture spantraces
anp Nov 22, 2020
8482716
[honk] refactor cargo_metadata function
anp Nov 26, 2020
50c37d7
[honk] change formatter panic stub to warning stub
anp Nov 26, 2020
d88ea47
[honk] stub out input tracking for commands
anp Nov 26, 2020
a48d32f
[honk] s/rust rules/cargo rules/
anp Nov 26, 2020
7427c73
[honk] stub out browser-tests metadata
anp Nov 27, 2020
cb95695
[honk] convert wasm funciton to a stub without failure
anp Nov 28, 2020
99d2320
[honk] stub out doc/test/lint targets
anp Nov 28, 2020
ae43d11
[honk] track inputs/outputs on commands, not actions
anp Nov 28, 2020
d7d13ec
[honk] add path module w/ glob support
anp Nov 28, 2020
86994a8
[honk] add metadata command's inputs
anp Dec 5, 2020
7b63d96
[honk] add repr for command
anp Dec 6, 2020
4e8f8b9
[honk] add debug log before constructing env
anp Dec 6, 2020
0c4fae1
[honk] honk-flow command
anp Dec 6, 2020
73afcae
[honk] add todo
anp Dec 6, 2020
2d0a7ef
[honk] better repr for commands
anp Dec 6, 2020
6b5f8aa
[honk] clean up path repr impl
anp Dec 6, 2020
f3f796c
[honk] implement glob method with list of patterns
anp Dec 6, 2020
9e07834
[honk] expose batch globbing in path api
anp Dec 6, 2020
9ca934f
[honk] support resolving paths relative to workspace root
anp Dec 6, 2020
b49ef5a
[honk][cargo] make metadata command volatile again
anp Dec 6, 2020
e40d561
[honk] add todo
anp Dec 6, 2020
b15f1a1
[honk] add todo
anp Dec 8, 2020
3352bf2
[honk] Start port to facebook's starlark crate.
anp Mar 14, 2021
070b643
[ofl] Format honk directory.
anp Mar 21, 2021
bd89755
[honk] Include honk's Cargo.toml in flow.
anp Mar 21, 2021
4746093
[honk] Compiling successfully with FB starlark.
anp Mar 21, 2021
d5d0996
[honk] json.decode syntax matches starlark spec.
anp Mar 21, 2021
b76331e
[honk] Try an all-caps name to delineate project config from rules.
anp Mar 21, 2021
7eaa4cd
[honk] Clean up FileLoader impl.
anp Mar 21, 2021
8f2e8f9
[honk] Centralize side-effectful rules in Revision.
anp Mar 21, 2021
7cdf4bb
[honk] Define RevisionState that can actually be mutated.
anp Mar 21, 2021
02a69e1
[honk] Collect formatters and targets, print at end.
anp Mar 21, 2021
a61093c
[honk] Resolve declared targets into a single graph.
anp Mar 22, 2021
12122a3
[honk] Remove unused muts.
anp Mar 22, 2021
f9fb00b
[honk] Validate build graph when resolving.
anp Mar 22, 2021
7fc159a
[vscode] Disable auto run tasks, honk will supercede them.
anp Apr 4, 2021
1e5b138
[honk] Order tests based on dep graph.
anp Apr 4, 2021
21c946e
[honk] Dump graphviz of a successful resolution.
anp Apr 4, 2021
8788a6e
[honk] Add graph resolution stage.
anp Apr 4, 2021
1bc3381
[honk] format honk during workflow
anp Apr 4, 2021
b6f09a6
[honk] Add edges from actions to actions via files.
anp Apr 4, 2021
bb8c52d
[honk] Extract graph module.
anp Apr 4, 2021
9277be6
[honk] update starlark crate
anp Apr 4, 2021
c145bdd
[honk] move EvaluatorExt to revision module
anp Apr 5, 2021
7a16c33
[honk] extract workspace state to cloneable type
anp Apr 10, 2021
792c225
[honk] InnerState is the FileLoader now.
anp Apr 10, 2021
ea71528
[honk] switch to starlark on crates.io
anp Apr 10, 2021
c79e84a
[honk] move mutable workspace lifecycle to state module
anp Apr 10, 2021
c3265df
[honk] add basic http server
anp Apr 10, 2021
eba5a14
[honk] wip graphql server
anp Apr 25, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -126,3 +126,10 @@ ofl-fmt-project = "ofl fmt"
clippy-ofl = "clippy --manifest-path ofl/Cargo.toml --workspace"
test-ofl = "test --manifest-path ofl/Cargo.toml --workspace"
docs-ofl = "doc --manifest-path ofl/Cargo.toml --workspace --no-deps"

####################################################################################################
# honk

honk = "run --manifest-path honk/Cargo.toml --release --"
fmt-honk = "fmt --manifest-path honk/Cargo.toml"
honk-flow = "watch -w honk/src -w honk/Cargo.toml -w Cargo.toml -x fmt-honk -x honk"
4 changes: 4 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"python.formatting.provider": "black",
"editor.formatOnSave": true
}
18 changes: 9 additions & 9 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
Expand All @@ -11,7 +11,7 @@
"panel": "dedicated"
},
"runOptions": {
"runOn": "folderOpen"
// "runOn": "folderOpen"
},
"isBackground": true,
"command": "cargo",
Expand All @@ -30,7 +30,7 @@
"panel": "dedicated"
},
"runOptions": {
"runOn": "folderOpen"
// "runOn": "folderOpen"
},
"isBackground": true,
"command": "cargo",
Expand All @@ -49,7 +49,7 @@
"panel": "dedicated"
},
"runOptions": {
"runOn": "folderOpen"
// "runOn": "folderOpen"
},
"isBackground": true,
"command": "cargo",
Expand All @@ -68,7 +68,7 @@
"panel": "dedicated"
},
"runOptions": {
"runOn": "folderOpen"
// "runOn": "folderOpen"
},
"isBackground": true,
"command": "cargo",
Expand All @@ -85,7 +85,7 @@
"panel": "dedicated"
},
"runOptions": {
"runOn": "folderOpen"
// "runOn": "folderOpen"
},
"isBackground": true,
"command": "cargo",
Expand All @@ -104,7 +104,7 @@
"panel": "dedicated"
},
"runOptions": {
"runOn": "folderOpen"
// "runOn": "folderOpen"
},
"isBackground": true,
"command": "cargo",
Expand All @@ -127,7 +127,7 @@
"panel": "dedicated"
},
"runOptions": {
"runOn": "folderOpen"
// "runOn": "folderOpen"
},
"isBackground": true,
"command": "npx",
Expand All @@ -141,4 +141,4 @@
"problemMatcher": []
}
]
}
}
1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@ members = [
"topo/macro",
]
exclude = [
"honk",
"ofl",
]

Expand Down
5 changes: 5 additions & 0 deletions WORKSPACE.honk
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
load("//honk/rules/cargo/workspace.honk", "cargo_workspace")

cargo_workspace(manifest="//Cargo.toml")

# TODO specify website construction & HTTP server
3 changes: 3 additions & 0 deletions dom/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ edition = "2018"
default-target = "wasm32-unknown-unknown"
all-features = true

[package.metadata.honk]
browser-tests = true

[lib]
crate-type = [ "cdylib", "rlib", ]

Expand Down
3 changes: 3 additions & 0 deletions dom/augdom/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ edition = "2018"
default-target = "wasm32-unknown-unknown"
all-features = true

[package.metadata.honk]
browser-tests = true

[features]
default = ["webdom"]
rsdom = ["illicit"]
Expand Down
3 changes: 3 additions & 0 deletions dom/examples/drivertest/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ version = "0.1.0"
authors = ["Adam Perry <lol@anp.lol>"]
edition = "2018"

[package.metadata.honk]
browser-tests = true

[package.metadata.wasm-pack.profile.release]
wasm-opt = false

Expand Down
3 changes: 3 additions & 0 deletions dom/examples/hacking/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ edition = "2018"
license-file = "../../../../LICENSE-MIT"
repository = "https://github.com/anp/moxie.git"

[package.metadata.honk]
browser-tests = true

[package.metadata.wasm-pack.profile.release]
wasm-opt = false

Expand Down
3 changes: 3 additions & 0 deletions dom/examples/todo/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ edition = "2018"
license-file = "../../../../LICENSE-MIT"
repository = "https://github.com/anp/moxie.git"

[package.metadata.honk]
browser-tests = true

[package.metadata.wasm-pack.profile.release]
wasm-opt = false

Expand Down
3 changes: 3 additions & 0 deletions dom/prettiest/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ repository = "https://github.com/anp/moxie.git"
authors = ["Adam Perry <lol@anp.lol>"]
edition = "2018"

[package.metadata.honk]
browser-tests = true

[dependencies]
js-sys = "0.3.25"
scopeguard = "1.1.0"
Expand Down
Loading