Truffle Upgrades on Windows: Error: Artifacts are from different compiler runs

Hi @marsxr,

I am sorry that you have this issue on Windows.

Thanks for the detailed steps, I can reproduce on Windows 10. This will help track down the issue.

> npx truffle migrate

Compiling your contracts...
===========================
√ Fetching solc version list from solc-bin. Attempt #1
> Everything is up to date, there is nothing to compile.

...

2_breaking_migration.js
=======================

Error: Artifacts are from different compiler runs
    Run a full recompilation using `truffle compile --all`
    https://zpl.in/upgrades/truffle-recompile-all
    at reconstructSolcInputOutput (C:\Users\andre\projects\mars\node_modules\@openzeppelin\truffle-upgrades\src\validate.ts:72:15)
    at Object.validateArtifacts (C:\Users\andre\projects\mars\node_modules\@openzeppelin\truffle-upgrades\src\validate.ts:20:29)
Truffle v5.1.49 (core: 5.1.49)
Node v10.16.3
> npx truffle version
Truffle v5.1.49 (core: 5.1.49)
Solidity - ^0.6.0 (solc-js)
Node v10.16.3
Web3.js v1.2.1

I recommend using Windows Subsystem for Linux (WSL) for smart contract development: Solidity Smart Contract development on Windows

I wasn’t able to reproduce on WSL2.