Required Functionality
Synth depends on OpenSSL, which frequently causes problems. Synth also has a lot of dependencies, making builds slow.
Proposed Solution
Synth only uses the information provided by the build.rs if both built in debug mode and run with specific environment variables. The parts related to git information in the Splash struct could be removed, the build-dependencies could be removed, and the build.rs could be removed. The build.rs could be partially replaced by cargo-platform, which would provide OS and ARCH info.
This would have no impact on the average user, as all suggested methods of installation have Synth built in release mode. As such this wouldn't be considered a major API change.
Use case
This will make maintaining Synth easier and will reduce compile time. This will also fix #353.
Required Functionality Synth depends on OpenSSL, which frequently causes problems. Synth also has a lot of dependencies, making builds slow.
Proposed Solution Synth only uses the information provided by the build.rs if both built in debug mode and run with specific environment variables. The parts related to git information in the Splash struct could be removed, the build-dependencies could be removed, and the build.rs could be removed. The build.rs could be partially replaced by cargo-platform, which would provide OS and ARCH info.
This would have no impact on the average user, as all suggested methods of installation have Synth built in release mode. As such this wouldn't be considered a major API change.
Use case This will make maintaining Synth easier and will reduce compile time. This will also fix #353.