Merge latest upstream changes plus unf warning fix back to my master branch