CARL icon indicating copy to clipboard operation
CARL copied to clipboard

General improvements list

Open eddiebergman opened this issue 3 years ago • 3 comments

Just some things noted that might be nice to know about and I can contribute. Non are urgent, just documenting them:

  • [x] The tests folder should be moved up one directory as they aren't part of the source code. Doing so means they aren't included with a distribution if CARL is put up on PyPi.

  • [ ] I would recommend using pytest over the built in unittest, it's a lot more flexible but this probably needs some guidance.

  • [x] Seems like the .env file in the src directory shouldn't be required?

  • [ ] The setup.cfg could be a little more explicit, especially with declaring where the package actually is. Here's some reading if you like.

  • [ ] Seems everything to do with submodules is no longer relevant, can delete the .gitmodules file and the instructions in the README.md with respect to --recursive.

  • [x] Could set up Github actions to do some general checks

    • Run tests
    • Set up code coverage, gives reports like this and even more detailed things like this.
    • Can do checks for formatting, using black, isort, flake8 and mypy.
  • [x] Setup a pyproject.toml and .flake8 which will configure all of those formatting tools

  • [x] A Makefile to do basic things which make contributers life easier and your own life easier. An example can be seen in this PR for autosklearn.

  • [ ] Pip has a hard time resolving all the dependencies for version #b7382fe, not that easy to fix but freezing requirements to a specific version might help that. Has other issues down the line though, such as testing new versions of libraries or getting the latest updates.

eddiebergman avatar Jan 18 '22 11:01 eddiebergman

Thank you so much, we'll definitely get on it, these seem like suggestions that will make our lives much easier in the long run!

TheEimer avatar Jan 18 '22 13:01 TheEimer

Thanks a lot @eddiebergman ! This looks very reasonable. Maybe you have some time in the next few weeks to answer questions about some of these if we are stuck?

benjamc avatar Jan 18 '22 13:01 benjamc

We ignored this for a while, but as far as I can see we currently should fix:

  • [ ] unittest to pytest
  • [x] install resolve (before we deploy to PyPI, ideally)

TheEimer avatar Jul 13 '23 11:07 TheEimer