Indeed for the wxWidgets driver it is bad too. When I first started
using PLplot I spent a lot of time wondering why my wxWidgets apps
kept "crashing" It turned out to be mostly due to plplot exit calls
when e.g. the Hershey font files weren't found.

Also for thread safety we are likely going to have to remove the
global plsc variable and instead have a plinit function that returns a
plstream * as a void * to be passed back in with every API call (as is
done in libcurl for example) so there are now two reasons to need a
new API.

One other item I had on my list for PLPlot 6 was adding defaults for
the legend/colourbar with separate functions to change these values as
needed.

Something I have also brought up in the past that I think needs to be
addressed is memory management in PLPlot, but I am not sure what the
best way forward with this is. Suggestions welcome.

Phil

On 13 May 2015 at 22:02, Andrew Ross <andrewr...@users.sourceforge.net> wrote:
> On Tue, May 12, 2015 at 02:51:12PM -0400, Hazen Babcock wrote:
>>
>> This e-mail is to provide a summary of what we had discussed, please let
>> me know if I left anything out. I think we had a consensus that the
>> following change would be made as part of a possible version 6:
>>
>> 1. All API functions return error codes.
>>
>>
>> I think we also agreed on these items, which might not actually require
>> a major version bump as the actual change to the API is potentially
>> small / nil:
>>
>> 2. Thread safety.
>>
>> 3. Improved text handling between core and the drivers.
>>
>>
>> And there was some discussion about whether this was a good idea:
>>
>> 4. Core handles some text rendering.
>>
>>
>> Now I think the question is if the effort and disruption involved in (1)
>> justifies making the change. I would say that I'm neutral about this. I
>> feel that it is the way a modern library should behave. However I'm not
>> sure that the fact that PLplot does not currently work this way is
>> actually causing a lot of problems for people.
>
> Hazen,
>
> There are some cases where 1) does cause problems - notably for
> interactive drivers like octave where you do not want errors to result in
> the program being killed off. The library should report the error and let
> the program deal with it.
>
> It also causes lintian warnings on Debian as it is a Bad Thing (TM) for
> libraries to do. (For those who don't know, lintian is a package checking
> program which looks for a whole range of errors / breaches of policy / bad
> practice when packaging software for Debian).
>
> Andrew
>
> ------------------------------------------------------------------------------
> One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable Insights
> Deep dive visibility with transaction tracing using APM Insight.
> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________
> Plplot-devel mailing list
> Plplot-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/plplot-devel

------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to