Commit Graph

2649 Commits

Author SHA1 Message Date
Brendan Hansknecht
d87a750f7c
misc cleanup 2022-10-14 07:45:50 -07:00
Brendan Hansknecht
bb26844cf1
add tests for Hash.hashStrBytes and Hash.hashUnordered 2022-10-14 07:45:50 -07:00
Brendan Hansknecht
382eaf88c2
add a bunch of tests 2022-10-14 07:45:50 -07:00
Brendan Hansknecht
e937a9078c
add Hasher.reset and Hash.hashUnordered 2022-10-14 07:45:50 -07:00
Brendan Hansknecht
ab16effa00
correct lengths 2022-10-14 07:45:50 -07:00
Brendan Hansknecht
0a31173029
expose List.getUnsafe for use in Dict 2022-10-14 07:45:50 -07:00
Brendan Hansknecht
6445f26529
remove hashUnordered for now, needs more methods 2022-10-14 07:45:50 -07:00
Brendan Hansknecht
7a8dee888d
add hashUnordered that uses a walk method and hashes all elements 2022-10-14 07:45:50 -07:00
Brendan Hansknecht
f398bb1eff
switch hashStr to use addBytes 2022-10-14 07:45:49 -07:00
Brendan Hansknecht
49c3fe1643
add version of wyhash to roc lib 2022-10-14 07:45:49 -07:00
Luke Boswell
0b1365e0a3
adding expect and documentation for Str builtin 2022-10-14 19:58:07 +11:00
Ayaz
e471f4b388
Merge pull request #4290 from roc-lang/impl-eq
Add the `Eq` ability
2022-10-13 16:13:51 -05:00
Folkert de Vries
da0a8f0b2b
Merge pull request #4312 from roc-lang/i4309
Correctly destructure patterns that are assigned to a thunk'd value
2022-10-13 00:22:04 +02:00
Ayaz Hafiz
ee1d93ba06
Rollup review comment suggestions from #4302 2022-10-12 16:42:11 -05:00
Ayaz Hafiz
b8cbaf6946
Resume caching Bool, Dict, and Set 2022-10-12 16:40:20 -05:00
Ayaz Hafiz
6e5de0d0a9
Disable test on gen-dev, for now 2022-10-12 16:38:37 -05:00
Ayaz Hafiz
7fa2778ecf
Fix even more load tests 2022-10-12 16:38:37 -05:00
Ayaz Hafiz
ccfb85325d
Update load tests 2022-10-12 16:38:37 -05:00
Ayaz Hafiz
861800ceea
Fix gen tests in the presence of Eq 2022-10-12 16:38:37 -05:00
Ayaz Hafiz
595433b8c8
Make sure to map structuralNotEq to NotEq 2022-10-12 16:38:37 -05:00
Ayaz Hafiz
9f099830db
Disable peg grammar test using abilities 2022-10-12 16:38:37 -05:00
Ayaz Hafiz
c5a025f853
s/Eq/Bool 2022-10-12 16:38:37 -05:00
Ayaz Hafiz
6149c289fc
Update Eq symbols 2022-10-12 16:38:36 -05:00
Ayaz Hafiz
81fa0407b6
Satiate must_use reason 2022-10-12 16:38:36 -05:00
Ayaz Hafiz
8d91370836
TODO is resolved 2022-10-12 16:38:36 -05:00
Ayaz Hafiz
ce2760d96d
Some more reporting tests for Eq 2022-10-12 16:38:36 -05:00
Ayaz Hafiz
3192bed417
Make sure structuralEq, structuralNotEq is not importable 2022-10-12 16:38:36 -05:00
Ayaz Hafiz
fe9b848686
Mark structuralEq as not exposed on the surface 2022-10-12 16:38:36 -05:00
Ayaz Hafiz
b04d7a9471
Bind types passed to isNotEq to Eq 2022-10-12 16:38:36 -05:00
Ayaz Hafiz
0f96a1231e
Fromat Bool.roc 2022-10-12 16:38:36 -05:00
Ayaz Hafiz
6f2115a739
Update ability usage in AStar.roc 2022-10-12 16:38:35 -05:00
Ayaz Hafiz
43086a7e25
Enable remaining gen tests 2022-10-12 16:38:35 -05:00
Ayaz Hafiz
99f097ddb5
Improve error messages for abilities 2022-10-12 16:38:35 -05:00
Ayaz Hafiz
4fa5cc0ac3
Disable Bool, Dict, Set caching until abilities caching 2022-10-12 16:38:34 -05:00
Ayaz Hafiz
a256947a9f
Move Eq to Bool 2022-10-12 16:37:51 -05:00
Ayaz Hafiz
bd5f5ed735
Old implementations can be overwritten before solving 2022-10-12 16:37:51 -05:00
Ayaz Hafiz
7298705db7
Fix parse error 2022-10-12 16:37:50 -05:00
Ayaz Hafiz
729f0a8e27
Remove return on unreachable result 2022-10-12 16:37:50 -05:00
Ayaz Hafiz
12778762b2
Make sure Box is handled as an Apply type 2022-10-12 16:37:50 -05:00
Ayaz Hafiz
0b02ef2803
Fix gen-tests except those that rely on Bool eq 2022-10-12 16:37:50 -05:00
Ayaz Hafiz
71c4731256
Remove test that is no longer correct 2022-10-12 16:37:50 -05:00
Ayaz Hafiz
bc2f4569aa
Able variables that are never used can become void 2022-10-12 16:37:50 -05:00
Ayaz Hafiz
f3a6b45452
Add must_use to all unification results
Making sure that no unspecialized lambda sets slip through the cracks!
2022-10-12 16:37:50 -05:00
Ayaz Hafiz
b6ffd09adf
Update reporting tests 2022-10-12 16:37:50 -05:00
Ayaz Hafiz
1c753ae031
Update solve tests 2022-10-12 16:37:49 -05:00
Ayaz Hafiz
c618ced743
Replace Bool.isEq with Eq.isEq 2022-10-12 16:37:49 -05:00
Ayaz Hafiz
4adae7651f
Use Eq.structuralEq for deriving 2022-10-12 16:37:49 -05:00
Ayaz Hafiz
3674f6861e
Compile derived structural equality 2022-10-12 16:37:49 -05:00
Ayaz Hafiz
54e977be2d
Constrain function type on closure type, not signature 2022-10-12 16:37:49 -05:00
Ayaz Hafiz
8310230f78
Add gen test for custom Eq 2022-10-12 16:37:49 -05:00
Ayaz Hafiz
0045c16b3e
Improve notes on underivable abilities 2022-10-12 16:37:49 -05:00
Ayaz Hafiz
b587bcf0c2
Implement obligation checking for the Eq ability
Every type can have `Eq.isEq` derived for it, as long as

- it does not transitively contain a function
- it does not transitively contain a floating point value
- it does not transitively contain an opaque type that does not support
  `Eq`
2022-10-12 16:37:49 -05:00
Ayaz Hafiz
5931dd5fc2
Check in test derive for eq 2022-10-12 16:37:48 -05:00
Ayaz Hafiz
4c30e4c4bb
Add derive-key implementation for IsEq 2022-10-12 16:37:48 -05:00
Ayaz Hafiz
16d12a51c2
Add Eq to the standard library 2022-10-12 16:37:48 -05:00
Ayaz
b2e7fd91ab
Merge pull request #4302 from roc-lang/serialize-ability-store
Serialize the abilities store and solved implementations for builtins
2022-10-12 16:37:16 -05:00
Prajwal S N
a3e6345257
builtin(list): add List.countIf
Closes #4174

Signed-off-by: Prajwal S N <prajwalnadig21@gmail.com>
2022-10-13 00:45:13 +05:30
Ayaz Hafiz
53514141f6
Layer thunk assignment over def body instead of returning immediately 2022-10-12 10:36:57 -05:00
Ayaz Hafiz
a68c63f1d1
Correctly destructure patterns that are assigned to a thunk'd value
Closes #4309
2022-10-12 09:23:48 -05:00
Anton-4
795bd3ff09
Merge pull request #4310 from cjduncana/fix-article
Fix typo in error
2022-10-12 16:12:33 +02:00
Christopher Duncan
d7cdcfc66b
Fix typo in error 2022-10-12 08:26:33 -04:00
Anton-4
fb926c9884
Merge pull request #4306 from jmakhack/newline-repl-tip
Add how to newline repl tips at start-up
2022-10-12 12:47:16 +02:00
Brian Carroll
3ce387b3e5
Fix benchmark host for 32-bit targets 2022-10-12 08:09:14 +01:00
Anton-4
54d0bc43b2
wasm 32 cli run fixes, added to ci tests 2022-10-12 07:43:47 +01:00
Brendan Hansknecht
8f8e6bebeb
Merge pull request #4295 from roc-lang/str-growth
Add capacity growth to RocStr
2022-10-12 06:41:14 +00:00
Josh Mak
20fcacbcd6
Add how to newline repl tips at start-up 2022-10-11 18:25:08 -07:00
Christopher Duncan
e086187f3c
Repair links in Markdown
This resolves #3832
2022-10-11 18:36:15 -04:00
Ayaz Hafiz
a9c79db5db
Allow complicated type 2022-10-11 10:49:24 -05:00
Ayaz Hafiz
76ce025faa
Turn on type caching for Encode, Decode, Hash 2022-10-11 10:48:25 -05:00
Ayaz Hafiz
7e79ff55f1
Serialize abilities store and solved implementations with subs 2022-10-11 10:31:21 -05:00
Brendan Hansknecht
e551e59c1c
refactor string reallocation 2022-10-11 07:56:34 -07:00
Ayaz Hafiz
46eb427393
Use roc_serialize in serializing abilities store, and add tests 2022-10-11 09:41:47 -05:00
Ayaz Hafiz
46aab8ad8c
Use roc_serialize for subs serialization 2022-10-11 09:19:25 -05:00
Ayaz Hafiz
ad10bf07c5
Allow serializing into a VecSet via Vec 2022-10-11 09:15:15 -05:00
Ayaz Hafiz
e880c45c8b
Implement serde for VecMap 2022-10-11 09:01:45 -05:00
Ayaz Hafiz
a5dbdf0b02
Add a roc_serialize crate for serialization utilities 2022-10-11 08:52:19 -05:00
Anton-4
46920d3c08
simplify format
Signed-off-by: Anton-4 <17049058+Anton-4@users.noreply.github.com>
2022-10-11 15:47:09 +02:00
Christopher Duncan
5ccd3c884d
Fix prefetch links in the Standard Library page 2022-10-11 08:00:11 -04:00
Luca Cervello
c39103d6d0
chore: replace panic! with internal_error! 2022-10-11 11:52:08 +02:00
Brian Carroll
36a8a2a99f
Merge pull request #4271 from roc-lang/s-for-search
Search docs with S instead of /
2022-10-11 08:30:50 +01:00
Brendan Hansknecht
ac33fd3237
fix wasm test 2022-10-10 23:18:06 -07:00
Brendan Hansknecht
96b5d365b2
Add capacity growth to RocStr
Also, cleans up the alloc and realloc api for both list and str.
Updates Str.reserve to match List.reserve
2022-10-10 22:24:55 -07:00
Ayaz Hafiz
80e0690a70
Resolve merge conflict regarding tag name slices 2022-10-11 00:00:41 -05:00
Brendan Hansknecht
dfcb72602d
Merge pull request #4287 from roc-lang/remove-old-result
[Easy Review] Remove RocResult from utils.zig
2022-10-11 03:54:12 +00:00
Ayaz
83b64c4fb3
Merge pull request #4209 from roc-lang/impl-tag-discriminant
Derive `Hash` implementations for tag unions
2022-10-10 22:23:05 -05:00
Ayaz Hafiz
9131a55a72
First pass at serializing the abilities store 2022-10-10 19:32:17 -05:00
Ayaz Hafiz
781d1a2642
Serialize uls_of_var in subs cache 2022-10-10 16:42:04 -05:00
Brendan Hansknecht
fdafac4323
Remove RocResult from utils.zig
It is implemented wrong and not used anywhere
2022-10-10 08:25:59 -07:00
Ayaz
b84c05fad9
Merge pull request #4276 from roc-lang/dependabot/cargo/once_cell-1.15.0
Bump once_cell from 1.14.0 to 1.15.0
2022-10-10 10:08:50 -05:00
Ayaz
3d17307bde
Merge pull request #4275 from roc-lang/surgical-error-msg
Give an error message when the surgical linker #3609
2022-10-10 10:08:33 -05:00
dependabot[bot]
1a9323ecdc
Bump libc from 0.2.133 to 0.2.135
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.133 to 0.2.135.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](https://github.com/rust-lang/libc/compare/0.2.133...0.2.135)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-10 13:00:20 +00:00
Richard Feldman
860d8b41f1
Merge pull request #4273 from cjduncana/dict-update
Add the `update` function to the `Dict` module
2022-10-10 02:37:42 -07:00
dependabot[bot]
7a2a0e12aa
Bump once_cell from 1.14.0 to 1.15.0
Bumps [once_cell](https://github.com/matklad/once_cell) from 1.14.0 to 1.15.0.
- [Release notes](https://github.com/matklad/once_cell/releases)
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.14.0...v1.15.0)

---
updated-dependencies:
- dependency-name: once_cell
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-10-10 05:26:09 +00:00
Christopher Duncan
96e12aa790
Add the update function to the Dict module
This resolves #4239
2022-10-09 20:21:21 -04:00
Brendan Hansknecht
3cf4459ea6
filter out debug and eh relocatoins 2022-10-09 15:48:23 -07:00
Richard Feldman
07ceabc9aa
Merge pull request #4245 from snprajwal/str-withprefix
builtin(str): add Str.withPrefix
2022-10-09 11:53:24 -07:00
Brendan Hansknecht
b306c9a76b
give an error message when the surgical linker would fail with know issue #3609 2022-10-09 11:39:10 -07:00
Jan Van Bruggen
7125ccb7b5
Merge pull request #4269 from roc-lang/v0.0.1_everywhere
De-bump all v0.1.0 Roc packages to v0.0.1
2022-10-09 12:27:24 -06:00
Prajwal S N
aef15ac1e8
Merge branch 'main' into str-withprefix 2022-10-09 15:53:16 +05:30
Luke Boswell
17aac69d92
fix for 's' keypress in search, and escape behaviour to reset sidebar elements 2022-10-09 20:42:19 +11:00