Pure rust implementation of the wire protocol#22
Conversation
|
Running the tests into pure_rust branch, I got this result: So I changed the ProtocoloVersion enum and the 'protocolos' array into connect(), enabling the V13(my firebird server is the 3.0.4). Now, the tests result in this: |
|
@juarezr, you can help us running the tests of this PR? |
|
|
@juarezr, right now, this fork should work with firebird versions below 3.0 or 3.0 and above with the To work with Firebird 3.+ without You can help by running the tests and creating new tests if you want. |
|
Maybe I can setup a CI with Github actions for pull request validation and for release if this is desired.
I barely know how firebird wire protocol works, but I'll need to further study and research. I'll try to get some spare time to help here. |
I had in mind to do that, but if you can help, will be nice. You can make a pull request with your github actions for test the lib. I think we need actions(or steeps) for test the 3.* and 2.* firebird versions, especially the wire implementation |
|
@juarezr, If you want, you can join us on the https://t.me/rsfbclient |
I'll try to setup a action for handling tests between FirebirdSQL versions triggering on each pull request. |
|
Should work with firebird 3 now |
All tests passing here |
What is the next steps now? Fix the ignored tests? |
|
There is still a bit of TODOs to fix and some tests i need to add, like a select with a lot of fields will not receive all columns because of one TODO.
|
|
Awesome! This is starting to work! And coverage is starting to spread over all code (75%)! |
and fixed some panics found with it
|
All tests working here. For me, we can merge. |
Work in progress implementation of the wire protocol in rust.
Resources to help:
Protocol Messages
Implementation in python
Firebird source code explorer
Firebird wire protocol documentation
Closes #13