PyMiniRacer icon indicating copy to clipboard operation
PyMiniRacer copied to clipboard

Dust off and update V8 to 12.2

Open bpcreech opened this issue 1 year ago • 2 comments

Lots of changes here. From HISTORY.md:

  • Update V8 to 12.2
  • Drop Python 2 support
  • Fix small Python 3.12 issue and add testing for Python 3.9-3.12
  • Add aarch64 support for Mac and Linux
  • Revamp DLL loading to be compliant with Python 3.9-style resource loading. This may present a small breaking change for advanced usage; the EXTENSION_PATH and EXTENSION_NAME module variables, and MiniRacer.v8_flags and MiniRacer.ext class variable have all been removed.
  • Add support for the ECMAScript internalization API and use fast startup snapshots
  • Switch from setuptools to Hatch
  • Switch from tox to Hatch
  • Switch from flake8 and isort to Hatch's wrapper of Ruff
  • Switch from Sphinx to mkdocs (and hatch-mkdocs)
  • Switch from reStructuredText to Markdown
  • Switch from unittest to pytest
  • Add ARCHITECTURE.md and lots of code comments

A lot of these changes are just trying to update the package to "Python ecosystem 2024" (i.e., Hatch and friends).

I ended up making these updates in interleaved order in a way that's not useful for incremental review, so I just squashed to one commit. I could split this back out into logical changes if that's useful, but it will take some hours. :)

I'm not sure if this should be a PR, or if we should move the official repo, or what; depends on what the ex-Sqreen folks think!

bpcreech avatar Mar 06 '24 22:03 bpcreech

BTW docs can be previewed at https://bpcreech.com/PyMiniRacer

bpcreech avatar Mar 07 '24 00:03 bpcreech

Update: after discussion with @nizox and @aviat we decided to fork PyMiniRacer into https://github.com/bpcreech/PyMiniRacer for its continued life.

This PR (and more) are landed there.

bpcreech avatar Mar 21 '24 16:03 bpcreech