-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PyPoE: Dev To-Do (If you want to contribute, look here). #81
Comments
Hello. I'd like to take care of issue 8 :) My nickname on discord is the same as here. |
@ashrasmun Assigned to you. Let me know if you need any help. |
Hiya, I'm lim on discord, happy to take on #6. |
I would like to grab the 3rd issue, but I wonder if we want to ignore anything in the flake8 config. |
What would we ignore? @ashrasmun |
I was just wondering if there's anything we are going to ignore :) |
Have a look at how flake is set up in #80 and just set it up like that on your end (it will/should all reconcile later), in the meantime for what you're doing just follow what it says. I would say if there's one thing I would advise not touching is any issues that pertain to breaking the complexity rule of exceeding cognitive complexity of 10. Anything like that needs splitting up very carefully to avoid breaking functionality and as such it is probably best you're abso-friggin-lutely sure you're not breaking anything or else @Journeytojah will throw a cat at you. |
I'd like to pick 7. |
What's this?
This is the non-exhaustive list of things new dev's can pick up and run with in order to make meaningful contributions to the repo. If you have questions, ping the
#tools-dev
channel on our discord.To-Do (In order of priority)
If you want to grab one of these, message us on discord or comment on this issue @'ing one of the maintainers and they will add your name to the
assigned to
. Please only take this on if you're serious about contributing, holding onto a piece of work will prevent someone else from doing it. If no progress is seen within a week or two, we will unassign you and give it to someone else.Finish the 3.10 and Poetry move as described in WIP: 3.10 move and refactor #80
Change the setup / installation instructions for DEV in the wiki detailed here
This requires you to ensure the instructions clearly state how to install Poetry, how to set up the project using Poetry, how to ensure it uses Python 3.10 (and how to set up python 3.10). Running tests, linters, formatters, etc. If you grab this one, ping
@pm5k
in the discord#tools-dev
channel.Refactor the repo according to
flake8
by ensuring that runningflake8
results in no errors at all.Set up pre-commit hooks for the repo so that no changes can be pushed or merges made without tests or linters passing. This can only be done after
3.
is done.Change all occurrences of
with open(...) as ...
to usepathlib.Path
because it uses an in-built context manager which removes the need to usewith open()
its also a specialised library for handling paths in a OO way and handles Posix paths as well as making it easy for us to consolidate windows/nix/osx pathing and forget about OS specificity (hopefully). Also change things likeos.walk
,os.path
and so on. Anything path related should be changed to usepathlib
unlesspathlib
does not have equivalent functionality in a given case.Change any and all commonly used parametric string literals to be enums instead. It prevents manual entry fuck-ups common to string literal use in arguments or params and promotes DRY and re-use as well as lends to typing like so:
Write out proper type hints for all methods, classes, collections and return types so that we can trust the data flowing around the codebase and don't have to rely on guesswork. This will help new and existing devs grasp how the methods we use work and what they pass around.
TAKEN Replace all occurrences of
"{} something {}".format(a, b)
to use f-strings likef"{a} something {b}"
in the codebase.More to come...
The text was updated successfully, but these errors were encountered: