зеркало из https://github.com/github/codeql.git
1.4 KiB
1.4 KiB
Developer information
This document contains information about common development tasks.
Building the tools from source
Install Rust, then run:
(cd extractor && cargo build --release)
Generating the database schema and QL library
The generated ql/lib/ruby.dbscheme
and ql/lib/codeql/ruby/ast/internal/TreeSitter.qll
files are included in the repository, but they can be re-generated as follows:
# Run the generator
(cd extractor && cargo run --release --bin generator -- --dbscheme ../ql/lib/ruby.dbscheme --library ../ql/lib/codeql/ruby/ast/internal/TreeSitter.qll)
# Then auto-format the QL library
codeql query format -i ql/lib/codeql/ruby/ast/internal/TreeSitter.qll
Building a CodeQL database for a Ruby program
First, get an extractor pack. There are two options:
- Either download the latest
codeql-ruby-pack
from Actions and unzip it twice, or - Run
scripts/create-extractor-pack.sh
(Linux/Mac) orscripts\create-extractor-pack.ps1
(Windows PowerShell) and the pack will be created in theextractor-pack
directory.
Then run
codeql database create <database-path> -l ruby -s <project-source-path> --search-path <extractor-pack-path>
Running qltests
Run
codeql test run <test-path> --search-path <extractor-pack-path>
Writing database upgrade scripts
See this guide.