There are few bugs in current INCLUDEJS implementation:
1. Path to file is not being encoded with rawurlencode. If style name is "te#st", <!-- INCLUDEJS test1.js --> results in styles/te#st/test1.js instead of styles/te%23st/test1.js
2. It does not handle URL parameters correctly. <!-- INCLUDEJS test1.js?test --> tries to locate test1.js?test instead of test1.js
3. It adds assets_version to URLs that have # or ? in it. For example, <!-- INCLUDEJS test1.js#test --> results in test1.js#test?assets_version=1
4. It adds assets_version to URLs hosted on other servers. For example, <!-- INCLUDEJS http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js --> results in http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js?assets_version=1
First 2 bugs were caused by INCLUDEJS implementation, last 2 bugs were caused by assets_version implementation. I've put them all in one ticket because bug fixes for all 4 bugs require same code changes.