Skip to content
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

Depends ignored when installing from tarball or DESCRIPTION #416

Open
kyleam opened this issue Feb 29, 2024 · 5 comments
Open

Depends ignored when installing from tarball or DESCRIPTION #416

kyleam opened this issue Feb 29, 2024 · 5 comments
Labels
bug Something isn't working

Comments

@kyleam
Copy link
Collaborator

kyleam commented Feb 29, 2024

Take a package foo with this DESCRIPTION:

Package: foo
Version: 1.0.0
Depends:
    R6
Imports:
    withr

Depends detected for CRAN-like repo

If I put that in a CRAN-like repo (in this case just a local one), the package in Depends, R6, is installed as expected.

Version: 1
Packages:
- foo
Repos:
- local: ./repo
- MPN: https://mpn.metworx.com/snapshots/stable/2023-12-05
Cache: pkgcache-repo
Library: lib-repo
$ ls -1 lib-repo/
R6
foo
withr

Depends not detected for Tarballs

If I instead use Tarballs to point to the source tarball for foo, the pkgr install fails with "ERROR: dependency ‘R6’ is not available for package ‘foo’".

Version: 1
Tarballs:
- foo_1.0.0.tar.gz
Repos:
- MPN: https://mpn.metworx.com/snapshots/stable/2023-12-05
Cache: pkgcache-tar
Library: lib-tar
time="2024-02-29T16:42:48-05:00" level=info msg="R Version 4.1.3"
time="2024-02-29T16:42:48-05:00" level=info msg="Package Library will be created" path=lib-tar
time="2024-02-29T16:42:48-05:00" level=info msg="Default package installation type:  source"
time="2024-02-29T16:42:48-05:00" level=info msg="0:1298 (binary:source) packages available in for MPN from https://mpn.metworx.com/snapshots/stable/2023-12-05"
time="2024-02-29T16:42:48-05:00" level=info msg="Package installation cache directory:  pkgcache-tar"
time="2024-02-29T16:42:48-05:00" level=info msg="Database cache directory:  /data/home/kylem/.cache/pkgr/r_packagedb_caches"
time="2024-02-29T16:42:48-05:00" level=info msg="package installation status" installed=0 not_from_pkgr=0 outdated=0 total_packages_required=2
time="2024-02-29T16:42:48-05:00" level=info msg="package installation sources" MPN=1 tarballs=1
time="2024-02-29T16:42:48-05:00" level=info msg="package installation plan" to_install=2 to_update=0
time="2024-02-29T16:42:48-05:00" level=info msg="Library path to install packages: lib-tar\n"
time="2024-02-29T16:42:48-05:00" level=info msg="resolution time 14.72378ms"
time="2024-02-29T16:42:48-05:00" level=info msg="update argument passed. staging packages for update..."
time="2024-02-29T16:42:48-05:00" level=info msg="downloading required packages within directory " dir=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-tar
time="2024-02-29T16:42:48-05:00" level=info msg="downloading package" package=withr
time="2024-02-29T16:42:48-05:00" level=info msg="all packages downloaded" duration=21.956136ms
time="2024-02-29T16:42:48-05:00" level=info msg="starting initial install"
time="2024-02-29T16:42:51-05:00" level=info msg="Successfully Installed." package=withr remaining=1 repo=MPN version=2.5.0
time="2024-02-29T16:42:51-05:00" level=info msg="starting individual tarball install"
time="2024-02-29T16:42:51-05:00" level=error msg="cmd output" exit_code=1 output="ERROR: dependency ‘R6’ is not available for package ‘foo’\n* removing ‘/data/home/kylem/scratch/pkgr-dep-testing/lib-tar/foo’\n" package=foo stderr="ERROR: dependency ‘R6’ is not available for package ‘foo’\n* removing ‘/data/home/kylem/scratch/pkgr-dep-testing/lib-tar/foo’\n" stdout=
time="2024-02-29T16:42:51-05:00" level=error msg="error installing package" error="exit status 1" install_type=tarball installed_from=pkgcache-tar/a8516ee48f236c72/foo pkg=foo remaining=0 source=foo_1.0.0.tar.gz
time="2024-02-29T16:42:51-05:00" level=info msg="total package install time" duration=2.627162426s
time="2024-02-29T16:42:51-05:00" level=info msg="duration:2.627945394s"

Depends not detected for Descriptions

And if I point to foo's DESCRIPTION, R6 is not installed.

Version: 1
Descriptions:
- foo/DESCRIPTION
Repos:
- MPN: https://mpn.metworx.com/snapshots/stable/2023-12-05
Cache: pkgcache-desc
Library: lib-desc
$ ls -1 lib-desc/
withr

The above is with the pkgr v3.1.1.

The attached tarball has the setup code for these cases (invoke make to run them all).

pkgr-depends-test.tar.gz

@kyleam kyleam added the bug Something isn't working label Feb 29, 2024
@dpastoor
Copy link
Contributor

Oh interesting - that is weird :-o IIRC john carlo implemented the tarball functionality, though seth might have been slightly involved as he was getting into go a little, though I think he did the direct DESCRIPTION file feature. I thought both used the exact same desc parsing as coming from a database.

There might be some more breadcrumbs doing --loglevel=debug to dump where it falls off in the chain.

Also - if you get into the dependency resolution code... I'm sorry 🤪 I think that was some of my first go code I ever wrote for a serious project and it was .... very naive. If you need to discuss what the heck is going on with some of how it solves the layers and does the install loop I'd be happy to discuss, the data structures are weird because I originally had a completely different approach that didn't work so I changed the logic and the datastructures kinda just stuck around.

@dpastoor
Copy link
Contributor

dpastoor commented Mar 1, 2024

john carlo might have noticed this back a couple years ago: #376

@kyleam
Copy link
Collaborator Author

kyleam commented Mar 1, 2024

@dpastoor Thanks for the comment.

Yeah, it's odd. I suppose it probably flew under the radar for a while due to the combination of 1) R's Depends being discouraged/rarely used and 2) pkgr's Tarballs and (to a less extent) Descriptions being less heavily used than Packages.

When I noted this bug on the internal issue that prompted this, @seth127 wondered if it was related to gh-376. The second comment there (" took a shortcut with Tarball dependencies by simply adding them to the list of user-defined packages in the CFG file") makes me think that packages in Depends were probably left out of that shortcut (but I haven't looked into the underlying code at all, so that's a wild guess).

There might be some more breadcrumbs doing --loglevel=debug to dump where it falls off in the chain.

Good point. The debug output for each scenario is below (haven't done a close comparison yet).

repo
time="2024-03-01T14:27:13-05:00" level=info msg="R Version 4.1.3"
time="2024-03-01T14:27:13-05:00" level=debug msg="OS Platform x86_64-pc-linux-gnu"
time="2024-03-01T14:27:13-05:00" level=info msg="Package Library will be created" path=lib-repo
time="2024-03-01T14:27:13-05:00" level=debug msg="packages database - type: source, url: ./repo/src/contrib/PACKAGES\n"
time="2024-03-01T14:27:13-05:00" level=debug msg="potential packages" num_pkgs=1 url=./repo/src/contrib/PACKAGES
time="2024-03-01T14:27:13-05:00" level=info msg="Default package installation type:  source"
time="2024-03-01T14:27:13-05:00" level=info msg="0:1 (binary:source) packages available in for local from ./repo"
time="2024-03-01T14:27:13-05:00" level=info msg="0:1298 (binary:source) packages available in for MPN from https://mpn.metworx.com/snapshots/stable/2023-12-05"
time="2024-03-01T14:27:13-05:00" level=debug msg="package cache directory set by user" dir=pkgcache-repo
time="2024-03-01T14:27:13-05:00" level=info msg="Package installation cache directory:  pkgcache-repo"
time="2024-03-01T14:27:13-05:00" level=info msg="Database cache directory:  /data/home/kylem/.cache/pkgr/r_packagedb_caches"
time="2024-03-01T14:27:13-05:00" level=debug msg="package repository set" pkg=foo relationship=user_defined repo=local type=source version=1.0.0
time="2024-03-01T14:27:13-05:00" level=debug msg="package repository set" pkg=R6 relationship=dependency repo=MPN type=source version=2.5.1
time="2024-03-01T14:27:13-05:00" level=debug msg="package repository set" pkg=withr relationship=dependency repo=MPN type=source version=2.5.0
time="2024-03-01T14:27:13-05:00" level=info msg="package installation status" installed=0 not_from_pkgr=0 outdated=0 total_packages_required=3
time="2024-03-01T14:27:13-05:00" level=info msg="package installation sources" MPN=2 local=1 tarballs=0
time="2024-03-01T14:27:13-05:00" level=info msg="package installation plan" to_install=3 to_update=0
time="2024-03-01T14:27:13-05:00" level=info msg="Library path to install packages: lib-repo\n"
time="2024-03-01T14:27:13-05:00" level=info msg="resolution time 13.296656ms"
time="2024-03-01T14:27:13-05:00" level=info msg="update argument passed. staging packages for update..."
time="2024-03-01T14:27:13-05:00" level=debug msg="package cache directory set by user" dir=pkgcache-repo
time="2024-03-01T14:27:13-05:00" level=info msg="downloading required packages within directory " dir=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-repo
time="2024-03-01T14:27:13-05:00" level=info msg="downloading package" package=foo
time="2024-03-01T14:27:13-05:00" level=debug msg="download successful" dltime="87.387µs" package=foo size="0.00 MB"
time="2024-03-01T14:27:13-05:00" level=info msg="downloading package" package=R6
time="2024-03-01T14:27:13-05:00" level=info msg="downloading package" package=withr
time="2024-03-01T14:27:13-05:00" level=debug msg="download successful" dltime=25.258556ms package=R6 size="0.06 MB"
time="2024-03-01T14:27:13-05:00" level=debug msg="download successful" dltime=27.155278ms package=withr size="0.10 MB"
time="2024-03-01T14:27:13-05:00" level=info msg="all packages downloaded" duration=27.449988ms
time="2024-03-01T14:27:13-05:00" level=info msg="starting initial install"
time="2024-03-01T14:27:13-05:00" level=debug msg="installing tarball" args="{false false false false false false true true true true false false false /tmp/JBOQOXKHGABJ}" tbp=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-repo/MPN-ce7c8736ab85/src/R6_2.5.1.tar.gz
time="2024-03-01T14:27:13-05:00" level=debug msg="installing tarball" args="{false false false false false false true true true true false false false /tmp/KETCHXJGYBGM}" tbp=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-repo/MPN-ce7c8736ab85/src/withr_2.5.0.tar.gz
time="2024-03-01T14:27:15-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *source* package ‘R6’ ...\n** package ‘R6’ successfully unpacked and MD5 sums checked\n** using staged installation\n** R\n** tests\n** byte-compile and prepare package for lazy loading\n** help\n*** installing help indices\n*** copying figures\n** building package indices\n** testing if installed package can be loaded from temporary location\n** testing if installed package can be loaded from final location\n** testing if installed package keeps a record of temporary installation path\n* creating tarball\npackaged installation of ‘R6’ as ‘R6_2.5.1_R_x86_64-pc-linux-gnu.tar.gz’\n* DONE (R6)\n" package=R6
time="2024-03-01T14:27:16-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *binary* package ‘R6’ ...\n* DONE (R6)\n" package=R6
time="2024-03-01T14:27:16-05:00" level=debug msg="package install request completed" WID=1 duration=2.282937894s package=R6
time="2024-03-01T14:27:16-05:00" level=debug msg=R6 binary=/tmp/JBOQOXKHGABJ/R6_2.5.1_R_x86_64-pc-linux-gnu.tar.gz src=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-repo/MPN-ce7c8736ab85/src/R6_2.5.1.tar.gz
time="2024-03-01T14:27:16-05:00" level=info msg="Successfully Installed." package=R6 remaining=2 repo=MPN version=2.5.1
time="2024-03-01T14:27:16-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *source* package ‘withr’ ...\n** package ‘withr’ successfully unpacked and MD5 sums checked\n** using staged installation\n** R\n** inst\n** tests\n** byte-compile and prepare package for lazy loading\n** help\n*** installing help indices\n*** copying figures\n** building package indices\n** installing vignettes\n** testing if installed package can be loaded from temporary location\n** testing if installed package can be loaded from final location\n** testing if installed package keeps a record of temporary installation path\n* creating tarball\npackaged installation of ‘withr’ as ‘withr_2.5.0_R_x86_64-pc-linux-gnu.tar.gz’\n* DONE (withr)\n" package=withr
time="2024-03-01T14:27:16-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *binary* package ‘withr’ ...\n* DONE (withr)\n" package=withr
time="2024-03-01T14:27:16-05:00" level=debug msg="package install request completed" WID=2 duration=2.773454804s package=withr
time="2024-03-01T14:27:16-05:00" level=debug msg=withr binary=/tmp/KETCHXJGYBGM/withr_2.5.0_R_x86_64-pc-linux-gnu.tar.gz src=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-repo/MPN-ce7c8736ab85/src/withr_2.5.0.tar.gz
time="2024-03-01T14:27:16-05:00" level=info msg="Successfully Installed." package=withr remaining=1 repo=MPN version=2.5.0
time="2024-03-01T14:27:16-05:00" level=debug msg="installing tarball" args="{false false false false false false true true true true false false false /tmp/GDBMHEFNEDYS}" tbp=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-repo/local-bc2a9b5726fc/src/foo_1.0.0.tar.gz
time="2024-03-01T14:27:17-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *source* package ‘foo’ ...\n** using staged installation\n** help\nNo man pages found in package  ‘foo’ \n*** installing help indices\n** building package indices\n** testing if installed package can be loaded from temporary location\n** testing if installed package can be loaded from final location\n** testing if installed package keeps a record of temporary installation path\n* creating tarball\npackaged installation of ‘foo’ as ‘foo_1.0.0_R_x86_64-pc-linux-gnu.tar.gz’\n* DONE (foo)\n" package=foo
time="2024-03-01T14:27:17-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *binary* package ‘foo’ ...\n* DONE (foo)\n" package=foo
time="2024-03-01T14:27:17-05:00" level=debug msg="package install request completed" WID=3 duration=1.19632506s package=foo
time="2024-03-01T14:27:17-05:00" level=debug msg=foo binary=/tmp/GDBMHEFNEDYS/foo_1.0.0_R_x86_64-pc-linux-gnu.tar.gz src=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-repo/local-bc2a9b5726fc/src/foo_1.0.0.tar.gz
time="2024-03-01T14:27:17-05:00" level=info msg="Successfully Installed." package=foo remaining=0 repo=local version=1.0.0
time="2024-03-01T14:27:17-05:00" level=debug msg="user package install time" duration=3.970667794s
time="2024-03-01T14:27:17-05:00" level=info msg="starting individual tarball install"
time="2024-03-01T14:27:17-05:00" level=info msg="total package install time" duration=4.031045184s
time="2024-03-01T14:27:17-05:00" level=debug msg="No update-packages to restore."
time="2024-03-01T14:27:17-05:00" level=debug msg="No update-packages to restore."
time="2024-03-01T14:27:17-05:00" level=info msg="duration:4.03106408s"
tar
time="2024-03-01T14:27:17-05:00" level=info msg="R Version 4.1.3"
time="2024-03-01T14:27:17-05:00" level=debug msg="OS Platform x86_64-pc-linux-gnu"
time="2024-03-01T14:27:17-05:00" level=info msg="Package Library will be created" path=lib-tar
time="2024-03-01T14:27:17-05:00" level=info msg="Default package installation type:  source"
time="2024-03-01T14:27:17-05:00" level=info msg="0:1298 (binary:source) packages available in for MPN from https://mpn.metworx.com/snapshots/stable/2023-12-05"
time="2024-03-01T14:27:17-05:00" level=debug msg="package cache directory set by user" dir=pkgcache-tar
time="2024-03-01T14:27:17-05:00" level=info msg="Package installation cache directory:  pkgcache-tar"
time="2024-03-01T14:27:17-05:00" level=info msg="Database cache directory:  /data/home/kylem/.cache/pkgr/r_packagedb_caches"
time="2024-03-01T14:27:17-05:00" level=debug msg="package cache directory set by user" dir=pkgcache-tar
time="2024-03-01T14:27:17-05:00" level=debug msg="package repository set" pkg=withr relationship=user_defined repo=MPN type=source version=2.5.0
time="2024-03-01T14:27:17-05:00" level=debug msg="additional installation set" install_from=pkgcache-tar/c27f10cc351728c5/foo method=tarball origin=foo_1.0.0.tar.gz pkg=foo
time="2024-03-01T14:27:17-05:00" level=info msg="package installation status" installed=0 not_from_pkgr=0 outdated=0 total_packages_required=2
time="2024-03-01T14:27:17-05:00" level=info msg="package installation sources" MPN=1 tarballs=1
time="2024-03-01T14:27:17-05:00" level=info msg="package installation plan" to_install=2 to_update=0
time="2024-03-01T14:27:17-05:00" level=info msg="Library path to install packages: lib-tar\n"
time="2024-03-01T14:27:17-05:00" level=info msg="resolution time 15.239996ms"
time="2024-03-01T14:27:17-05:00" level=info msg="update argument passed. staging packages for update..."
time="2024-03-01T14:27:17-05:00" level=debug msg="package cache directory set by user" dir=pkgcache-tar
time="2024-03-01T14:27:17-05:00" level=info msg="downloading required packages within directory " dir=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-tar
time="2024-03-01T14:27:17-05:00" level=info msg="downloading package" package=withr
time="2024-03-01T14:27:17-05:00" level=debug msg="download successful" dltime=23.788555ms package=withr size="0.10 MB"
time="2024-03-01T14:27:17-05:00" level=info msg="all packages downloaded" duration=23.913637ms
time="2024-03-01T14:27:17-05:00" level=info msg="starting initial install"
time="2024-03-01T14:27:17-05:00" level=debug msg="installing tarball" args="{false false false false false false true true true true false false false /tmp/RIQMDLELJGUE}" tbp=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-tar/MPN-ce7c8736ab85/src/withr_2.5.0.tar.gz
time="2024-03-01T14:27:19-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *source* package ‘withr’ ...\n** package ‘withr’ successfully unpacked and MD5 sums checked\n** using staged installation\n** R\n** inst\n** tests\n** byte-compile and prepare package for lazy loading\n** help\n*** installing help indices\n*** copying figures\n** building package indices\n** installing vignettes\n** testing if installed package can be loaded from temporary location\n** testing if installed package can be loaded from final location\n** testing if installed package keeps a record of temporary installation path\n* creating tarball\npackaged installation of ‘withr’ as ‘withr_2.5.0_R_x86_64-pc-linux-gnu.tar.gz’\n* DONE (withr)\n" package=withr
time="2024-03-01T14:27:20-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *binary* package ‘withr’ ...\n* DONE (withr)\n" package=withr
time="2024-03-01T14:27:20-05:00" level=debug msg="package install request completed" WID=2 duration=2.291623406s package=withr
time="2024-03-01T14:27:20-05:00" level=debug msg=withr binary=/tmp/RIQMDLELJGUE/withr_2.5.0_R_x86_64-pc-linux-gnu.tar.gz src=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-tar/MPN-ce7c8736ab85/src/withr_2.5.0.tar.gz
time="2024-03-01T14:27:20-05:00" level=info msg="Successfully Installed." package=withr remaining=1 repo=MPN version=2.5.0
time="2024-03-01T14:27:20-05:00" level=debug msg="user package install time" duration=2.292233705s
time="2024-03-01T14:27:20-05:00" level=info msg="starting individual tarball install"
time="2024-03-01T14:27:20-05:00" level=debug msg="installing tarball" package=foo pkg_source=pkgcache-tar/c27f10cc351728c5/foo
time="2024-03-01T14:27:20-05:00" level=debug msg="package cache directory set by user" dir=pkgcache-tar
time="2024-03-01T14:27:20-05:00" level=error msg="cmd output" exit_code=1 output="ERROR: dependency ‘R6’ is not available for package ‘foo’\n* removing ‘/data/home/kylem/scratch/pkgr-dep-testing/lib-tar/foo’\n" package=foo stderr="ERROR: dependency ‘R6’ is not available for package ‘foo’\n* removing ‘/data/home/kylem/scratch/pkgr-dep-testing/lib-tar/foo’\n" stdout=
time="2024-03-01T14:27:20-05:00" level=error msg="error installing package" error="exit status 1" install_type=tarball installed_from=pkgcache-tar/c27f10cc351728c5/foo output="ERROR: dependency ‘R6’ is not available for package ‘foo’\n* removing ‘/data/home/kylem/scratch/pkgr-dep-testing/lib-tar/foo’\n" pkg=foo remaining=0 source=foo_1.0.0.tar.gz
time="2024-03-01T14:27:20-05:00" level=info msg="total package install time" duration=2.590685911s
time="2024-03-01T14:27:20-05:00" level=debug msg="No update-packages to restore."
time="2024-03-01T14:27:20-05:00" level=debug msg="No update-packages to restore."
time="2024-03-01T14:27:20-05:00" level=info msg="duration:2.591519419s"
desc
time="2024-03-01T14:27:11-05:00" level=info msg="R Version 4.1.3"
time="2024-03-01T14:27:11-05:00" level=debug msg="OS Platform x86_64-pc-linux-gnu"
time="2024-03-01T14:27:11-05:00" level=info msg="Package Library will be created" path=lib-desc
time="2024-03-01T14:27:11-05:00" level=info msg="Default package installation type:  source"
time="2024-03-01T14:27:11-05:00" level=info msg="0:1298 (binary:source) packages available in for MPN from https://mpn.metworx.com/snapshots/stable/2023-12-05"
time="2024-03-01T14:27:11-05:00" level=debug msg="package cache directory set by user" dir=pkgcache-desc
time="2024-03-01T14:27:11-05:00" level=info msg="Package installation cache directory:  pkgcache-desc"
time="2024-03-01T14:27:11-05:00" level=info msg="Database cache directory:  /data/home/kylem/.cache/pkgr/r_packagedb_caches"
time="2024-03-01T14:27:11-05:00" level=debug msg="package repository set" pkg=withr relationship=user_defined repo=MPN type=source version=2.5.0
time="2024-03-01T14:27:11-05:00" level=info msg="package installation status" installed=0 not_from_pkgr=0 outdated=0 total_packages_required=1
time="2024-03-01T14:27:11-05:00" level=info msg="package installation sources" MPN=1 tarballs=0
time="2024-03-01T14:27:11-05:00" level=info msg="package installation plan" to_install=1 to_update=0
time="2024-03-01T14:27:11-05:00" level=info msg="Library path to install packages: lib-desc\n"
time="2024-03-01T14:27:11-05:00" level=info msg="resolution time 13.79451ms"
time="2024-03-01T14:27:11-05:00" level=info msg="update argument passed. staging packages for update..."
time="2024-03-01T14:27:11-05:00" level=debug msg="package cache directory set by user" dir=pkgcache-desc
time="2024-03-01T14:27:11-05:00" level=info msg="downloading required packages within directory " dir=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-desc
time="2024-03-01T14:27:11-05:00" level=info msg="downloading package" package=withr
time="2024-03-01T14:27:11-05:00" level=debug msg="download successful" dltime=27.362098ms package=withr size="0.10 MB"
time="2024-03-01T14:27:11-05:00" level=info msg="all packages downloaded" duration=27.508782ms
time="2024-03-01T14:27:11-05:00" level=info msg="starting initial install"
time="2024-03-01T14:27:11-05:00" level=debug msg="installing tarball" args="{false false false false false false true true true true false false false /tmp/GTJXNTQDNFRT}" tbp=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-desc/MPN-ce7c8736ab85/src/withr_2.5.0.tar.gz
time="2024-03-01T14:27:13-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *source* package ‘withr’ ...\n** package ‘withr’ successfully unpacked and MD5 sums checked\n** using staged installation\n** R\n** inst\n** tests\n** byte-compile and prepare package for lazy loading\n** help\n*** installing help indices\n*** copying figures\n** building package indices\n** installing vignettes\n** testing if installed package can be loaded from temporary location\n** testing if installed package can be loaded from final location\n** testing if installed package keeps a record of temporary installation path\n* creating tarball\npackaged installation of ‘withr’ as ‘withr_2.5.0_R_x86_64-pc-linux-gnu.tar.gz’\n* DONE (withr)\n" package=withr
time="2024-03-01T14:27:13-05:00" level=debug msg="cmd output" exitCode=0 output="* installing *binary* package ‘withr’ ...\n* DONE (withr)\n" package=withr
time="2024-03-01T14:27:13-05:00" level=debug msg="package install request completed" WID=1 duration=2.337223236s package=withr
time="2024-03-01T14:27:13-05:00" level=debug msg=withr binary=/tmp/GTJXNTQDNFRT/withr_2.5.0_R_x86_64-pc-linux-gnu.tar.gz src=/data/home/kylem/scratch/pkgr-dep-testing/pkgcache-desc/MPN-ce7c8736ab85/src/withr_2.5.0.tar.gz
time="2024-03-01T14:27:13-05:00" level=info msg="Successfully Installed." package=withr remaining=0 repo=MPN version=2.5.0
time="2024-03-01T14:27:13-05:00" level=debug msg="user package install time" duration=2.338065502s
time="2024-03-01T14:27:13-05:00" level=info msg="starting individual tarball install"
time="2024-03-01T14:27:13-05:00" level=info msg="total package install time" duration=2.398822398s
time="2024-03-01T14:27:13-05:00" level=debug msg="No update-packages to restore."
time="2024-03-01T14:27:13-05:00" level=debug msg="No update-packages to restore."
time="2024-03-01T14:27:13-05:00" level=info msg="duration:2.398838993s"

If you need to discuss what the heck is going on with some of how it solves the layers and does the install loop I'd be happy to discuss

Thanks. I'm not sure when I'll get around to looking into this, but I may take you up on that if I get too turned around.

@kyleam
Copy link
Collaborator Author

kyleam commented Mar 1, 2024

john carlo might have noticed this back a couple years ago: #376

Ha, messages crossed

@Dreznel
Copy link
Contributor

Dreznel commented Mar 1, 2024

It's been a while since I've dug into this codebase, but I think #376 is unrelated--that bug is just about how dependencies are labeled in certain situations.

To Kyle's point, I think the most likely explanation is just that we didn't account for the "Depends" keyword in certain situations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants