python-iso639 2025.1.28__tar.gz → 2025.2.8__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 (23) hide show
  1. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/CHANGELOG.md +5 -0
  2. {python_iso639-2025.1.28/src/python_iso639.egg-info → python_iso639-2025.2.8}/PKG-INFO +15 -5
  3. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/README.md +12 -2
  4. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/pyproject.toml +4 -4
  5. python_iso639-2025.2.8/src/iso639/py.typed +0 -0
  6. {python_iso639-2025.1.28 → python_iso639-2025.2.8/src/python_iso639.egg-info}/PKG-INFO +15 -5
  7. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/python_iso639.egg-info/SOURCES.txt +1 -0
  8. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/python_iso639.egg-info/requires.txt +2 -2
  9. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/LICENSE.txt +0 -0
  10. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/MANIFEST.in +0 -0
  11. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/setup.cfg +0 -0
  12. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/iso639/__init__.py +0 -0
  13. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/iso639/_data/__init__.py +0 -0
  14. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/iso639/_data/iso-639-3-macrolanguages.tab +0 -0
  15. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/iso639/_data/iso-639-3.tab +0 -0
  16. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/iso639/_data/iso-639-3_Name_Index.tab +0 -0
  17. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/iso639/_data/iso-639-3_Retirements.tab +0 -0
  18. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/iso639/language.py +0 -0
  19. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/python_iso639.egg-info/dependency_links.txt +0 -0
  20. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/python_iso639.egg-info/not-zip-safe +0 -0
  21. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/src/python_iso639.egg-info/top_level.txt +0 -0
  22. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/tests/test_language.py +0 -0
  23. {python_iso639-2025.1.28 → python_iso639-2025.2.8}/tests/test_version_number.py +0 -0
@@ -17,6 +17,11 @@ major/minor/micro version numbers like `05` (it'd have to be just `5`).
17
17
  ### Fixed
18
18
  ### Security
19
19
 
20
+ ## [2025.2.8]
21
+
22
+ ### Added
23
+ * Explcitly indicated that the library is type-annotated.
24
+
20
25
  ## [2025.1.28]
21
26
 
22
27
  ### Changed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: python-iso639
3
- Version: 2025.1.28
3
+ Version: 2025.2.8
4
4
  Summary: ISO 639 language codes, names, and other associated information
5
5
  Author-email: "Jackson L. Lee" <jacksonlunlee@gmail.com>
6
6
  License: Apache 2.0
@@ -28,10 +28,10 @@ Requires-Python: >=3.9
28
28
  Description-Content-Type: text/markdown
29
29
  License-File: LICENSE.txt
30
30
  Provides-Extra: dev
31
- Requires-Dist: black==24.10.0; extra == "dev"
31
+ Requires-Dist: black==25.1.0; extra == "dev"
32
32
  Requires-Dist: build==1.2.2; extra == "dev"
33
33
  Requires-Dist: flake8==7.1.1; extra == "dev"
34
- Requires-Dist: mypy==1.14.1; extra == "dev"
34
+ Requires-Dist: mypy==1.15.0; extra == "dev"
35
35
  Requires-Dist: pytest==8.3.4; extra == "dev"
36
36
  Requires-Dist: requests==2.32.3; extra == "dev"
37
37
  Requires-Dist: twine==6.1.0; extra == "dev"
@@ -48,9 +48,10 @@ other associated information.
48
48
 
49
49
  Current features:
50
50
 
51
- * A representation of languages mapped across ISO 639-1, 639-2, and 639-3.
52
- * Functionality to "guess" what a language is for a given
51
+ * 🌐 A representation of languages mapped across ISO 639-1, 639-2, and 639-3.
52
+ * 🔎 Functionality to "guess" what a language is for a given
53
53
  unknown language code or name.
54
+ * 🚀 Optimized for speed in retrieving language information.
54
55
 
55
56
  ## Installation
56
57
 
@@ -82,6 +83,15 @@ Create a `Language` instance by one of the class methods.
82
83
  Language(part3='fra', part2b='fre', part2t='fra', part1='fr', scope='I', type='L', name='French', comment=None, other_names=None, macrolanguage=None, retire_reason=None, retire_change_to=None, retire_remedy=None, retire_date=None)
83
84
  ```
84
85
 
86
+ Fast object instantiation for retrieving language information (run on Python 3.13, macOS 15.2, Apple M1 Pro)
87
+
88
+ ```python
89
+ In [1]: import iso639
90
+
91
+ In [2]: %timeit iso639.Language.from_part3("fra")
92
+ 220 ns ± 0.658 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)
93
+ ```
94
+
85
95
  #### From Another ISO 639 Code Set or a Reference Name
86
96
 
87
97
  ```python
@@ -10,9 +10,10 @@ other associated information.
10
10
 
11
11
  Current features:
12
12
 
13
- * A representation of languages mapped across ISO 639-1, 639-2, and 639-3.
14
- * Functionality to "guess" what a language is for a given
13
+ * 🌐 A representation of languages mapped across ISO 639-1, 639-2, and 639-3.
14
+ * 🔎 Functionality to "guess" what a language is for a given
15
15
  unknown language code or name.
16
+ * 🚀 Optimized for speed in retrieving language information.
16
17
 
17
18
  ## Installation
18
19
 
@@ -44,6 +45,15 @@ Create a `Language` instance by one of the class methods.
44
45
  Language(part3='fra', part2b='fre', part2t='fra', part1='fr', scope='I', type='L', name='French', comment=None, other_names=None, macrolanguage=None, retire_reason=None, retire_change_to=None, retire_remedy=None, retire_date=None)
45
46
  ```
46
47
 
48
+ Fast object instantiation for retrieving language information (run on Python 3.13, macOS 15.2, Apple M1 Pro)
49
+
50
+ ```python
51
+ In [1]: import iso639
52
+
53
+ In [2]: %timeit iso639.Language.from_part3("fra")
54
+ 220 ns ± 0.658 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)
55
+ ```
56
+
47
57
  #### From Another ISO 639 Code Set or a Reference Name
48
58
 
49
59
  ```python
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "python-iso639"
7
- version = "2025.1.28"
7
+ version = "2025.2.8"
8
8
  description = "ISO 639 language codes, names, and other associated information"
9
9
  readme = "README.md"
10
10
  requires-python = ">= 3.9"
@@ -34,10 +34,10 @@ classifiers = [
34
34
 
35
35
  [project.optional-dependencies]
36
36
  dev = [
37
- "black == 24.10.0",
37
+ "black == 25.1.0",
38
38
  "build == 1.2.2",
39
39
  "flake8 == 7.1.1",
40
- "mypy == 1.14.1",
40
+ "mypy == 1.15.0",
41
41
  "pytest == 8.3.4",
42
42
  "requests == 2.32.3",
43
43
  "twine == 6.1.0",
@@ -52,7 +52,7 @@ where = [ "src" ]
52
52
  [tool.setuptools]
53
53
  zip-safe = false
54
54
  package-dir = { "" = "src" }
55
- package-data = { "iso639" = ["_data/*.tab"] }
55
+ package-data = { "iso639" = ["_data/*.tab", "py.typed"] }
56
56
 
57
57
  [tool.pytest.ini_options]
58
58
  addopts = "-vv --durations=0 --strict-markers"
File without changes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: python-iso639
3
- Version: 2025.1.28
3
+ Version: 2025.2.8
4
4
  Summary: ISO 639 language codes, names, and other associated information
5
5
  Author-email: "Jackson L. Lee" <jacksonlunlee@gmail.com>
6
6
  License: Apache 2.0
@@ -28,10 +28,10 @@ Requires-Python: >=3.9
28
28
  Description-Content-Type: text/markdown
29
29
  License-File: LICENSE.txt
30
30
  Provides-Extra: dev
31
- Requires-Dist: black==24.10.0; extra == "dev"
31
+ Requires-Dist: black==25.1.0; extra == "dev"
32
32
  Requires-Dist: build==1.2.2; extra == "dev"
33
33
  Requires-Dist: flake8==7.1.1; extra == "dev"
34
- Requires-Dist: mypy==1.14.1; extra == "dev"
34
+ Requires-Dist: mypy==1.15.0; extra == "dev"
35
35
  Requires-Dist: pytest==8.3.4; extra == "dev"
36
36
  Requires-Dist: requests==2.32.3; extra == "dev"
37
37
  Requires-Dist: twine==6.1.0; extra == "dev"
@@ -48,9 +48,10 @@ other associated information.
48
48
 
49
49
  Current features:
50
50
 
51
- * A representation of languages mapped across ISO 639-1, 639-2, and 639-3.
52
- * Functionality to "guess" what a language is for a given
51
+ * 🌐 A representation of languages mapped across ISO 639-1, 639-2, and 639-3.
52
+ * 🔎 Functionality to "guess" what a language is for a given
53
53
  unknown language code or name.
54
+ * 🚀 Optimized for speed in retrieving language information.
54
55
 
55
56
  ## Installation
56
57
 
@@ -82,6 +83,15 @@ Create a `Language` instance by one of the class methods.
82
83
  Language(part3='fra', part2b='fre', part2t='fra', part1='fr', scope='I', type='L', name='French', comment=None, other_names=None, macrolanguage=None, retire_reason=None, retire_change_to=None, retire_remedy=None, retire_date=None)
83
84
  ```
84
85
 
86
+ Fast object instantiation for retrieving language information (run on Python 3.13, macOS 15.2, Apple M1 Pro)
87
+
88
+ ```python
89
+ In [1]: import iso639
90
+
91
+ In [2]: %timeit iso639.Language.from_part3("fra")
92
+ 220 ns ± 0.658 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)
93
+ ```
94
+
85
95
  #### From Another ISO 639 Code Set or a Reference Name
86
96
 
87
97
  ```python
@@ -5,6 +5,7 @@ README.md
5
5
  pyproject.toml
6
6
  src/iso639/__init__.py
7
7
  src/iso639/language.py
8
+ src/iso639/py.typed
8
9
  src/iso639/_data/__init__.py
9
10
  src/iso639/_data/iso-639-3-macrolanguages.tab
10
11
  src/iso639/_data/iso-639-3.tab
@@ -1,9 +1,9 @@
1
1
 
2
2
  [dev]
3
- black==24.10.0
3
+ black==25.1.0
4
4
  build==1.2.2
5
5
  flake8==7.1.1
6
- mypy==1.14.1
6
+ mypy==1.15.0
7
7
  pytest==8.3.4
8
8
  requests==2.32.3
9
9
  twine==6.1.0