Better not mixing 0.3.1 and 0.4. I know this is some kind of a problem for sure. But better to look what is installed and which version is getting where. Those error-messages mostly results on about two possible reasons:
1.) You have build your own package, which got another version than we have within stable or testing. Then you have to configure that within your pacman.conf to ignore that concrete package.
2.) You have different sources configured for an installation, resulting between something stable or / and testing. That would result into weird system-behaviour for sure.
To review the space on a partition: Do you need some help?
Human being in favor with clear principles and so also for freedom in soft- and hardware!
Certainly anyone who has the power to make you believe absurdities has the power to make you commit injustices: For a life of every being full with peace and kindness, including diversity and freedom. Capitalism is destroying our minds, the planet itself and the universe in the end!