1976 Commits

Author SHA1 Message Date
de20a37b5e Set version numbers for release 7.1.5 2021-10-01 12:35:02 -05:00
e452aa7d8b GHA: Back out cache key changes but add rtems_target 2021-10-01 11:52:35 -05:00
a58ed6f93e GHA: Fix oops in key 2021-10-01 11:32:10 -05:00
99925ba691 Updated release notes for PVA 7.1.5 (EPICS 7.0.6.1) 2021-10-01 11:25:04 -05:00
a08c1bcca2 Delete a few obsolete text files 2021-10-01 11:12:23 -05:00
37b6a8f936 GHA: Change cache key to trigger reconstruction for RTEMS-4.9 2021-10-01 09:56:40 -05:00
99432d6809 caProvider: Minor cleanup 2021-10-01 09:54:48 -05:00
161eac3a38 caProvider: speed up monitor list handling
Not a major speed-up since the list of monitors is per-channel,
but using wptr::expired() is more efficient than wptr::lock().
2021-10-01 09:54:14 -05:00
671f5a406c caProvider: Speed up addChannel()
Use wptr::expired() instead of wptr::lock() for testing if the
shared pointer is still valid, *much* faster!
Also switched from index to interator, but that's incidental.
2021-10-01 09:32:11 -05:00
75e3d9e114 Appveyor configuration tweaks
- Re-order variables and jobs for Appveyor "Job name" display.
- Enable emails to core-talk on build failures.
2021-09-17 14:56:24 -05:00
0929d661a3 Update .ci version and CI-builder configurations
GHA:
 - Drop builds for Ubuntu-16.04
 - Added build for RTEMS-5 on pc686-qemu
 - Disable tests on RTEMS-4.10
 - Added builds for Windows debug and mingw
 - Explicit names for each build
 - Added timeouts for tests
 - Upload .tapfile artifacts

Appveyor:
 - Added timeouts for tests
 - Update gcc build to use 2019 worker image
2021-09-17 13:18:07 -05:00
7240f97e76 Fix error string in ca/dbdToPv.cpp 2021-09-17 11:51:23 -05:00
cd152c37a4 add checks for null pointers 2021-08-10 11:11:59 -05:00
9a88e5e879 fix issue with null pointer check for DBR_ENUM 2021-08-04 11:19:47 -05:00
deefe12491 avoid probleem with pv structures that do not have value subfield 2021-07-28 23:33:01 -05:00
a5cae7ad92 Set next development version 2021-06-30 07:11:03 -07:00
3e6e6ae74b Update version numbers for release 7.1.4 2021-06-30 07:07:49 -07:00
f72c7e653c pvput: make sure we have valid values after all the checks 2021-03-09 10:56:40 -08:00
674264db3d pvput: when we accept a bare value with a "=" char, verify if the
".value" field is of type "string"
2021-03-09 10:56:40 -08:00
546de6fe32 pvput: When breaking down command line vales into field=value pairs,
verify if the "field" is a valid remote type. If not, tread it as a
bare value
2021-03-09 10:56:40 -08:00
55af545099 pvput: Move command line values break down logic to the Putter class
where we have access to the remote type
2021-03-09 10:56:40 -08:00
e1c1a4bc1b Set next development version 2021-02-26 12:58:51 -08:00
64c284cd41 Update version numbers for release 7.1.3 2021-02-26 12:57:27 -08:00
c8f6ce329c doc 2021-02-25 12:18:11 -08:00
e2b733a78f Enable building of pvtools to all except vxWorks, RTEMS and iOS. 2021-01-26 17:23:17 -08:00
2702e60937 increase TCP timeout to 40 seconds 2021-01-14 18:15:30 -08:00
4638c11c8c Fix for 3.15 DLL builds 2021-01-05 11:01:02 -08:00
7910f7a794 Another include epicsGuard.h missing for 3.15 builds 2021-01-05 11:01:02 -08:00
62cbbd6722 caChannel: Use epicsMutex and epicsGuard<> 2021-01-05 11:01:02 -08:00
ece8b94357 include epicsGuard.h for 3.15 builds 2021-01-05 11:01:02 -08:00
6d19349a5d Fixes for testConveyor on RTEMS 2021-01-05 11:01:02 -08:00
f3486211f5 Simplify testConveyor 2021-01-05 11:01:02 -08:00
bf04c69bda Conveyor: Don't try to support self-deletion 2021-01-05 11:01:02 -08:00
e0c2496e52 Add a Notification constructor that also sets client 2021-01-05 11:01:02 -08:00
e00ccbeb9c Conveyor: Change run() to follow MAD's skeleton
This is still broken if a client method (notify() or the destructor)
deletes the conveyor, which accesses data members before exiting.
2021-01-05 11:01:02 -08:00
a9725834dc Add tests for notifyConveyor 2021-01-05 11:01:02 -08:00
a078e03041 Notifyer: Give conveyor threads a unique name 2021-01-05 11:01:02 -08:00
98e81a542e Use epicsMutex and epicsEvent instead of pv::data equivalents 2021-01-05 11:01:02 -08:00
0332d0f2c1 notifierConveyer destruction protection
Remove the work variable
2021-01-05 11:01:02 -08:00
345f2782cd caContext: Restore existing context in constructor
Don't assume other code might be using our context.
Fix destructor to reattach the right context.
2021-01-05 11:01:02 -08:00
b0b2228558 Make ca::Attach::context a reference, not a smart pointer 2021-01-05 11:01:02 -08:00
bfe35cc1d6 Remove testdbCleanup() call, causes major problems 2021-01-05 11:01:02 -08:00
c63c09a834 Oops, permit building with Base-3.15 2021-01-05 11:01:02 -08:00
964a6bc33a Major updates in testCa, run on RTEMS under QEMU 2021-01-05 11:01:02 -08:00
92002b6ba2 Include pvAccess.h before exportSharedSym's in caContext.cpp 2021-01-05 11:01:02 -08:00
33cc9b1fdb Define epicsExportSharedSymbols in ca/notifierConveyor.cpp 2021-01-05 11:01:02 -08:00
23c9b09c1e Re-enable running of testCaProvider on Windows 2021-01-05 11:01:02 -08:00
8b3a057a69 Have notifierConveyor trap and drop any exceptions 2021-01-05 11:01:02 -08:00
f9c40e96cf Collect ca_client_context operations
Each instance of the caContext class represents a separate CA context,
so each CAChannelProvider creates one and keeps a shared_ptr to it,
making that available to its channels and channel operations. These
also take their own shared_ptr to it as well so the context cannot be
destroyed while it might be needed.

A related caContext Attach object is intended to be short-lived, and
to be allocated on the stack. When created it saves the current CA
context for the thread, replacing it from the caContext given to its
constructor. CA operations will now use the attached context. When the
Attach destructor runs it detaches the thread from the current context
(checking still has the expected value) and re-attaches the thread to
any context that was saved by the constructor.
2021-01-05 11:01:02 -08:00
25dde0f4ba Make Codacy happier 2021-01-05 11:01:02 -08:00