Skip to content

[Bioc-devel] non-conformable arrays

6 messages · Mikhail Dozmorov, Vincent Carey

#
Dear Bioconductor team,

I am trying to update a package we developed, HiCcompare.
https://bioconductor.org/packages/HiCcompare/. The package has been
successfully submitted previously. However, now `R CMD check` throws an
error:
E> Quitting from lines 426-427 (HiCcompare-vignette.Rmd)
E> Error: processing vignette 'HiCcompare-vignette.Rmd' failed with
diagnostics:
E> non-conformable arrays
E> --- failed re-building ?HiCcompare-vignette.Rmd?

Yet, If I knit the vignette manually, it builds. If I execute the code
manually, it works. If I install the package from Bioconductor, it also
works.

I'm working with this package using bioconductor/bioconductor_docker:devel.
But the strange behavior - vignette knits manually but fails in CMD check -
persists both in Docker container and on local R installation.

Please advise, where to troubleshoot next.
Thanks,
Mikhail

---
Mikhail Dozmorov, Ph.D., Blick scholar
Associate Professor, Department of Biostatistics
Affiliate, Department of Pathology
Virginia Commonwealth University
OCS #738, 830 E. Main St, RVA, 23298
E-mail:  mikhail.dozmorov at vcuhealth.org
Phone: 804-827-2055
https://medschool.vcu.edu/expertise/detail.html?id=mdozmorov
#
Hi Mikhail -- would you provide the results of sessionInfo() after the
failure?  Thanks

On Fri, Aug 7, 2020 at 7:08 PM Mikhail Dozmorov <mikhail.dozmorov at gmail.com>
wrote:

  
    
#
Hi Mikhail -- I cannot reproduce your problem.  I think I need more details
as to how
your error is triggered.  Using rcmdcheck::rcmdcheck within R as shown in
this transcript,
on the built tar.gz from the current git checkout master branch, I have

?? R CMD check results ?????????????????????????????????? HiCcompare 1.11.0
????
Duration: 3m 11.5s

? checking installed package size ... NOTE
    installed size is  6.2Mb
    sub-directories of 1Mb or more:
      data   5.6Mb

? checking R code for possible problems ... NOTE
  .adjust_pval : <anonymous>: no visible binding for global variable
    ?p.adj?
  .adjust_pval : <anonymous>: no visible binding for global variable
    ?p.value?
  .adjust_pval: no visible binding for global variable ?p.value?
  .adjust_pval: no visible binding for global variable ?p.adj?
  .calc.diff.thresh: no visible global function definition for ?sd?
  .calc.pval: no visible binding for global variable ?D?
  .calc.pval: no visible binding for global variable ?p.value?
  .calc.pval: no visible binding for global variable ?p.adj?
  .calc.pval: no visible binding for global variable ?adj.M?
  .calc.pval: no visible binding for global variable ?fold.change?
  .calc.pval: no visible binding for global variable ?adj.IF2?
  .calc.pval: no visible binding for global variable ?adj.IF1?
  .calc_z2: no visible global function definition for ?sd?
  .calc_z2: no visible binding for global variable ?Z?
  .calc_z2: no visible global function definition for ?pnorm?
  .calc_z2: no visible binding for global variable ?p.value?
  .loess.matrix: no visible binding for global variable ?adj.IF1?
  .loess.matrix: no visible binding for global variable ?IF1?
  .loess.matrix: no visible binding for global variable ?adj.IF2?
  .loess.matrix: no visible binding for global variable ?IF2?
  .loess.matrix: no visible binding for global variable ?adj.M?
  .loess.matrix: no visible binding for global variable ?A?
  .sim.mat: no visible global function definition for ?head?
  .split_cent: no visible binding for global variable
    ?centromere_locations?
  .split_cent: no visible binding for global variable ?start1?
  .split_cent: no visible binding for global variable ?start2?
  .split_cent: no visible binding for global variable ?chr1?
  .split_cent: no visible binding for global variable ?chr2?
  MA_norm: no visible binding for global variable ?D?
  MA_norm: no visible binding for global variable ?M?
  MA_norm: no visible binding for global variable ?adj.IF1?
  MA_norm: no visible binding for global variable ?IF1?
  MA_norm: no visible binding for global variable ?adj.IF2?
  MA_norm: no visible binding for global variable ?IF2?
  MA_norm: no visible binding for global variable ?adj.M?
  cooler2sparse: no visible binding for global variable ?chr1?
  cooler2sparse: no visible binding for global variable ?chr2?
  cooler2sparse: no visible binding for global variable ?IF?
  create.hic.table: no visible binding for global variable ?D?
  create.hic.table: no visible binding for global variable ?region2?
  create.hic.table: no visible binding for global variable ?region1?
  create.hic.table: no visible binding for global variable ?IF2?
  create.hic.table: no visible binding for global variable ?M?
  create.hic.table: no visible binding for global variable ?IF1?
  create.hic.table: no visible binding for global variable ?i?
  create.hic.table: no visible binding for global variable ?j?
  filter_params: no visible binding for global variable ?M?
  filter_params: no visible binding for global variable ?IF1?
  filter_params: no visible binding for global variable ?IF2?
  filter_params: no visible global function definition for ?axis?
  full2sparse: no visible binding for global variable ?IF?
  hic_compare : <anonymous>: no visible binding for global variable
    ?p.adj?
  hic_simulate: no visible binding for global variable ?bias.slope?
  hic_simulate: no visible global function definition for ?na.omit?
  hicpro2bedpe: no visible binding for global variable ?chr1?
  hicpro2bedpe: no visible binding for global variable ?chr2?
  manhattan_plot: no visible binding for global variable ?bp?
  manhattan_plot: no visible binding for global variable ?count?
  sim.other.methods: no visible binding for global variable ?adj.IF1?
  sim.other.methods: no visible binding for global variable ?IF1?
  sim.other.methods: no visible binding for global variable ?adj.IF2?
  sim.other.methods: no visible binding for global variable ?IF2?
  sim.other.methods: no visible binding for global variable ?adj.M?
  sim.other.methods: no visible binding for global variable ?M?
  sim.other.methods: no visible global function definition for ?na.omit?
  sim_matrix: no visible binding for global variable ?bias.slope?
  total_sum: no visible binding for global variable ?IF2?
  total_sum: no visible binding for global variable ?M?
  total_sum: no visible binding for global variable ?IF1?
  total_sum: no visible binding for global variable ?chr1?
  volcano: no visible binding for global variable ?A?
  volcano: no visible binding for global variable ?adj.IF1?
  volcano: no visible binding for global variable ?adj.IF2?
  volcano: no visible binding for global variable ?p.value?
  volcano: no visible binding for global variable ?D?
  Undefined global functions or variables:
    A D IF IF1 IF2 M Z adj.IF1 adj.IF2 adj.M axis bias.slope bp
    centromere_locations chr1 chr2 count fold.change head i j na.omit
    p.adj p.value pnorm region1 region2 sd start1 start2
  Consider adding
    importFrom("graphics", "axis")
    importFrom("stats", "D", "na.omit", "pnorm", "sd")
    importFrom("utils", "head")
  to your NAMESPACE file.

0 errors ? | 0 warnings ? | 2 notes ?
R version 4.0.2 Patched (2020-07-19 r78892)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04 LTS (fossa-melisa X20)

Matrix products: default
BLAS:   /home/stvjc/R-4-0-dist/lib/R/lib/libRblas.so
LAPACK: /home/stvjc/R-4-0-dist/lib/R/lib/libRlapack.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
 [9] LC_ADDRESS=C               LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] rcmdcheck_1.3.3

loaded via a namespace (and not attached):
 [1] ps_1.3.3          fansi_0.4.1       prettyunits_1.1.1 withr_2.2.0
 [5] digest_0.6.25     crayon_1.3.4      rprojroot_1.3-2   assertthat_0.2.1
 [9] R6_2.4.1          backports_1.1.8   cli_2.0.2         callr_3.4.3
[13] desc_1.2.0        tools_4.0.2       glue_1.4.1        compiler_4.0.2
[17] processx_3.4.3    xopen_1.0.0       pkgbuild_1.1.0
On Fri, Aug 7, 2020 at 7:08 PM Mikhail Dozmorov <mikhail.dozmorov at gmail.com>
wrote:

  
    
#
Thanks, Vincent. If I clone the Bioconductor version
from git at git.bioconductor.org:packages/HiCcompare, it builds
without errors. The version from
https://github.com/dozmorovlab/HiCcompare.git, which supposed to be
identical, errors as before - rcmdcheck::rcmdcheck() throws the same

  Error: processing vignette 'HiCcompare-vignette.Rmd' failed with diagnostics:

non-conformable arrays
But the vignette builds using the "Knit" button.

I still don't understand what is going on. The MD5 sums for files in both
repositories are identical, except some in .git folder. I'll use the
Bioconductor version and we don't need to dig more since this version
works. Still, very strange situation.

Thanks again,
Mikhail

On Sat, Aug 8, 2020 at 7:12 AM Vincent Carey <stvjc at channing.harvard.edu>
wrote:
#
On Sun, Aug 9, 2020 at 6:57 AM Mikhail Dozmorov <mikhail.dozmorov at gmail.com>
wrote:
"supposed to be identical" but no -- I checked out the one you mention
above, reproduced the error you report with R CMD *build* but
note that the versions in DESCRIPTION are different, and, for example

stvjc at stvjc-XPS-13-9300:~/BIOC_SOURCES/MIK/HiCcompare/R$ diff hic_compare.R
~/BIOC_SOURCES/HiCcompare/R/hic_compare.R
99c99
<     A.min <- ceiling(mean(A_q10))
---
perhaps there is a branch in your lab repo that needs to be checked out?



  Error: processing vignette 'HiCcompare-vignette.Rmd' failed with diagnostics:

  
    
#
I see it now and didn't catch because ran md5sum on the same folder. Not
sure how the two repositories diverged. Will synchronize back, that should
solve the problem.

Thank you.
Mikhail

On Sun, Aug 9, 2020 at 7:10 AM Vincent Carey <stvjc at channing.harvard.edu>
wrote: