Commit 3982f61
authored
Feature/scrub interpreter (#41)
* Clean up FFiValue -> Value Conversion
Also fixed the plugins to do the right thing with error conditions.
* Removed the Interpreter
For better or worse.
* Fixed HTTP plugin
Minor other tweaks.
* Got SQLX plugin working with BubbaError
That's about it.
* Get std plugin working.
* Got markdown plugin working with BubbaError
* Got blog working again
The counter stuff was messed up because Postgres
cares about the type you bind.
* Whoops -- too much.
There is a fix for the sqlx plugin that specifies the type of
the thing being bound.
There is a fix for blessing tests. I needed to disable all the
noise that the extruder and compiler make.
There is an async block addition too. Now you can create async
blocks and await them:
```rust
fn main() {
let x = async {
let y = 1;
y
};
let z = x.await;
// This will print 1
println!("{}", z);
}
```
`
* Tests
Most especially for the async block.
* tests
* FfiValue tests
* Working on FFI tests
Ran into this thing with FFi lists not having a type.
Sorted it out by giving it the option of a type.
Fixed the into value trait impl that's used after the
invoke_func call to use the type from the ffi list and
not the thing we pass in, which is a result.
* Remove proxy test for now.
* Throw an error if no code.
Prior to this External Implementation blocks were output with no body.
Now this fix is sort of silly because I need to make EIs work.
But in addition if there is a block with no statements, we will now also
throw an error.
* I don't know
I'm on vacation. I worked on some stuff.
* Cargo.locks
* Miscellaneous Changes
Some Cargo updating and some minor changes to the VM.
* Update to rustc-hash 2.0.0
The `keys()` method used to return the keys in insertion order, but now
returns them in an arbitrary order. This messed up my shit. Now it's
fixed.
* Two things
I added a threadpool to the VM for running lambdas.
I cleaned up some of the code handling requests in the http plugin.
* More Hardening
Check all keys before using them.
* Damn Dude
I haven't been working on dwarf because of Woog. I'm just getting
back into it and I really don't know all that's been done.
Recently I fixed importing pre-extruded files. I also fixed a bunch
of bugs related to using the new backend. I guess before there
was some aliasing going on.
* Multiple variable bug
If you did something like this:
```rust
let x = 10;
let x = "foo";
```
Then sometimes x is in int and sometimes it's a string.
That was then. Nwo it always works.
* Website compiles -- eventually
Fixed a bug where we'd find a type in the store but it wasn't being
added to the context's types and thus was being marked as not found.
Updated outdated crates. Snafu changed it's interface a bit and it
no longer requires the `Location` import. That touched a lot of files.
Fixed an FFI bug with the plugins where a `Result` was being typed
as `Result` and not `std::result::Result`.
* Saving and loading stores is working
Ended up using an ordered hash map for the store.
Plugins are building. Tests are passing. This should be g2g.
* Fix Cargo.toml
* Update feature flags to use correct sarzak
* Update Rust, and more verbose xtask output
- Update Rust to 1.84
- Add more verbose output to xtask plugin output
* thrashing
* Attempting to fix the dwarf's home.
* Trying different value for DWARF_HOME.
* xtask fun
I updated the install task to create the extruded directory in addition
to the compiled directory.
Refactored the DWARF_HOME calculation to main instead of having it in
each of the install and plugin tasks.1 parent 98f28b7 commit 3982f61
File tree
406 files changed
+14991
-19160
lines changed- .github/workflows
- .vscode
- benches
- plugins
- http
- ore
- src
- lu_dog
- md
- src
- sarzak
- src
- sqlx
- ore
- src
- std
- src
- test_ffi
- .vscode
- ore
- src
- src
- bin
- bubba
- compiler/expression
- chacha
- interpreter
- expression
- call
- operator
- binary
- value
- dwarf
- extruder/expression
- items
- tests
- harness
- aoc_2023
- async
- chacha
- async
- failing
- errors
- expression
- for
- if
- index
- match
- extensions/test_ffi
- failing
- item
- enum
- function/failing
- impl
- struct
- parser
- scopes
- std
- types
- generics
- string
- proxy
- vm_harness
- errors
- expression
- failing
- for
- function_call
- group
- if
- failing
- index
- list
- literal
- match
- operator
- binary
- assignment
- boolean
- comparison
- unary
- string
- struct
- failing
- variable
- extensions
- md
- sqlx
- std
- statement
- types
- char
- failing
- generics
- hashmap
- failing
- list
- failing
- map
- string
- failing
- uuid
- xtask
- src
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
406 files changed
+14991
-19160
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
| 73 | + | |
| 74 | + | |
73 | 75 | | |
74 | 76 | | |
75 | 77 | | |
76 | 78 | | |
| 79 | + | |
77 | 80 | | |
78 | 81 | | |
79 | 82 | | |
80 | 83 | | |
81 | | - | |
| 84 | + | |
82 | 85 | | |
83 | 86 | | |
84 | 87 | | |
85 | 88 | | |
| 89 | + | |
86 | 90 | | |
87 | 91 | | |
88 | 92 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
5 | 10 | | |
6 | 11 | | |
7 | 12 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
145 | 148 | | |
146 | 149 | | |
147 | | - | |
| 150 | + | |
148 | 151 | | |
149 | | - | |
150 | | - | |
151 | | - | |
152 | | - | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
153 | 158 | | |
154 | 159 | | |
155 | 160 | | |
156 | 161 | | |
157 | 162 | | |
158 | | - | |
| 163 | + | |
| 164 | + | |
159 | 165 | | |
160 | 166 | | |
161 | 167 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
14 | 14 | | |
15 | 15 | | |
16 | 16 | | |
| 17 | + | |
17 | 18 | | |
18 | 19 | | |
19 | 20 | | |
| |||
0 commit comments