A while ago, CUPS was patched to not leak authentication information to log
files and command line arguments of printer spoolers like smbspool. See  and
 for details. This break SMB printing since "smbspool" prefers argv over
the DEVICE_URI environment variable.
In Ubuntu we have a dirty quickfix right before the release (see above URL)
which just swaps this preference, i. e. evaluate argv only if DEVICE_URI is
not set. However, this should be done in a cleaner way. In particular, smbspool
should normally only use environment variables.
Can you please coordinate with the CUPS developers (using the bugs below) to
find a sane solution? The ubuntu bugzilla contains a patch with our quickfix, so
you can use that in the meantime.
Thanks a lot in advance for considering,
moving back to 3.0
Hopefully will find time in the future (or get a patch from Michael Sweet).