Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

shift_location: allow shifting ignoring length of the sequence #281

Closed
manulera opened this issue Oct 3, 2024 · 1 comment
Closed

shift_location: allow shifting ignoring length of the sequence #281

manulera opened this issue Oct 3, 2024 · 1 comment

Comments

@manulera
Copy link
Collaborator

manulera commented Oct 3, 2024

As of now shitf_location in pydna.utils took three arguments (original_location, shift, lim).

lim is the length of the sequence and it's used to "wrap" the location. This is intended for circular sequences. However, in certain cases, you may want to just move the feature. A use-case for this is [this example] https://github.com/BjornFJohansson/pydna/blob/e87d85a4be47d43a504a4bf75dd61cb536a8e0e3/src/pydna/amplify.py#L354-L356 where you want to shift by the same amount a list of features when you are doing a sequence transformation.

The new behaviour will be that if you pass None as lim, it will shift the sequence and will never wrap it. The way it's implemented is that if lim is None then the function turns lim into essentially infinity (you cannot use the math.inf because it's not an integer, so instead I use sys.maxsize which is the maximum integer possible).

Will implement a test for this as well.

@BjornFJohansson
Copy link
Collaborator

This seems a good addition imho.

manulera added a commit that referenced this issue Oct 8, 2024
@manulera manulera closed this as completed Oct 8, 2024
manulera added a commit that referenced this issue Oct 24, 2024
* added new translation function

* new orfs method for Seq based on three_frame_orfs function

* new orfs_to_features method for Dseqrecord

* new extract_from_text functions that also returns the intervening text between sequences

* bugfix orfs for Seq and Dsecrecord

* added crispr tests

* added pairwise for older Python versions

* older type hint

* Deploying to gh-pages from @ da3e7e9 🚀

* Deploying to gh-pages from @ 5be4f9d 🚀

* Deploying to gh-pages from @ b37a17c 🚀

* Deploying to gh-pages from @ 11aae3c 🚀

* Deploying to gh-pages from @ 0f95223 🚀

* try to build docs locally on gh-pages

* try to build gh pages

* try to build gh pages

* fix

* added sphinx ext

* Deploying to gh-pages from @ bc08a36 🚀

* try fix docs

* build docs

* clean

* redirect docs badge to action

* redirect docs badge to action

* fix readme links

* fix readme

* fix

* try to fix test error

* fix bug that recognized parts of re enzyme names as other enzymes

* added comment with number of enzymes

* changed number of expected enzymes to the correct number 621

* more informative error msg

* closes #216 (2)

* closes #196

* vscode and poetry settings added

* fix test

* add locations_overlap to utils

* Issue 238 (#239)

* closes #238

* fix notebook

* closes #240

* atomically write default config

* optimisation for #237

* fix python 3.8 typing

* include neb calculator and its tests

* fix design and add tests

* example commit for #176

* Documentation notebooks 2 (#272)

* Documentation notebooks (#271)

* added documentation for dseq.py

* fixed docs for Dseq.py

* fixed docs for Dseq.py

* add hook

* fix exclusions and run hook

* strip outputs of Dseq.ipynb

* update Dseq notebook

* placed notebooks in docs

* added looped and shifted methods in Dseq docs

* added docs for importing files using pydna

* added some Dseqrecord docs

* added docs+examples for Dseq_Features

* added origin spanning feats and removing feats for Dseq_Features

* some comments and todos

* added restriction page

* updated Importing_Seq page

* updated Dseq_Feature Page w/examples

* added restrict+ligate notebook

* added some PCR notes

* added examples, prints

* added tm and design

* fixed tm_default docs

* added gibson assembly

* some comments on current progress

* gibson

* fixed comments, added gibson example and CRISPR

* added Restriction example

* added Gibson example

* closes #256

* run pre-commit

* alternative example for gibson

* gibson updated example

* modified crispr

* modified crispr

* feedback changes for #260

* best practices for qualifiers

---------

Co-authored-by: Pei-Lun Xie <peilunx.jeff@gmail.com>
Co-authored-by: Pei-Lun Xie <31442380+JeffXiePL@users.noreply.github.com>

* remove unnecessary file

* remove dir exclusions

* exclude test notebooks

---------

Co-authored-by: Pei-Lun Xie <peilunx.jeff@gmail.com>
Co-authored-by: Pei-Lun Xie <31442380+JeffXiePL@users.noreply.github.com>

* update contribution guidelines (#274)

* update CI action to enforce hooks (#277)

* update CI action to enforce hooks

* update action

* update: Added google badge to all notebooks issue #266  (#275)

* fourth trt

* final file added

* update: added installation of pydna

* added seguid stamp to Genbank sequence files

* fix test sequence file

* dependabot monthly

* New CRISPR example notebook (#260) (#284)

* fourth trt

* final file added

* update: added installation of pydna

* update: added CRIPSR examples in notebooks issue #259

* update: added google badge issue #266

* Polished Example CRISPR notebook

---------

Co-authored-by: Manuel Lera-Ramirez <manulera14@gmail.com>

* Updated notebooks (#295)

* updated example_restriction (#285)

Co-authored-by: Pei-Lun Xie <peilunx.jeff@gmail.com>

* small fixes (#294)

* allow run all on notebooks that have pip install for google colab

---------

Co-authored-by: Pei-Lun Xie <peilunx.jeff@gmail.com>

* progress towards #261

* WIP

* remove code image from README for #261

* more README updates + make requirements.txt

* add requirements file

* fix configuration

* typing for PrettyTable

* typing for codon dicts

* typing for Seq

* typing for FakeSeq

* typing for Genbank

* typing for sequence_picker module

* typing for common_sub_strings module

* typing for Assembly.__init__ and Assembly.__repr__

* Bump pillow from 10.3.0 to 10.4.0

Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.3.0 to 10.4.0.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@10.3.0...10.4.0)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump autopep8 from 2.1.0 to 2.3.1

Bumps [autopep8](https://github.com/hhatto/autopep8) from 2.1.0 to 2.3.1.
- [Release notes](https://github.com/hhatto/autopep8/releases)
- [Commits](hhatto/autopep8@v2.1.0...v2.3.1)

---
updated-dependencies:
- dependency-name: autopep8
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump black from 24.4.2 to 24.8.0

Bumps [black](https://github.com/psf/black) from 24.4.2 to 24.8.0.
- [Release notes](https://github.com/psf/black/releases)
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)
- [Commits](psf/black@24.4.2...24.8.0)

---
updated-dependencies:
- dependency-name: black
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump sphinx-rtd-theme from 2.0.0 to 3.0.0

Bumps [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) from 2.0.0 to 3.0.0.
- [Changelog](https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst)
- [Commits](readthedocs/sphinx_rtd_theme@2.0.0...3.0.0)

---
updated-dependencies:
- dependency-name: sphinx-rtd-theme
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump prettytable from 3.10.0 to 3.11.0

Bumps [prettytable](https://github.com/jazzband/prettytable) from 3.10.0 to 3.11.0.
- [Release notes](https://github.com/jazzband/prettytable/releases)
- [Changelog](https://github.com/jazzband/prettytable/blob/main/CHANGELOG.md)
- [Commits](prettytable/prettytable@3.10.0...3.11.0)

---
updated-dependencies:
- dependency-name: prettytable
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* closes #261 (#297)

* tests for #281 #279, add type to pcr (#298)

* update codecov action for #242

* Issue 270 (#301)

* closes #270

* closes #269 by adding an example notebook + extra tests

* closes #288, includes the graphics in docs notebook

* added example.ipynb to tests folder

* removed example.ipynb

* deal with Tm = 0

* fix notebook export related to #279

* New docs (#304)

* new docs

* update action

* update action

* fix typo in action

* update README + closes #305

* improve docs

* document how docs work

* fix autogen_docs.sh

* fix crispr docstring

* Fix link in README (#310)

* Fix action (#311)

* fix action

* fix action

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: BjornFJohansson <bjornjobb@gmail.com>
Co-authored-by: BjornFJohansson <bjorn_johansson@bio.uminho.pt>
Co-authored-by: Pei-Lun Xie <peilunx.jeff@gmail.com>
Co-authored-by: Jerry Xu <jxu@hexagonbio.com>
Co-authored-by: Pei-Lun Xie <31442380+JeffXiePL@users.noreply.github.com>
Co-authored-by: Lucas Levassor <70581528+hiyama341@users.noreply.github.com>
Co-authored-by: Kawin <krayon.py@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Daniel García Ruano <daniel.garcia-ruano@u-bordeaux.fr>
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants