Skip to content

Migrate to pyproject.toml, fix cChardet build issue - #38

Open
Shrinks99 wants to merge 20 commits into
masterfrom
migrate-to-pyproject-toml
Open

Migrate to pyproject.toml, fix cChardet build issue#38
Shrinks99 wants to merge 20 commits into
masterfrom
migrate-to-pyproject-toml

Conversation

@Shrinks99

@Shrinks99 Shrinks99 commented Mar 18, 2025

Copy link
Copy Markdown
Collaborator

Fixes #27

While migrating my own Python install fully to UV tonight, I was unable to get warcit installed due to the issue documented in #27. Figured I'd have a go at fixing it while taking the time to understand authoring a pyproject file. UV isn't required to build warcit with these changes, but it sure is helpful for managing python versions & environments!

This also means that developers will be able to install warcit in editable mode!

Tested with uv run warcit -V, uv build, and uv tool install -e .

Changes

  • Moves all of setup.py to a modern pyproject.toml file
  • Switches to the faust-cchardet fork
    • Up for debate if this is the best strategy? Could alternatively only support up to Python 3.9 and wait for the original to get updated.
  • Sets a requires-python value of >=3.10
  • Creates a pylock.toml lockfile
  • Bumps the version up by 0.0.1
  • Sets a pyyaml loader in test_warcit.py (required as of V6)
  • Removes old CI
  • Updates a test case where utf-8 was previously incorrectly detected as windows-1258 now that faust-cchardet is used.

Todo

  • Ensure tests run as expected with pytest
  • Update readme with new UV development instructions

@Shrinks99 Shrinks99 closed this Aug 8, 2026
Some aspects of UV aren't supported by pylock.toml and UV treats it as an export format.  If we're gonna use it, best to go all the way!
@Shrinks99 Shrinks99 reopened this Aug 8, 2026
@Shrinks99
Shrinks99 marked this pull request as ready for review August 8, 2026 01:44
@Shrinks99

Copy link
Copy Markdown
Collaborator Author

@ikreymer This should be ready to go :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fails to install on Python 3.11 because cchardet can't build

1 participant