Commit graph

12 commits

Author SHA1 Message Date
James Westman
6a078ee075 Add warning for unused imports 2024-04-06 14:33:20 -05:00
James Westman
bc605c5df8
Reduce errors when a namespace is not found
When the typelib for a namespace is not found, don't emit "namespace not
imported" errors. Just emit the one error on the import statement.
2023-03-21 11:31:02 -05:00
James Westman
1df46b5a06
Change the way values work
Change the parsing for values to make them more reusable, in particular
for when I implement extensions.
2023-01-12 15:49:19 -06:00
James Westman
8fee46ec68
Format using black 2022-12-19 11:52:59 -06:00
James Westman
a24f16109f
Separate output into its own module 2022-10-15 19:40:47 -05:00
James Westman
8cf793023d
Fix crash in language server 2022-10-15 11:47:42 -05:00
Sonny Piers
2da6be7618 lsp: Fix crash when import version missing
The issue is specific to the language server, since it's trying to use
an AST that contains errors. The test would not fail but was added
anyway.
2022-07-09 20:00:10 +00:00
James Westman
06f54c8ff8
Use typelib instead of XML
For normal compilation, use .typelib files rather than .gir XML files.
This is much faster.

Rather than using libgirepository, which would try to actually load the
libraries, we use a custom parser.

The language server will still read XML because it needs to access
documentation, which is not in the typelib, but that's generally fine
because it's a long lived process and only has to do that once.
2022-06-25 00:15:20 -05:00
James Westman
42aa91d4d9 Detect when gobject-introspection is missing
Instead of a compiler bug error, show a proper error message that asks
whether gobject-introspection is installed.

Fixes #58.
2022-05-27 16:21:18 +00:00
James Westman
4cf966eafa tests: Add GTK directive error tests 2022-03-28 14:38:05 -05:00
James Westman
ee5f32622f reorganization: Finish moving parsing and AST 2022-01-26 22:37:51 -06:00
James Westman
8f9de81e24 reorganization: Move hooks to common.py
This allows them to be referenced before they are filled, helping avoid
circular dependencies.
2022-01-26 14:50:36 -06:00