18F / pulse

How the federal .gov domain space is doing at best practices and policies.
Other
94 stars 56 forks source link

Testing configuration files #777

Closed buckley-w-david closed 6 years ago

buckley-w-david commented 6 years ago

This PR adds some sane defaults for linting and type checking configuration.

Currently pylint and mypy aren't even being used, but we will be integrating it into our CI setup.

These changes combined with the CI configuration are probably the most "CDS specific" of the changes so far, so if you don't want to merge them in, makes sense to me.

konklone commented 6 years ago

Are the effects documented or described anywhere? I'm on board with stronger linting, as long as it's not a straitjacket, but I'd like to know what I'm pulling in.

buckley-w-david commented 6 years ago

There are not really any effects unless CI integration is added to the repo. These files are automatically discovered by mypy and pylint when they're run and used for configuration, if those are never run, these config files of course have no effect on anything.

However if linting and type checking were added, they'd pull some defaults that we use for what they're checking (for example that parameters marked as optional should not be used before checking for None value and mypy will complain about that)

buckley-w-david commented 6 years ago

I suppose I didn't really answer all of your question, in that you'd like to know more about what this linting is.

I could point you to the pylint and mypy documentation, but it's pretty dense and I'm not sure how useful it'd be, is there anything specific you'd like to know?

konklone commented 6 years ago

Yeah, I guess I meant if there was anything particularly aggressive or non-standard in the linting settings. But this is fine, I'm up for pulling it back as needed.