forked from varnishcache/varnish-cache
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Introduce
$ABI [strict|vrt]
for VMOD descriptors
When versioning appeared in the VRT API, the goal was to allow loose ABI compliance on loaded VMODs based on the major/minor revision against which it was built. Strict checking was performed if Varnish was built from the master branch in the VCC code, but omitted by the child. This however has two flaws: 1) Release management might go wrong like it happened in 5.1.2 that got released from the master branch. 2) This doesn't solve the original problem that some VMODs might rely on supported symbols encompassed by the VRT major/minor while others may choose to integrate deeper with Varnish and lose guarantees. This patch retires the `VCS_Branch` macro that is no longer needed and provides a new `$ABI` stanza that defaults to strict when omitted. To help discovery, in-tree modules advertise a strict match. To indicate that a VMOD needs the exact Varnish build to be loaded, the VMOD's metadata contains 0.0 for the VRT major/minor revision. In addition, both the VCC and child now perform the full ABI compliance check, picking the strict or vrt option depending on the VMOD's metadata. Closes varnishcache#2330
- Loading branch information
1 parent
9b7eaac
commit 2ce17c1
Showing
8 changed files
with
48 additions
and
25 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -26,6 +26,7 @@ | |
# SUCH DAMAGE. | ||
|
||
$Module debug 3 Development, test and debug | ||
$ABI strict | ||
|
||
DESCRIPTION | ||
=========== | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -33,6 +33,7 @@ | |
# SUCH DAMAGE. | ||
|
||
$Module directors 3 Varnish Directors Module | ||
$ABI strict | ||
|
||
DESCRIPTION | ||
=========== | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -26,6 +26,7 @@ | |
# SUCH DAMAGE. | ||
|
||
$Module std 3 Varnish Standard Module | ||
$ABI strict | ||
|
||
DESCRIPTION | ||
=========== | ||
|