In the process of adding API commands to get the Juju CLI over to access only via the API we broke some compatibility with 1.16. Specifically, where we added a new API that didn't exist in 1.16 and then moved the command over to only supporting the new API.
This is more of a meta bug to collect the more specific list of commands that need to be fixed.
bug #1250154 is that Client.EnvironmentGet is one of the newly added APIs. It turns out that we started using that in NewAPIConnFromName to check if we need to pass secrets to the environment (first login). That breaks *all* commands against 1.16 as it is the first thing we do.
[DONE] juju set-environment; juju get-environment bug #1253625
[DONE] juju upgrade-juju uses Client.EnvironmentGet bug #1253628
[INPROGRESS} juju add-machine uses several new APIs bug #1253631
[DONE] juju get-constraints; juju set-constraints uses
Client.Set/GetEnvironmentConstraints bug #1253633
[DONE] juju debug-hooks; juju ssh; juju scp use Client.PublicAddress
bug #1253639 (debug-hooks also uses ServiceCharmRelations)
[DONE] juju destroy-machines uses Client.DestroyMachines bug #1253643
[DONE] juju set uses Client.NewServiceSetForClientAPI bug #1253649
[DONE} juju unset uses Client.ServiceUnset bug #1253649
[DONE] juju status became incompatible. It has some fallback code,
which apparently doesn't do enough. bug #1266734
Other Client APIs that were added orClientAPI lations tVersion (for upgrade-juju)
NewServiceSetF
ServiceUnset
ServiceCharmRe
PublicAddress
AddMachines
InjectMachines
MachineConfig
DestroyMachines
EnvironmentGet (bug #1250154)
EnvironmentSet
SetEnvironAgen
GetServiceConst raints changed its return type to GetConstraintRe sults, but probably this is just renaming onstraints ditto raints changed SetServiceConst raints params to SetConstraints onstraints ditto
GetEnvironmentC
SetServiceConst
SetEnvironmentC