-
Notifications
You must be signed in to change notification settings - Fork 16
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
Add default devcontainer.json configuration #37
Add default devcontainer.json configuration #37
Conversation
9c6abf7
to
bfdca03
Compare
Also adds Pytest as a dev dependency
I like this idea - it seems like it could be a neat (and optional) way of creating a more consistent development environment! My only concern is that we end up supporting the use of development tools rather than the tool iteself. But I think this is worth it on balance - primarily because it is optional and a user can choose to totally ignore it! Though we should make sure to document its usage somewhere. When trying out the PR I ran into some issues, I use VSCode which autodetected the dev container config and offered to build and use it ✅ After building, the Running the postCreateCommand from devcontainer.json...
[21036 ms] Start: Run in container: /bin/sh -c poetry install
[Errno 2] No such file or directory: 'python'
[22250 ms] postCreateCommand failed with exit code 1. Skipping any further user-provided commands.
Done. Press any key to close the terminal. Looking into this further it looks like this error originates because I 'Reopened my existing folder' in the container (the default option) rather than 'Cloning in the container' which worked without issue. I still don't understand the root cause of the issue - but it is a good demonstration of what can go wrong if you don't know what you're doing! 😅 |
…lard/EDGAR into add-codespaces-config
@GalenReich Sorry about that! The issue looks like it comes from
My intention with this is that the dev container will only aid users in contributing to EDGAR. I'm think about this comment #11 (comment) where the user couldn't configure the project because they were unfamiliar with poetry. With a devcontainer they just click on the
Agreed. I updated the README in commit 9956ef0 |
Holy moly, that is very cool! |
e832cb9
to
2a261e1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is looking good!
This PR adds a default
devcontainer.json
file that includes all currently supported Python interpreters for the project. It also includes recommended VSCode extensions for Python development. This will make developing easier since it unifies developer environments & makes runningtox
against all supported versions of Python a breeze.Development containers is an open standard for specifying dev environments. This is an IDE-agnostic way to unify development environments for users who use VSCode, PyCharm, and any other IDE. Users can choose to use the development container. These changes make no difference to users who want to continue with their normal local workflow.
Relates to: #11 - This makes contributing (& thus writing tests) much easier.