Commit graph

27 commits

Author SHA1 Message Date
Agus Zubiaga
d8d56f6e49
Rename {Parsed,Constrained}Module.imported_modules to available_modules 2024-05-01 09:58:23 -03:00
Agus Zubiaga
a8a829aadd
Merge branch 'main' into inline-imports 2024-04-28 00:11:29 -03:00
Richard Feldman
17d761252f
Improve reporting for doc links problems 2024-04-26 16:31:20 -04:00
Agus Zubiaga
7ebfc6d06d
Support both inline and header imports
Load will now convert header imports to inline import defs, so that
we can support both temporarily.
2024-04-20 19:04:09 -03:00
Agus Zubiaga
1f347f6ca1
Fix package module resolution in inline imports
We were still passing `ModuleIds` from `load` to `can`, but now
that imports can appear in any scope, we don't know which package
an unqualified module name belongs to from the top level.

We now pass `PackageModuleIds` instead  and keep a Map of `ModuleName` to
`ModuleId` in `Scope`.

This also allow us to import multiple modules with the same name from different
packages as long as a unique alias is provided.
2024-04-20 12:16:37 -03:00
Agus Zubiaga
d5a38a26db
Merge branch 'main' into inline-imports 2024-04-20 12:01:11 -03:00
Richard Feldman
14ba398b5d
Merge pull request #6569 from faldor20/docs
Add docs to completions and hover
2024-03-16 11:22:58 -04:00
Anton-4
121c585681
Merge pull request #6567 from jschear/js/expects_per_module
Run expects separately per module, report test results per module behind `--verbose` flag
2024-03-15 19:15:00 +01:00
Eli Dowling
cc4453b301
remove alias 2024-03-12 06:42:37 +10:00
Eli Dowling
15faf59c6b
removed unneeded imported modules info 2024-03-12 06:42:34 +10:00
Eli Dowling
3027fc2284
working completions 2024-03-12 06:42:22 +10:00
faldor20
321baf86d1
moved exposed module filtering into docs 2024-03-12 00:02:19 +10:00
faldor20
cdf218fe7a
first working version of docs hover 2024-03-11 11:10:34 +10:00
faldor20
6d3fd89f8e remove alias 2024-03-11 10:18:58 +10:00
Eli Dowling
a21f987e64 removed unneeded imported modules info 2024-03-11 10:18:58 +10:00
Eli Dowling
e809beb882 working completions 2024-03-11 10:18:58 +10:00
Jonathan Schear
504e00d44d
Group toplevel expects by module, run them separately 2024-03-08 14:56:32 -05:00
Agus Zubiaga
710d62f754
Load and can new top-level imports
Previously, all imports were available in the header, so we could start
processing dependencies as soon as we parsed it. However, the new imports
are treated as defs, so we have to parse the whole module to find them.

This commit essentially moves the dependency resolution from the `LoadHeader`
phase to the `Parse` phase, and it updates canonicalization to introduce
module symbols into scope when a `ValueDef::ModuleImport` is encountered.

NOTE:
- The `imports` header still parses, but it's no longer wired up. I will remove
it in an upcoming commit.
- Ingested files and imports that appear in nested expressions are not
yet supported by load
2024-01-20 08:39:31 -03:00
Brendan Hansknecht
be17c0cadb
load world abilities sooner 2023-12-02 21:18:32 -08:00
Richard Feldman
89be091f87
Order modules in docs sidebar based on exposes 2023-11-18 21:02:49 -05:00
Ayaz Hafiz
703ef6608e
Fix errors 2023-10-25 17:14:49 -05:00
Richard Feldman
eebec8a378
Add --output to build, default to app filename 2023-10-19 20:42:28 -04:00
Richard Feldman
eb135637ef
Compute total_problems rather than asking for it 2023-10-14 21:49:06 -04:00
Folkert
7fb4b60b21
move around hostexposedalias logic 2023-08-09 15:09:03 +02:00
Ayaz Hafiz
fcd733e1df
Dump roc checkmate 2023-07-17 09:51:01 -05:00
Ayaz Hafiz
1282110ef5
Push checkmate through load 2023-07-17 09:51:00 -05:00
Richard Feldman
40f2dd7030
Extract some modules out of file.rs 2023-06-28 22:35:59 -04:00