Skip to content

Conversation

@manulera
Copy link
Collaborator

@manulera manulera commented Nov 25, 2025

The auto-summary from copilot is pretty good.

@BjornFJohansson

This builds on top of the cloning history branch you started working on. Several tests still fails and are related to the future you added, so you can fix them after merging this.

@manulera manulera changed the base branch from master to cloning-history-bjorn November 25, 2025 18:14
@manulera manulera requested a review from Copilot November 25, 2025 18:14
Copilot finished reviewing on behalf of manulera November 25, 2025 18:16
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the pydna opencloning data models to support additional DNA source types and refactors the serialization approach for better maintainability. The changes expand the library's ability to track provenance for oligonucleotide hybridization and various DNA sequence repositories, while also fixing an edge case bug in CRISPR integration.

Key changes:

  • Adds oligonucleotide hybridization functionality with corresponding source tracking
  • Introduces multiple new repository source classes (Addgene, Benchling, SnapGene, EUROSCARF, etc.)
  • Refactors source serialization from _kwargs methods to Pydantic field_serializer decorators
  • Fixes an off-by-one error in CRISPR integration repair end calculation

Reviewed changes

Copilot reviewed 7 out of 8 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/pydna/opencloning_models.py Adds new source classes (DatabaseSource, repository sources, OligoHybridizationSource, etc.) and refactors serialization using field_serializer
src/pydna/oligonucleotide_hybridization.py New module implementing oligonucleotide hybridization with overhang calculation
src/pydna/assembly2.py Fixes CRISPR integration repair end calculation with +1 offset
tests/test_module_opencloning_models.py Adds tests for oligonucleotide hybridization and updates history string expectations
tests/test_module_assembly2.py Adds edge case test for CRISPR integration
pyproject.toml Changes opencloning-linkml dependency from exact version to caret constraint
poetry.lock Lock file updates reflecting dependency changes
docs/notebooks/history.ipynb Updates expected source type names in history display

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@manulera
Copy link
Collaborator Author

In this commit I have commented out the location from the repository. I will have to re-organize the data model to see where this fits best, but we can re-add it once that is done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants