Skip to content

Fix extractManuals #19

New issue

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

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

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: devel
Choose a base branch
from
Open

Fix extractManuals #19

wants to merge 4 commits into from

Conversation

jwokaty
Copy link
Contributor

@jwokaty jwokaty commented Apr 2, 2025

Allow extractManuals to work on software and experiment tarballs while fixing problems related to the two types of data annotation tarballs. Some data annotation packages are built by the BBS while others are produced outside of it. Currently, reference manuals may be produced twice for the manuals built by the BBS because it is first produced by make-OUTGOING.py in the BBS then later during the propagation step, extractManuals is called. Sometimes extractManuals can fail to create the reference manual resulting in no manual being available.

More background: Bioconductor/BBS#444

Close #18

@jwokaty jwokaty marked this pull request as draft April 2, 2025 16:07
@jwokaty jwokaty marked this pull request as ready for review April 2, 2025 16:24
@jwokaty jwokaty self-assigned this Apr 2, 2025
@jwokaty jwokaty requested a review from hpages April 2, 2025 17:25
@jwokaty
Copy link
Contributor Author

jwokaty commented Apr 2, 2025

@hpages Could you review when you have time It isn't great because I realized R CMD Rd2pdf will complain if man exists without .Rd files so I decided to create it inside the package directory then move it into man. I also switched to system2 because I thought it was supposed to be better but I can't find any references for belief. I diverted all the output so we will only know when something fails (but it will be easier to see!).

@jwokaty jwokaty marked this pull request as draft April 29, 2025 16:44
@jwokaty jwokaty marked this pull request as ready for review May 1, 2025 12:54
@jwokaty
Copy link
Contributor Author

jwokaty commented May 6, 2025

This should be merged before Bioconductor/BBS#438, which removes functionality to extract manuals created during the build process that contain internal functions.

@jwokaty
Copy link
Contributor Author

jwokaty commented May 9, 2025

Hi @vjcitn @lshep Could I ask one of you to review the changes here? I'm also open to suggestions to improve it.

This PR expands extractManuals

  • for use with software and data experiment packages (so that manuals will not include internal functions as their current manuals do now)
  • to generate a manual page for packages that don't have manuals
  • to generate HTML manuals

For testing, I made CRAN-style repo and curled the sources from the Bioconductor website to src/contrib. The resulting structure looks like

tree -L 5 PACKAGES
PACKAGES
└── 3.21
    └── data
        └── annotation
            └── src
                └── contrib
                    ├── aasomething_1.3.5.tar.gz     # a fake package to make sure we fail
                    ├── AHCytoBands_0.99.1.tar.gz  # package without a manual
                    ├── AHEnsDbs_1.7.0.tar.gz
                    ├── alternativeSplicingEvents.hg38_1.1.0.tar.gz # package with a manual
                    └── TENET.AnnotationHub_1.0.0.tar.gz

The result of running extractManuals should produce a manuals directory at the same level of src like

tree -L 6 PACKAGES/3.21/data/annotation/manuals/
PACKAGES/3.21/data/annotation/manuals/
├── AHCytoBands
│   └── man
│       ├── AHCytoBands.html
│       └── AHCytoBands.pdf     # for "no manual" packages, their manuals are of DESCRIPTION file info
├── AHEnsDbs
│   └── man
│       ├── AHEnsDbs.html
│       └── AHEnsDbs.pdf
├── alternativeSplicingEvents.hg38
│   └── man
│       ├── alternativeSplicingEvents.hg38.html
│       └── alternativeSplicingEvents.hg38.pdf
└── TENET.AnnotationHub
    └── man
        ├── TENET.AnnotationHub.html
        └── TENET.AnnotationHub.pdf

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Fix buildManualsFromTarball
1 participant