Skip to content

Latest commit

 

History

History
27 lines (21 loc) · 1.73 KB

File metadata and controls

27 lines (21 loc) · 1.73 KB

Contributing to Quickfall

Contributions to Quickfall are very well welcome and are incredibly useful for the language and ecosystem if done right! There are a few rules put in place in order to make the contributing process as smooth as possible:

  1. No usage of Artificial Intelligence. AI generated code or pull requests will be automatically denied as the code generated by them is frequently slow, unreliable or unsafe for the ecosystem.
  2. Use proper formatting. Use the propper format given by the project guidelines, if you aren't sure, check how it is formatted in the current files.
  3. Do no open your pull request on the master / main branch. This will make your pull request automatically denied
  4. Clean pull request or issue. This means that it should contain a good description or the added features / bug fixes.
  5. Test your changes. Make sure your changes do not break anything or aren't worsening the performance of the compiler / language without any reason

Initial contributing setup

In order to contribute, you first must clone the repository. You can do the following by using the GIT CLI:

git clone https://github.com/Quickfall/quickfall

You will need the following installed in order to compile & use Quickfall:

  • Rust 1.94.1
  • LLVM 22.1

You can then build the project by using the cargo Rust tool.

You can build different targets for the Quickfall project:

  • -p compiler_main: The compiler
  • -p lsp: The language server provider

Additionally, for the compiler target. You can add different features to customize the build. Here's a list of features and what they change

  • diagbacktraces: Add backtraces for inside of the compiler codebase for every Diagnostic. Automatically enables backtraces on diagnostics