* Revise display module. TODO: more comprehensive tests. Especially around mimebundles.
* Markdown corrections in example code in display.py docstrings.
* Minor adjustments and a much more comprehensive test-suite for the display module.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Updated docstring in __init__.py.
* Remove unused imports and black-ify the source.
* Refactor, docs and tests for the Event class in events.py.
* Refactored, simplified and documented @when decorator.
* Extensive test suite for @when decorator.
* Documentation and minor refactoring of the fetch.py module. TODO: Check tests.
* Refactored and more comprehensive tests for the fetch module.
* Add/clarify Event related interactions. Thanks @Neon22 for the suggestion.
* Refactor, document ffi.py module.
* More complete passing tests for ffi.py.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Add docstrings to flatted.py. Since this is actually an external(ish) module, tests for it should be in the external repository from which this code is derived.
* Minor docstring cleanup in ffi.py.
* Added docstrings and clarifications to fs.py.
* Add very limited test suite for fs.py.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Rename magic_js.py to context.py, add comprehensive docstrings, and rename certain internal things for readability and comprehension.
* Fix dict check in ffi.py.
* Rename test_js_modules to test_context.
* Fix test configuration aftert rename.
* Docs and refactor of media.py.
* Comprehensive tests for media.py.
* Refactor and docstrings for storage.py
* Appease the ruff gods.
* Further storage.py changes and a more complete test suite for storage.
* Refactor and docstrings for the util.py module. Fixed a problem with is_awaitable not handling async bound methods.
* More comprehensive test suite for util.py. Updated to latest upytest.
* A major refactoring, documenting and simplification of the web.py module substantially reducing it in size and complexity with only a few minor (edge) behavioural changes.
Softly breaking changes include:
- An element's classes are just a set.
- An element's styles are just a dict.
- Explicitly use `update_all` with ElementCollections (simpler and greater flexibility).
- Extract a child element by id with `my_container["#an-id"]`
* Updates and additions for a more comprehensive test suite for the web.py module. All code paths are exercised and checked.
* Black tidy-ups in test suite.
* Refactor and documentation for websocket.py module.
* Tests for websocket.py. Disabled due to playwright flakiness, but they all pass in a local browser.
* Refactor and documentation of workers.py module.
* Added tests for workers.py module. Updated related test suite to account for the new named worker in the test HTML.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Refactor away remaining "is not None" not caught before.
* Remove check-docstring-first because it interferes with the auto-generated documentation (where triple quoted strings are used to document module attributes).
* Careful Markdown changes so the docstrings render properly in the PyScript docs.
* Typo correction.
* More typo corrections and clarifications.
* Add clarification about SVG handling to _render_image docstring.
* Add DOM event options to the @when decorator (with new tests to exercise this functionality).
* Fixes default value for options if no options passed into @when.
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Ruff fixes
* Ruff fixes
* from __future__ import annotations breaks MicroPython
* noqa: FURB188 because there is no str.replacesuffix() in MicroPython
* Add ruff to pre-commit
* Remove duplicate LICENSE.
* Remove un-userd pyscript.sw directory and its content.
* Remove ReadTheDocs settings (unused).
* Remove un-used pyproject.toml
* Remove now unused CHANGELOG. Changes now tracked via release notes on GitHub.
* Updated / cleaned release page template and associated GH actions.
* Update prettierignore to remove un-needed refs.
* Move troubleshooting into correct README.
* Add reason for the index.html
* Rename the "pyscript.core" directory to "core".
* Update PR template because CHANGELOG is no longer used.
* Codespell configuration in pyproject.toml.
* Update pyscript.core -> core in .githubignore
* Remove test-results/.last-run.json. This should be ignored by git.
* Pin nodejs version.
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
pre-commit.ci has been disabled for a while.
This PR ensures that all the files has been validated/formatted by pre-commit, to avoid spurious diffs in subsequent PRs.
During the process, ruff broke the code because it removed an "unused" import which was actually used.
A linter which breaks my code is a linter which I cannot trust, so I just removed it. I re-enabled isort instead.
* remove PyWidget and py-register-widget
* refactor py-list as Plugin
* add newline
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix eslint
* handle case if src not supplied
* move inside if
* - Remove src attribute for py-list
- Re-implement as a Python plugin
- Remove pylist.py from examples directory
- Remove PyListPlugin as one of the default ones
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* move PyItem and PyList classes to the plugin
* clean up PyListTemplate and PyItemTemplate from pyscript module
* fix linting
* use PyList instead of PyListTemplate instead
* fix example for todo-pylist
* re-enable and improve test
* move py-list plugin to examples
* fix py-list plugin link
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>