> Am 29.11.2025 um 13:52 schrieb Rony G. Flatscher <[email protected]>: > > Looking into this a little bit further, it seems that it would be sufficient > to re-establish the documentation for these functions: > > B.2.1. RexxUtil Semaphore functions > > The following RexxUtil functions related to semaphore-processing have been > deprecated. > > SysCloseEventSem SysPostEventSem > SysCloseMutexSem SysPulseEventSem > SysCreateEventSem SysReleaseMutexSem > SysCreateMutexSem SysRequestMutexSem > SysOpenEventSem SysResetEventSem > SysOpenMutexSem SysWaitEventSem > It would be necessary to obtain the documentation from ooRexx 4.2.0 and > incorporate it into the current documentation for rexxref.pdf, adding a note > that it is not currently available for the macOS platform. > > Additionally, the deprecation notices from Appendix B in rexxref.pdf should > be removed then. > > We would need to create a RFE for undeprecating it to record the > re-establishment of the documentation against it. > > Would there be any takers for this task? >
I am unable to take on this task but I looked into it quickly These are found in current trunk SysRexxUtil.cpp (both for Win and *nix in trunk) SysRexxUtilFunctions.h (both for Win and *nix in trunk) And apparently they are built for all platforms mig.xml (in /docs/trunk/rexxref/en-US) This part should be changed: <section id="deprecated.semaphore"><title>RexxUtil Semaphore functions</title> <para>The following RexxUtil functions related to semaphore-processing have been deprecated. ... Present in 4.2.0 release (/docs/releases/4.2.0/trunk/rexxref/en-US/) xconcur.xml rexutil.xml So it seems only book rexxref in affected. I was baffled by Rick’s remark that it works on *nix but not on Mac. Today MacOS *is* based on Darwin, which in turn is based on BSD Unix. So it *should* work on Mac. Just a thought: ooRexx 4.0 was released in 2009 ooRexx 4.2 in 2014. During that period the Mac was in a transition from PowerPC to Intel processors, the first Mac with Intel Processor arriving around 2009. Could it be that the notion of Mac non-function stems from testing it on PowerPC based Macs? Speaking of tests - I have not been able to find any test cases for these functions, have any been written, or could someone write some? I do not have the skills for doing so but would happily add them to Jenkins test platform. > ---rony > > > > On 09.11.2025 00:54, Rony G. Flatscher wrote: >> On 08.11.2025 23:11, Rick McGuire wrote: >>> >>> >>> On Sat, Nov 8, 2025 at 5:00 PM Rony G. Flatscher <[email protected] >>> <mailto:[email protected]>> wrote: >>>> On 08.11.2025 21:25, Rick McGuire wrote: >>>>> They got deprecated because they are impossible to implement on every >>>>> platform. >>>> It seems that in >>>> <https://sourceforge.net/p/oorexx/discussion/408478/thread/4d937f7069/?limit=25#c04f> >>>> >>>> <https://sourceforge.net/p/oorexx/discussion/408478/thread/4d937f7069/?limit=25#c04f> >>>> an inter-process synchronization is sought on Windows. (The built-in >>>> classes EventSemaphore and MutexSemaphore would work on all platforms, but >>>> within a single process only.) >>>> >>>> As we have a few Sys-functions (rexxref.pdf, "8.2. List of Rexx Utility >>>> Functions") that work only on Windows (e.g., SysBootDrive()) and a few >>>> others that work only on Unix (e.g., SysCreatePipe()), we could probably >>>> undeprecate these Windows-only Sys-functions as long as they can be >>>> implemented on Windows. This would allow the ooRexx users exploiting these >>>> Sys-functions to keep on using ooRexx. >>>> >>> >>> The functions also work on the various *ix variants, except for the mac, >>> They are still getting built for all the platforms, but are useless on the >>> mac. If they get undeprecated, then the mac issue needs to be addressed, >>> either by no longer including the functions on the mac build or by >>> potentially raising a "Not supported" error on that platform. >> Thank you for the information and the hint about the Mac platform! >> >> ---rony >> >> >> >> >> >>>>> >>>>> On Sat, Nov 8, 2025 at 3:21 PM Rony G. Flatscher <[email protected] >>>>> <mailto:[email protected]>> wrote: >>>>>> Here from rexxref.pdf: >>>>>> B.1. Incompatible ooRexx features >>>>>> >>>>>> Functions or features which have been changed in ooRexx 5.0 in a way >>>>>> that will lead to >>>>>> incompatibilities with prior versions. >>>>>> >>>>>> B.1.1. RexxUtil SysTempFileName >>>>>> >>>>>> SysTempFileName on Unix-like platforms now behaves identically to >>>>>> SysTempFileName on Windows. >>>>>> It no longer uses only the first five characters of the file name part >>>>>> of the template, appending a >>>>>> random string to make it unique. It also no more prepends an operating >>>>>> system-chosen writable path if >>>>>> no path is given in the template. Instead it now uses the same >>>>>> filler-based mechanism as the Windows >>>>>> version does. >>>>>> >>>>>> Existing ooRexx programs using SysTempFileName on Unix-like platforms >>>>>> will need to be amended. >>>>>> >>>>>> B.2. Deprecated Rexx features >>>>>> >>>>>> In exceptional circumstances, ooRexx may deprecate functions or >>>>>> features, which means the use >>>>>> of these functions is discouraged, documentation is no longer provided, >>>>>> and bug reports against >>>>>> deprecated functions will not be accepted. Reasons for deprecation >>>>>> include broken functionality, >>>>>> features that were never officially documented, or functions no longer >>>>>> required. >>>>>> Although existing code using deprecated functions is expected to >>>>>> continue to work as-is, you are >>>>>> strongly encouraged to migrate to the replacement functionality, as >>>>>> these functions may be removed >>>>>> from future releases of the interpreter. >>>>>> >>>>>> B.2.1. RexxUtil Semaphore functions >>>>>> >>>>>> The following RexxUtil functions related to semaphore-processing have >>>>>> been deprecated. >>>>>> >>>>>> SysCloseEventSem SysPostEventSem >>>>>> SysCloseMutexSem SysPulseEventSem >>>>>> SysCreateEventSem SysReleaseMutexSem >>>>>> SysCreateMutexSem SysRequestMutexSem >>>>>> SysOpenEventSem SysResetEventSem >>>>>> SysOpenMutexSem SysWaitEventSem >>>>>> >>>>>> They have been superseded by the new EventSemaphore Class and >>>>>> MutexSemaphore Class. >>>>>> ... cut ... >>>>>> ---rony >>>>>> >>>>>> >>>>>> On 08.11.2025 21:14, Rony G. Flatscher wrote: >>>>>>> There are a couple of Sys-functions that got deprecated by removing >>>>>>> their documentation from the installation package of ooRexx 5.1.0. >>>>>>> Still, these functions get used and it seems that their system-wide >>>>>>> functionality cannot be replaced by any of the new ooRexx classes. >>>>>>> >>>>>>> The thread in >>>>>>> <https://sourceforge.net/p/oorexx/discussion/408478/thread/4d937f7069/?limit=25#c04f> >>>>>>> >>>>>>> <https://sourceforge.net/p/oorexx/discussion/408478/thread/4d937f7069/?limit=25#c04f> >>>>>>> leads to the question: >>>>>>> >>>>>>> "Can't the native functions be undeprecated? It doesn't seem like there >>>>>>> is a replacement for key features they provide, like the ability to >>>>>>> share across processes including non-Rexx processes that can also >>>>>>> interact with the underlying operating system objects." >>>>>>> >>>>>>> Would there be any downsides, if re-instatitng the documentation of >>>>>>> these Sys-functions and formally removing the "deprecate" tag on them? >>>>>>> >>>>>>> ---rony >>>>>>> > > _______________________________________________ > Oorexx-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/oorexx-devel
_______________________________________________ Oorexx-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/oorexx-devel
