Nuad

Latest version: v0.4.6

Safety actively analyzes 683322 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

0.3.5

Commits
- 0376bc6: attempt to fix broken setup.py (David Doty) [226](https://github.com/UC-Davis-molecular-computing/nuad/pull/226)

Also had these commits from a release I lost:

dave-doty
[Update search.py](https://github.com/UC-Davis-molecular-computing/nuad/pull/225/commits/9defd52d6aa0a402a360e7f43b232e963defacfd)
[9defd52](https://github.com/UC-Davis-molecular-computing/nuad/pull/225/commits/9defd52d6aa0a402a360e7f43b232e963defacfd)
dave-doty
[fixed some bugs related to partially updated scadnano names not on de…](https://github.com/UC-Davis-molecular-computing/nuad/pull/225/commits/b760db26427dcbed12eab4eb935a245f269a3940)
b760db2
…v/main branch yet
dave-doty
[added method for assigning strand groups from nuad design to scadnano…](https://github.com/UC-Davis-molecular-computing/nuad/pull/225/commits/11ac5e259b0e888f6191631d9f679d0eefe1beef)
11ac5e2
… design as "group" key of label
dave-doty
[updated poorly named function `nupack_strand_pair_constraint_by_numbe…](https://github.com/UC-Davis-molecular-computing/nuad/pull/225/commits/6016d8446ea7b297e6f76a8a093592d962ed894e)
6016d84
…r_matching_domains` to `nupack_strand_pair_constraints_by_number_matching_domains`
dave-doty
[fixed docstring refs to SynthesisFields (still named IDTFields)](https://github.com/UC-Davis-molecular-computing/nuad/pull/225/commits/998ec70867b22cd8a0c1cbffbb56bdbdaea456d7)

0.3.2

Commits
- a8cde7d: Update requirements.txt (David Doty) [221](https://github.com/UC-Davis-molecular-computing/nuad/pull/221)
- 9752a83: bumped version to try to fix readthedocs error on commit to main (David Doty) [221](https://github.com/UC-Davis-molecular-computing/nuad/pull/221)

0.3.1

Commits
- a253254: bumped version (David Doty) [218](https://github.com/UC-Davis-molecular-computing/nuad/pull/218)
- fb0ea4f: testing whether forward annotations work on Python 3.7 (David Doty) [218](https://github.com/UC-Davis-molecular-computing/nuad/pull/218)
- 52f6666: closes 216: use `|` instead of `Union` for union type annotations (David Doty) [218](https://github.com/UC-Davis-molecular-computing/nuad/pull/218)
- dc5f9b2: fixed from future import annotations error in modifications.py (David Doty) [218](https://github.com/UC-Davis-molecular-computing/nuad/pull/218)
- df9933c: change `search_for_dna_sequences` to `search_for_sequences` (David Doty) [220](https://github.com/UC-Davis-molecular-computing/nuad/pull/220)
- 60d3cd6: fixed bug in specifying unitless quantities in (David Doty) [220](https://github.com/UC-Davis-molecular-computing/nuad/pull/220)
- 36f2d75: fixed up `display_report` (David Doty) [220](https://github.com/UC-Davis-molecular-computing/nuad/pull/220)

0.3.0

Breaking changes
A few function names have changed, in particular `nupack_complex_free_energy_*` functions are now `nupack_free_energy_*` to avoid confusion with the `ComplexConstraint` class and functions creating those.

Commits
- 8d67ae8: removed warnings about `report_only_violations` being ignored, now that 134 is implemented (David Doty) [215](https://github.com/UC-Davis-molecular-computing/nuad/pull/215)
- b0245f2: Update search.py (David Doty) [215](https://github.com/UC-Davis-molecular-computing/nuad/pull/215)
- 7cfb3a2: added parameter `overwrite` to `assign_sequences_to_scadnano_design` to force overwrite of existing sequences (David Doty) [215](https://github.com/UC-Davis-molecular-computing/nuad/pull/215)
- 9376e02: changed type of `_process_pool` and ensure it is non-`None` if accessed (David Doty) [215](https://github.com/UC-Davis-molecular-computing/nuad/pull/215)
- 2106de1: closes 213: display constraints report graphically in jupyter notebook (David Doty) [214](https://github.com/UC-Davis-molecular-computing/nuad/pull/214)
- 0f40483: fixed sphinx errors (David Doty) [214](https://github.com/UC-Davis-molecular-computing/nuad/pull/214)
- 4530191: closes 133: implement parallelism for SingularConstraints (David Doty) [215](https://github.com/UC-Davis-molecular-computing/nuad/pull/215)
- 1de5b5d: fixed scrolling output (David Doty) [215](https://github.com/UC-Davis-molecular-computing/nuad/pull/215)
- ae114a1: Update search.py (David Doty) [217](https://github.com/UC-Davis-molecular-computing/nuad/pull/217)
- 472ff71: added time trials Jupyter notebook that got lost in the failed merge (David Doty) [217](https://github.com/UC-Davis-molecular-computing/nuad/pull/217)
- 3e4d787: beefed up display options for `display_report` (David Doty) [217](https://github.com/UC-Davis-molecular-computing/nuad/pull/217)
- b633f17: re-implemented 133 after changes disappeared mysteriously in most recent PR (David Doty) [217](https://github.com/UC-Davis-molecular-computing/nuad/pull/217)
- 9c69d26: Update vienna_nupack.py (David Doty) [217](https://github.com/UC-Davis-molecular-computing/nuad/pull/217)
- ab39a3d: bumped version to 0.3.0 because of breaking changes in function names (David Doty) [217](https://github.com/UC-Davis-molecular-computing/nuad/pull/217)
- bc1395a: Merge branch 'main' into dev (David Doty) [217](https://github.com/UC-Davis-molecular-computing/nuad/pull/217)

0.2.0

Breaking Change: removed `domain_names` parameter from `Strand` constructor

In fixing issue 175, we have removed the argument `domain_names` from the `Strand` constructor. Now, the correct way to create a `Strand` from a list of domain names is to call the new method [`Design.add_strand`](https://nuad.readthedocs.io/en/latest/#constraints.Design.add_strand).

In particular, you will need to create a `Design` prior to creating any strands.

The [`Design.add_strand`](https://nuad.readthedocs.io/en/latest/#constraints.Design.add_strand) method returns the `Strand` that was created, so `design.add_strand` should be a drop-in replacement for the `Strand` constructor that was previously used in this way.

So replace code like this:

python
XXX: no longer works
strands = [Strand(domain_names=[f'a{i}', f'b{i}']) for i in range(5)]
design = Design(strands)


with this

python
new way to create a Strand from domain names
design = Design()
strands = [design.add_strand(domain_names=[f'a{i}', f'b{i}']) for i in range(5)]


The reason this was done was to address issue 175. When the `add_strand` method sees a new domain name, it creates a new `Domain` object and saves it in the `Design`, and when it sees a domain name that has been used before with the same `Design`, then it uses the saved `Domain`.

Previously, this saved `Domain` object was stored in a global variable, which caused incorrect results in scripts where two designs were used at the same time with the same domain names.

Caution: call `Design.computed_derived_fields()`

Previously, it was advisable to create the `Design` last, after creating all domains and strands. The constructor calls a method `Design.computed_derived_fields()` that computes some fields based on other fields in `Design`.

This method is called at the start of `nuad.search.search_for_dna_sequences`, so if all you do with a design is give it to this function, your code should still work. However, if you are doing any other processing in between creating the `Design` object and calling that function, then it is safest to call `Design.computed_derived_fields()` to ensure that these fields have the proper values.

For example, the field `Design.domains` is computed based on the strands in the design, so for it to be correct this method may need to be called, in case Strands were added "manually" by appending to the field `Design.strands`, although that field should be correct if `Design.add_strand` is called to add strands.


Commits
- 31b3220: updated requirements to include tabulate and installation instructions in README (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- a50a454: Update search.py (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- 13e6337: fixes 190: `DomainPool`'s should have distinct names (David Doty) [204](https://github.com/UC-Davis-molecular-computing/nuad/pull/204)
- ec40907: closes 175: Domains and pools should be stored per-design (David Doty) [206](https://github.com/UC-Davis-molecular-computing/nuad/pull/206)
- bfb9c17: updated installation instructions to include pip (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- 422e391: Update README.md (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- 1ba345b: Update README.md (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- beeb30c: Update README.md (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- d7e1619: Update README.md (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- 6e74f96: Update README.md (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- 4b16c91: Update constraints.py (David Doty) [206](https://github.com/UC-Davis-molecular-computing/nuad/pull/206)
- f6dda1a: switched to print statements instead of logging for iteration updates; still need to add SearchParameters options to control this more (David Doty) [206](https://github.com/UC-Davis-molecular-computing/nuad/pull/206)
- 3b47359: closes 134: implement `SearchParameters.report_only_violations` (David Doty) [205](https://github.com/UC-Davis-molecular-computing/nuad/pull/205)
- d9cd965: Update search.py (David Doty) [205](https://github.com/UC-Davis-molecular-computing/nuad/pull/205)
- 43a5cc8: removed Python 3.8+ f-string formatting (David Doty) [205](https://github.com/UC-Davis-molecular-computing/nuad/pull/205)
- e56a861: Merge branch 'dev' into 175-domains-and-pools-are-global-rather-than-per-design-recreating-same-design-causes-error (David Doty) [206](https://github.com/UC-Davis-molecular-computing/nuad/pull/206)
- 6c5f215: added option `SearchParameters.scrolling_output` to control whether screen output scrolls on the terminal or updates in place (David Doty) [206](https://github.com/UC-Davis-molecular-computing/nuad/pull/206)
- 3c1ab46: bumped version since removing `domain_names` parameter from `Strand` constructor will be a breaking change (David Doty) [206](https://github.com/UC-Davis-molecular-computing/nuad/pull/206)
- faaaec3: updated docstring for scrolling_output (David Doty) [206](https://github.com/UC-Davis-molecular-computing/nuad/pull/206)
- e490fdd: fixed unit tests to use `Design.add_strand` instead of Strand constructor with `domain_names` parameter (David Doty) [206](https://github.com/UC-Davis-molecular-computing/nuad/pull/206)
- caabd55: fixed API calls in examples in examples folder (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)
- 9387ad3: fixed unit test calling Complex constructor (David Doty) [207](https://github.com/UC-Davis-molecular-computing/nuad/pull/207)

0.1.8

Commits
- 2695bc5: removed docstring comments in m13 function that were copied from scadnano and are out of place in nuad (David Doty) [203](https://github.com/UC-Davis-molecular-computing/nuad/pull/203)
- f6ba02f: Update constraints.py (David Doty) [203](https://github.com/UC-Davis-molecular-computing/nuad/pull/203)
- 6aef2d1: changed type of SubstringSampler.start_indices from list to tuple (David Doty) [203](https://github.com/UC-Davis-molecular-computing/nuad/pull/203)
- fbd9e54: closes 201: fix protocol for choosing dependent domains to change, and independent domains to be weighted to affect change probability (David Doty) [202](https://github.com/UC-Davis-molecular-computing/nuad/pull/202)
- 3bb9119: fixed bug in computation of domains intersecting strand for when strand does not cover whole domain tree (David Doty) [202](https://github.com/UC-Davis-molecular-computing/nuad/pull/202)
- 1bb3116: Update __version__.py (David Doty) [202](https://github.com/UC-Davis-molecular-computing/nuad/pull/202)

Page 2 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.