isle-portable/tools/README.md
2023-11-26 14:57:19 +01:00

44 lines
1.1 KiB
Markdown

# LEGO Island Decompilation Tools
These are a set of Python tools for helping with the decomp project.
## Installing
Use pip to install the required packages:
```
pip install -r tools/requirements.txt
```
## Overview
* `reccmp`: Compares the original EXE or DLL with a recompiled EXE or DLL, provided a PDB file
* `verexp`: Verifies exports by comparing the exports of the original DLL and the recompiled DLL
* `checkorder`: Checks `OFFSET` declarations, ensuring they appear in ascending order within a unit
* `isledecomp`: A library that is used by the above scripts, it has a collection of useful classes and functions
## Testing
`isledecomp` has a small suite of tests. Install pylint and run it, passing in the directory:
```
pip install pytest
pytest tools/isledecomp/tests/
```
## Development
In order to keep the code clean and consistent, we use `pylint` and `black`:
```
pip install black pylint
```
### Run pylint (ignores build and virtualenv):
```
pylint tools/ --ignore=build,bin,lib
```
### Check code formatting without rewriting files:
```
black --check tools/
```
### Apply code formatting:
```
black tools/
```