[med-svn] [Git][med-team/python-pairix][master] 7 commits: New upstream version 0.3.8
Étienne Mollier (@emollier)
gitlab at salsa.debian.org
Thu Aug 22 22:04:55 BST 2024
Étienne Mollier pushed to branch master at Debian Med / python-pairix
Commits:
f26204b6 by Étienne Mollier at 2024-08-22T21:42:35+02:00
New upstream version 0.3.8
- - - - -
86f619fd by Étienne Mollier at 2024-08-22T21:44:50+02:00
Update upstream source from tag 'upstream/0.3.8'
Update to upstream version '0.3.8'
with Debian dir 0b99aa28d9bb790aa491791a629ddce869990334
- - - - -
0860872f by Étienne Mollier at 2024-08-22T22:53:24+02:00
gcc-14.patch: new: fix various incompatible pointer types.
Closes: #1075419
- - - - -
4da053d7 by Étienne Mollier at 2024-08-22T22:59:03+02:00
d/control: declare compliance to standards version 4.7.0.
- - - - -
bc3a93e6 by Étienne Mollier at 2024-08-22T23:01:51+02:00
d/python3-pairix.lintian-overrides: refresh override.
- - - - -
d5034b0c by Étienne Mollier at 2024-08-22T23:02:30+02:00
d/control: add myself to uploaders.
- - - - -
c74f4f08 by Étienne Mollier at 2024-08-22T23:03:29+02:00
Ready for upload to unstable.
- - - - -
14 changed files:
- README.md
- VERSION.txt
- debian/changelog
- debian/control
- + debian/patches/gcc-14.patch
- debian/patches/series
- debian/python3-pairix.lintian-overrides
- + pairix_index_spec.pdf
- + pairix_index_spec.xlsx
- samples/test.regions2
- src/main.c
- src/pairix.h
- src/pairs_merger.c
- src/streamer_1d.c
Changes:
=====================================
README.md
=====================================
@@ -327,13 +327,14 @@ chr2:1-20000|*
cat samples/test.regions2
chrX:100000000-110000000|chrY
-chr19:1-100000|chr19
+chr19:1-300000|chr19
bin/pairix -L samples/test_4dn.pairs.gz samples/test.regions samples/test.regions2
SRR1658581.49364897 chr1 36379 chr20 62713042 + +
SRR1658581.31672330 chr1 12627 chr9 23963238 + -
SRR1658581.22713561 chr1 14377 chrX 107423076 - +
SRR1658581.31992022 chrX 108223782 chrY 5017118 - -
+SRR1658581.55524746 chr19 105058 chr19 105558 + -
```
=====================================
VERSION.txt
=====================================
@@ -1 +1 @@
-0.3.7
+0.3.8
=====================================
debian/changelog
=====================================
@@ -1,3 +1,14 @@
+python-pairix (0.3.8-1) unstable; urgency=medium
+
+ * New upstream version 0.3.8
+ * gcc-14.patch: new: fix various incompatible pointer types.
+ (Closes: #1075419)
+ * d/control: declare compliance to standards version 4.7.0.
+ * d/python3-pairix.lintian-overrides: refresh override.
+ * d/control: add myself to uploaders.
+
+ -- Étienne Mollier <emollier at debian.org> Thu, 22 Aug 2024 23:02:54 +0200
+
python-pairix (0.3.7-7) unstable; urgency=medium
* Team upload.
=====================================
debian/control
=====================================
@@ -1,6 +1,7 @@
Source: python-pairix
Maintainer: Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
-Uploaders: Andreas Tille <tille at debian.org>
+Uploaders: Andreas Tille <tille at debian.org>,
+ Étienne Mollier <emollier at debian.org>
Section: science
Testsuite: autopkgtest-pkg-pybuild
Priority: optional
@@ -10,7 +11,7 @@ Build-Depends: debhelper-compat (= 13),
python3-setuptools,
zlib1g-dev,
python3-pytest <!nocheck>
-Standards-Version: 4.6.2
+Standards-Version: 4.7.0
Vcs-Browser: https://salsa.debian.org/med-team/python-pairix
Vcs-Git: https://salsa.debian.org/med-team/python-pairix.git
Homepage: https://github.com/4dn-dcic/pairix
=====================================
debian/patches/gcc-14.patch
=====================================
@@ -0,0 +1,95 @@
+Description: fix various incompatible pointer types.
+ This patch fixes a bunch of type error like the following by casting
+ the expected types, working around gcc warnings that have gone fatal in
+ gcc 14:
+ .
+ src/index.c:1263:59: error: passing argument 2 of ‘ti_querys_2d_multi’ from incompatible pointer type
+ +[-Wincompatible-pointer-types]
+ 1263 | sequential_iter_t *siter = ti_querys_2d_multi(t, regions, n_sub_list);
+ | ^~~~~~~
+ | |
+ | char **
+ src/pairix.h:131:73: note: expected ‘const char **’ but argument is of type ‘char **’
+
+Author: Étienne Mollier <emollier at debian.org>
+Bug-Debian: https://bugs.debian.org/1075419
+Forwarded: no
+Last-Update: 2024-08-22
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- python-pairix.orig/src/index.c
++++ python-pairix/src/index.c
+@@ -1216,7 +1216,7 @@
+ if( (chrend = strchr(chr2, ':')) != NULL) {
+ *chrend=0; chronly=0;
+ }
+- char **chrpairlist = ti_seqname(t->idx, &n_seqpair_list);
++ char **chrpairlist = (char**)ti_seqname(t->idx, &n_seqpair_list);
+ chr1list = get_seq1_list_for_given_seq2(chr2, chrpairlist, n_seqpair_list, &n_sub_list);
+ if(chronly==0) *chrend=':'; // revert to original region string including beg and end
+ // create an array of regions in string.
+@@ -1233,7 +1233,7 @@
+ free(chr1list);
+
+ // multi-region query
+- sequential_iter_t *siter = ti_querys_2d_multi(t, regions, n_sub_list);
++ sequential_iter_t *siter = ti_querys_2d_multi(t, (const char**)regions, n_sub_list);
+ for(i=0;i<n_sub_list;i++) free(regions[i]);
+ free(regions);
+ return(siter);
+@@ -1243,7 +1243,7 @@
+ if( (chrend = strchr(chr1, ':')) != NULL) {
+ *chrend=0; chronly=0;
+ }
+- char **chrpairlist = ti_seqname(t->idx, &n_seqpair_list);
++ char **chrpairlist = (char**)ti_seqname(t->idx, &n_seqpair_list);
+ chr2list = get_seq2_list_for_given_seq1(chr1, chrpairlist, n_seqpair_list, &n_sub_list);
+ if(chronly==0) *chrend=':'; // revert to original region string including beg and end
+
+@@ -1260,7 +1260,7 @@
+ for(i=0;i<n_sub_list;i++) free(chr2list[i]);
+ free(chr2list);
+
+- sequential_iter_t *siter = ti_querys_2d_multi(t, regions, n_sub_list);
++ sequential_iter_t *siter = ti_querys_2d_multi(t, (const char**)regions, n_sub_list);
+ for(i=0;i<n_sub_list;i++) free(regions[i]);
+ free(regions);
+ return(siter);
+@@ -1414,7 +1414,7 @@
+ str_ptr++;
+ strcpy(str_ptr,name2);
+
+- if (name == 0) return ti_iter_first();
++ if (name == 0) return (int)ti_iter_first();
+ // then need to load the index
+ if (ti_lazy_index_load(t) != 0) return 0;
+ if(ti_get_tid(t->idx, namepair) <0) return -1;
+@@ -1640,7 +1640,7 @@
+ if(n<=0) { fprintf(stderr, "Null pairix_t array\n"); return(0); }
+ for(i=0;i<n;i++){
+ if(tbs[i] && tbs[i]->idx){
+- seqnames = ti_seqname(tbs[i]->idx,&len);
++ seqnames = (char**)ti_seqname(tbs[i]->idx,&len);
+ if(seqnames){
+ conc_seq_list = realloc(conc_seq_list, sizeof(char*)*(n_seq_list+len));
+ for(k=0,j=n_seq_list;j<n_seq_list+len;j++,k++)
+@@ -1968,7 +1968,7 @@
+ if(ti_get_sc2(idx) == -1) return(-2); // not a 2d file (not applicable)
+
+ int len;
+- char **seqnames = ti_seqname(idx,&len);
++ const char **seqnames = ti_seqname(idx,&len);
+ if(seqnames){
+ int i;
+ for(i=0;i<len;i++){
+--- python-pairix.orig/src/pairixmodule.c
++++ python-pairix/src/pairixmodule.c
+@@ -600,7 +600,7 @@
+ pairix_get_blocknames(PairixObject *self)
+ {
+ int n,i;
+- char **blocknames = ti_seqname(self->tb->idx, &n);
++ char **blocknames = (char**)ti_seqname(self->tb->idx, &n);
+ PyObject *bnames = PyList_New(n);
+ if(!bnames) return NULL;
+ for(i=0;i<n;i++){
=====================================
debian/patches/series
=====================================
@@ -1 +1,2 @@
python3.10
+gcc-14.patch
=====================================
debian/python3-pairix.lintian-overrides
=====================================
@@ -1 +1 @@
-python3-pairix: missing-dependency-on-libc needed by
+missing-dependency-on-libc needed by usr/lib/python3/dist-packages/pypairix.cpython-*.so
=====================================
pairix_index_spec.pdf
=====================================
Binary files /dev/null and b/pairix_index_spec.pdf differ
=====================================
pairix_index_spec.xlsx
=====================================
Binary files /dev/null and b/pairix_index_spec.xlsx differ
=====================================
samples/test.regions2
=====================================
@@ -1,2 +1,2 @@
chrX:100000000-110000000|chrY
-chr19:1-100000|chr19
+chr19:1-300000|chr19
=====================================
src/main.c
=====================================
@@ -165,7 +165,7 @@ int main(int argc, char *argv[])
if(conf.bc2 && !conf.ec2) conf.ec2=conf.bc2;
if (optind == argc || help_flag) {
fprintf(stderr, "\n");
- fprintf(stderr, "Program: pairix (PAIRs file InderXer)\n");
+ fprintf(stderr, "Program: pairix (PAIRs file IndeXer)\n");
fprintf(stderr, "Version: %s\n\n", PACKAGE_VERSION);
fprintf(stderr, "Usage: pairix <in.pairs.gz> [region1 [region2 [...]]]\n\n");
fprintf(stderr, "Options: -p STR preset: pairs, merged_nodups, old_merged_nodups, gff, bed, sam, vcf, psltbl [gff]\n");
=====================================
src/pairix.h
=====================================
@@ -28,7 +28,7 @@
#ifndef __TABIDX_H
#define __TABIDX_H
-#define PACKAGE_VERSION "0.3.7"
+#define PACKAGE_VERSION "0.3.8"
#include <stdint.h>
#include "kstring.h"
=====================================
src/pairs_merger.c
=====================================
@@ -10,47 +10,6 @@
#define FILENAMEMAX 2000
-int main(int argc, char *argv[])
-{
- int num_fn = argc -1;
- int i;
- //BGZF *bzfp;
- //int f_dst;
-
- if(argc==1){
- fprintf(stderr, "\n");
- fprintf(stderr, "Program: pairs_merger\n");
- fprintf(stderr, "Version: %s\n\n", PACKAGE_VERSION);
- //fprintf(stderr, "Usage: pairs_merger <in1.pairs.gz> <in2.pairs.gz> <in3.pairs.gz> ... > out.pairs.gz\n\n");
- fprintf(stderr, "Usage: pairs_merger <in1.pairs.gz> <in2.pairs.gz> <in3.pairs.gz> ... | bgzip -c > out.pairs.gz\n\n");
- return(1);
- }
-
- char *fn_list[num_fn];
- for(i=0;i<num_fn;i++) {
- fn_list[i]=malloc(FILENAMEMAX*sizeof(char));
- strcpy(fn_list[i],argv[i+1]);
- }
-
- // write to stdout bgzip
- //f_dst = fileno(stdout);
- //bzfp = bgzf_dopen(f_dst, "w");
-
- // actually write merged pairs to bzfp stdout
- //int res = pairs_merger(fn_list, num_fn, bzfp);
- int res = pairs_merger(fn_list, num_fn, NULL);
-
- // close bgzf stream
- //if (bgzf_close(bzfp) < 0) fail(bzfp);
- //if (bgzf_close(bzfp) < 0){ fprintf(stderr,"Error: %d\n",bzfp->errcode); return(1); }
-
-
- for(i=0;i<num_fn;i++) {
- free(fn_list[i]);
- }
- return(res);
-}
-
int pairs_merger(char **fn, int n, BGZF *bzfp) // pass bgfp if the result should be bgzipped. or pass NULL.
{
pairix_t *tbs[n];
@@ -91,6 +50,47 @@ int pairs_merger(char **fn, int n, BGZF *bzfp) // pass bgfp if the result shoul
for(i=0;i<n;i++) ti_close(tbs[i]);
for(i=0;i<n_uniq_seq;i++) free(uniq_seq_list[i]);
free(uniq_seq_list);
- return(NULL);
- } else { fprintf(stderr,"Null unique seq list\n"); return(NULL); }
+ return(0);
+ } else { fprintf(stderr,"Null unique seq list\n"); return(0); }
+}
+
+int main(int argc, char *argv[])
+{
+ int num_fn = argc -1;
+ int i;
+ //BGZF *bzfp;
+ //int f_dst;
+
+ if(argc==1){
+ fprintf(stderr, "\n");
+ fprintf(stderr, "Program: pairs_merger\n");
+ fprintf(stderr, "Version: %s\n\n", PACKAGE_VERSION);
+ //fprintf(stderr, "Usage: pairs_merger <in1.pairs.gz> <in2.pairs.gz> <in3.pairs.gz> ... > out.pairs.gz\n\n");
+ fprintf(stderr, "Usage: pairs_merger <in1.pairs.gz> <in2.pairs.gz> <in3.pairs.gz> ... | bgzip -c > out.pairs.gz\n\n");
+ return(1);
+ }
+
+ char *fn_list[num_fn];
+ for(i=0;i<num_fn;i++) {
+ fn_list[i]=malloc(FILENAMEMAX*sizeof(char));
+ strcpy(fn_list[i],argv[i+1]);
+ }
+
+ // write to stdout bgzip
+ //f_dst = fileno(stdout);
+ //bzfp = bgzf_dopen(f_dst, "w");
+
+ // actually write merged pairs to bzfp stdout
+ //int res = pairs_merger(fn_list, num_fn, bzfp);
+ int res = pairs_merger(fn_list, num_fn, NULL);
+
+ // close bgzf stream
+ //if (bgzf_close(bzfp) < 0) fail(bzfp);
+ //if (bgzf_close(bzfp) < 0){ fprintf(stderr,"Error: %d\n",bzfp->errcode); return(1); }
+
+
+ for(i=0;i<num_fn;i++) {
+ free(fn_list[i]);
+ }
+ return(res);
}
=====================================
src/streamer_1d.c
=====================================
@@ -10,41 +10,6 @@
#define FILENAMEMAX 2000
-int main(int argc, char *argv[])
-{
- //BGZF *bzfp;
- //int f_dst;
-
- if(argc==1){
- fprintf(stderr, "\n");
- fprintf(stderr, "Program: streamer_1d\n");
- fprintf(stderr, "Version: %s\n\n", PACKAGE_VERSION);
- fprintf(stderr, "Resorter (convert a file sorted by chr1-chr2-pos1-pos2 to a stream sorted by chr1-pos1)\n\n");
- fprintf(stderr, "Usage: streamer_1d in.2d.pairs.gz > out.1d.pairs\n");
- fprintf(stderr, "Usage: streamer_1d in.2d.pairs.gz | bgzip -c > out.1d.pairs.gz\n\n");
- return(1);
- }
-
- char *fn;
- fn=malloc(FILENAMEMAX*sizeof(char));
- strcpy(fn,argv[1]);
-
- // write to stdout bgzip (This is slower, so don't use it)
- //f_dst = fileno(stdout);
- //bzfp = bgzf_dopen(f_dst, "w");
-
- // actually write merged pairs to bzfp stdout
- //int res = stream_1d(fn, bzfp);
- int res = stream_1d(fn);
-
- // close bgzf stream
- //if (bgzf_close(bzfp) < 0) fail(bzfp);
- //if (bgzf_close(bzfp) < 0){ fprintf(stderr,"Error: %d\n",bzfp->errcode); return(1); }
-
- free(fn);
- return(res);
-}
-
// Uc->Up converter - convert a single 2D-sorted file into a 1D-sorted stream.
int stream_1d(char *fn)
@@ -91,3 +56,39 @@ int stream_1d(char *fn)
return (0);
}
+
+int main(int argc, char *argv[])
+{
+ //BGZF *bzfp;
+ //int f_dst;
+
+ if(argc==1){
+ fprintf(stderr, "\n");
+ fprintf(stderr, "Program: streamer_1d\n");
+ fprintf(stderr, "Version: %s\n\n", PACKAGE_VERSION);
+ fprintf(stderr, "Resorter (convert a file sorted by chr1-chr2-pos1-pos2 to a stream sorted by chr1-pos1)\n\n");
+ fprintf(stderr, "Usage: streamer_1d in.2d.pairs.gz > out.1d.pairs\n");
+ fprintf(stderr, "Usage: streamer_1d in.2d.pairs.gz | bgzip -c > out.1d.pairs.gz\n\n");
+ return(1);
+ }
+
+ char *fn;
+ fn=malloc(FILENAMEMAX*sizeof(char));
+ strcpy(fn,argv[1]);
+
+ // write to stdout bgzip (This is slower, so don't use it)
+ //f_dst = fileno(stdout);
+ //bzfp = bgzf_dopen(f_dst, "w");
+
+ // actually write merged pairs to bzfp stdout
+ //int res = stream_1d(fn, bzfp);
+ int res = stream_1d(fn);
+
+ // close bgzf stream
+ //if (bgzf_close(bzfp) < 0) fail(bzfp);
+ //if (bgzf_close(bzfp) < 0){ fprintf(stderr,"Error: %d\n",bzfp->errcode); return(1); }
+
+ free(fn);
+ return(res);
+}
+
View it on GitLab: https://salsa.debian.org/med-team/python-pairix/-/compare/963d7138f516dbb709a4cca2c820459a887cc78a...c74f4f0828a43128a54b020095d81deb49a91749
--
View it on GitLab: https://salsa.debian.org/med-team/python-pairix/-/compare/963d7138f516dbb709a4cca2c820459a887cc78a...c74f4f0828a43128a54b020095d81deb49a91749
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20240822/3646b10e/attachment-0001.htm>
More information about the debian-med-commit
mailing list