Problem Description

After a few weeks sorting up and working with Python3 on my Mac Book Pro, the brew update failed to update and reported an error of aws command not found.

> brew update
aws codecommit credential-helper $@ get: aws: command not found
fatal: could not read Username for 'https://github.com/Homebrew/homebrew-boneyard': terminal prompts disabled

^Cerror: https://github.com/caskroom/homebrew-cask did not send all necessary objects

Resolution

The solution is straight through. Since aws cli is not found, it is a missed step in migrating Mac development environment from Python2 to Python3 -- the corresponding aws cli is not installed well to Python3.

My python environment is managed via PyEnv. When a new python version is installed, the upstream depeendencies are not maintained via requirement.txt so it needs a manual step to re-enable awscli.  

>pip3 install awscli --upgrade

For new app or repos with a close to ideal level code coverage, the populor code coverage solution on coverage metrics threshold check would be efficient. However, to maintain a legacy or low coverage level repo, it is not eonough to just check coverage percentage on metrics. This post described an idea to check coverage json diff with istanbul-diff on node.js repos.

Read more »

After upgrading hexo and dependencies in local repo package.json, when regenerating the github pages and pushed to remote repo, the customized domain starts to respond 404.

Check github, the way to add customized domain is to add a CNAME file with each domain in one line. If user tries to manaully configure his/her own domain on github settings tab, a CNAME file will be pegged automatically by github. However, the manually grown CNAME file will be purged in next posting time if hexo is not correctly configured.

Searching the hexo document, the place to hold this CNAME file is not local repo root folder but the root folder of hexo theme. In My case, it is ./themes/next-wuxubj-5.0.2/. If your hexo applies other theme, please change to the corresponding folder name. This way, the CNAME file will be preserved.