-
Notifications
You must be signed in to change notification settings - Fork 62
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
Enhance pkg_deps data.frame functionalities #672
Comments
Hi, I wanted to ask if there is any work planned in regards to that issue? |
Here is how you can see both versions:
This package has
I guess we could have a function that only does the resolution. We could also have an option to ignore pak::pkg_deps("local::.", dependencies = c("hard", "Config/needs/dependencies"))[,1:4]
At some point we'll have an update function that updates the whole library or a subset of it. |
Hi @gaborcsardi First of all, thank you for your response! I really appreciate your time investment into helping us! I tried to use the first code snippet you provided, and unfortunately, I cannot reproduce the results. The Remotes packages are still overwriting those available in standard repositories. Perhaps there is some option I should enable? I'm using this dummy DESCRIPTION file
and by running your code:
I'm getting :
Contrary to your results with Also, could you please elaborate on that second suggestion? Because in the cited results, I don't see |
Yeah, my mistake.
Yes, the point is that if you use the |
Oh, I see; now I understand, thank you. However, that does not necessarily solve the case as we often analyze packages we did not develop and are only provided with source code. These packages almost exclusively use the |
At some point we'll have a general override mechanism, which will let you do that. Until then you'll need to update the |
Hi all
I'd like to follow up on our discussion at r-lib/remotes#790 and suggest some new functionalities for the
pkg_deps
. These would greatly help our enterprise use and allow us to migrate from theremotes
package.pkg_deps
display all dependencies regardless of remotes sources. Currently, if a remote source is specified, it overwrites the version available inrepos
if it exists. We suggest a parameter (or even default behaviour) that allows us to keep both - the version identified in remotes and the one from repos. In our enterprise application, depending on the stage and dependency type, we want to either include or exclude remote sources, so having them both in the data.frame would allow us to implement dynamic filters on our own and build them on top of thepak
. The same could be applied to supplied repositories (and, by extension,Additional_repositoires
provided we use the source package). If a package is available in multiple repositories, it would be great if the data.frame had a different row for each latest version and repository pair. Again, bringing our needs into context, we need to filter packages available in multiple repositories based on some conditions (like the order of repos, similar to the package search path). Similar to remotes packges request, had we had all these versions in the data.frame, we could start from there and build our installation (filtering) mechanism based on that.remotes:::update.package_deps()
. Bascially a function which would accept a subset of rows from thepkg_deps
data frame and install the specified package.Please, let me know what you think about these suggestions and whether you see them as part of the
pak
package in the future. :)The text was updated successfully, but these errors were encountered: