-
Notifications
You must be signed in to change notification settings - Fork 580
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
NotImplementedError: Setting version is not implemented by RscriptRequirement #2863
Comments
As indicated by the traceback, this line is the cause of error:
If a version string is supplied the above exception is raised. This workflow was introduced in this issue. Thoughts? |
We want the version in our metadata in bears repo, so we can describe the dependencies accurately, but unfortunately We also want iirc, this problem only appears when the dependency is missing. It is annoying that it is happening in We need the imports to succeed. The quick fix is to remove the version from the Then we can still get the version; this will require enhancing |
Are these 2 the only bears throwing this error? In that case, we can remove the version string from both of them. Though we have other alternatives aswell:
Change 3 is the easiest one to implement if we are looking for a quick fix. |
option 1, even if it is possible for Rscript, there will always be package managers which only support fetching/installing the current version. Go is another one where this is a problem, likewise Julia. option 2, no, we need this. option 3, no, that isnt possible/appropriate , see coala/meta#123 Please approach this like suggested in my last comment, which is the only path with moves us forward rather than backwards. |
@jayvdb Currently, the In this issue, the So the best option would be to remove the version from bear file. Instead of this, we could add a distribution version(if there exists) but as you said it is now deprecated. And regarding changing |
Well the YAML doesnt give a false expectation -- it only describes the bears. Those entries are not redundant - they are the mechanism by which we will be able to create installers which can choose versions, or fail to install problematic versions. Removing the version from the bear is not happening. We are not going backwards. Version metadata is incredibly important to be able to manage so many linters. It needs to be in the bear as the single source of truth, and extracted to yaml for other programs to easily obtain it. (we have an ansible installer on gitlab which uses this yaml, and the docker image will soon be updated to use it also)
Moot point. It is deprecated but there are replacements which are not deprecated.
Again moot point. I suggested earlier that basic version checking be added to |
I was referring to the PS: A detailed summary to follow up. |
In that case, we still need to have a version metadata somehow and the imports must not fail. I dug further into
Let me know your thoughts. |
Wrt to ExecutableRequirement, https://gitlab.com/coala/package_manager/issues/206 is a way to achieve that. Almost all of the linters use a CLI. However not surprisingly, formatr and lintr have an executable of Slightly related, wrt adding generic metadata, the method we intend to use is https://gitlab.com/coala/package_manager/issues/159 wrt |
Another approach is to add a requirement class for another R package manager. https://rstudio.github.io/packrat/walkthrough.html looks like it supports versions. |
Created https://gitlab.com/coala/package_manager/issues/208 and https://gitlab.com/coala/package_manager/issues/209 as two additional ways this can be solved. |
The text was updated successfully, but these errors were encountered: