abaplint-sci-client
abaplint-sci-client copied to clipboard
Performance: use zero dependencies, but use the dependencies defined in abaplint.json
I think also @ed-holland created an issue for this somewhere
But, instead of finding and serializing dependencies in the ABAP system, have the server take the dependencies from abaplint.json.
It would have to be a setting per repository in the ABAP configuration.
Largest problem is probably handling authentication if the dependencies are not public
See my comment on #181.
Having a one2one relation for the dependency repository greatly improves performance. It is a one-of thing to do.
As these dependencies are SAP code, it can not be public (internet wide), but will be internal repositories. Their read-access can be public to the linter.
some kind of .env with an api key for read only access should work. Env var can be also transfered to docker then so should be convenient.
And also such approach needs some convenient one-click way to refresh dependedency repo
api key: yea, probably good enough
but in the general case there are multiple hosts and multiple keys/logins for each host
multiple ... I don't think that in reality there will multiple hosts. private repos will probably be from a single corporate server. But there should be such an option.
quick ideas:
- multiline env
API_KEY=http://gitlab.com/owner**\n**apikey1**\n**http://gitlab.com/owne2r**\n**apikey2multiline because keys may have unpredictable symbols - a docker volume with config - less universal though :(
- envs with similar prefix:
API_KEY_1 = http://gitlab.com/owner**:**apikey1(no multiline, just need a symbol which is not used or predictably used in an url)API_KEY_2 ...
^ I like number 3
see also my comments in #181.
I'd also prefer envs.