[FIX] fields: make `copy_cache` use a todo list instead of recursion
[FIX] fields: make `copy_cache` use a todo list instead of recursion

The recursion was based on an incorrect assumption: the cache of the target
environment is initially empty.  If another computation left some value there,
the copying is incomplete, and that causes bugs in onchanges.

Adel-Magebinary/odoo,NeovaHealth/odoo,hip-odoo/odoo,glovebx/odoo,shingonoide/odoo,ygol/odoo,datenbetrieb/odoo,factorlibre/OCB,hip-odoo/odoo,synconics/odoo,provaleks/o8,funkring/fdoo,shingonoide/odoo,Adel-Magebinary/odoo,Elico-Corp/odoo_OCB,ygol/odoo,ehirt/odoo,MarcosCommunity/odoo,Adel-Magebinary/odoo,dfang/odoo,synconics/odoo,sergio-incaser/odoo,laslabs/odoo,alexcuellar/odoo,Noviat/odoo,rubencabrera/odoo,hassoon3/odoo,Adel-Magebinary/odoo,glovebx/odoo,makinacorpus/odoo,Daniel-CA/odoo,NeovaHealth/odoo,jiangzhixiao/odoo,BT-rmartin/odoo,funkring/fdoo,alexcuellar/odoo,MarcosCommunity/odoo,ehirt/odoo,MarcosCommunity/odoo,Elico-Corp/odoo_OCB,vnsofthe/odoo,mustafat/odoo-1,sysadminmatmoz/OCB,spadae22/odoo,Noviat/odoo,leorochael/odoo,MarcosCommunity/odoo,NeovaHealth/odoo,hassoon3/odoo,tvibliani/odoo,glovebx/odoo,leorochael/odoo,BT-ojossen/odoo,funkring/fdoo,dfang/odoo,provaleks/o8,Endika/OpenUpgrade,dfang/odoo,jfpla/odoo,microcom/odoo,mustafat/odoo-1,hip-odoo/odoo,vnsofthe/odoo,makinacorpus/odoo,spadae22/odoo,BT-rmartin/odoo,factorlibre/OCB,odootr/odoo,jfpla/odoo,synconics/odoo,datenbetrieb/odoo,sergio-incaser/odoo,dfang/odoo,Daniel-CA/odoo,makinacorpus/odoo,microcom/odoo,Adel-Magebinary/odoo,laslabs/odoo,OpenUpgrade/OpenUpgrade,stephen144/odoo,Noviat/odoo,odootr/odoo,Endika/odoo,Endika/odoo,factorlibre/OCB,leorochael/odoo,sysadminmatmoz/OCB,factorlibre/OCB,makinacorpus/odoo,rubencabrera/odoo,BT-rmartin/odoo,diagramsoftware/odoo,ehirt/odoo,provaleks/o8,storm-computers/odoo,synconics/odoo,OpenUpgrade/OpenUpgrade,markeTIC/OCB,alexcuellar/odoo,makinacorpus/odoo,markeTIC/OCB,odootr/odoo,leorochael/odoo,makinacorpus/odoo,diagramsoftware/odoo,jfpla/odoo,ehirt/odoo,BT-ojossen/odoo,synconics/odoo,datenbetrieb/odoo,markeTIC/OCB,storm-computers/odoo,Noviat/odoo,ehirt/odoo,jiangzhixiao/odoo,hassoon3/odoo,spadae22/odoo,spadae22/odoo,MarcosCommunity/odoo,Nowheresly/odoo,provaleks/o8,jiangzhixiao/odoo,storm-computers/odoo,BT-ojossen/odoo,storm-computers/odoo,storm-computers/odoo,shingonoide/odoo,ehirt/odoo,datenbetrieb/odoo,diagramsoftware/odoo,grap/OpenUpgrade,Noviat/odoo,hip-odoo/odoo,tvibliani/odoo,Daniel-CA/odoo,stephen144/odoo,laslabs/odoo,stephen144/odoo,provaleks/o8,Daniel-CA/odoo,markeTIC/OCB,jfpla/odoo,jiangzhixiao/odoo,hassoon3/odoo,bplancher/odoo,glovebx/odoo,ygol/odoo,funkring/fdoo,hip-odoo/odoo,leorochael/odoo,spadae22/odoo,ygol/odoo,funkring/fdoo,shingonoide/odoo,BT-rmartin/odoo,bplancher/odoo,datenbetrieb/odoo,Elico-Corp/odoo_OCB,eino-makitalo/odoo,funkring/fdoo,bplancher/odoo,diagramsoftware/odoo,BT-rmartin/odoo,ygol/odoo,grap/OpenUpgrade,diagramsoftware/odoo,microcom/odoo,Endika/OpenUpgrade,eino-makitalo/odoo,rubencabrera/odoo,tvibliani/odoo,Endika/odoo,jiangzhixiao/odoo,Daniel-CA/odoo,odootr/odoo,synconics/odoo,factorlibre/OCB,CatsAndDogsbvba/odoo,factorlibre/OCB,sysadminmatmoz/OCB,eino-makitalo/odoo,jfpla/odoo,BT-rmartin/odoo,grap/OpenUpgrade,glovebx/odoo,leorochael/odoo,eino-makitalo/odoo,Endika/odoo,glovebx/odoo,CatsAndDogsbvba/odoo,Endika/OpenUpgrade,odootr/odoo,grap/OpenUpgrade,mustafat/odoo-1,NeovaHealth/odoo,NeovaHealth/odoo,Noviat/odoo,Nowheresly/odoo,jiangzhixiao/odoo,hip-odoo/odoo,Nowheresly/odoo,laslabs/odoo,ygol/odoo,CatsAndDogsbvba/odoo,vnsofthe/odoo,odootr/odoo,rubencabrera/odoo,sergio-incaser/odoo,Elico-Corp/odoo_OCB,MarcosCommunity/odoo,stephen144/odoo,Daniel-CA/odoo,vnsofthe/odoo,OpenUpgrade/OpenUpgrade,Nowheresly/odoo,mustafat/odoo-1,bplancher/odoo,markeTIC/OCB,Nowheresly/odoo,Elico-Corp/odoo_OCB,markeTIC/OCB,Daniel-CA/odoo,tvibliani/odoo,sergio-incaser/odoo,BT-rmartin/odoo,sergio-incaser/odoo,sysadminmatmoz/OCB,mustafat/odoo-1,jfpla/odoo,mustafat/odoo-1,microcom/odoo,stephen144/odoo,grap/OpenUpgrade,Endika/OpenUpgrade,Endika/odoo,shingonoide/odoo,datenbetrieb/odoo,shingonoide/odoo,tvibliani/odoo,shingonoide/odoo,hassoon3/odoo,Nowheresly/odoo,odootr/odoo,BT-ojossen/odoo,funkring/fdoo,alexcuellar/odoo,grap/OpenUpgrade,eino-makitalo/odoo,ehirt/odoo,MarcosCommunity/odoo,jiangzhixiao/odoo,spadae22/odoo,eino-makitalo/odoo,eino-makitalo/odoo,jfpla/odoo,CatsAndDogsbvba/odoo,vnsofthe/odoo,synconics/odoo,sergio-incaser/odoo,Adel-Magebinary/odoo,Noviat/odoo,OpenUpgrade/OpenUpgrade,tvibliani/odoo,Endika/OpenUpgrade,rubencabrera/odoo,vnsofthe/odoo,alexcuellar/odoo,Endika/OpenUpgrade,OpenUpgrade/OpenUpgrade,sysadminmatmoz/OCB,OpenUpgrade/OpenUpgrade,mustafat/odoo-1,NeovaHealth/odoo,Elico-Corp/odoo_OCB,Adel-Magebinary/odoo,diagramsoftware/odoo,provaleks/o8,rubencabrera/odoo,stephen144/odoo,markeTIC/OCB,vnsofthe/odoo,glovebx/odoo,laslabs/odoo,CatsAndDogsbvba/odoo,makinacorpus/odoo,laslabs/odoo,hassoon3/odoo,BT-ojossen/odoo,dfang/odoo,Nowheresly/odoo,Endika/odoo,NeovaHealth/odoo,diagramsoftware/odoo,OpenUpgrade/OpenUpgrade,microcom/odoo,tvibliani/odoo,microcom/odoo,bplancher/odoo,factorlibre/OCB,spadae22/odoo,storm-computers/odoo,BT-ojossen/odoo,alexcuellar/odoo,datenbetrieb/odoo,alexcuellar/odoo,MarcosCommunity/odoo,Endika/odoo,sysadminmatmoz/OCB,leorochael/odoo,rubencabrera/odoo,CatsAndDogsbvba/odoo,ygol/odoo,grap/OpenUpgrade,Endika/OpenUpgrade,bplancher/odoo,dfang/odoo,BT-ojossen/odoo,sysadminmatmoz/OCB,provaleks/o8,CatsAndDogsbvba/odoo