• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

MITLibraries / dspace-submission-composer
96%
main: 95%

Build:
Build:
LAST BUILD BRANCH: ocw-mapping-fix
DEFAULT BRANCH: main
Repo Added 02 Dec 2024 08:56PM UTC
Token Is1ouZ3Mu7H6XOLn5MQ3NKDGwcSUnnTxZ regen
Build 511 Last
Files 18
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH IN-1355-refactor-reconcile-for-itemsubmission
branch: IN-1355-refactor-reconcile-for-itemsubmission
CHANGE BRANCH
x
Reset
Sync Branches
  • IN-1355-refactor-reconcile-for-itemsubmission
  • 1319-create-separate-folder-for-dspace-metadata
  • IN-1095-simplecsv-workflow
  • IN-1096-ocw-workflow
  • IN-1097-wiley-workflow
  • IN-1098-sccs-workflow
  • IN-1099-aws-clients
  • IN-1099-ses-and-sqs-clients
  • IN-1099-ses-sqs-clients
  • IN-1100-archivesspace-workflow
  • IN-1101-base-workflow
  • IN-1101-sqs-refactor
  • IN-1103-reconcile-cli-command
  • IN-1104-deposit-command
  • IN-1105-finalize-command
  • IN-1106-add-docs
  • IN-1108-setup-app
  • IN-1157-build-report-system
  • IN-1158-revise-reconcile-method
  • IN-1167-remove-demo-workflow
  • IN-1172-improve-logging-for-submit-and-finalize-methods
  • IN-1172-logging-for-finalize-methods
  • IN-1173-create-reconcile-report
  • IN-1174-create-submit-report
  • IN-1176-opencourseware-subjects-field
  • IN-1186-simplecsv-fix-item-identifiers
  • IN-1227-update-dsc-to-use-s3-bucket
  • IN-1235-set-sqs-output-queues
  • IN-1236-rename-s3-bucket-env
  • IN-1315-create-item-db-model
  • IN-1316-update-reconcile-command-to-use-dynamodb
  • IN-1317-submit-dynamodb
  • IN-1318-update-finalize-command-to-use-dynamodb
  • IN-1319-create-separate-folder-for-dspace-metadata
  • IN-1320-consolidate-results-in-finalize-report
  • IN-1323-improve-methods-for-processing-result-messages
  • IN-1324-workflows-use-single-output-queue
  • IN-1341-rename-env-var-for-item-submissions-table
  • IN-1344-finalize-fix-args-when-getting-record-from-dynamodb
  • IN-1352-add-sync-cli-command
  • IN-1354-itemsubmission-class-update
  • IN-1356-update-submit
  • IN-1357-finalize-refactor
  • IN-1394-opencourseware-use-metadata-transformer
  • IN-1408-reconcile-by-record
  • IN-1409-repo-alignment
  • IN-1428-opencourseware-contrib-department-field-method
  • IN-1431-align-methods-for-retrieving-source-metadata
  • IN-1432-cache-bitstreams-to-workflow
  • IN-1433-define-record-level-reconcile-item-methods
  • IN-1455-create-batch-for-base-workflow
  • IN-1455-create-batch-for-base-workflow-update
  • IN-1456-add-create-cli-command
  • IN-1460-add-batch-creation-report
  • IN-1460-refactor-reporting-modules
  • IN-1511-ocw-prepare-batch-method-and-review
  • IN-1512-report-on-failures-during-batch-creation
  • INFRA-509-sccs-deposit-request
  • dependabot/pip/boto3-1.35.76
  • dependabot/pip/boto3-1.35.77
  • dependabot/pip/boto3-1.35.78
  • dependabot/pip/boto3-1.35.79
  • dependabot/pip/boto3-1.35.80
  • dependabot/pip/boto3-1.35.81
  • dependabot/pip/boto3-1.35.82
  • dependabot/pip/boto3-1.35.83
  • dependabot/pip/boto3-1.35.84
  • dependabot/pip/boto3-1.35.85
  • dependabot/pip/boto3-1.35.86
  • dependabot/pip/boto3-1.35.87
  • dependabot/pip/boto3-1.35.88
  • dependabot/pip/boto3-1.35.89
  • dependabot/pip/boto3-1.35.90
  • dependabot/pip/boto3-1.35.91
  • dependabot/pip/boto3-1.35.92
  • dependabot/pip/boto3-1.35.93
  • dependabot/pip/boto3-1.35.94
  • dependabot/pip/boto3-1.35.95
  • dependabot/pip/boto3-1.35.96
  • dependabot/pip/boto3-1.35.97
  • dependabot/pip/boto3-1.35.98
  • dependabot/pip/boto3-1.35.99
  • dependabot/pip/boto3-1.36.0
  • dependabot/pip/boto3-1.36.1
  • dependabot/pip/boto3-1.36.10
  • dependabot/pip/boto3-1.36.11
  • dependabot/pip/boto3-1.36.12
  • dependabot/pip/boto3-1.36.13
  • dependabot/pip/boto3-1.36.14
  • dependabot/pip/boto3-1.36.15
  • dependabot/pip/boto3-1.36.16
  • dependabot/pip/boto3-1.36.17
  • dependabot/pip/boto3-1.36.18
  • dependabot/pip/boto3-1.36.19
  • dependabot/pip/boto3-1.36.2
  • dependabot/pip/boto3-1.36.20
  • dependabot/pip/boto3-1.36.21
  • dependabot/pip/boto3-1.36.22
  • dependabot/pip/boto3-1.36.23
  • dependabot/pip/boto3-1.36.24
  • dependabot/pip/boto3-1.36.25
  • dependabot/pip/boto3-1.36.26
  • dependabot/pip/boto3-1.36.3
  • dependabot/pip/boto3-1.36.4
  • dependabot/pip/boto3-1.36.5
  • dependabot/pip/boto3-1.36.6
  • dependabot/pip/boto3-1.36.7
  • dependabot/pip/boto3-1.36.8
  • dependabot/pip/boto3-1.36.9
  • dependabot/pip/boto3-1.37.0
  • dependabot/pip/boto3-1.37.1
  • dependabot/pip/boto3-1.37.2
  • dependabot/pip/boto3-1.37.3
  • dependabot/pip/boto3-1.37.4
  • dependabot/pip/boto3-stubs-1.35.76
  • dependabot/pip/boto3-stubs-1.35.77
  • dependabot/pip/boto3-stubs-1.35.78
  • dependabot/pip/boto3-stubs-1.35.79
  • dependabot/pip/boto3-stubs-1.35.80
  • dependabot/pip/boto3-stubs-1.35.81
  • dependabot/pip/boto3-stubs-1.35.82
  • dependabot/pip/boto3-stubs-1.35.83
  • dependabot/pip/boto3-stubs-1.35.84
  • dependabot/pip/boto3-stubs-1.35.85
  • dependabot/pip/boto3-stubs-1.35.86
  • dependabot/pip/boto3-stubs-1.35.87
  • dependabot/pip/boto3-stubs-1.35.88
  • dependabot/pip/boto3-stubs-1.35.89
  • dependabot/pip/boto3-stubs-1.35.90
  • dependabot/pip/boto3-stubs-1.35.91
  • dependabot/pip/boto3-stubs-1.35.92
  • dependabot/pip/boto3-stubs-1.35.93
  • dependabot/pip/boto3-stubs-1.35.94
  • dependabot/pip/boto3-stubs-1.35.95
  • dependabot/pip/boto3-stubs-1.35.96
  • dependabot/pip/boto3-stubs-1.35.97
  • dependabot/pip/boto3-stubs-1.35.98
  • dependabot/pip/boto3-stubs-1.35.99
  • dependabot/pip/boto3-stubs-1.36.0
  • dependabot/pip/boto3-stubs-1.36.1
  • dependabot/pip/boto3-stubs-1.36.10
  • dependabot/pip/boto3-stubs-1.36.11
  • dependabot/pip/boto3-stubs-1.36.12
  • dependabot/pip/boto3-stubs-1.36.13
  • dependabot/pip/boto3-stubs-1.36.14
  • dependabot/pip/boto3-stubs-1.36.15
  • dependabot/pip/boto3-stubs-1.36.16
  • dependabot/pip/boto3-stubs-1.36.17
  • dependabot/pip/boto3-stubs-1.36.18
  • dependabot/pip/boto3-stubs-1.36.2
  • dependabot/pip/boto3-stubs-1.36.21
  • dependabot/pip/boto3-stubs-1.36.22
  • dependabot/pip/boto3-stubs-1.36.23
  • dependabot/pip/boto3-stubs-1.36.24
  • dependabot/pip/boto3-stubs-1.36.25
  • dependabot/pip/boto3-stubs-1.36.26
  • dependabot/pip/boto3-stubs-1.36.3
  • dependabot/pip/boto3-stubs-1.36.4
  • dependabot/pip/boto3-stubs-1.36.5
  • dependabot/pip/boto3-stubs-1.36.6
  • dependabot/pip/boto3-stubs-1.36.7
  • dependabot/pip/boto3-stubs-1.36.8
  • dependabot/pip/boto3-stubs-1.36.9
  • dependabot/pip/boto3-stubs-1.37.0
  • dependabot/pip/boto3-stubs-1.37.1
  • dependabot/pip/boto3-stubs-1.37.2
  • dependabot/pip/boto3-stubs-1.37.3
  • dependabot/pip/boto3-stubs-1.37.4
  • dependabot/pip/cryptography-44.0.1
  • dependabot/pip/jinja2-3.1.5
  • dependabot/pip/moto-5.0.23
  • dependabot/pip/moto-5.0.24
  • dependabot/pip/moto-5.0.25
  • dependabot/pip/moto-5.0.26
  • dependabot/pip/moto-5.0.27
  • dependabot/pip/moto-5.0.28
  • dependabot/pip/mypy-1.14.0
  • dependabot/pip/mypy-1.14.1
  • dependabot/pip/mypy-1.15.0
  • dependabot/pip/pre-commit-4.1.0
  • dependabot/pip/pytest-8.3.4
  • dependabot/pip/ruff-0.8.1
  • dependabot/pip/ruff-0.8.2
  • dependabot/pip/ruff-0.8.3
  • dependabot/pip/ruff-0.8.4
  • dependabot/pip/ruff-0.8.5
  • dependabot/pip/ruff-0.8.6
  • dependabot/pip/ruff-0.9.0
  • dependabot/pip/ruff-0.9.1
  • dependabot/pip/ruff-0.9.2
  • dependabot/pip/ruff-0.9.3
  • dependabot/pip/ruff-0.9.4
  • dependabot/pip/ruff-0.9.5
  • dependabot/pip/ruff-0.9.6
  • dependabot/pip/ruff-0.9.7
  • dependabot/pip/ruff-0.9.8
  • dependabot/pip/ruff-0.9.9
  • dependabot/pip/sentry-sdk-2.19.0
  • dependabot/pip/sentry-sdk-2.19.1
  • dependabot/pip/sentry-sdk-2.19.2
  • dependabot/pip/sentry-sdk-2.20.0
  • dependabot/pip/sentry-sdk-2.22.0
  • infra-flow
  • main
  • ocw-mapping-fix
  • refactor-cli-options
  • support-for-dynamodb
  • workaround

01 Aug 2025 05:01PM UTC coverage: 96.447% (-0.4%) from 96.872%
16680805114

Pull #190

github

jonavellecuerdo
Rework ItemSubmission to better encapsulate data persistence layer

Why these changes are being introduced:
* Initial work to update the 'reconcile' and 'submit' commands to use the refactored
ItemSubmission class underscored the need for additional updates to improve the
ergonomics of the class and emphasize the encapsulation of data persistance
as part of the domain model. While most of the code was already in place,
these updates focus on some renaming and slight reorganization of methods related
to database operations. The renames were intended to reflect that pulling data
from the DynamoDB table is an inherent part of creating an ItemSubmission.

How this addresses that need:
* Move logic for loading data into ItemSubmission into a private method ('_from_db')
* Rename 'update_db' -> 'upsert_db' to clarify insertion of new records
* Rework existing methods to get, get_batch, and create methods
* Update Workflow.reconcile_items to use get and create methods
* Update Workflow.submit_items to use get_batch to iterate over ItemSubmission
instances for a given batch

Side effects of this change:
* None

Relevant ticket(s):
* https://mitlibraries.atlassian.net/browse/IN-1355
Pull Request #190: In 1355 refactor reconcile for itemsubmission

42 of 44 new or added lines in 4 files covered. (95.45%)

4 existing lines in 2 files now uncovered.

950 of 985 relevant lines covered (96.45%)

0.96 hits per line

Relevant lines Covered
Build:
Build:
985 RELEVANT LINES 950 COVERED LINES
0.96 HITS PER LINE
Source Files on IN-1355-refactor-reconcile-for-itemsubmission
  • Tree
  • List 21
  • Changed 7
  • Source Changed 5
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
16680805114 IN-1355-refactor-reconcile-for-itemsubmission Rework ItemSubmission to better encapsulate data persistence layer Why these changes are being introduced: * Initial work to update the 'reconcile' and 'submit' commands to use the refactored ItemSubmission class underscored the need for addition... Pull #190 01 Aug 2025 05:03PM UTC jonavellecuerdo github
96.45
16680587924 IN-1355-refactor-reconcile-for-itemsubmission cleanup Pull #190 01 Aug 2025 04:52PM UTC jonavellecuerdo github
96.73
16677289461 IN-1355-refactor-reconcile-for-itemsubmission Address comments in PR #190 * Clean up comment in Workflow.reconcile_items * Replace get_item_identifier method calls with indexing of item_metadata * Access item_submission.status when needed * Remove unneeded logging in Workflow.reconcile_items Pull #190 01 Aug 2025 02:13PM UTC jonavellecuerdo github
96.73
16656257183 IN-1355-refactor-reconcile-for-itemsubmission Rename test module to match name of corresponding module Pull #190 31 Jul 2025 05:53PM UTC jonavellecuerdo github
95.96
16656044984 IN-1355-refactor-reconcile-for-itemsubmission Rework ItemSubmission class to clearly demonstrate encapsulated data persistence layer Why these changes are being introduced: * Initial work to update the 'reconcile' and 'submit' commands to use the refactored ItemSubmission class underscored t... Pull #190 31 Jul 2025 05:42PM UTC jonavellecuerdo github
95.96
16655994929 IN-1355-refactor-reconcile-for-itemsubmission Rework ItemSubmission class to clearly demonstrate encapsulated data persistence layer Why these changes are being introduced: * Initial work to update the 'reconcile' and 'submit' commands to use the refactored ItemSubmission class underscored t... push 31 Jul 2025 05:40PM UTC jonavellecuerdo github
95.96
16606864346 IN-1355-refactor-reconcile-for-itemsubmission Rework 'get_item_identifier' as final method on base Workflow Why these changes are being introduced: * Since all 'item_metadata_iter' methods are set to return metadata with the item identifying column explicitly named 'item_identifier', workflo... push 29 Jul 2025 08:36PM UTC jonavellecuerdo github
97.09
16601190609 IN-1355-refactor-reconcile-for-itemsubmission Include additional processing steps to SimpleCSV 'item_metadata_iter' Why these changes are being introduced: * This is to ensure that the item-identifying column is explicitly called 'item_identifier' when SimpleCSV.item_metadata_iter yields row... push 29 Jul 2025 03:58PM UTC jonavellecuerdo github
97.02
See All Builds (510)

Badge your Repo: dspace-submission-composer

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc