New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API/ABI changes review for Crypto++ #393

Closed
lvc opened this Issue Mar 20, 2017 · 5 comments

Comments

Projects
None yet
3 participants
@lvc

lvc commented Mar 20, 2017

The review of API/ABI changes for Crypto++ since 5_5_2 version: https://abi-laboratory.pro/tracker/timeline/cryptopp/

The report is updated 3 times a week. Hope it will be helpful for users and maintainers of the library.

Created with the help of open-source abi-tracker tool: https://github.com/lvc/abi-tracker

Thank you.

cryptopp-1

cryptopp-2

@noloader

This comment has been minimized.

Show comment
Hide comment
@noloader

noloader Mar 20, 2017

Collaborator

Thanks @lvc.

Thank you for doing this leg-work for us. We had a few ABI breaks that caused folks some trouble. This has been on my TODO list for some time. I looked at a few tools, but I did not carve out the time to perform the setups or learn how to use the tools.

We now have a new test in place that attempts to vet them since we were doing a poor job of identifying them in the past: cryptest-symbols.sh. Your service will make a great addition.

When testing versions 5.6.5 with 5.6.4, I recommend you perform a cp config.compat config.h. It attempts to preserve (as much as possible) behaviors and interfaces. I'm guessing it will make the score improve a bit. And to reiterate, it only needs to be done for 5.6.5.

Crypto++ 6.0 is our next release, so there will be a fair amount of planned breakage.

In a month or so, I'll close the report out to give folks time to view this report. I'll also cut it into the relevant documentation pages, like out page on QA and testing.

Thank you again.

Collaborator

noloader commented Mar 20, 2017

Thanks @lvc.

Thank you for doing this leg-work for us. We had a few ABI breaks that caused folks some trouble. This has been on my TODO list for some time. I looked at a few tools, but I did not carve out the time to perform the setups or learn how to use the tools.

We now have a new test in place that attempts to vet them since we were doing a poor job of identifying them in the past: cryptest-symbols.sh. Your service will make a great addition.

When testing versions 5.6.5 with 5.6.4, I recommend you perform a cp config.compat config.h. It attempts to preserve (as much as possible) behaviors and interfaces. I'm guessing it will make the score improve a bit. And to reiterate, it only needs to be done for 5.6.5.

Crypto++ 6.0 is our next release, so there will be a fair amount of planned breakage.

In a month or so, I'll close the report out to give folks time to view this report. I'll also cut it into the relevant documentation pages, like out page on QA and testing.

Thank you again.

@lvc

This comment has been minimized.

Show comment
Hide comment
@lvc

lvc Mar 21, 2017

Hello Jeffrey,

Fixed report for 5.6.5: https://abi-laboratory.pro/tracker/timeline/cryptopp/

Also added report for master branch.

Thank you.

cryptopp-3

lvc commented Mar 21, 2017

Hello Jeffrey,

Fixed report for 5.6.5: https://abi-laboratory.pro/tracker/timeline/cryptopp/

Also added report for master branch.

Thank you.

cryptopp-3

@noloader noloader added the ABI/API label Apr 15, 2017

@elthommy

This comment has been minimized.

Show comment
Hide comment
@elthommy

elthommy Sep 15, 2017

Hi @lvc
I just came into this page and I wanted to aks you a question.
I am maintaining an old cryptopp package and I was trying to generate an ABI report to compare 5.6.0 and 5.6.1 (yes I know, old versions :-) and I ran into an issue with abi-compliance-checker:
It fails at compilation time because of dll.h: this header causer an error when it is not included first
#error To use the DLL version of Crypto++, this file must be included before any other Crypto++ header file
But it works only if I exclude dll.h from the checks.
Did you face similar issue? It seems dll.h is also not referenced in your ABI report.
I was wondering if we can ignore it
Cheers

elthommy commented Sep 15, 2017

Hi @lvc
I just came into this page and I wanted to aks you a question.
I am maintaining an old cryptopp package and I was trying to generate an ABI report to compare 5.6.0 and 5.6.1 (yes I know, old versions :-) and I ran into an issue with abi-compliance-checker:
It fails at compilation time because of dll.h: this header causer an error when it is not included first
#error To use the DLL version of Crypto++, this file must be included before any other Crypto++ header file
But it works only if I exclude dll.h from the checks.
Did you face similar issue? It seems dll.h is also not referenced in your ABI report.
I was wondering if we can ignore it
Cheers

@noloader

This comment has been minimized.

Show comment
Hide comment
@noloader

noloader Jan 22, 2018

Collaborator

ABI reset at Crypto++ 6.0 release.

Collaborator

noloader commented Jan 22, 2018

ABI reset at Crypto++ 6.0 release.

@noloader

This comment has been minimized.

Show comment
Hide comment
@noloader

noloader Feb 21, 2018

Collaborator

@lvc, @mouse07410, @MarcelRaad,

We released Crypto++ 6.0 last month. The release reset our former ABI breaks. The commit that became Crypto++ 6.0 was b6c6684451f9.

We are getting ready to release Crypto++ 6.1. It is a planned rollup of Crypto++ 6.0 fixes. We would like to ensure we did not break the ABI.

@ivc, could you perform and ABI scan for us? Crypto++ 6.1 will be our long term release since it has the minor bug fixes. This should be the last release for a while.

Collaborator

noloader commented Feb 21, 2018

@lvc, @mouse07410, @MarcelRaad,

We released Crypto++ 6.0 last month. The release reset our former ABI breaks. The commit that became Crypto++ 6.0 was b6c6684451f9.

We are getting ready to release Crypto++ 6.1. It is a planned rollup of Crypto++ 6.0 fixes. We would like to ensure we did not break the ABI.

@ivc, could you perform and ABI scan for us? Crypto++ 6.1 will be our long term release since it has the minor bug fixes. This should be the last release for a while.

@noloader noloader closed this Jul 13, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment