--- a +++ b/CHANGELOG.md @@ -0,0 +1,191 @@ +# Change Log +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/) +and this project adheres to [Semantic Versioning](http://semver.org/). + + +## [Unreleased] + + +## [1.8.0] - 2025-01-11 +### Removed +- Support for Python 3.10. + +### Added +- Clinical [PubMedBert SBERT embeddings] configuration. +- [PyRuSH] Clincal clinical sententence chunker + +### Changed +- Upgraded to [zensols.util] version 1.15. + + +## [1.7.0] - 2024-04-14 +### Removed +- Deprecated feature document parser `mednlp_combine_medfirst_doc_parser` from + resource library. + +### Changed +- Renamed `MeddicalFeatureDocumentParser` to `MedCatFeatureDocumentParser` + since the parser only adds MedCAT CUIs. +- Fixed the configured parser that adds both ScispaCy biomed entities and + MedCAT CUIs in `mednlp_combine_biomed_doc_parser`. +- Separated combiner with non-combiner models in configuration space. The + non-combiners (biomed ScispaCy and MedCAT) are parses that are used in their + respective combiners. These are then used by a new composite parser that + uses both (`mednlp_combine_biomed_doc_parser`). Unit test case added for + all configured parsers. + + +## [1.6.0] - 2024-02-27 +### Added +- Added a ScispaCy biomedical document parser, which is enabled by setting + `mednlp_default:doc_parser = mednlp_combine_biomed_doc_parser`. This uses + better linguistic features and detects more entity span(s). + +### Changed +- Fixed normalize token and sentence/token indexes from being clobbered by + combined medical parsers. +- Fixed numeric entity feature from the combined medical parser is non-zero + for medical entities. +- Combined medical parser defines linguistic and medical features in the + document parser object instance. + + +## [1.5.0] - 2023-12-05 +### Changed +- Upgrade libraries: `numpy`, `lxml`, `scikitlearn`, `scipy`, `medcat`. +- Added `scispacy` dependency. + +### Added +- Support for Python 3.11. + +### Removed +- Support for Python 3.9. + + +## [1.4.1] - 2023-09-08 +### Changed +- Fix unit tests using the model provided for the MedCAT tutorials. +- Re-enable GitHub workflow unit tests CI. + + +## [1.4.0] - 2023-08-16 +Downstream moderate risk update release. + +### Changed +- Switch order of medical specific and general spaCy language parsing and + chunking. Now the medical parser is the source parser and the default spaCy + parser is the target in `MappingCombinerFeatureDocumentParser`. This was + done to get better sentence chunking as MedCAT (used in the medical parser) + does not sentence chunk well as it was not designed for it. +- Upgrade to [zensols.util] 1.13.0 +- Fix `cui2vec` weight archive re-download on each access. +- Mapping combiner default is to use token's character absolute index. + + +## [1.3.2] - 2023-06-29 +### Added +- Feature document parser shortcut from application factory. + +### Changed +- Resource library configuration to clean up model resources after download. + + +## [1.3.1] - 2023-06-27 +### Changed +- Updated to [zensols.nlp] to 1.7.2 and use its new feature to auto load any + missing spaCy base model(s). +- Remove configuration file requirement from the CLI. +- Fix spaCy dependency requirement to align with `scipy` and [zensols.nlp]. + + +## [1.3.0] - 2023-06-20 +### Changed +- Fix contraction tokenization. This was done by swapping the target and + source parser in the `lang.conf:mednlp_combine_doc_parser` resource library + configuration. + + +## [1.2.0] - 2023-06-09 +### Changed +- Upgrade to [medcat] 1.7.0. +- Better UTS error handling with raised exceptions and messages. + + +## [1.1.0] - 2023-04-05 +### Changed +- Install missing models and packages on start up. +- Updated [zensols.install] to 0.2.1 +- Updated [zensols.nlp] to 1.6.0. + + +## [1.0.0] - 2023-02-02 +### Changed +- Updated [zensols.util] to 1.12.1. +- Updated [zensols.nlp] to 1.5.0. + + +## [0.1.1] - 2022-10-02 +### Removed +- Make scispacy optional and remove the dependency. See the test cases in + [test](test/entlink). + + +## [0.1.0] - 2022-10-01 +### Added +- Unit test in GitHub CI. + +### Changed +- Upgrade to spaCy 2.2, MedCAT 3.0, `zensols.nlp` 1.4.0. +- Make `cui2vec` a standard word embedding with vectorizer and layer. +- Replace entity splitter by not embedding named entities as default + configuration. + +### Removed +- Support for Python 3.7, 3.8 from dropped support in `zensols.util`. + + +## [0.0.2] - 2022-05-04 +### Added +- A CSV features dump example. + +### Changed +- Use token instead of sentence level mapping in cases where MedCAT creates + unaligned sentence boundaries. +- Make medical parser stand-alone and use delegate mapping combiner instead of + using a class hierarchy. +- Entity linker is now a token decorator. +- Protect against `unk` (unknown) keys in TUIs. + + +## [0.0.1] - 2022-01-30 +### Added +- Initial version. + + +<!-- links --> +[Unreleased]: https://github.com/Paul Landes/mednlp/compare/v1.8.0...HEAD +[1.8.0]: https://github.com/Paul Landes/mednlp/compare/v1.7.0...v1.8.0 +[1.7.0]: https://github.com/Paul Landes/mednlp/compare/v1.6.0...v1.7.0 +[1.6.0]: https://github.com/Paul Landes/mednlp/compare/v1.5.0...v1.6.0 +[1.5.0]: https://github.com/Paul Landes/mednlp/compare/v1.4.1...v1.5.0 +[1.4.1]: https://github.com/Paul Landes/mednlp/compare/v1.4.0...v1.4.1 +[1.4.0]: https://github.com/Paul Landes/mednlp/compare/v1.3.2...v1.4.0 +[1.3.2]: https://github.com/Paul Landes/mednlp/compare/v1.3.1...v1.3.2 +[1.3.1]: https://github.com/Paul Landes/mednlp/compare/v1.3.0...v1.3.1 +[1.3.0]: https://github.com/Paul Landes/mednlp/compare/v1.2.0...v1.3.0 +[1.2.0]: https://github.com/Paul Landes/mednlp/compare/v1.1.0...v1.2.0 +[1.1.0]: https://github.com/Paul Landes/mednlp/compare/v1.0.0...v1.1.0 +[1.0.0]: https://github.com/Paul Landes/mednlp/compare/v0.1.1...v1.0.0 +[0.1.1]: https://github.com/Paul Landes/mednlp/compare/v0.1.0...v0.1.1 +[0.1.0]: https://github.com/Paul Landes/mednlp/compare/v0.0.2...v0.1.0 +[0.0.2]: https://github.com/Paul Landes/mednlp/compare/v0.0.1...v0.0.2 +[0.0.1]: https://github.com/Paul Landes/mednlp/compare/v0.0.0...v0.0.1 + +[zensols.util]: https://github.com/plandes/util +[zensols.nlp]: https://github.com/plandes/nlparse +[zensols.install]: https://github.com/plandes/install +[medcat]: https://github.com/CogStack/MedCAT +[PyRuSH]: https://github.com/jianlins/PyRuSH +[PubMedBert SBERT embeddings]: https://huggingface.co/pritamdeka/S-PubMedBert-MS-MARCO