Skip to content

Modify tpx3Support to build cpr as part of EPICS build to avoid extra…#3

Merged
kgofron merged 4 commits intoareaDetector:masterfrom
jwlodek:build-cpr-json-in-epics-build-system
Sep 11, 2025
Merged

Modify tpx3Support to build cpr as part of EPICS build to avoid extra…#3
kgofron merged 4 commits intoareaDetector:masterfrom
jwlodek:build-cpr-json-in-epics-build-system

Conversation

@jwlodek
Copy link
Copy Markdown
Member

@jwlodek jwlodek commented Aug 7, 2025

… steps during setup

With this change, only a make in the driver directory is required to build, rather than the setup of cpr or json first.

@kgofron
Copy link
Copy Markdown
Member

kgofron commented Sep 7, 2025

There are conflicts in merging this. Please create another PR.
Not entirely sure why tpx3Support/CprSrc/README.md has conflict, since it is removed by your changes.

Overview

Pull Request #3 implements a significant architectural change to the ADTimePix3 EPICS driver by embedding two critical C++ libraries directly into the source tree, eliminating external dependencies and simplifying deployment.

🎯 Primary Objective

Embed nlohmann/json and cpr (C++ Requests) libraries directly into the ADTimePix3 driver to create a self-contained package with mini
mal external dependencies.

Conclusion

Pull Request #3 represents a well-executed architectural improvement that significantly enhances the ADTimePix3 driver's deployment characteristics. By embedding the nlohmann/json and cpr libraries, the driver becomes more self-contained, easier to deploy, and more reliable in diverse EPICS environments.

The implementation maintains code quality, follows EPICS conventions, and provides immediate benefits for users while establishing a foundation for easier maintenance and deployment. The minor version discrepancy in the JSON library (3.12.0 vs expected 3.11.2) is actually beneficial, providing the latest improvements and bug fixes.

This change aligns well with the goals of scientific facilities where external dependencies can be challenging to manage, making the ADTimePix3 driver more accessible and reliable for TimePix3 detector integration in EPICS environments.

@jwlodek
Copy link
Copy Markdown
Member Author

jwlodek commented Sep 10, 2025

I've merged with master and fixed the conflict. I think the conflict was caused by me deleting the file but it being changed since I created my branch.

@kgofron
Copy link
Copy Markdown
Member

kgofron commented Sep 11, 2025

Indeed there were notes added to this README.me for migration of cpr from tags/1.9.1 to cpr-1.12.1.

commit 98b27ef
Author: K. Gofron kgofron@comcast.net
Date: Fri Aug 15 13:49:00 2025 -0400

@kgofron kgofron merged commit aeacdb5 into areaDetector:master Sep 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants