Eveything is up to date, there is nothing to compile
This means that your contracts have already been compiled and there is no need to recompile them. You can verify this by looking in your build/ directory to verify that your contracts are there.
If they are not there, then you have an issue with your deployment script. If this is the case, then you are ...
To solve the error you need to pass the arguments of the constructor in your migration file.
Based on your two params:
// Deploy a single contract with constructor arguments
deployer.deploy(towater, ["string_1", "string_2"], ["0x15458ef540ade6068dfe2f44e8fa733c", "0x15458ef540ade6068dfe2f44e8fa734c"] );
Check the Truffle docs.