Contributing to NeoVintageous
Learn about how you can contribute.
Pull Requests
There are two branches:
- master (patch releases)
- develop (minor and major releases)
Please send bug fixes to the master branch and features to develop.
Please ensure your pull request supports:
- Sublime Text 3 (Python 3.3)
- Sublime Text 4 (Python 3.8)
flake8
and mypy
are used to provide some code quality assurances. Run flake8
to check your work and please check that the ci checks pass.
Please check there are no unrelated changes.
Please sign your commits and consider a commit message convention.
Example flake8 and mypy install commands
pip3 install flake8 flake8-docstrings pydocstyle mypy
Testing
Please consider testing your work. There is a test suite in tests/. To run the tests, use the UnitTesting package from @randy3k. The configuration file for the tests is in unittesting.json.
Run the test suite
- Open the Command Palette
Ctrl+Shift+P
(Linux/Win) orCmd+Shift+P
(Mac). - Type "UnitTesting" and press Enter.
- Enter "NeoVintageous" as the package to test and press Enter.
Consider enabling pre-releases to get access the latest features, improvements, and bug fixes before they are officially released.
Debugging
The console log is your friend: Menu → View → Show Console
To enable command and input logging, run the following commands in the console:
sublime.log_commands(True)
sublime.log_input(True)
TIP
Install ToggleDebugMode Install via Package Control to get a Developer Tools menu and Command Palette for toggling various Sublime Text loggers.
To enable NeoVintageous logging, set an environment variable named SUBLIME_NEOVINTAGEOUS_DEBUG
to a non-blank value or set it to one of the following log levels: critical
, error
, warning
, info
, debug
.
$ SUBLIME_NEOVINTAGEOUS_DEBUG=INFO subl
set SUBLIME_NEOVINTAGEOUS_DEBUG=INFO& "C:\Program Files\Sublime Text 3\subl.exe"