[GenABEL-dev] make check 2 PASS 4 FAIL

Latchezar (Lucho) Dimitrov ldimitro at wakehealth.edu
Tue Mar 4 01:14:43 CET 2014


Dear Lennart,

I had some time to spend and looked at possible solutions. Unfortunately the more I look the more I realize:

1. why there is no -I in solaris diff ;-)) It's ugly kludge by itself

2. I am afraid the idea of having run_diff creates more problems than it solves. Sorry.

If I am to implement it now I'd just:

1. have only the parts that should be identical in verified_results/
2. use appropriate diff directly in test_*.sh files - it's just replacing a proc. call with the actual one-liner

like replacing, for example:

run_diff linear_base_add.out.txt \
    linear_ngp2_add.out.txt \
    "QT check: dose vs. prob (additive model)" -I SNP

if tail -n +2 linear_ngp2_add.out.txt |diff linear_base_add.out.txt_1st_line_removed - ; then
   echo -e "${name}${blanks:${#name}} OK"
else
   echo -e "${name}${blanks:${#name}} FAILED"
#  exit 1   # replace this as appropriate
fi

This way it will be way more flexible and more importantly system independent - no autoconf and all that stuff.

There are many variations of the approach but the idea should be clear. More important question to me to resolve/answer, though, is "Do really otherwise the same columns have to have different names in different files?". I'd rather put the differences in the file names and keep the columns the same.


But ... this may be just me ;-)) 


Best regards,
Lucho

> -----Original Message-----
> From: Latchezar (Lucho) Dimitrov
> Sent: Monday, March 03, 2014 5:39 PM
> To: 'L.C. Karssen'; 'genabel-devel at r-forge.wu-wien.ac.at'
> Subject: RE: [GenABEL-dev] make check 2 PASS 4 FAIL
> 
> Dear Lennart,
> 
> As I said (or thought I had) it was ugly (quick & dirty) but worked as
> a proof. I used, e.g.,  'tail -n +2 $file1 >f1' to make a copy of each
> of the two files with first line removed and then 'diff'. The ugliest
> part is it is the same for all diff's, i.e., it does not take -I into
> account at all just blindly compares the two files w/o the first line.
> But it worked for me as a proof my build is correct.
> 
> Sorry I do not have a nice solution. If I come across something I'll
> let you know.
> 
> Thanks,
> Lucho
> 
> > -----Original Message-----
> > From: L.C. Karssen [mailto:lennart at karssen.org]
> > Sent: Monday, March 03, 2014 4:16 PM
> > To: Latchezar (Lucho) Dimitrov; 'genabel-devel at r-forge.wu-wien.ac.at'
> > Subject: Re: [GenABEL-dev] make check 2 PASS 4 FAIL
> >
> > Dear Lucho,
> >
> >
> > On 03-03-14 21:38, Latchezar (Lucho) Dimitrov wrote:
> > > Dear Lennart,
> > >
> > > Yeah, I know. Solaris is not for the faint of heart ;-) however it
> is
> > > rewarding! Anyway, I have built some of the gnu utils on solaris
> but
> > > diff is not amongst them. GCC is though. I looked more carefully at
> > > the diff's (pun intended) between gnu(linux) diff and the one I
> have
> > > and figured it is -I option missing in mine. I changed run_diff my
> > way
> > > to skip first line in all comparisons and it worked. Now that I
> > > confirmed it is 'make check' issue and not the build itself one I
> am
> > happy.
> >
> > Glad to hear it all worked out! From your remark below it seems that
> > you modified run_diff a bit in order to ignor ethe first line. If so,
> > would you consider sending a patch? Ths would bring Solaris support
> > (and portability in general) one step closer.
> >
> > >
> > > BTW, I couldn't find a quick nice replacement for your -I option to
> > > share so it might be a good idea at least to mention the case and
> the
> > > requirement for diff to support -I for 'make check' to work
> properly.
> >
> > I'll see if I can find a way to let autoconf figure out if a certain
> > option is accepted by a command. It seems that the
> > AC_PATH_PROGS_FEATURE_CHECK macro can do this. That may be helpful
> for
> > other cases as well.
> >
> > > I'd also suggest changing
> > >
> > > if diff "$file1" "$file2" $args; then
> > >
> > > to the canonical
> > >
> > > if diff $args "$file1" "$file2" ; then
> > >
> > > which actually quickly showed me where the problems was and might
> be
> > > helpful to ones who do not read the readme files :-))
> > >
> >
> > Done, thanks for the suggestion. It's in SVN r1603.
> >
> >
> > Thanks,
> >
> > Lennart.
> >
> > >
> > > Thank you very much,
> > > Lucho
> > >
> > > PS. I may decide to make a module gnu in my solaris systems ;-)))
> > >
> > >
> > >> -----Original Message-----
> > >> From: L.C. Karssen [mailto:lennart at karssen.org]
> > >> Sent: Monday, March 03, 2014 4:13 AM
> > >> To: Latchezar (Lucho) Dimitrov; 'genabel-devel at r-forge.wu-
> > wien.ac.at'
> > >> Subject: Re: [GenABEL-dev] make check 2 PASS 4 FAIL
> > >>
> > >> Dear Lucho,
> > >>
> > >> Thanks for your interest in ProbABEL. I think you are one of the
> > >> (very?) few users using ProbABEL on Solaris, so we are very
> > >> interested in your feedback.
> > >>
> > >> Could you send us the config.log file created when running
> > ./configure?
> > >> That may give us some more hints on how your system is configured.
> > >>
> > >> My first hunch is that the diff utility in Solaris has some
> > different
> > >> options from the GNU version. When comparing the outputs from
> dosage
> > >> inputs with probability input files the checks use the -I option
> to
> > >> ignore the header line. Does your version of diff have that
> option?
> > >>
> > >> My knowledge of Solaris is a bit rusty, but I seem to remember
> that
> > >> some of the GNU tools are available (or at least in principle
> > >> installable) on Solaris. I think they are then prefixed with a g.
> Do
> > >> you have gdiff on your system (maybe in /usr/bin/ or
> /usr/sfw/bin/)?
> > >>
> > >>
> > >> Best regards,
> > >>
> > >> Lennart Karssen.
> > >>
> > >> On 02-03-14 01:10, Latchezar (Lucho) Dimitrov wrote:
> > >>> Dear genABEL developers,
> > >>>
> > >>> I have successfully built probABEL v.0.4.2 using gcc-4.1.1 on
> > ORACLE
> > >>> Solaris 10 x86 but when I ran
> > >>>
> > >>>   make check
> > >>>
> > >>> I got the subj. results. I went and manually ran one of the
> failing
> > >> check:
> > >>>
> > >>> run_diff coxph_dose_add.out.txt coxph_prob_add.out.txt \
> > >>>      "pacoxph check: dose vs. prob" -I SNP
> > >>> diff: two filename arguments required pacoxph check: dose vs.
> prob
> > >> FAILED
> > >>>
> > >>> Then I manually compared the two fails:
> > >>>
> > >>> diff coxph_dose_add.out.txt coxph_prob_add.out.txt
> > >>> 1c1
> > >>> < name A1 A2 Freq1 MAF Quality Rsq n Mean_predictor_allele chrom
> > >>> position beta_SNP_add sebeta_SNP_add chi2_SNP
> > >>> ---
> > >>>> name A1 A2 Freq1 MAF Quality Rsq n Mean_predictor_allele chrom
> > >>>> position beta_SNP_addA1 sebeta_SNP_addA1 chi2_SNP_A1
> > >>>
> > >>> Finally, I compared the two files w/o their first lines and they
> > are
> > >> the same.
> > >>>
> > >>>
> > >>> Any help highly appreciated. Please find the log file attached
> > >>>
> > >>>
> > >>> Thank you very much,
> > >>> Latchezar (Lucho) "Speaking w/ computers" Dimitrov
> > >>>
> > >>> Analyst/Programmer IV,
> > >>> Center for Genomics and Personalized Medicine Research
> > >>> Wake Forest University School of Medicine      fax:  (336)713-
> 7566
> > >>> Medical Center Blvd.                           work: (336)713-
> 7137
> > >>> Winston-Salem, NC 27157
> > >>>
> > >>> -- A computer lets you make more mistakes faster than any
> invention
> > >> in human history --
> > >>>    with the possible exceptions of handguns and tequila.
> > >>>                                            --Mitch Ratliffe,
> > >> "Technology Review"
> > >>>
> > >>>
> > >>>
> > >>>
> > >>> _______________________________________________
> > >>> genabel-devel mailing list
> > >>> genabel-devel at lists.r-forge.r-project.org
> > >>> https://lists.r-forge.r-project.org/cgi-
> > bin/mailman/listinfo/genabel-
> > >> d
> > >>> evel
> > >>>
> > >>
> > >> --
> > >> *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
> > >> L.C. Karssen
> > >> Utrecht
> > >> The Netherlands
> > >>
> > >> lennart at karssen.org
> > >> http://blog.karssen.org
> > >> GPG key ID: A88F554A
> > >> -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-
> > >
> > >
> >
> > --
> > *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
> > L.C. Karssen
> > Utrecht
> > The Netherlands
> >
> > lennart at karssen.org
> > http://blog.karssen.org
> > GPG key ID: A88F554A
> > -*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-




More information about the genabel-devel mailing list