HealthITAU / pyconnectwise

A library for simplifying interactions with the ConnectWise Manage API in Python
https://healthit.com.au
GNU General Public License v3.0
42 stars 7 forks source link

Tooling updates, exception rework. #18

Closed sherbang closed 8 months ago

sherbang commented 8 months ago

Here's a bunch of tooling updates that encourage good coding practices. I use these as standard. I've broken them out into separate commits to make the results of each easier to see.

Some highlights:

I recommend adding a plugin for ruff to your IDE. If you use VSCode then it will be recommended to you automatically.

I also recommend github build actions to automatically run pytest and pre-commit on any PRs, and require them to pass before merging (saves a lot of time on code reviews). I'm sure release tooling for github also exists for poetry. I usually use Gitlab, so I'm more familiar with how to set up these things for Gitlab's CI.

Lastly this also includes some more rework of the exception handling code. These changes ensure that important error information from the API gets passed up to the caller.

Please let me know what you think. If you're not comfortable with any of these changes then let me know which ones and I'll resubmit.

Yoshify commented 8 months ago

I only have positive feedback about this PR! A lot of it is chores I was intending to get around to but have yet to - so I greatly appreciate this. The increased detail in exceptions is a nice touch as well.

After getting to know Poetry a bit over the last few days, I think the move to it for development is the correct decision.

Happy to merge.

Let's get in touch - how would be best to communicate with you? I've got both Slack and Discord.

sherbang commented 8 months ago

I sent you an email from my Gozynta address.

You can also try reaching me in discord, my username there is also sherbang.