AmrDeveloper / GQL

Git Query language is a SQL like language to perform queries on .git files with supports of most of SQL features such as grouping, ordering and aggregations functions
https://amrdeveloper.github.io/GQL/
MIT License
3.3k stars 90 forks source link

Don't use `git2` default features as they are not needed. #4

Closed Byron closed 1 year ago

Byron commented 1 year ago

This reduces the amount of dependencies from 102 to 94.


❯ cargo tree  | wc -l
     102

GQL ( master) +54 -2 [!]
❯ gco -b no-featu

GQL ( master) +54 -2 [!]
❯ hx Cargo.toml

GQL ( master) +55 -3 [!] took 23s
❯ cargo tree  | wc -l
      94
Byron commented 1 year ago

Please note that I also thought I'd look into what it would mean to switch from git2 to gix, but felt I wouldn't be of much help here since it appears there is not a single test to validate the new gix backend against.

If that changes and you are interested in the additional performance you'd undoubtedly get I'd be happy to do an oxidization analysis to see if gix provides all the features you'd need. From what I saw, the answer would be a positive one and a transition is already possible.

AmrDeveloper commented 1 year ago

Hello @Byron,

Thank you for reducing dependencies.

For now all i used from Git2 is the read feature and I Think yes gix will be a good option and will cover the project need, Until test functions are created to cover the backend i will try gix in side project or maybe in other branch to get familiar with it and check the other features.

Thank you, Amr Hesham