commonmeta-py 0.127__tar.gz → 0.128__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 (90) hide show
  1. {commonmeta_py-0.127 → commonmeta_py-0.128}/PKG-INFO +1 -1
  2. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/__init__.py +1 -1
  3. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/utils.py +12 -17
  4. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/inveniordm_writer.py +2 -7
  5. {commonmeta_py-0.127 → commonmeta_py-0.128}/pyproject.toml +1 -1
  6. {commonmeta_py-0.127 → commonmeta_py-0.128}/.gitignore +0 -0
  7. {commonmeta_py-0.127 → commonmeta_py-0.128}/LICENSE +0 -0
  8. {commonmeta_py-0.127 → commonmeta_py-0.128}/README.md +0 -0
  9. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/api_utils.py +0 -0
  10. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/author_utils.py +0 -0
  11. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/base_utils.py +0 -0
  12. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/cli.py +0 -0
  13. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/constants.py +0 -0
  14. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/date_utils.py +0 -0
  15. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/doi_utils.py +0 -0
  16. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/file_utils.py +0 -0
  17. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/metadata.py +0 -0
  18. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/__init__.py +0 -0
  19. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/bibtex_reader.py +0 -0
  20. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/cff_reader.py +0 -0
  21. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/codemeta_reader.py +0 -0
  22. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/commonmeta_reader.py +0 -0
  23. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/crossref_reader.py +0 -0
  24. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/crossref_xml_reader.py +0 -0
  25. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/csl_reader.py +0 -0
  26. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/datacite_reader.py +0 -0
  27. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/datacite_xml_reader.py +0 -0
  28. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/inveniordm_reader.py +0 -0
  29. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/jsonfeed_reader.py +0 -0
  30. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/kbase_reader.py +0 -0
  31. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/openalex_reader.py +0 -0
  32. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/ris_reader.py +0 -0
  33. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/readers/schema_org_reader.py +0 -0
  34. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/cff_v1.2.0.json +0 -0
  35. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/commonmeta_v0.12.json +0 -0
  36. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/commonmeta_v0.13.json +0 -0
  37. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/commonmeta_v0.14.json +0 -0
  38. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/commonmeta_v0.15.json +0 -0
  39. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/commonmeta_v0.16.json +0 -0
  40. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/AccessIndicators.xsd +0 -0
  41. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/JATS-journalpublishing1-3d2-mathml3-elements.xsd +0 -0
  42. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/JATS-journalpublishing1-3d2-mathml3.xsd +0 -0
  43. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/JATS-journalpublishing1-elements.xsd +0 -0
  44. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/JATS-journalpublishing1-mathml3-elements.xsd +0 -0
  45. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/JATS-journalpublishing1-mathml3.xsd +0 -0
  46. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/JATS-journalpublishing1.xsd +0 -0
  47. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/clinicaltrials.xsd +0 -0
  48. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/common5.4.0.xsd +0 -0
  49. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/crossref5.4.0.xsd +0 -0
  50. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/crossref_query_output3.0.xsd +0 -0
  51. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/doi_resources5.4.0.xsd +0 -0
  52. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/fundingdata5.4.0.xsd +0 -0
  53. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/fundref.xsd +0 -0
  54. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/languages5.4.0.xsd +0 -0
  55. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/mediatypes5.4.0.xsd +0 -0
  56. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/module-ali.xsd +0 -0
  57. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/relations.xsd +0 -0
  58. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/mathml3/mathml3-common.xsd +0 -0
  59. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/mathml3/mathml3-content.xsd +0 -0
  60. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/mathml3/mathml3-presentation.xsd +0 -0
  61. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/mathml3/mathml3-strict-content.xsd +0 -0
  62. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/mathml3/mathml3.xsd +0 -0
  63. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/mathml3/module-ali.xsd +0 -0
  64. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/module-ali.xsd +0 -0
  65. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/xlink.xsd +0 -0
  66. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/standard-modules/xml.xsd +0 -0
  67. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref/xml.xsd +0 -0
  68. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/crossref-v0.2.json +0 -0
  69. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/csl-data.json +0 -0
  70. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/datacite-v4.5.json +0 -0
  71. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/datacite-v4.5pr.json +0 -0
  72. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/spdx/licenses.json +0 -0
  73. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/spdx-schema.json +0 -0
  74. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/styles/apa.csl +0 -0
  75. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/styles/chicago-author-date.csl +0 -0
  76. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/styles/harvard-cite-them-right.csl +0 -0
  77. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/styles/ieee.csl +0 -0
  78. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/styles/modern-language-association.csl +0 -0
  79. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/resources/styles/vancouver.csl +0 -0
  80. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/schema_utils.py +0 -0
  81. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/translators.py +0 -0
  82. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/__init__.py +0 -0
  83. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/bibtex_writer.py +0 -0
  84. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/citation_writer.py +0 -0
  85. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/commonmeta_writer.py +0 -0
  86. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/crossref_xml_writer.py +0 -0
  87. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/csl_writer.py +0 -0
  88. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/datacite_writer.py +0 -0
  89. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/ris_writer.py +0 -0
  90. {commonmeta_py-0.127 → commonmeta_py-0.128}/commonmeta/writers/schema_org_writer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: commonmeta-py
3
- Version: 0.127
3
+ Version: 0.128
4
4
  Summary: Library for conversions to/from the Commonmeta scholarly metadata format
5
5
  Project-URL: Homepage, https://python.commonmeta.org
6
6
  Project-URL: Repository, https://github.com/front-matter/commonmeta-py
@@ -10,7 +10,7 @@ commonmeta-py is a Python library to convert scholarly metadata
10
10
  """
11
11
 
12
12
  __title__ = "commonmeta-py"
13
- __version__ = "0.127"
13
+ __version__ = "0.128"
14
14
  __author__ = "Martin Fenner"
15
15
  __license__ = "MIT"
16
16
 
@@ -1325,24 +1325,19 @@ def subjects_as_string(subjects):
1325
1325
  return ", ".join(keywords)
1326
1326
 
1327
1327
 
1328
- def string_to_slug(text):
1329
- """makes a string lowercase and removes non-alphanumeric characters"""
1330
- # Remove FOS (Fields of Science) prefix
1328
+ def string_to_slug(text: str) -> str:
1329
+ """Makes a string lowercase and removes non-alphanumeric characters"""
1330
+
1331
+ # Remove optional FOS (Fields of Science) prefix
1331
1332
  text = text.removeprefix("FOS: ")
1332
- # Lookup FOS name
1333
- slug = FOS_TO_STRING_MAPPINGS.get(text, None)
1334
- if slug is not None:
1335
- return slug.lower()
1336
-
1337
- # Replace spaces with hyphens
1338
- slug = re.sub(r"\s+", "-", text.lower())
1339
- # Remove special characters
1340
- slug = re.sub(r"[^a-z0-9-]", "", slug)
1341
- # Remove multiple consecutive hyphens
1342
- slug = re.sub(r"-+", "-", slug)
1343
- # Remove leading and trailing hyphens
1344
- slug = slug.strip("-")
1345
- return slug
1333
+
1334
+ # Convert to lowercase and keep only letters and numbers
1335
+ result = ""
1336
+ for char in text:
1337
+ if char.isalnum():
1338
+ result += char.lower()
1339
+
1340
+ return result
1346
1341
 
1347
1342
 
1348
1343
  # def reverse():
@@ -7,7 +7,6 @@ from typing import Dict, Optional
7
7
  import orjson as json
8
8
  import pydash as py_
9
9
  import requests
10
- from urllib3._collections import HTTPHeaderDict
11
10
 
12
11
  from ..base_utils import compact, parse_attributes, presence, wrap
13
12
  from ..constants import (
@@ -760,17 +759,13 @@ def update_legacy_record(record, legacy_key: str, field: str = None) -> dict:
760
759
  return record
761
760
 
762
761
 
763
- def search_by_slug(slug: str, type_value: str, host: str, token: str) -> Optional[str]:
762
+ def search_by_slug(slug: str, type: str, host: str, token: str) -> Optional[str]:
764
763
  """Search for a community by slug in InvenioRDM"""
765
764
  headers = {
766
765
  "Authorization": f"Bearer {token}",
767
766
  "Content-Type": "application/json",
768
767
  }
769
- params = HTTPHeaderDict()
770
- params.add("q", f"slug:{slug}")
771
- params.add("type", type_value)
772
- params.add("type", "subject")
773
- params.add("size", 1)
768
+ params = [("q", f"slug:{slug}"), ("type", type), ("type", "subject"), ("size", 1)]
774
769
  try:
775
770
  response = requests.get(
776
771
  f"https://{host}/api/communities", headers=headers, params=params
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "commonmeta-py"
3
- version = "0.127"
3
+ version = "0.128"
4
4
  description = "Library for conversions to/from the Commonmeta scholarly metadata format"
5
5
  authors = [{ name = "Martin Fenner", email = "martin@front-matter.io" }]
6
6
  requires-python = ">=3.9,<4.0"
File without changes
File without changes
File without changes