Comment From: ayudovin

@wilkinsona, I would like to work on it. Please let me know if I can start working on it?

Comment From: wilkinsona

@ayudovin You are more than welcome to start working on it, but please be aware that I don't think this is going to be an easy one to fix. I suspect that changes may be needed in Spring Data.

Comment From: ayudovin

@wilkinsona, I want to clarify this task. As far as I understand this class CocuhbaseConfigurashion has @Bean methods which called directly and these methods should be replaced on bean injection. is it correct?

Comment From: wilkinsona

Yes, that’s right. To be suitable for having bean method proxying disabled, calling @Bean methods directly must be avoided. That may require some more complex restructuring than just moving to injection.

Comment From: ayudovin

From my point of view, We can create two extra configuration classes. The first one CouchbaseEnvironmentComfig for building CouchbaseEnvironment bean. The second one is CouchbaseClusterConfig for building Cluster bean (this config class will inject CocuhbaseEnvironment bean from CouchbaseEnvironmentComfig using constructor injection). The last step is CouchbaseConfiguration will just inject Cluster via constructor injection. @wilkinsona, what do you think about it?

Comment From: wilkinsona

@ayudovin It's hard to give accurate feedback without seeing some code. Can you please share a commit on a branch or a draft PR that I can look at?

Comment From: ayudovin

@wilkinsona, yes, certainly, I'll prepare a pull request.

Comment From: snicoll

This has been superseded by #20533