Terraform version shows providers with two versions after upgrade from 0.12.29 to 0.13.2


I have upgraded my terraform provider from version 0.12.29 to 0.13.2.
Steps took,
1, No plan execution changes left on previous version i.e. 0.12.29
2, terraform 0.13upgrade → created new version file in folder
3, executed terraform init --reconfigure.
4. executed terraform plan
5. executed terraform apply,

Terraform version

  Terraform v0.13.2
    + provider registry.terraform.io/-/aws v3.37.0
    + provider registry.terraform.io/-/external v2.1.0
    + provider registry.terraform.io/-/helm v2.1.1
    + provider registry.terraform.io/-/kubernetes v2.1.0
    + provider registry.terraform.io/-/local v2.1.0
    + provider registry.terraform.io/-/null v3.1.0
    + provider registry.terraform.io/-/random v3.1.0
    + provider registry.terraform.io/-/template v2.2.0
    + provider registry.terraform.io/hashicorp/aws v3.37.0
    + provider registry.terraform.io/hashicorp/external v2.1.0
    + provider registry.terraform.io/hashicorp/helm v1.3.0
    + provider registry.terraform.io/hashicorp/kubernetes v1.13.1
    + provider registry.terraform.io/hashicorp/local v2.1.0
    + provider registry.terraform.io/hashicorp/null v3.1.0
    + provider registry.terraform.io/hashicorp/random v3.1.0
    + provider registry.terraform.io/hashicorp/template v2.2.0

Additional details , I already tried to execute terraform state replace-provider but it does not detect it

terraform state replace-provider -- registry.terraform.io/-/random registry.terraform.io/hashicorp/random
No matching resources found.
Releasing state lock. This may take a few moments...

It does not show old state now when deleted .terraform folder and re-executed terraform init.

Hi @Snehil03,

I think you’ve said here that you solved it but in case not I wanted to give the extra tip that you can run terraform providers to see where each dependency is coming from. It might list some that come only from the state, which are the ones you should be able to update with terraform state replace-provider, although even if you don’t explicitly update those your next normal terraform apply should fix them up automatically when it creates a new state snapshot to represent a change you’ve made.

Thanks @apparentlymart !
indeed this one is a good learning tip.