Open BluWizard10 opened 5 months ago
Is this called optionalDependencies
in other environments?
So, vpmOptionalDependencies
...? (also currently not exist)
Is this called
optionalDependencies
in other environments?So,
vpmOptionalDependencies
...?
I'm not sure. But now that I think about it, vpmOptionalDependencies
sounds a bit better than what I initially thought.
Is your feature request related to a problem? Please describe. It is clear that many Packages use the
"vpmDependencies"
argument in order to identify a VPM Package that is required in order to add to the Project. But this makes it a strict dependency, therefore the Dependency cannot be removed unless the Package is removed first.Describe the solution you'd like What I'm proposing is that we add a new argument called
"vpmOptionalDependencies"
or similar.It would function like a
"vpmDependencies"
but in a somewhat different manner. It instead acts as a "recommendation" instead of a "requirement" - asks the user to Add the Prerequisite VPM with the option to decline and still add the Package, or asks to Upgrade the Prerequisite VPM for the Package to add with the option to decline and still add the Package.With this argument, the Package can be safely removed regardless if the
"vpmOptionalDependencies"
was removed or not.This also would have the same redundancies as a
"vpmDependencies"
, where if for example a"vpmOptionalDependencies": { "com.vrchat.avatars": "^3.6" }
is defined, it would only appear in Avatar SDK Projects.Describe alternatives you've considered Currently, there is no other solution available with the current json implementation. Only the "Requirement" spec exists.
Additional Context I understand this is probably a niche feature request, but with the right implementation I think it would add additional flexibility to Community Repository maintainers with their own VPMs without having to strictly require a VPM Package at all times.