Request JSON and JSON5 string output explicitly from PVA tools#98
Request JSON and JSON5 string output explicitly from PVA tools#98zhangt58 wants to merge 1 commit intoepics-base:masterfrom
Conversation
- see e5961df of pvAccessCPP repo - eliminated the json5 opt test on EPICS base version: - explicitly pass -M json for regular JSON string - while -M json5 for JSON5 string
|
See also epics-base/pvAccessCPP#201 |
|
Here are the use cases: To deal with JSON5 format, I have to install e.g.: |
|
Presumably, the JSON parser is backward compatible, for instance, |
|
The pvDataCPP and pvAccessCPP modules can still be built as stand-alone support modules against earlier versions of EPICS Base back to 3.15 and maybe even earlier, which is why the conditional is present in src/factory/printer.cpp. Removing the conditional would break that backwards compatibility. We have some CI builds on Appveyor which should demonstrate that as we do build pvAccessCPP against Base 3.15 (but Appveyor builds aren't reliable and frequently fail anyway). |
|
❌ Build pvDataCPP 1.0.52 failed (commit 8a9f665b77 by @zhangt58) |
-M jsonfor regular JSON string request-M json5for JSON5 string requestThe original intention is to make the JSON string output from PVA tools easily handled by Python without installing third-party libraries for JSON5. However, the
-M jsonreturns the JSON5 format by default (EPICS base > 7.0.6.1).