Hi team,
The version requirement {:crc32cer, "< 1.0.0"} introduced with version 2.0.0 blocks upgrading brod to version 4.4.1 and later.
See this output from an igniter Mix task:
Resolving Hex dependencies...
Resolution completed in 0.259s
Because "brod >= 4.5.2" depends on "kafka_protocol 4.3.2" which depends on "crc32cer 1.1.2", "brod >= 4.5.2" requires "crc32cer 1.1.2".
And because "kaffe >= 2.0.0" depends on "crc32cer < 1.0.0", "brod >= 4.5.2" is incompatible with "kaffe >= 2.0.0".
And because "your app" depends on "brod 4.5.2", "kaffe >= 2.0.0" is forbidden.
So, because "your app" depends on "kaffe ~> 2.0", version solving failed.
After browsing through the brod and kafka_protocol changes regarding the crc32cer version bump from 0.1.12 to 1.0.1 and later there was no obvious blocker for that upgrade.
Let me know if you’re interested in a PR then I’ll give it a try.