Skip to content
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 custom encoding to dump/dumps. #88

Merged
merged 20 commits into from
Nov 26, 2024
Merged

Conversation

dpranke
Copy link
Owner

@dpranke dpranke commented Nov 26, 2024

See #57 for the motivation for these changes.

Figuring out how to handle the interaction between this and encoding
floats was too awkward, so instead we'll just rely on a custom
encoder class for customization.
Two big changes:
1. We no longer needed a full-blown custom arg parser, so this
   change deletes everything in arg_parser.py and adds a small
   custom arg parser that just has a slightly customized error message
   printer.

2. It gets rid of the FakeHost code and changes how the tool_test
   tests are run to either run them as real integration tests or
   as in-process tests with mocked-out stdin/stderr/stdout. The
   latter is more fragile than using a fake host, but it allows us
   to delete test code.
Now they will calculate how many single and double quotes there
are in the string, and use the encoding that minimizes the number
of quotes that need to be escaped. This appears to match the
string normalization logic that ruff uses.
@dpranke dpranke merged commit 3bc470c into dpranke:main Nov 26, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant