You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem? Please describe.
Users should be warned about packages that don't have dependencies satisfied. Additionally users should be prevented from adding a package who's dependencies aren't satisfied.
The package should proactively notify the user about which dependencies are missing.
Describe the solution you'd like
Any package would scan all other known packages and compare dependencies to ensure that there is a matching version for each dependency.
Each package should list out it's direct dependencies (small text list? button w/ popup?), whether VCC knows about them and whether the dependency is added into the project (maybe red text if it's missing, yellow if it's found but needs added, green if it's already added?).
If the package is unable to satisfy one or more of the dependency requirements, grey-out/disable the Add button of the package entry.
The user should be required to adding dependencies before adding the desired packages.
If the dependency is detected but not yet in the project, the package entry should warn the user to first add any dependencies not yet added to the project.
Once those are added, the main package can then be added.
Add an option in the Settings tab to skip package dependency enforcement.
For the advanced user, they may desire to add it to the project so they can utilize the Unity environment to manually fix the package themselves.
Describe alternatives you've considered
Another setup would be auto-installing dependencies when trying to add a given package (so long as VCC can find all the dependencies needed), but I'm concerned that would get sketch and would require extra effort to handle various edge cases. I think simply preventing packages from being added until dependencies are added is the safest and easiest to implement. It also forces the user to be aware of every package they are adding to the project.
The text was updated successfully, but these errors were encountered:
techanon
changed the title
[FEATURE] Prevent local packages from being imported if the vpmDependencies are not satisfied
[FEATURE] Prevent packages from being imported if the vpmDependencies are not satisfied
Nov 7, 2022
This is already part of the logic that runs when adding a package - it should only be installed if all dependencies can be found and resolved. Do you have a repro that doesn't do this?
So while I was checking things I think because I had imported with a valid, and changed to an invalid dependency, the original package add still was referencing as the correct name and still allowed import.
I removed and re-added with the invalid name and that did correctly prevent the addition.
So that part is fine and was an oversight on my part.
I do think it'd be nice if the UI proactively showed if there is a dependency issue detected before having to click Add.
Updated OP to reflect.
techanon
changed the title
[FEATURE] Prevent packages from being imported if the vpmDependencies are not satisfied
[FEATURE] Proactively notify users of packages that have dependencies that are not satisfied
Nov 10, 2022
Users should be warned about packages that don't have dependencies satisfied.Additionally users should be prevented from adding a package who's dependencies aren't satisfied.The package should proactively notify the user about which dependencies are missing.
Any package would scan all other known packages and compare dependencies to ensure that there is a matching version for each dependency.The user should be required to adding dependencies before adding the desired packages.If the dependency is detected but not yet in the project, the package entry should warn the user to first add any dependencies not yet added to the project.Once those are added, the main package can then be added.Another setup would be auto-installing dependencies when trying to add a given package (so long as VCC can find all the dependencies needed), but I'm concerned that would get sketch and would require extra effort to handle various edge cases.I think simply preventing packages from being added until dependencies are added is the safest and easiest to implement. It also forces the user to be aware of every package they are adding to the project.The text was updated successfully, but these errors were encountered: