Release and Version History¶
Backlog¶
Features and Improvements
Minor Improvements
Bugfixes
Miscellaneous
1.0.2 (2026-04-21)¶
Features and Improvements
Exposed
AlfredWorkflow,AlfredPreferences, andAfwfProjectin the top-levelafwf.apimodule so they are accessible viaimport afwf.api as afwf.Reorganised documentation structure: renamed and renumbered doc chapters for better clarity.
Bugfixes
Fix missing
afwf/icons/PNG files in the published package by adding[tool.setuptools.package-data]topyproject.toml.
1.0.1 (2026-04-07)¶
💥 Breaking Change
Removed
attrs/attrs_mateas dependencies. All core models (Item,Text,Icon,ScriptFilter,Handler,Workflow) have been fully rewritten using Pydantic v2.Item.copyfield renamed tocopy_text(serialized as"copy"via field alias) to avoid shadowing Pydantic’sBaseModel.copymethod.
Features and Improvements
Introduced
afwf.constantsmodule that centralises all Alfred Script Filter protocol string constants (IconTypeEnum,ItemTypeEnum,ModEnum,VarKeyEnum,VarValueEnum).Added
enum-mateas a core dependency to power the new enum utilities.Fuzzy matching (
afwf.opt.fuzzy) migrated torapidfuzz; fuzzy-item now stores the match name invariablesunderFUZZY_MATCH_NAME_VAR_KEYfor cleaner downstream handling.ScriptFilterObject.to_script_filter()now respects field aliases when serialising to JSON, so aliased fields round-trip correctly.Replaced the network-dependent
python_versionexample handler with a self-containedsource_filesexample that works offline.fuzzyandcacheoptional dependency groups are now declared inpyproject.toml(pip install afwf[fuzzy],pip install afwf[cache]).Switched project toolchain to mise + uv; legacy
requirements*.txt/setup.py/tox.iniremoved.
Minor Improvements
Enriched docstrings and type annotations across
item.py,handler.py,workflow.py, andscript_filter.py.Added
tests/opt/test_opt_api.pysmoke test for the optional-extras public API.Sphinx API reference pages auto-generated for all public modules under
docs/source/api/.
Miscellaneous
Added
misetask runner configuration (mise.toml) with tasks for install, test, coverage, doc-build, and release.
0.6.1 (2024-01-01)¶
Features and Improvements
Improve the
afwf.query.QueryParserandafwf.query.Query
Minor Improvements
Improve the
Afwf Framework Overviewdocument.
Miscellaneous
Use
afwf_opsfor DevOps automation.
0.5.2 (2023-12-31)¶
Bugfixes
Fix bug that 0.5.1 forget to include icons in the package release.
0.5.1 (2023-12-31)¶
💥 Breaking Change
Drop support for Python < 3.7 due to the attrs now only support 3.7+.
Minor Improvements
use version range in
requirements.txt.add maintainer guide document.
use
pyproject_opscode skeleton.use
attrsmodern API.
0.4.1 (2023-04-10)¶
Features and Improvements
add the
afwf.optmodules. It stores lots of optional utility toolsadd the
afwf.opt.cachemodule.add the
afwf.opt.fuzzymodule.add the
afwf.opt.fuzzy_itemmodule.
Minor Improvements
now all of
afwf.item.Item.open_file(),afwf.item.Item.open_url(), …, method returns theafwf.item.Itemobject itself, so you can chain them together.
0.3.2 (2023-04-08)¶
Miscellaneous
add lot more icons.
0.3.1 (2023-04-02)¶
Features and Improvements
Add tons of doc string and unit test.
Minor Improvements
Add documentation website.
0.2.2 (2023-01-29)¶
Bugfixes
fix a bug that
run_script()andterminal_command()should set the command to item arguments.
0.2.1 (2023-01-29)¶
Features and Improvements
add more abstract method to
Handlerclass.add public API to unit test.
0.1.1 (2023-01-29)¶
Features and Improvements
Determine the list of public API.
0.0.4 (2022-07-31)¶
Bugfixes
fix a bug that in
workflow.py, themkdir_if_not_exist()method not exists.
0.0.3 (2022-04-13)¶
Features and Improvements
The first working version
0.0.2 (2022-03-24)¶
Prepare for pip installable
0.0.1 (2022-02-24)¶
Place Holder Release