abstract component
improve setup.py
log and ignore errors
minor change