CHANGELOG

v0.12.0 (2024-07-10)

Chore

  • chore(deps): bump certifi from 2024.6.2 to 2024.7.4

Bumps certifi from 2024.6.2 to 2024.7.4.


updated-dependencies:

  • dependency-name: certifi dependency-type: indirect …

Signed-off-by: dependabot[bot] <support@github.com> (632fec1)

Feature

  • feat: scryfall query builder (72dbdad)

Unknown

  • tests: relaxed failing test for edhrec (aca9040)

  • wwip: not working at all (bfc6e2f)

v0.11.0 (2024-07-04)

Chore

  • chore(docs): fixed bad import for MtgWikiParser and WikiParser (24f6733)

Feature

  • feat: fixed and enhanced EDHREC API

  • Every data structures are properly typed as pydantic class

  • Added streaming ability to explore a collection of results

  • More documentation

  • Added remote tests to prevent regressions

closes #74 (47cb5ec)

Fix

  • fix(docs): semantic release should now increment documentation version (dedb5c5)

v0.10.0 (2024-07-01)

Chore

  • chore(deps): bump urllib3 from 2.2.1 to 2.2.2

Bumps urllib3 from 2.2.1 to 2.2.2.


updated-dependencies:

  • dependency-name: urllib3 dependency-type: indirect …

Signed-off-by: dependabot[bot] <support@github.com> (41bb15c)

Feature

  • feat: fandom wiki is now fully supported with a complete wiki parser (a03fe09)

Fix

  • fix: documentation generation is fixed (080a27b)

  • fix: http transport will retry 2 times in case of failure (394425e)

Refactor

  • refactor: httpx, click and asgiref are replaced by hishel, asyncclick and universalasync (bc84ef9)

  • refactor: dropped httpx_cache support in favor of hishel (9ddda0d)

v0.9.0 (2024-06-14)

Chore

  • chore: cardconjurer types return types are enforced through mypy (12d7515)

  • chore: scryfall api publish a new preference enum (fd077b7)

  • chore: upon local mongod start the config.storage.directory is updated (d30c11a)

  • chore: protected cli.main from running cli on model discovery code (ea74b17)

  • chore: fixed mightstone.version autoincrement on semantic release (3bef04a)

Feature

  • feat: distinguished MightstoneSerializableDocument from MightstoneDocument (b23fd2e)

  • feat: added support for mtg.fandom.com wiki

  • abilities are now provided as a dataset extracted from mtg.fandom.wiki

  • rules are provided as a dataset extracted from latest rules

  • color pie, identities are provided as a static data set

  • added to CLI: wotc scrape ruleswip

  • added to CLI: wiki scrape abilities (075decd)

  • feat: enhancement for mightstone usage as a library

  • Configuration is renamed from MainSettings to MightstoneSettings

  • mightstone.core.get_documents can be used outside of mightstone

  • mightstone.core.patch_model only affects beanie.Document and can run on any package (bb93ab0)

Fix

  • fix: asynchronous file accessor will await closure or write (700b881)

  • fix: cli config is read from cli, not through pydantic (1bb758a)

Unknown

  • tests: greatly improved tests performance with a single mongo in memory instance (0988db2)

  • tests: silenced mongomock warnings (52734db)

v0.8.5 (2024-06-03)

Fix

  • fix: dependency lock was incorrect (45e8da5)

  • fix: python 3.12 support, in dependencies (7502564)

v0.8.4 (2024-06-03)

Fix

  • fix: pypi publish step should now release the project (4fd614e)

v0.8.3 (2024-06-03)

Fix

  • fix: using pypa trusted release mechanism to publish on pypi (properly) (cd28493)

  • fix: using pypa trusted release mechanism to publish on pypi (09a08ac)

v0.8.2 (2024-06-03)

Build

  • build: attempt to restore build sequence on release (4321db8)

Chore

  • chore: moved from flake8 to ruff (77238d9)

  • chore: added tox support as part of pyproject configuration (1030b2b)

  • chore: removed poetry.yml file (1523714)

Fix

  • fix: release will happen on push on main branch, not master (d3aa585)

  • fix: restored support to python 3.12

by removing dependency to python-dependency-injection for injector (79ddd90)

  • fix: fixed python dependency properly (c952fa3)

  • fix: build process is now splitted into: ci, semantic-release and on-release (d74a45e)

Unknown

  • tests: CI will run remote tests (731905d)

v0.8.1 (2024-05-31)

Chore

  • chore: updated mypy and updated types (5524dd7)

  • chore: silenced annoying PytestUnraisableExceptionWarning (b7e0bc1)

  • chore: applied new black rules to the code (8690b52)

  • chore(deps-dev): bump black from 23.12.1 to 24.3.0

Bumps black from 23.12.1 to 24.3.0.


updated-dependencies:

  • dependency-name: black dependency-type: direct:development …

Signed-off-by: dependabot[bot] <support@github.com> (89fc0c1)

  • chore(deps-dev): bump pyinstaller from 4.5.1 to 5.13.1

Bumps pyinstaller from 4.5.1 to 5.13.1.


updated-dependencies:

  • dependency-name: pyinstaller dependency-type: direct:development …

Signed-off-by: dependabot[bot] <support@github.com> (3cb34ee)

  • chore: build process lints before tests (a0c53d0)

  • chore(deps): bump pillow from 9.5.0 to 10.3.0

Bumps pillow from 9.5.0 to 10.3.0.


updated-dependencies:

  • dependency-name: pillow dependency-type: direct:production …

Signed-off-by: dependabot[bot] <support@github.com> (b9a94f7)

  • chore: readme don’t link to another project for issues, centered the logo (5ffd878)

Documentation

  • docs: fixed link to issue report (eba9be6)

Fix

  • fix: custom types are properly deserialed through pydantic 2 (0ab6c22)

v0.8.0 (2024-05-31)

Chore

  • chore: linting issues (d4cc2f9)

  • chore: fixed minor typing issues after mypy upgrade (7bf3292)

  • chore: upgraded dependency to aiofiles (d512acb)

  • chore: remove dependency to aiosqlite (3c2de6b)

  • chore: mark project as alpha stage (15b4fe4)

  • chore: upgraded pytest dependency (d5cc0b1)

  • chore: upgraded httpx dependencies (5cd4933)

  • chore: upgraded all non locked dependencies (ec4254c)

Documentation

  • docs: fixed some issue with the configuration doc (00e7050)

Feature

  • feat: added logo and enhanced both README and sphinx docs (9cd61bc)

Fix

  • fix: documentation process at readthedocs. (04d0724)

v0.7.0 (2024-05-30)

Chore

  • chore: release job uses same context as tests (9319f3c)

Feature

  • feat: cut support for mongita in favor of pymongo_inmemory (53e1c4c)

Test

  • test: added tests for python 3.12 (190c72f)

v0.6.4 (2024-05-30)

Build

  • build: … (5c24332)

  • build: optimized build step

does not depend on test and lint anymore (e7d6dbe)

Fix

  • fix: mtgjson quick fix for optional retail price. (9706323)

v0.6.3 (2023-08-07)

Build

  • build: attempt to resolve build and release.. (77234e6)

Fix

  • fix: integration test for scryfall run a reserve list

This commit intends to generate 0.6.3 release (fd41818)

v0.6.2 (2023-08-07)

Build

  • build: attempt to resolve build and release (1f29dbc)

  • build: attempt to resolve build and release (af4a208)

  • build: python semantic release 8, proper setup (3f2e5a2)

  • build: semantic release fixed to 8.0.4 plus fix in configuration (ff8e747)

Chore

  • chore(deps-dev): bump pygments from 2.14.0 to 2.15.0

Bumps pygments from 2.14.0 to 2.15.0.


updated-dependencies:

  • dependency-name: pygments dependency-type: indirect …

Signed-off-by: dependabot[bot] <support@github.com> (a98abb4)

  • chore(deps): bump certifi from 2022.12.7 to 2023.7.22

Bumps certifi from 2022.12.7 to 2023.7.22.


updated-dependencies:

  • dependency-name: certifi dependency-type: indirect …

Signed-off-by: dependabot[bot] <support@github.com> (3a329ce)

  • chore(deps-dev): bump cryptography from 41.0.0 to 41.0.3

Bumps cryptography from 41.0.0 to 41.0.3.


updated-dependencies:

  • dependency-name: cryptography dependency-type: indirect …

Signed-off-by: dependabot[bot] <support@github.com> (4aa6bd0)

  • chore(deps): bump requests from 2.28.2 to 2.31.0

Bumps requests from 2.28.2 to 2.31.0.


updated-dependencies:

  • dependency-name: requests dependency-type: direct:production …

Signed-off-by: dependabot[bot] <support@github.com> (da290cb)

  • chore(deps): bump cryptography from 40.0.1 to 41.0.0

Bumps cryptography from 40.0.1 to 41.0.0.


updated-dependencies:

  • dependency-name: cryptography dependency-type: indirect …

Signed-off-by: dependabot[bot] <support@github.com> (c1f9efb)

Fix

  • fix: applied up-to-date mtgjson v5.2.1 schema

mtgjson rulings are now optional in cards (Set, Face, and Deck) (41cbb5f)

  • fix: applied updated card conjurer template

  • metadata is removed

  • name is part of root object (9980b4b)

  • fix: scryfall random endpoint don’t use local cache anymore (7bb6012)

  • fix: synchronized functions that return generators are fixed (fe14af1)

v0.6.1 (2023-04-01)

Fix

  • fix: release script should not fail anymore on the lack of mypy types during the lint step (7401671)

v0.6.0 (2023-04-01)

Chore

  • chore: complete mypy coverage and the build is greenwip (06bb7ab)

  • chore: gitignored .python-version file (e932078)

Feature

  • feat: persistence support (24db834)

Fix

  • fix: our mongita fork allow usage of motor 3.1.1 that enables support for python 3.11 (4a0738f)

v0.5.0 (2023-03-07)

Chore

  • chore: introducing synchronize() function that will provide sync version of async features (6edf5bc)

  • chore: added dependency to asgiref that is a reference in term of async_to_sync (fccdd40)

  • chore: Rule framework now use RuleExplorer a MightstoneHttpClient

Removed dependency to Requests, and is async ready. (0d899b0)

  • chore: silenced tests in CI for integration tests that rely on real connection to third part API (02047af)

  • chore: type hinting some of async library of mightstone (44639fd)

Documentation

  • docs: added proper scryfall documentation (b17cd2b)

Feature

  • feat: normalized async lib, aiostream is out, asynclibstd is the new norm

Also added documentation, and many other important improvement I’ve still failed to silence pytest PytestUnraisableExceptionWarning for MtgJSON implementation that will need to be rewritten. :/ (ea76a8e)

  • feat: mtgjson services applies the new method() / method_async() dichotomy (d407077)

  • feat: card-conjurer services applies the new method() / method_async() dichotomy (e7dfb06)

  • feat: edhrec services applies the new method() / method_async() dichotomy (6e0e165)

  • feat: scryfall services applies the new method() / method_async() dichotomy (d82bed1)

  • feat: moved rules to the wotc service, introducing the first api with both sync/async functions (8ceb49d)

  • feat: moved rules to the wotc service, introducing the first api with both sync/async functions (1acd5a7)

Fix

  • fix: MightstoneHttpClient will not reuse client anymore

this is due to big issue while trying to run consecutive call over different asyncio loops, this is a nightmare so F that and move as suggested in this HTTPX issue: https://github.com/encode/httpx/issues/2473 (05d3336)

  • fix: scryfall supports httpx now, also added a bunch of integration tests (ef3b51b)

v0.4.0 (2023-02-26)

Chore

  • chore: silenced an error related to uncatched generator early exit (781dc0e)

  • chore: silenced a warning about skip tests (c552af1)

  • chore: removed dependency to aiohttp (da88a68)

Feature

  • feat: added support for inline icons in card conjurer (bbefa6b)

Fix

  • fix: restoring support for card conjurer (f97b523)

Refactor

  • refactor: introducing dependency injector and switched from aiohttp to httpx client (1ade77a)

  • refactor: async_file_obj support async iterator (f5ed7dc)

Unknown

v0.3.0 (2023-02-19)

Chore

  • chore: added OpenSSF best practices tag (9423a7f)

Feature

  • feat: added CardConjurer support

Cardconjurer is a generic card editor that can support MTG pretty well.

Changes:

  • Added Model entities

  • Added CLI to parse and render a card (d96babf)

v0.2.2 (2023-02-17)

Chore

  • chore: removed some tags for third part dependency that we don’t wish to use (f1a27cd)

Fix

  • fix: attempt to fix CI release by using deep checkout instead of shallow checkout (e79b94c)

v0.2.1 (2023-02-17)

Chore

  • chore: explicitly added requests as a dependency

it is use in Rule classes (ceb8323)

  • chore: reorganized pyproject.toml

  • docs

  • release

  • dev

groups (d0c77b9)

Fix

  • fix: switched back from npm semantic-release to python-semantic-release (7b09e76)

  • fix: read the doc configuration uses a properly prepared environment (b3ec459)

v0.2.0 (2023-02-17)

Chore

  • chore: ignore flake8 trailing whitespace of doom (3a1fb09)

  • chore: added new dependencies to the project (380678b)

  • chore: deleted some useless files (0fafdfb)

  • chore: root logger defined (08a2c02)

  • chore: refactored cli commands to be defined in each service module (35d721d)

  • chore: added async compressed stream reader/writer (91cdd94)

  • chore: moved back to semantic release job

See: https://github.com/bjoluc/semantic-release-config-poetry (4f502b8)

Feature

  • feat: mtgjson api is tested (c4a6dff)

  • feat: mtgjson model and api (9ab63eb)

  • feat: added diff support for comprehensive rules

Along side with a RuleRef.prev() and an explore() method to search previous rules (5f81186)

Fix

  • fix: release process with semantic release is now working (at least locally) (f3c7bdc)

  • fix: attempt to change semantic release version variable (a939b59)

  • fix: restored documentation generation (16ac1e4)

Unknown

  • doc: mtgjson documentation is ok, overhauled documentation in general (9e5540a)

  • doc: added a note regarding YAJL and ijson (eefc43a)

v0.1.3 (2023-02-05)

Documentation

  • docs: minor change in documentation (ba3bc8a)

Fix

  • fix: a fake commit to validate release process (6f20701)

  • fix: changed build command for semantic-release (d96e0b4)

v0.1.1 (2023-02-05)

Fix

  • fix: changed build command for semantic-release (81784d8)

v0.1.0 (2023-02-05)

Chore

  • chore: cleanup by removing doc Makefile and gitignore third part template (fbc9cb4)

  • chore: removed VS code configuration and gitignored it (e56b22a)

  • chore: removed useless gitlab ci support file (17c2460)

  • chore: removed bumpversions leftover file (05ca220)

  • chore: added missing dependency to aiostream (ecd0e0b)

  • chore: reseted version to 0.0.0, and switched to python-semantic-release (e381eca)

  • chore: removed support for python 3.8 in tests (dbcb11f)

  • chore: ._* files are gitignored (2e9b980)

  • chore: trying to work on version tagging (4a67efb)

  • chore: added support for read the docs / sphinx documentation (323f234)

  • chore: upgraded CI dependency from actions/setup-python@v3 to actions/setup-python@v4 (e29898b)

  • chore: rule color support (996550b)

  • chore: initialized the project using cookiecutter poetry (c390776)

Feature

  • feat: added ComprehensiveRules support (2faefa7)

  • feat: added missing CLI for scryfall set (f2da907)

  • feat: a quick check on documentation (73ec14b)

  • feat: added complete scryfall api and cli functions (6781302)

  • feat: added all cli commands for static edhrec, (f522214)

  • feat: added two sample cli commands for edhrec (8d6b2ed)

  • feat: added support for edhrec recs (8dc5601)

  • feat: edhrec has support for all static pages and to filter endpoint (1a8c8cf)

Fix

  • fix: enable semantic release on main branch instead of master branch (9b5ce98)

Unknown