-
Notifications
You must be signed in to change notification settings - Fork 26
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
Test with tomli #219
Test with tomli #219
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/hold |
I've tried to reproduce the error and it seems that the unencrypted |
And the error is: |
We can handle this in |
Thanks for checking this! 👍🏻
+1, might be a good idea. Let's see what's the upstream opinion on this. |
Upstream issue: hukkin/tomli#167 |
The issue has been closed. We have to handle this here. Do you wanna do it or should I take a look? |
Oh, that's a pity. It might be good to have it eventually backward compatible with (older) tomli releases anyway if tomli support will be considered. Feel free to take it if you want 👍🏻 BTW there are also other libraries that manipulate with TOML besides pytoml and toml which micropipenv currently supports - rtoml, pytomlpp, qtoml, tomlkit (from tomli docs). It looks like tomli is now vendored in pip, hence this testing PR. I'm unsure which TOML parsers we should support. What is your opinion on this? |
During working on this, I've discovered that our support for pytoml is not complete :( The problem is that we do not have any negative tests for this Lines 239 to 245 in d0c37c1
What I mean is that pytoml also does not have TomlDecodeError but we don't know about it because the except clause is not evaluated until an exception is raised in the try block.
|
Take a look at my implementation. I'm not sure why some tests failed. Will try to run the same envs locally. |
It seems to me that the very old pip does not work well with the latest setuptools so I'll have to find a way how to pin setuptools to some older version which won't be an easy task. I don't want to create a new variable for that. I'd rather somehow merge that information to one variable specifying all the dependencies at once. |
It seems that |
Almost all green. pre-commit is complaining about trailing whitespace in a file we haven't touched here but I'll fix it in the next commit to make it happy. |
@fridex I cannot request a review from you because you are the author of this PR so I've assigned it to you. |
To answer your question – Having toml is a good idea because it's defacto standard now and we have it in Fedora. pytoml is important for us (even it's an abandoned project) because we have it in RHEL 8. And finally, tomli is a good idea to add because there is some probability that it'll be a part of the standard library soon, see: hukkin/tomli#141 |
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 looks very nice! Thanks for taking care of this. 👍🏻 LGTM
@frenzymadness I'm happy to have this merged if you are fine with that. |
This introduces a breaking change
Description
Check if micropipenv is compatible with tomli.