compatibility with composer