At what point did God tell Joshua that not one Canaanite should be spared?
God gave that instruction when Canaanite wickedness had finally reached its full mark. After nearly 490 years from Abraham’s call, and as Joshua was about to lead Israel into the land, they had refused to turn from iniquity and had sunk deeper into immorality and abominations.
Les explains that for four hundred and almost ninety years, from Abraham’s call until Joshua led Israel in, God waited for the Canaanites to turn from their iniquity. They did not turn; instead they went deeper into wickedness, immorality, and abominations. Finally they reached the point where God could tell Joshua to instruct the children of Israel not to spare a one of them. The reason was that unless Israel totally cleansed the land, it would not be long until their sons and grandsons became just like the Canaanites. Les illustrates this with rotten potatoes or apples: one bad one quickly infects the whole container, so the rot must be removed or it will infect and destroy Israel.