pyannotators-patterns 0.5.98__tar.gz → 0.5.102__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/PKG-INFO +3 -2
  2. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/setup.py +1 -1
  3. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/src/pyannotators_patterns/__init__.py +1 -1
  4. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/src/pyannotators_patterns/named_pattern_recognizer.py +1 -1
  5. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/data/coords-document.json +1 -1
  6. pyannotators_patterns-0.5.102/tests/data/mgrs-document.json +8 -0
  7. pyannotators_patterns-0.5.102/tests/data/mgrs.json +10 -0
  8. pyannotators_patterns-0.5.102/tests/test_mgrs.py +28 -0
  9. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/.bumpversion.cfg +0 -0
  10. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/.github/workflows/main.yml +0 -0
  11. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/.gitignore +0 -0
  12. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/.pre-commit-config.yaml +0 -0
  13. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/.readthedocs.yml +0 -0
  14. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/AUTHORS.md +0 -0
  15. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/CHANGELOG.md +0 -0
  16. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/Dockerfile +0 -0
  17. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/Jenkinsfile +0 -0
  18. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/LICENSE +0 -0
  19. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/README.md +0 -0
  20. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/RELEASE.md +0 -0
  21. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/bumpversion.py +0 -0
  22. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/docs/.gitignore +0 -0
  23. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/docs/CHANGELOG.md +0 -0
  24. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/docs/LICENSE +0 -0
  25. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/docs/_static/.gitkeep +0 -0
  26. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/docs/_templates/.gitkeep +0 -0
  27. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/docs/conf.py +0 -0
  28. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/docs/index.rst +0 -0
  29. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/mypy.ini +0 -0
  30. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/pyproject.toml +0 -0
  31. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/src/pyannotators_patterns/patterns.py +0 -0
  32. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/assertions.py +0 -0
  33. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/data/coords.json +0 -0
  34. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/data/tel-document.json +0 -0
  35. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/data/tel.json +0 -0
  36. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/test_coords.py +0 -0
  37. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/test_credit_cards.py +0 -0
  38. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/test_emails.py +0 -0
  39. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/test_tel.py +0 -0
  40. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tests/test_zip.py +0 -0
  41. {pyannotators_patterns-0.5.98 → pyannotators_patterns-0.5.102}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: pyannotators-patterns
3
- Version: 0.5.98
3
+ Version: 0.5.102
4
4
  Summary: Annotator based on Presidio pattern recognizer
5
5
  Home-page: https://github.com/oterrier/pyannotators_patterns/
6
6
  Keywords:
@@ -19,6 +19,7 @@ Classifier: Topic :: Software Development
19
19
  Classifier: License :: OSI Approved :: MIT License
20
20
  Classifier: Development Status :: 4 - Beta
21
21
  Classifier: Programming Language :: Python :: 3.8
22
+ License-File: LICENSE
22
23
  Requires-Dist: pymultirole-plugins>=0.5.0,<0.6.0
23
24
  Requires-Dist: tldextract==5.1.2
24
25
  Requires-Dist: spacy==3.4.4
@@ -39,7 +39,7 @@ entry_points = \
39
39
  'pyannotators_patterns.patterns:PatternsAnnotator']}
40
40
 
41
41
  setup(name='pyannotators-patterns',
42
- version='0.5.98',
42
+ version='0.5.102',
43
43
  description='Annotator based on Presidio pattern recognizer',
44
44
  author='Olivier Terrier',
45
45
  author_email='olivier.terrier@kairntech.com',
@@ -1,2 +1,2 @@
1
1
  """Annotator based on Presidio pattern recognizer"""
2
- __version__ = "0.5.98"
2
+ __version__ = "0.5.102"
@@ -15,7 +15,7 @@ class NamedPatternRecognizer(PatternRecognizer):
15
15
  deny_list: List[str] = None,
16
16
  context: List[str] = None,
17
17
  deny_list_score: float = 1.0,
18
- global_regex_flags: Optional[int] = re.DOTALL | re.MULTILINE | re.IGNORECASE,
18
+ global_regex_flags: Optional[int] = re.DOTALL | re.MULTILINE,
19
19
  version: str = "0.0.1",
20
20
  ):
21
21
  super().__init__(supported_entity, name, supported_language, patterns, deny_list, context, deny_list_score,
@@ -3,6 +3,6 @@
3
3
  "metadata": {
4
4
  "language": "fr"
5
5
  },
6
- "identifier": "c8ecc5153c542c4f6a07fbe813384842",
6
+ "identifier": "coords",
7
7
  "title": "unknown test document"
8
8
  }
@@ -0,0 +1,8 @@
1
+ {
2
+ "text": "En MGRS cela donne: 30t yn 12762 97163 (ou en collé 30TYN1276297163) on retrouve dans ces coordonnées: 30T qui est la zone de 6° x 12°; YN est le carré de 100 km de coté ( voir tutoriel), 12762 le X à l'intérieur du carré de 100km et 97163 le Y . On peut constater que cela correspond au 5 derniers chiffres des X et Y UTM en mètres.",
3
+ "metadata": {
4
+ "language": "fr"
5
+ },
6
+ "identifier": "mgrs",
7
+ "title": "unknown test document"
8
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "patterns": [
3
+ {
4
+ "name": "RE_MGRS_COORDINATES",
5
+ "regex": "([0-5][0-9]?|60)([C-H|J-N|P-X])\\s*([A-Z][A-Z])\\s*(\\d{1,5})?\\s*((/|,|-|–)?\\s*(\\d{1,5}))?",
6
+ "score": 0.9
7
+ }
8
+ ],
9
+ "context": []
10
+ }
@@ -0,0 +1,28 @@
1
+ import json
2
+ from pathlib import Path
3
+ from typing import List
4
+
5
+ from pymultirole_plugins.v1.schema import Document
6
+
7
+ from pyannotators_patterns.patterns import PatternsAnnotator, PatternsParameters
8
+
9
+
10
+ def test_coords(
11
+ ):
12
+ testdir = Path(__file__).parent
13
+ source = Path(testdir, "data/mgrs.json")
14
+ with source.open("r") as fin:
15
+ pat = json.load(fin)
16
+ parameters = PatternsParameters(mapping={
17
+ "mgrs": json.dumps(pat, indent=2)
18
+ })
19
+ source = Path(testdir, "data/mgrs-document.json")
20
+ with source.open("r") as fin:
21
+ jdoc = json.load(fin)
22
+ doc = Document(**jdoc)
23
+ annotator = PatternsAnnotator()
24
+ docs: List[Document] = annotator.annotate([doc], parameters)
25
+ doc0 = docs[0]
26
+ mgrs0 = next(a.dict(exclude_none=True, exclude_unset=True) for a in doc0.annotations if
27
+ a.text == '30TYN1276297163')
28
+ assert mgrs0['properties']['pattern_name'] == 'RE_MGRS_COORDINATES'