-
Notifications
You must be signed in to change notification settings - Fork 4
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
Comments
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. |
john carlo might have noticed this back a couple years ago: #376 |
@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 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
Good point. The debug output for each scenario is below (haven't done a close comparison yet). repo
tar
desc
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. |
Ha, messages crossed |
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. |
Take a package
foo
with thisDESCRIPTION
:Depends
detected for CRAN-like repoIf I put that in a CRAN-like repo (in this case just a local one), the package in
Depends
, R6, is installed as expected.Depends
not detected forTarballs
If I instead use
Tarballs
to point to the source tarball for foo, thepkgr install
fails with "ERROR: dependency ‘R6’ is not available for package ‘foo’".Depends
not detected forDescriptions
And if I point to foo's
DESCRIPTION
, R6 is not installed.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
The text was updated successfully, but these errors were encountered: