Skip to content

Conversation

@pheest
Copy link
Collaborator

@pheest pheest commented Oct 31, 2025

This PR implements long strings and integers.
I reduced it from my existing Windows merge and included only the relevant strings and integers stuff.

This PR works from @andrewstarritt PR #30 and includes tests and some corrections.

pheest and others added 30 commits October 28, 2022 19:44
…, resulting in build errors

Replaced with use of xcopy for windows - a better approach could be found, I think.

A DLL imported as a Python module needs to have the extension .pyd - overrode SHRLIB_SUFFIX_BASE to create _dbapi.pyd.

Also added Windows library dependencies.
… make them conditional on epics version number.
…CONFIG_BASE for the definition of the INSTALL macro.

epicsThreadExitMain is deprecated by recent EPICS base versions (and resolves to cantProceed). Being unsure as to what best to do about this, I commented it out in devSupMain.cpp.

Python 2.7 has been obsoleted and won't install on the runner without taking special measures.
Being unsure what to do about this, I have commented out builds that invoke 2.7.

Github Windows-latest (i.e. Windows server 2022) is installed with VS2022 (not VS2019).
Use of the debug build configuration will seek to link with the Python debug libraries that are not normally installed. I have a solution to this problem but we should debate how to proceed.

Github Windows server 2019 is, I think, installed with VS2019, this should build OK with default configuration.
On Windows, the library isn't in a system folder so the fully-qualified path is required.
…to the linker order issue.

Commissioned use of nose testing on Windows.
This requires:
a. (already noted) issue regarding simultaneous temporary file read and write to be addressed in util.py.
b. Windows .pyd file does not search PATH for DLLs - instead the EPICS base path has to be explicitly added in __init__.py with os.add_dll_directory.

Tested with Python 3.11 on Windows.
pheest and others added 27 commits October 13, 2023 16:44
Excluded int64 and long string for that reason.
Base 3.14 doesn't work because RuntimeError: Requires Base >=3.15.
…ing messages.

This branch focuses only on long strings and ints.
@pheest pheest requested review from tynanford and zhangt58 October 31, 2025 17:11
@tynanford
Copy link
Collaborator

Thanks @pheest . After #43 is merged then I think the diff here will get much smaller and it would be good to also squash some of the commit history

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.

3 participants