[med-svn] [Git][med-team/tnseq-transit][master] 4 commits: New upstream version 3.3.20

Alexandre Detiste (@detiste-guest) gitlab at salsa.debian.org
Sun Sep 27 21:20:14 BST 2026



Alexandre Detiste pushed to branch master at Debian Med / tnseq-transit


Commits:
88411a3a by Alexandre Detiste at 2026-09-27T21:46:46+02:00
New upstream version 3.3.20
- - - - -
2d27a88d by Alexandre Detiste at 2026-09-27T21:51:21+02:00
Update upstream source from tag 'upstream/3.3.20'

Update to upstream version '3.3.20'
with Debian dir 3015e645a32bffbf68301e659dbeea5b14c91702
- - - - -
808c5c01 by Alexandre Detiste at 2026-09-27T21:54:06+02:00
drop two patches applied upstream

- - - - -
61692498 by Alexandre Detiste at 2026-09-27T22:19:50+02:00
release

- - - - -


17 changed files:

- CHANGELOG.md
- README.md
- debian/changelog
- − debian/patches/fix_problematic_comparison.patch
- debian/patches/remove_pkg_resources.patch
- − debian/patches/repair.patch
- debian/patches/series
- setup.py
- src/pytpp/__main__.py
- src/pytpp/tpp_tools.py
- src/pytransit/__init__.py
- src/pytransit/__main__.py
- src/pytransit/doc/source/file_formats.rst
- src/pytransit/doc/source/index.rst
- src/pytransit/doc/source/tpp.rst
- src/tpp.py
- src/transit.py


Changes:

=====================================
CHANGELOG.md
=====================================
@@ -2,6 +2,115 @@
 All notable changes to this project will be documented in this file.
 
 
+## Version 3.3.20 (2025-12-23)
+#### Transit1-TPP
+
+Minor changes:
+  - added new flag '-allow-improperly-mapped-read-pairs' to TPP, and report statistics in *.tn_stats output file
+
+
+
+#########################################################
+## Version 3.3.19 (2025-02-06)
+#### Transit1:
+
+Minor changes:
+  - switching back to transit1; remove migration message
+
+
+## Version 3.3.19.post1 (2025-02-06)
+#### tnseq-transit:
+
+Note: This is the Final Release for the 'tnseq-transit' package on PyPi.
+
+Minor changes:
+  - just changing the tag name from b2 to post1 so this will be treated as a post-release on PyPi
+#########################################################
+
+
+## Version 3.3.18 (2025-02-06)
+#### Transit1:
+
+Minor changes:
+  - switching back to transit1; remove migration message
+
+
+## Version 3.3.10b2 (2025-02-06)
+#### Transit:
+
+Note: This is the Final Release for the 'tnseq-transit' package on PyPi.
+
+Minor changes:
+  - add pytransit.export and pytransit.convert packages in setup.py
+
+
+## Version 3.3.17 (2025-02-06)
+#### Transit1:
+
+Minor changes:
+  - add pytransit.convert package
+
+
+## Version 3.3.16 (2025-02-06)
+#### Transit:
+
+Note: this is the next version in the 'transit1' package on PyPi
+
+Minor changes:
+  - add pytransit.export package
+
+
+## Version 3.3.15 (2025-02-06)
+#### Transit:
+
+Note: this is the next version in the 'transit1' package on PyPi
+
+Minor changes:
+  - move where Transit version is printed in source code
+
+
+## Version 3.3.10b1 (2025-02-06)
+#### Transit:
+
+Note: This is the Final Release for the 'tnseq-transit' package on PyPi.
+
+The 'tnseq-transit' package on PyPi is migrating to a new package name, 'transit1'.
+This name-change was required by PyPi.
+This is the final release for 'tnseq-transit'.
+For subsequent updates, users should do 'pip install transit1'.
+
+Minor changes:
+  - move printing of migration message in source code, so it shows for commands run in 'pip install'
+
+
+## Version 3.3.13 (2025-02-06)
+#### Transit:
+
+Note: this is the next version in the 'transit1' package on PyPi
+
+Minor changes:
+  - added pytransit.analysis to packages in setup.py (to fix installation problem)
+  - print Transit version on command line when user runs tpp.py or transit.py
+  - remove warning message (above) to prompt users to migrate by doing 'pip install transit1'
+
+
+## Version 3.3.10b0 (2025-02-06)
+#### Transit:
+
+Note: This is the Final Release for the 'tnseq-transit' package on PyPi.
+
+The 'tnseq-transit' package on PyPi is migrating to a new package name, 'transit1'.
+This name-change was required by PyPi.
+This is the final release for 'tnseq-transit'.
+For subsequent updates, users should do 'pip install transit1'.
+
+Minor changes:
+  - added pytransit.analysis to packages in setup.py (to fix installation problem)
+  - print Transit version on command line when user runs tpp.py or transit.py
+  - added warning message (above) to prompt users to migrate by doing 'pip install transit1'
+
+
+
 ## Version 3.3.12 (2024-12-13)
 #### Transit:
 
@@ -9,6 +118,7 @@ Minor changes:
   - Tiny adjustment of packages in setup.py
 
 
+
 ## Version 3.3.11 (2024-12-13)
 #### Transit:
 


=====================================
README.md
=====================================
@@ -1,6 +1,6 @@
 # TRANSIT
 
-[![Version](https://img.shields.io/github/tag/mad-lab/transit.svg)](https://github.com/mad-lab/transit)   [![Build Status](https://travis-ci.org/mad-lab/transit.svg?branch=master)](https://travis-ci.org/mad-lab/transit)   [![Documentation Status](https://readthedocs.org/projects/transit/badge/?version=latest)](http://transit.readthedocs.io/en/latest/?badge=latest)   [![Downloads](https://pepy.tech/badge/tnseq-transit)](https://pepy.tech/project/tnseq-transit)
+[![Version](https://img.shields.io/github/tag/mad-lab/transit.svg)](https://github.com/ioerger/transit)   [![Build Status](https://travis-ci.org/mad-lab/transit.svg?branch=master)](https://travis-ci.org/mad-lab/transit)   [![Documentation Status](https://readthedocs.org/projects/transit/badge/?version=latest)](http://transit.readthedocs.io/en/latest/?badge=latest)   [![Downloads](https://pepy.tech/badge/tnseq-transit)](https://pepy.tech/project/tnseq-transit)
 
 =======
 


=====================================
debian/changelog
=====================================
@@ -1,3 +1,15 @@
+tnseq-transit (3.3.20-1) unstable; urgency=medium
+
+  * Team Upload
+  * New upstream version 3.3.20
+  * Drop two patches applied upstream
+  * Extend existing patch: wheel is not needed at runtime
+  * Drop "Rules-Requires-Root: no": it is the default now
+  * Rewrite d/watch in v5 format
+  * Bump Standards-Version to 4.7.4, drop Priority: tag
+
+ -- Alexandre Detiste <tchet at debian.org>  Sun, 27 Sep 2026 22:19:12 +0200
+
 tnseq-transit (3.3.12-1) unstable; urgency=medium
 
   * Team Upload


=====================================
debian/patches/fix_problematic_comparison.patch deleted
=====================================
@@ -1,19 +0,0 @@
-Description: Do not use "is" for comparison
-Author: Nilesh Patra <nilesh at debian.org>
-Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=984958
-Last-Update: 2021-03-22
---- a/src/pytpp/tpp_tools.py
-+++ b/src/pytpp/tpp_tools.py
-@@ -652,10 +652,10 @@ def driver(vars):
-   vars.num_replicons = total_num_records
- 
-   if vars.num_replicons != len(vars.replicon_ids):
--    if vars.num_replicons is 1:
-+    if int(vars.num_replicons) == 1:
-       vars.replicon_ids = ['']
-     # Autogenerate ids if 'auto' flag present
--    elif len(vars.replicon_ids) is 1 and vars.replicon_ids[0].strip() == 'auto':
-+    elif len(vars.replicon_ids) == 1 and vars.replicon_ids[0].strip() == 'auto':
-       message("Autogenerating replicon_ids...")
-       vars.replicon_ids = [str(i) for i in range(1, vars.num_replicons + 1)]
-     else:


=====================================
debian/patches/remove_pkg_resources.patch
=====================================
@@ -1,6 +1,6 @@
 --- a/setup.py
 +++ b/setup.py
-@@ -196,7 +196,7 @@
+@@ -197,7 +197,7 @@
      # https://packaging.python.org/en/latest/requirements.html
      # 'pypubsub<4.0' and 'wxPython' are needed for GUI only, but go ahead and install them
      # the reason for restriction on pypubsub is that version>=4.0 does not work with python2 - I can probably get rid of this restriction, since everybody must be using python3 by now


=====================================
debian/patches/repair.patch deleted
=====================================
@@ -1,11 +0,0 @@
---- a/setup.py
-+++ b/setup.py
-@@ -181,7 +181,7 @@
-     # You can just specify the packages manually here if your project is
-     # simple. Or you can use find_packages().
-     #packages = find_packages('src', exclude=['contrib', 'tests']), # any subdir in src/ with __init__.py
--    packages = ['pytransit.generic_tools', 'pytpp', 'pytransit'],
-+    packages = ['pytransit.generic_tools', 'pytpp', 'pytransit', 'pytransit.analysis', 'pytransit.export', 'pytransit.convert'],
-     package_dir = {'pytransit': 'src/pytransit',  'pytpp': 'src/pytpp'},
-     include_package_data=True,
-     #py_modules = ['tpp'],


=====================================
debian/patches/series
=====================================
@@ -1,4 +1,2 @@
 skip_test_requiring_non_existing_input_data.patch
-fix_problematic_comparison.patch
 remove_pkg_resources.patch
-repair.patch


=====================================
setup.py
=====================================
@@ -140,6 +140,7 @@ package_data = {
 }
 
 setup(
+    #name='tnseq-transit',
     name='transit1',
 
     # Versions should comply with PEP440.  For a discussion on single-sourcing
@@ -181,7 +182,7 @@ setup(
     # You can just specify the packages manually here if your project is
     # simple. Or you can use find_packages().
     #packages = find_packages('src', exclude=['contrib', 'tests']), # any subdir in src/ with __init__.py
-    packages = ['pytransit.generic_tools', 'pytpp', 'pytransit'],
+    packages = ['pytransit.generic_tools', 'pytpp', 'pytransit', 'pytransit.analysis', 'pytransit.export', 'pytransit.convert'],
     package_dir = {'pytransit': 'src/pytransit',  'pytpp': 'src/pytpp'},
     include_package_data=True,
     #py_modules = ['tpp'],


=====================================
src/pytpp/__main__.py
=====================================
@@ -32,9 +32,21 @@ import gzip
 
 from pytpp.tpp_tools import *
 from pytpp.tpp_gui import *
+import pytransit.__main__
 
 
 def run_main():
+    print("=== Transit %s ===" % pytransit.__version__)
+    if False:
+      print("""
+******************************************************************************************
+*** Attention: 
+***   The 'tnseq-transit' package on PyPi is migrating to a new package name, 'transit1'.  
+***   This name-change was required by PyPi. 
+***   This is the final release for 'tnseq-transit'.  
+***   For subsequent updates, users should do 'pip install transit1'. 
+******************************************************************************************
+""")
     (args, kwargs) = cleanargs(sys.argv[1:])
     main(*args, **kwargs)
 
@@ -85,7 +97,7 @@ def main(*args, **kwargs):
         # Check for strange flags
         known_flags = set(["tn5", "help", "himar1", "protocol", "primer", "reads1",
                            "reads2", "bwa", "ref", "maxreads", "output", "mismatches", "flags",
-                           "barseq_catalog_in", "barseq_catalog_out",
+                           "barseq_catalog_in", "barseq_catalog_out", "allow-improperly-mapped-read-pairs",
                            "window-size", "bwa-alg", "replicon-ids","primer-start-window"])
         unknown_flags = set(kwargs.keys()) - known_flags
         if unknown_flags:


=====================================
src/pytpp/tpp_tools.py
=====================================
@@ -500,8 +500,17 @@ def template_counts(ref,sam,bcfile,vars):
       if code[6]=="1" and code[2]=="0": vars.r1 += 1
       if code[6]=="1" and code[3]=="0": vars.r2 += 1
       if bc=="XXXXXXXXXX": continue
-      if code[6]=="1" and code[1]=="1": # both reads map properly (83 or 99) and has legit barcode
+      # bit 6 means this is read 1; bit 1 means properly mapped pair
+      #if code[6]=="1" and code[1]=="1": # both reads map properly (83 or 99) and has legit barcode
+      #if (code[6]=="1" and code[1]=="1") or (vars.allow_improper and intcode in [0,16,81,83,97,99]):
+      intcode = int(w[1])
+      if intcode in [0,16,81,83,97,99]: # allow improperly-mapped reads
+        if intcode in [83,99]: vars.proper_read_pairs += 1 # code[6]==1 and code[1]==1; does not include 0 or 16 for single-read
+        if intcode in [81,97]:
+          vars.improper_read_pairs += 1
+          if vars.allow_improper==False: continue
         vars.mapped += 1
+
         readlen = len(w[9])
         pos,size = int(w[3]),int(w[8]) # note: size could be negative
         strand,delta = 'F',-2
@@ -652,10 +661,10 @@ def driver(vars):
   vars.num_replicons = total_num_records
 
   if vars.num_replicons != len(vars.replicon_ids):
-    if vars.num_replicons is 1:
+    if vars.num_replicons == 1:
       vars.replicon_ids = ['']
     # Autogenerate ids if 'auto' flag present
-    elif len(vars.replicon_ids) is 1 and vars.replicon_ids[0].strip() == 'auto':
+    elif len(vars.replicon_ids) == 1 and vars.replicon_ids[0].strip() == 'auto':
       message("Autogenerating replicon_ids...")
       vars.replicon_ids = [str(i) for i in range(1, vars.num_replicons + 1)]
     else:
@@ -1126,6 +1135,7 @@ def generate_output(vars):
   output.write(' '.join(sys.argv)+"\n")
   output.write('# transposon type: %s\n' % vars.transposon)
   output.write('# protocol type: %s\n' % vars.protocol)
+  output.write('# bwa alg: %s\n' % vars.bwa_alg)
   output.write('# bwa flags: %s\n' % vars.flags)
   output.write('# read1: %s\n' % vars.fq1)
   output.write('# read2: %s\n' % vars.fq2)
@@ -1136,6 +1146,8 @@ def generate_output(vars):
   output.write("# trimmed_reads (reads with valid Tn prefix, and insert size>20bp): %s\n" % vars.tot_tgtta)
   output.write("# reads1_mapped: %s\n" % vars.r1)
   output.write("# reads2_mapped: %s\n" % vars.r2)
+  output.write("# properly_mapped_read_pairs: %s\n" % vars.proper_read_pairs)
+  output.write("# improperly_mapped_read_pairs: %s\n" % vars.improper_read_pairs)
   output.write("# mapped_reads (both R1 and R2 map into genome, and R2 has a proper barcode): %s \n" % vars.mapped)
 
   if vars.num_replicons>1:
@@ -1338,6 +1350,9 @@ def initialize_globals(vars, args=[], kwargs={}):
     vars.primer_start_window = 0,20
     vars.window = None
     vars.bwa_alg = "aln" # changing from mem back to aln because of /dev/shm error on Windows machines [TRI,9/14/24]
+    vars.allow_improper = False # allow improperly-mapped read-pairs
+    vars.improper_read_pairs = 0
+    vars.proper_read_pairs = 0
     
     # Update defaults
     protocol = kwargs.get("protocol", "").lower()
@@ -1373,10 +1388,14 @@ def initialize_globals(vars, args=[], kwargs={}):
         vars.base = kwargs["output"]
     if "mismatches" in kwargs:
         vars.mm1 = int(kwargs["mismatches"])
+    if "allow-improperly-mapped-read-pairs" in kwargs:
+        vars.allow_improper = True
+
     if "barseq_catalog_in" in kwargs:
         vars.barseq_catalog_in = kwargs["barseq_catalog_in"]
     if "barseq_catalog_out" in kwargs:
         vars.barseq_catalog_out = kwargs["barseq_catalog_out"]
+
     if "flags" in kwargs:
         vars.flags = kwargs["flags"]
 
@@ -1461,9 +1480,10 @@ def show_help():
   print('    -maxreads <INT>')
   print('    -mismatches <INT>  # when searching for constant regions in reads 1 and 2; default is 1')
   print('    -flags "<STRING>"  # args to pass to BWA')
-  print('    -bwa-alg [aln|mem]  # Algorithm to use for mapping reads with bwa; default is \'aln\'' )
+  print('    -bwa-alg [aln|mem] # Algorithm to use for mapping reads with bwa; default is \'aln\'' )
   print('    -primer-start-window INT,INT # position in read to search for start of primer; default is: [0,20]')
   print('    -window-size INT   # automatic method to set window')
+  print('    -allow-improperly-mapped-read-pairs  # in rare cases, this can help increase mapped reads (e.g. if fragment size distribution is very short); see statistics in *.tn_stats output')
   #print('    -barseq_catalog_in|-barseq_catalog_out <file>')
   print('    -replicon-ids <comma_separated_list_of_names> # if multiple replicons/genomes/contigs/sequences were provided in -ref, give them names.')
   print('                                                  # Enter \'auto\' for autogenerated ids.')


=====================================
src/pytransit/__init__.py
=====================================
@@ -2,6 +2,6 @@
 __all__ = ["transit_tools", "tnseq_tools", "norm_tools", "stat_tools"]
 
 
-__version__ = "v3.3.12"
+__version__ = "v3.3.20"
 prefix = "[TRANSIT]"
 


=====================================
src/pytransit/__main__.py
=====================================
@@ -39,6 +39,17 @@ transit_prefix = "[TRANSIT]"
 
 
 def run_main():
+    print("=== Transit1 %s ===" % pytransit.__version__)
+    if False:
+      print("""
+******************************************************************************************
+*** Attention: 
+***   The 'tnseq-transit' package on PyPi is migrating to a new package name, 'transit1'.  
+***   This name-change was required by PyPi. 
+***   This is the final release for 'tnseq-transit'.  
+***   For subsequent updates, users should do 'pip install transit1'. 
+******************************************************************************************
+""")
     (args, kwargs) = transit_tools.cleanargs(sys.argv[1:])
     main(*args, **kwargs)
 


=====================================
src/pytransit/doc/source/file_formats.rst
=====================================
@@ -68,7 +68,11 @@ containing the gene information in 9 specific columns:
 8. gene name (like "dnaA")
 9. ORF id (like Rv0001)
 
-Here is an example (transit/src/pytransit/genomes/H37Rv.prot_table):
+Examples of prot_tables for commonly used genomes can be found at:
+`https://orca1.tamu.edu/essentiality/transit/genomes/
+<https://orca1.tamu.edu/essentiality/transit/genomes/>`_.
+
+Here is an example (H37Rv.prot_table):
 
 ::
 
@@ -90,7 +94,7 @@ Here is an example (transit/src/pytransit/genomes/H37Rv.prot_table):
   (.fasta or .fna) that was used to generate the .wig files with TPP,
   because it is used to determine which TA sites are contained in which
   genes (by coordinates). For example, H37Rv.fna is paired with
-  H37Rv.prot_table, both derived from GenBank sequence NC_000962.3.
+  H37Rv.prot_table, both derived from GenBank sequence NC_000962.2.
 
 
 In many cases, users might often obtain annotations for their genome


=====================================
src/pytransit/doc/source/index.rst
=====================================
@@ -5,7 +5,7 @@ Welcome to TRANSIT's documentation!
 ===================================
 
 .. image:: https://img.shields.io/github/tag/mad-lab/transit.svg
-    :target: https://github.com/mad-lab/transit
+    :target: https://github.com/ioerger/transit
     :alt: GitHub last tag
 
 Transit is python-based software for analyzing TnSeq data


=====================================
src/pytransit/doc/source/tpp.rst
=====================================
@@ -213,7 +213,6 @@ The main fields to fill out in the GUI are...
 
 - **BWA flags** - if you want to pass through options to BWA
 
-- **BarSeq Catalog** - this is not finished yet, but we are working on it.  Stay tuned...
 
 Once you have filled all these fields out, you can press START (or
 QUIT). At this point the GUI window will disappear, and the data
@@ -256,7 +255,6 @@ filenames and parameters as command-line arguments.
     -flags "<STRING>"  # args to pass to BWA
     -primer-start-window INT,INT # position in read to search for start of primer; default is [0,20]
     -window-size INT   # automatic method to set window
-    -barseq_catalog_in|-barseq_catalog_out <file>
     -replicon-ids <comma_separated_list_of_names> # if multiple replicons/genomes/contigs/sequences were provided in -ref, give them names.
                                                   # Enter 'auto' for autogenerated ids.
 


=====================================
src/tpp.py
=====================================
@@ -21,7 +21,6 @@
 import sys
 import pytpp.__main__
 
-
 if __name__ == "__main__":
-    pytpp.__main__.run_main()
+  pytpp.__main__.run_main()
 


=====================================
src/transit.py
=====================================
@@ -19,13 +19,10 @@
 #    You should have received a copy of the GNU General Public License
 #    along with TRANSIT.  If not, see <http://www.gnu.org/licenses/>.
 
-
-
 import pytransit.__main__
 
-
 if __name__ == "__main__":
-    pytransit.__main__.run_main()
+  pytransit.__main__.run_main()
 
 
 



View it on GitLab: https://salsa.debian.org/med-team/tnseq-transit/-/compare/37fd6e4e25f2ce588dcd3665a790d1b4de2f909a...616924989ee36c94c68f6ed34cbfb0f5bb0464f0

-- 
View it on GitLab: https://salsa.debian.org/med-team/tnseq-transit/-/compare/37fd6e4e25f2ce588dcd3665a790d1b4de2f909a...616924989ee36c94c68f6ed34cbfb0f5bb0464f0
You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20260927/6262910c/attachment-0001.htm>


More information about the debian-med-commit mailing list