folio-migration-tools 1.10.1__tar.gz → 1.10.2__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 (62) hide show
  1. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/PKG-INFO +1 -1
  2. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/pyproject.toml +1 -1
  3. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/batch_poster.py +7 -1
  4. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/README.md +0 -0
  5. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/__init__.py +0 -0
  6. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/__main__.py +0 -0
  7. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/circulation_helper.py +0 -0
  8. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/colors.py +0 -0
  9. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/config_file_load.py +0 -0
  10. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/custom_dict.py +0 -0
  11. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/custom_exceptions.py +0 -0
  12. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/extradata_writer.py +0 -0
  13. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/folder_structure.py +0 -0
  14. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/helper.py +0 -0
  15. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/holdings_helper.py +0 -0
  16. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/i18n_cache.py +0 -0
  17. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/i18n_config.py +0 -0
  18. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/library_configuration.py +0 -0
  19. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapper_base.py +0 -0
  20. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/__init__.py +0 -0
  21. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/courses_mapper.py +0 -0
  22. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/holdings_mapper.py +0 -0
  23. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/item_mapper.py +0 -0
  24. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/manual_fee_fines_mapper.py +0 -0
  25. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/mapping_file_mapper_base.py +0 -0
  26. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/notes_mapper.py +0 -0
  27. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/order_mapper.py +0 -0
  28. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/organization_mapper.py +0 -0
  29. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/ref_data_mapping.py +0 -0
  30. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/mapping_file_transformation/user_mapper.py +0 -0
  31. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/__init__.py +0 -0
  32. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/conditions.py +0 -0
  33. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/holdings_statementsparser.py +0 -0
  34. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/hrid_handler.py +0 -0
  35. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/loc_language_codes.xml +0 -0
  36. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/marc_file_processor.py +0 -0
  37. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/marc_reader_wrapper.py +0 -0
  38. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/rules_mapper_base.py +0 -0
  39. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/rules_mapper_bibs.py +0 -0
  40. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/marc_rules_transformation/rules_mapper_holdings.py +0 -0
  41. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_report.py +0 -0
  42. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/__init__.py +0 -0
  43. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/bibs_transformer.py +0 -0
  44. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/courses_migrator.py +0 -0
  45. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/holdings_csv_transformer.py +0 -0
  46. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/holdings_marc_transformer.py +0 -0
  47. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/items_transformer.py +0 -0
  48. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/loans_migrator.py +0 -0
  49. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/manual_fee_fines_transformer.py +0 -0
  50. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/migration_task_base.py +0 -0
  51. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/orders_transformer.py +0 -0
  52. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/organization_transformer.py +0 -0
  53. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/requests_migrator.py +0 -0
  54. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/reserves_migrator.py +0 -0
  55. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/migration_tasks/user_transformer.py +0 -0
  56. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/task_configuration.py +0 -0
  57. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/transaction_migration/__init__.py +0 -0
  58. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/transaction_migration/legacy_loan.py +0 -0
  59. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/transaction_migration/legacy_request.py +0 -0
  60. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/transaction_migration/legacy_reserve.py +0 -0
  61. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/transaction_migration/transaction_result.py +0 -0
  62. {folio_migration_tools-1.10.1 → folio_migration_tools-1.10.2}/src/folio_migration_tools/translations/en.json +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: folio-migration-tools
3
- Version: 1.10.1
3
+ Version: 1.10.2
4
4
  Summary: A tool allowing you to migrate data from legacy ILS:s (Library systems) into FOLIO LSP
5
5
  Keywords: FOLIO,ILS,LSP,Library Systems,MARC21,Library data
6
6
  Author: Theodor Tolstoy, Lisa Sjögren, Brooks Travis, Jeremy Nelson, Clinton Bradford
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "folio_migration_tools"
3
- version = "1.10.1"
3
+ version = "1.10.2"
4
4
  description = "A tool allowing you to migrate data from legacy ILS:s (Library systems) into FOLIO LSP"
5
5
  authors = [
6
6
  {name = "Theodor Tolstoy", email = "github.teddes@tolstoy.se"},
@@ -2,6 +2,7 @@ import asyncio
2
2
  import copy
3
3
  import json
4
4
  import logging
5
+ import os
5
6
  import re
6
7
  import sys
7
8
  import traceback
@@ -249,6 +250,10 @@ class BatchPoster(MigrationTaskBase):
249
250
  self.num_posted = 0
250
251
  self.starting_record_count_in_folio: Optional[int] = None
251
252
  self.finished_record_count_in_folio: Optional[int] = None
253
+ # Create a semaphore to limit concurrent async requests
254
+ self.semaphore = asyncio.Semaphore(
255
+ int(os.environ.get("FOLIO_MAX_CONCURRENT_REQUESTS", 10))
256
+ )
252
257
 
253
258
  def do_work(self): # noqa: C901
254
259
  with open(
@@ -520,7 +525,8 @@ class BatchPoster(MigrationTaskBase):
520
525
 
521
526
  for attempt in range(retries):
522
527
  try:
523
- return await self.folio_client.folio_get_async(url, query_params=params)
528
+ async with self.semaphore:
529
+ return await self.folio_client.folio_get_async(url, query_params=params)
524
530
 
525
531
  except folioclient.FolioConnectionError as e:
526
532
  # Network/connection errors - always retry