opencloning 0.2.7.1__tar.gz → 0.2.7.3__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.
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/PKG-INFO +1 -1
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/pyproject.toml +1 -1
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/ncbi_requests.py +4 -2
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/primer_design.py +22 -3
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/LICENSE +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/README.md +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/__init__.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/api_config_utils.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/app_settings.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/assembly2.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/EBIC/__init__.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/EBIC/barcode.gb +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/EBIC/common_plasmid.gb +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/EBIC/example.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/EBIC/primer_design_settings.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/__init__.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/index.html +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/__init__.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/index.html +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_all.sh +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_clone.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_gather.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_get_primers.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_summary.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/ziqiang_et_al2024/__init__.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/ziqiang_et_al2024/index.html +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/ziqiang_et_al2024/ziqiang_et_al2024.json +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/dna_functions.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/dna_utils.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/ebic/__init__.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/ebic/primer_design.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/ebic/primer_design_settings.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/endpoints/annotation.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/endpoints/assembly.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/endpoints/external_import.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/endpoints/no_assembly.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/endpoints/no_input.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/endpoints/other.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/endpoints/primer_design.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/gateway.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/get_router.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/main.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/pydantic_models.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/request_examples.py +0 -0
- {opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/utils.py +0 -0
|
@@ -3,7 +3,7 @@ authors = ["Manuel Lera-Ramirez <manulera14@gmail.com>"]
|
|
|
3
3
|
description = "Backend of OpenCloning, a web application to generate molecular cloning strategies in json format, and share them with others."
|
|
4
4
|
license = "MIT"
|
|
5
5
|
name = "opencloning"
|
|
6
|
-
version = "v0.2.7.
|
|
6
|
+
version = "v0.2.7.3"
|
|
7
7
|
package-mode = true
|
|
8
8
|
readme = "README.md"
|
|
9
9
|
repository = "https://github.com/manulera/OpenCloning_backend"
|
|
@@ -32,9 +32,11 @@ async def get_sequence_accessions_from_assembly_accession(assembly_accession: st
|
|
|
32
32
|
resp = await async_get(url, headers=headers)
|
|
33
33
|
data = resp.json()
|
|
34
34
|
if 'reports' in data:
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
refseq_accessions = [report['refseq_accession'] for report in data['reports'] if 'refseq_accession' in report]
|
|
36
|
+
genbank_accessions = [
|
|
37
|
+
report['genbank_accession'] for report in data['reports'] if 'genbank_accession' in report
|
|
37
38
|
]
|
|
39
|
+
return refseq_accessions + genbank_accessions
|
|
38
40
|
elif 'total_count' in data:
|
|
39
41
|
raise HTTPException(400, f'No sequence accessions linked, see {url}')
|
|
40
42
|
else:
|
|
@@ -32,11 +32,16 @@ def homologous_recombination_primers(
|
|
|
32
32
|
target_tm: float,
|
|
33
33
|
spacers: list[str] | None = None,
|
|
34
34
|
tm_func: Callable[[str], float] = primer3_calc_tm,
|
|
35
|
+
estimate_function: Callable[[str], float] | None = None,
|
|
35
36
|
) -> tuple[str, str]:
|
|
36
37
|
|
|
37
38
|
fragment2amplify = pcr_loc.extract(pcr_seq)
|
|
38
39
|
amplicon = primer_design(
|
|
39
|
-
fragment2amplify,
|
|
40
|
+
fragment2amplify,
|
|
41
|
+
limit=minimal_hybridization_length,
|
|
42
|
+
target_tm=target_tm,
|
|
43
|
+
tm_func=tm_func,
|
|
44
|
+
estimate_function=estimate_function,
|
|
40
45
|
)
|
|
41
46
|
|
|
42
47
|
if insert_forward:
|
|
@@ -87,10 +92,17 @@ def gibson_assembly_primers(
|
|
|
87
92
|
circular: bool,
|
|
88
93
|
spacers: list[str] | None = None,
|
|
89
94
|
tm_func: Callable[[str], float] = primer3_calc_tm,
|
|
95
|
+
estimate_function: Callable[[str], float] | None = None,
|
|
90
96
|
) -> list[PrimerModel]:
|
|
91
97
|
|
|
92
98
|
initial_amplicons = [
|
|
93
|
-
primer_design(
|
|
99
|
+
primer_design(
|
|
100
|
+
template,
|
|
101
|
+
limit=minimal_hybridization_length,
|
|
102
|
+
target_tm=target_tm,
|
|
103
|
+
tm_func=tm_func,
|
|
104
|
+
estimate_function=estimate_function,
|
|
105
|
+
)
|
|
94
106
|
for template in templates
|
|
95
107
|
]
|
|
96
108
|
|
|
@@ -146,6 +158,7 @@ def simple_pair_primers(
|
|
|
146
158
|
left_enzyme_inverted: bool = False,
|
|
147
159
|
right_enzyme_inverted: bool = False,
|
|
148
160
|
tm_func: Callable[[str], float] = primer3_calc_tm,
|
|
161
|
+
estimate_function: Callable[[str], float] | None = None,
|
|
149
162
|
) -> tuple[PrimerModel, PrimerModel]:
|
|
150
163
|
"""
|
|
151
164
|
Design primers to amplify a DNA fragment, if left_enzyme or right_enzyme are set, the primers will be designed
|
|
@@ -158,7 +171,13 @@ def simple_pair_primers(
|
|
|
158
171
|
if len(spacers) != 2:
|
|
159
172
|
raise ValueError("The 'spacers' list must contain exactly two elements.")
|
|
160
173
|
|
|
161
|
-
amplicon = primer_design(
|
|
174
|
+
amplicon = primer_design(
|
|
175
|
+
template,
|
|
176
|
+
limit=minimal_hybridization_length,
|
|
177
|
+
target_tm=target_tm,
|
|
178
|
+
tm_func=tm_func,
|
|
179
|
+
estimate_function=estimate_function,
|
|
180
|
+
)
|
|
162
181
|
fwd_primer, rvs_primer = amplicon.primers()
|
|
163
182
|
|
|
164
183
|
if fwd_primer is None or rvs_primer is None:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/EBIC/common_plasmid.gb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_all.sh
RENAMED
|
File without changes
|
{opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_clone.py
RENAMED
|
File without changes
|
{opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_gather.py
RENAMED
|
File without changes
|
{opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_get_primers.py
RENAMED
|
File without changes
|
{opencloning-0.2.7.1 → opencloning-0.2.7.3}/src/opencloning/batch_cloning/pombe/pombe_summary.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|