diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..15d82d6 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,38 @@ +# language_tool_python Changelog + +## 3.0.0 (2025-11-20) + +### What's New: +- Corrected a bug when the default locale is POSIX default (C). +- Corrected a bug when closing `LanguageTool` instances (deadlocks). +- Corrected a bug when comparing LT versions (e.g., '5.8' vs '5.10'). +- Added new possible values in LT config (`trustXForwardForHeader`, `suggestionsEnabled` and lang keys). +- Added a warning if you forget to explicitly close a `LanguageTool` instance. +- Added online documentation for the package. +- Added logging (and logs) in the package. +- Added raising `exceptions.TimeoutError` in `download_lt.http_get`. +- Added `packaging` as a dependency. +- Moved exception classes to a separate `exceptions` module (no more importable from `utils`). +- Edited raised exceptions in some methods/functions: + - from `AssertionError` to `ValueError` in `config_file.LanguageToolConfig.__init__` + - from `AssertionError` to `exceptions.PathError` in `download_lt.download_lt` + - from `AssertionError` to `ValueError` in `download_lt.download_lt` + - from `AssertionError` to `ValueError` in `server.LanguageTool.__init__` + - from `AssertionError` to `ValueError` in `utils.kill_process_force` +- Edited some camelCase attributes/methods to snake_case: + - `server.LanguageTool.motherTongue` to `server.LanguageTool.mother_tongue` + - `server.LanguageTool.newSpellings` to `server.LanguageTool.new_spellings` + - `match.Match.ruleId` to `match.Match.rule_id` + - `match.Match.offsetInContext` to `match.Match.offset_in_context` + - `match.Match.errorLength` to `match.Match.error_length` + - `match.Match.ruleIssueType` to `match.Match.rule_issue_type` + - `match.Match.matchedText` to `match.Match.matched_text` +- Edited types of some params: + - `directory_to_extract_to` in `dowload_lt.unzip_file` from `str` to `Path` + - `directory` in `download_lt.download_zip` from `str` to `Path` + - `download_folder` in `utils.find_existing_language_tool_downloads` from `str` to `Path` +- Edited return types of some methods/functions: + - from `str` to `Path` in `utils.get_language_tool_download_path` + - from `List[str]` to `List[Path]` in `utils.find_existing_language_tool_downloads` + - from `str` to `Path` in `utils.get_language_tool_directory` + - from `Tuple[str, str]` to `Tuple[Path, Path]` in `utils.get_jar_info` diff --git a/coverage-badge.svg b/coverage-badge.svg index 393c7c5..d822661 100644 --- a/coverage-badge.svg +++ b/coverage-badge.svg @@ -1 +1 @@ -coverage: 78.27%coverage78.27% \ No newline at end of file +coverage: 78.69%coverage78.69% \ No newline at end of file diff --git a/docs/source/conf.py b/docs/source/conf.py index f86527d..afbf39f 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -9,7 +9,7 @@ project = "language_tool_python" copyright = "2025, jxmorris12" author = "jxmorris12" -release = "2.9.5" # Keep in sync with pyproject.toml +release = "3.0.0" # Keep in sync with pyproject.toml # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/pyproject.toml b/pyproject.toml index 8fae5b9..94d4df0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "language_tool_python" -version = "2.9.5" # Keep in sync with docs/source/conf.py +version = "3.0.0" # Keep in sync with docs/source/conf.py requires-python = ">=3.9" description = "Checks grammar using LanguageTool." readme = { file = "README.md", content-type = "text/markdown" } @@ -37,6 +37,7 @@ dependencies = [ [project.urls] repository = "https://github.com/jxmorris12/language_tool_python.git" documentation = "https://language-tool-python.readthedocs.io/en/latest/" +changelog = "https://github.com/jxmorris12/language_tool_python/blob/master/CHANGELOG.md" [dependency-groups] tests = [ diff --git a/uv.lock b/uv.lock index be255fa..bafc1f1 100644 --- a/uv.lock +++ b/uv.lock @@ -533,7 +533,7 @@ wheels = [ [[package]] name = "language-tool-python" -version = "2.9.5" +version = "3.0.0" source = { editable = "." } dependencies = [ { name = "packaging" },