add rst version
Add unittest to check the exception
clean up
add todo about json