[CDRIVER-2369] Don't bundle Snappy Created: 13/Nov/17  Updated: 28/Oct/23  Resolved: 16/Nov/17

Status: Closed
Project: C Driver
Component/s: Build, libmongoc
Affects Version/s: 1.8.0
Fix Version/s: 1.8.2

Type: Improvement Priority: Major - P3
Reporter: A. Jesse Jiryu Davis Assignee: A. Jesse Jiryu Davis
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

We've attempted to bundle libsnappy into the C Driver, to provide Snappy compression on systems where libsnappy has not already been installed. We do this very oddly, however: instead of compiling Snappy's code into the C Driver, we actually compile libsnappy as a separate installable (or several installables) and install it into the system library path alongside libmongoc. This has caused many problems for people who want to link against libmongoc: they must now add -lsnappy to the link line to link to libmongoc, and they need a C++ linker.

If we compiled Snappy's source into libmongoc, then libmongoc would depend on the C++ standard library, and it would still require a C++ linker.

This is not worth the mess for the sake of better compression without depending on a system library. Users who want Snappy will need to install it before building the driver. We'll unbundle Snappy in 1.8.2.



 Comments   
Comment by Githook User [ 17/Jan/18 ]

Author:

{'name': 'Jeremy Mikola', 'email': 'jmikola@gmail.com', 'username': 'jmikola'}

Message: CDRIVER-2369 remove bundled snappy from .gitignore
Branch: master
https://github.com/mongodb/mongo-c-driver/commit/68c42f33ffaa1442930d1e8c42fc0fb911f3668a

Comment by Githook User [ 16/Jan/18 ]

Author:

{'email': 'jmikola@gmail.com', 'name': 'Jeremy Mikola', 'username': 'jmikola'}

Message: CDRIVER-2369 remove bundled snappy from .gitignore
Branch: jmikola-patch-1
https://github.com/mongodb/mongo-c-driver/commit/d79bdb5997033c04fe026fc68da1c35c6a62ceeb

Comment by Githook User [ 12/Dec/17 ]

Author:

{'name': 'A. Jesse Jiryu Davis', 'email': 'jesse@mongodb.com', 'username': 'ajdavis'}

Message: CDRIVER-2369 the next release won't bundle snappy
Branch: debian
https://github.com/mongodb/mongo-c-driver/commit/a79fd2eb662c28f78e95b1f499f0948b7092a937

Comment by Githook User [ 17/Nov/17 ]

Author:

{'name': 'A. Jesse Jiryu Davis', 'username': 'ajdavis', 'email': 'jesse@mongodb.com'}

Message: CDRIVER-2369 fix mingw evergreen test
Branch: master
https://github.com/mongodb/mongo-c-driver/commit/c80f6a62b1e809b9a407b9ed1dcdbd18783fdccd

Comment by Githook User [ 17/Nov/17 ]

Author:

{'name': 'A. Jesse Jiryu Davis', 'username': 'ajdavis', 'email': 'jesse@mongodb.com'}

Message: CDRIVER-2369 update evergreen's build + link tests
Branch: master
https://github.com/mongodb/mongo-c-driver/commit/24d83d20f86ecae129a231cc44c80ffdd73abcc2

Comment by Githook User [ 17/Nov/17 ]

Author:

{'name': 'A. Jesse Jiryu Davis', 'username': 'ajdavis', 'email': 'jesse@mongodb.com'}

Message: CDRIVER-2369 don't bundle snappy
Branch: master
https://github.com/mongodb/mongo-c-driver/commit/c7f63c061a3b2c4395d1679da6e70da6cc0ad860

Comment by Githook User [ 16/Nov/17 ]

Author:

{'name': 'A. Jesse Jiryu Davis', 'username': 'ajdavis', 'email': 'jesse@mongodb.com'}

Message: CDRIVER-2369 don't bundle snappy
Branch: r1.8
https://github.com/mongodb/mongo-c-driver/commit/169866ade88f031fa72480ad423ec8b6ce4f3c64

Comment by Githook User [ 16/Nov/17 ]

Author:

{'name': 'A. Jesse Jiryu Davis', 'username': 'ajdavis', 'email': 'jesse@mongodb.com'}

Message: CDRIVER-2369 don't bundle snappy
Branch: r1.8
https://github.com/mongodb/mongo-c-driver/commit/d92b4133b32281894ba5ae8678a1a11a1f7b4309

Generated at Wed Feb 07 21:15:01 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.