Re: [Kicad-developers] [PATCH] Crash Reporter

2019-05-28 Thread Seth Hillbrand

On 2019-05-28 12:13, Tomasz Wlostowski wrote:


Done (tom-crash-reporter-may27 on my Github)!

Tom


Hi Tom-

This looks very nice.  I like the implementation a lot!

Here are a couple minor bits:

1) The force crash dialog says "Clicking on OK will crash KiCad" but the 
buttons say "Yes/No"
2) The crash report doesn't seem to pick up my build version 
information.  It says:


KiCad crash report, version 1.0
--

application: kicad
version: , release build

3) The tabbing changes in CMakeLists.txt are odd.  Intentional?
4) There's an untranslated string in OnSendReport ("Error sending cebug 
report.")[sic]



No showstopper issues from my testing here.  I'd like to implement a 
configurable destination address (maybe preferences or environmental 
variable) but that can wait until after it's merged.


Thanks Tom (and Thomas) for an excellent addition!

Best-
Seth

___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


Re: [Kicad-developers] cvPCB Hotkey Handling

2019-05-28 Thread Jeff Young
D’oh.  You’re right: the whole tool framework in cvPCB is just for the 
Footprint Viewer window.

Give a holler if you get stuck.

Cheers,
Jeff.

> On 28 May 2019, at 19:17, Ian McInerney  wrote:
> 
> Jeff,
> 
> Thanks for the pointer. I looked through the CVPCB_ACTIONS code last night, 
> and I came to the conclusion that it is only active in the footprint viewer 
> window (that seems to be where the tool manager for them is instantiated). 
> (also those tools also don't seem to have a user-configurable hotkey either) 
> . I think addding the copy/paste/delete as tools would require some 
> refactoring of the current action code, which I would like to avoid.
> 
> The method you pointed to in the other window object looks like a good fit 
> for cvpcb (there aren't going to be many hotkeys, and the ones there are will 
> be pretty standard). So I will give that method a try and see how it goes.
> 
> Thanks,
> -Ian
> 
> On Tue, 28 May 2019, 4:07 p.m. Jeff Young,  > wrote:
> Hi Ian,
> 
> The tool architecture allows hotkeys to be assigned to ACTIONs, which are 
> then executed by a TOOL.  So you’d need to define cut/copy/paste 
> CVPCB_ACTIONs, and also give cvPCB a hotkeys file (and allow them to be 
> edited).
> 
> But I don’t think we need to support editable hotkeys for 
> cut/copy/paste/delete.  I’d be more inclined to do a light-weight solution 
> inside the wxWidget.  See GRID_TRICKS for an example.
> 
> Cheers,
> Jeff.
> 
> 
> > On 28 May 2019, at 13:29, Ian McInerney  > > wrote:
> > 
> > I am currently looking into adding some usability features to cvPCB 
> > (copy/paste, single association delete, etc.) and want to also include the 
> > relevant hotkey assignments for them. I am slightly confused where the 
> > hotkey handling for cvPCB is handled though, since I can't see any handling 
> > for it in the mainframe class. I do see that the tool manager exists for 
> > the footprint preview frame, so it can handle those hotkeys. Does anyone 
> > recall if cvPCB has hotkey handling in the mainframe already?
> > 
> > Thanks,
> > -Ian
> > ___
> > Mailing list: https://launchpad.net/~kicad-developers 
> > 
> > Post to : kicad-developers@lists.launchpad.net 
> > 
> > Unsubscribe : https://launchpad.net/~kicad-developers 
> > 
> > More help   : https://help.launchpad.net/ListHelp 
> > 
> 

___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


Re: [Kicad-developers] cvPCB Hotkey Handling

2019-05-28 Thread Ian McInerney
Jeff,

Thanks for the pointer. I looked through the CVPCB_ACTIONS code last night,
and I came to the conclusion that it is only active in the footprint viewer
window (that seems to be where the tool manager for them is instantiated).
(also those tools also don't seem to have a user-configurable hotkey
either) . I think addding the copy/paste/delete as tools would require some
refactoring of the current action code, which I would like to avoid.

The method you pointed to in the other window object looks like a good fit
for cvpcb (there aren't going to be many hotkeys, and the ones there are
will be pretty standard). So I will give that method a try and see how it
goes.

Thanks,
-Ian

On Tue, 28 May 2019, 4:07 p.m. Jeff Young,  wrote:

> Hi Ian,
>
> The tool architecture allows hotkeys to be assigned to ACTIONs, which are
> then executed by a TOOL.  So you’d need to define cut/copy/paste
> CVPCB_ACTIONs, and also give cvPCB a hotkeys file (and allow them to be
> edited).
>
> But I don’t think we need to support editable hotkeys for
> cut/copy/paste/delete.  I’d be more inclined to do a light-weight solution
> inside the wxWidget.  See GRID_TRICKS for an example.
>
> Cheers,
> Jeff.
>
>
> > On 28 May 2019, at 13:29, Ian McInerney 
> wrote:
> >
> > I am currently looking into adding some usability features to cvPCB
> (copy/paste, single association delete, etc.) and want to also include the
> relevant hotkey assignments for them. I am slightly confused where the
> hotkey handling for cvPCB is handled though, since I can't see any handling
> for it in the mainframe class. I do see that the tool manager exists for
> the footprint preview frame, so it can handle those hotkeys. Does anyone
> recall if cvPCB has hotkey handling in the mainframe already?
> >
> > Thanks,
> > -Ian
> > ___
> > Mailing list: https://launchpad.net/~kicad-developers
> > Post to : kicad-developers@lists.launchpad.net
> > Unsubscribe : https://launchpad.net/~kicad-developers
> > More help   : https://help.launchpad.net/ListHelp
>
>
___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


Re: [Kicad-developers] Release Checklist

2019-05-28 Thread Wayne Stambaugh
Seth,

On 5/25/19 12:27 PM, Seth Hillbrand wrote:
> Hi Devs-
> 
> I've committed a proposed checklist format to my branch[1] on launchpad.
>  This is the outline of a proposed checklist for KiCad releases that we
> can use to verify consistent (i.e. fewer regressions) behavior before
> tagging new versions.  This currently documents just the main window. 
> If people like the idea, I'll work on expanding the list to cover the
> full suite.
> 
> The proposed release workflow would then look like:
> 1) Wayne tags an RC and copies the current template into a new file
> called release_checklist_v#.#RC#
> 2) Everyone begins testing the items on the list, marking them as
> working or reporting/fixing bugs
>   a. All tests happen against the tag.  If a test fails, it can be
> marked **fixed** after a fix is committed
> 3) Once all tests are marked either **complete** or **fixed**, and no
> new issues arise, we start again with a fresh RC
> 4) Once an RC has all tests marked **complete** instead of **fixed**, we
> are ready for release.
> 
> Let me know if people have suggestions for how this process might be
> improved/modified.
> 
> Best-
> Seth
> 
> 
> [1]
> https://git.launchpad.net/~sethh/kicad/commit/?id=8c2d0b6957d4b1da47741947850a959602564ba4&context=3&ignorews=0&ss=1
> 

We can give this a try to see how it works.  I don't want this to become
an excuse for getting stable releases out so if it becomes that, we can
kick it the curb.  One thing I would add to your list is to ensure the
unit tests all pass.

Cheers,

Wayne


___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


Re: [Kicad-developers] [PATCH] Crash Reporter

2019-05-28 Thread Tomasz Wlostowski
On 27/05/2019 17:39, Seth Hillbrand wrote:
> On 2019-05-02 17:41, Tomasz Wlostowski wrote:
>> On 02/05/2019 07:06, Wayne Stambaugh wrote:
>>>
>>> By chance did you build with OCC instead of OCE which is what I am
>>> using?  Please fix this when you get a chance, I would like to get this
>>> merged but I need to be able to test.
>>>
>>> Why did your remove the GDK_* and GTK_* environment variables from
>>> APP_KICAD ctor?  Wont this break the compatibility support we currently
>>> have?
>>>
>>> I noticed quite a bit of trailing whitespace in patches 5 and 10 so that
>>> will need to be cleaned up.
>>>
>>> Please send me the link to your remote branch for this.  It's easier for
>>> me to just pull a branch into my repo than apply a large patch set using
>>> `git am`.
>>
>> Hi Wayne,
>>
>> Probably I screwed something up while rebasing the code on top of fresh
>> master. I'll check/fix the errors in the evening.
>>
>> Greetings from CO,
>> Tom
> 
> Ping!

Done (tom-crash-reporter-may27 on my Github)!

Tom

___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


Re: [Kicad-developers] cvPCB Hotkey Handling

2019-05-28 Thread Jeff Young
Hi Ian,

The tool architecture allows hotkeys to be assigned to ACTIONs, which are then 
executed by a TOOL.  So you’d need to define cut/copy/paste CVPCB_ACTIONs, and 
also give cvPCB a hotkeys file (and allow them to be edited).

But I don’t think we need to support editable hotkeys for 
cut/copy/paste/delete.  I’d be more inclined to do a light-weight solution 
inside the wxWidget.  See GRID_TRICKS for an example.

Cheers,
Jeff.


> On 28 May 2019, at 13:29, Ian McInerney  wrote:
> 
> I am currently looking into adding some usability features to cvPCB 
> (copy/paste, single association delete, etc.) and want to also include the 
> relevant hotkey assignments for them. I am slightly confused where the hotkey 
> handling for cvPCB is handled though, since I can't see any handling for it 
> in the mainframe class. I do see that the tool manager exists for the 
> footprint preview frame, so it can handle those hotkeys. Does anyone recall 
> if cvPCB has hotkey handling in the mainframe already?
> 
> Thanks,
> -Ian
> ___
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp


___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


[Kicad-developers] [PATCH] Enable floating point exceptions in Debug, disable in Release

2019-05-28 Thread Simon Richter
Hi,

this enables FP exceptions everywhere in Debug mode, and disables them in
Release mode. This is for testing only, and should *not* yet go into
mainline.

Still needed:

 - signal handler that complains and allows continuing
 - context library handling
 - tests

   Simon

---
 common/single_top.cpp | 6 ++
 kicad/kicad.cpp   | 6 ++
 qa/qa_utils/pcb_test_frame.cpp| 8 
 utils/idftools/idf2vrml.cpp   | 6 ++
 utils/kicad-ogltest/kicad-ogltest.cpp | 6 ++
 utils/kicad2step/kicad2step.cpp   | 6 ++
 6 files changed, 38 insertions(+)

diff --git a/common/single_top.cpp b/common/single_top.cpp
index b50ecf18a..f527c8b35 100644
--- a/common/single_top.cpp
+++ b/common/single_top.cpp
@@ -47,6 +47,7 @@
 #include 
 #include 
 
+#include 
 
 // Only a single KIWAY is supported in this single_top top level component,
 // which is dedicated to loading only a single DSO.
@@ -150,6 +151,11 @@ struct APP_SINGLE_TOP : public wxApp
 
 bool OnInit() override
 {
+#ifdef NDEBUG
+fedisableexcept(FE_ALL_EXCEPT);
+#else
+feenableexcept(FE_ALL_EXCEPT);
+#endif
 // Force wxHtmlWinParser initialization when a wxHtmlWindow is used only
 // in a shared modules (.so or .dll file)
 // Otherwise the Html text is displayed as plain text.
diff --git a/kicad/kicad.cpp b/kicad/kicad.cpp
index 2ca33d77e..84b5b1acc 100644
--- a/kicad/kicad.cpp
+++ b/kicad/kicad.cpp
@@ -41,6 +41,7 @@
 #include 
 
 #include 
+#include 
 
 #include "pgm_kicad.h"
 
@@ -245,6 +246,11 @@ struct APP_KICAD : public wxApp
 
 bool OnInit()   override
 {
+#ifdef NDEBUG
+fedisableexcept(FE_ALL_EXCEPT);
+#else
+feenableexcept(FE_ALL_EXCEPT);
+#endif
 return program.OnPgmInit();
 }
 
diff --git a/qa/qa_utils/pcb_test_frame.cpp b/qa/qa_utils/pcb_test_frame.cpp
index 04b403fa2..2a8ea950e 100644
--- a/qa/qa_utils/pcb_test_frame.cpp
+++ b/qa/qa_utils/pcb_test_frame.cpp
@@ -59,6 +59,9 @@
 #include 
 #include 
 
+#include 
+
+
 #include "pcb_test_frame.h"
 
 IMPLEMENT_APP( GAL_TEST_APP )
@@ -67,6 +70,11 @@ using namespace KIGFX;
 
 bool GAL_TEST_APP::OnInit()
 {
+#ifdef NDEBUG
+fedisableexcept(FE_ALL_EXCEPT);
+#else
+feenableexcept(FE_ALL_EXCEPT);
+#endif
 if( !wxApp::OnInit() )
 return false;
 
diff --git a/utils/idftools/idf2vrml.cpp b/utils/idftools/idf2vrml.cpp
index 4eb34c6d1..cb9212c3f 100644
--- a/utils/idftools/idf2vrml.cpp
+++ b/utils/idftools/idf2vrml.cpp
@@ -52,6 +52,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "idf_helpers.h"
 #include "idf_common.h"
@@ -105,6 +106,11 @@ bool showObjectMapping;
 
 bool IDF2VRML::OnInit()
 {
+#ifdef NDEBUG
+fedisableexcept(FE_ALL_EXCEPT);
+#else
+feenableexcept(FE_ALL_EXCEPT);
+#endif
 m_ScaleFactor = 1.0;
 m_Compact = true;
 m_NoOutlineSubs = false;
diff --git a/utils/kicad-ogltest/kicad-ogltest.cpp b/utils/kicad-ogltest/kicad-ogltest.cpp
index 31157b900..a1b56edc5 100644
--- a/utils/kicad-ogltest/kicad-ogltest.cpp
+++ b/utils/kicad-ogltest/kicad-ogltest.cpp
@@ -32,6 +32,7 @@
 #include 
 #include 
 #include 
+#include 
 
 // Required OpenGL version
 #define REQUIRED_MAJOR 2L
@@ -79,6 +80,11 @@ public:
 
 bool OGLTEST_APP::OnInit()
 {
+#ifdef NDEBUG
+fedisableexcept(FE_ALL_EXCEPT);
+#else
+feenableexcept(FE_ALL_EXCEPT);
+#endif
 WX_QUIET be_quiet;
 
 auto frame = new wxFrame( nullptr, wxID_ANY, "OpenGL test", wxDefaultPosition, wxDefaultSize,
diff --git a/utils/kicad2step/kicad2step.cpp b/utils/kicad2step/kicad2step.cpp
index df3dc8e7a..701db7a63 100644
--- a/utils/kicad2step/kicad2step.cpp
+++ b/utils/kicad2step/kicad2step.cpp
@@ -31,6 +31,7 @@
 #include 
 #include 
 #include 
+#include 
 
 #include "pcb/kicadpcb.h"
 
@@ -96,6 +97,11 @@ wxIMPLEMENT_APP_CONSOLE( KICAD2MCAD );
 
 bool KICAD2MCAD::OnInit()
 {
+#ifdef NDEBUG
+fedisableexcept(FE_ALL_EXCEPT);
+#else
+feenableexcept(FE_ALL_EXCEPT);
+#endif
 #ifdef SUPPORTS_IGES
 m_fmtIGES = false;
 #endif
___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


Re: [Kicad-developers] General question about Kicad libraries...

2019-05-28 Thread Wayne Stambaugh
Because SQL and databases in general are not good storage mediums for
libraries.  KiCad libraries are plain text files that are easy to parse
and format, portable, human readable, and do not require any additional
dependencies.  Databases are none of these.  I don't think corporate
inventory systems are the same thing as libraries even though the are
related.  Once the Python scripting is implemented during V6, this will
be the way to script corporate database support into KiCad.

Cheers,

Wayne

On 5/27/19 10:09 PM, Terry Gray wrote:
> I have what might be a dumb question about Kicad libraries.  Why does
> Kicad not use a standard SQL database, such as MariaDB,  SQLite, etc? 
> There may be really good reasons not to do this but it seems, at least
> to me, that it would make some things simpler such as making it easier
> to incorporate Kicad into company inventory systems.  
> 
> ___
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
> 

___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp


[Kicad-developers] cvPCB Hotkey Handling

2019-05-28 Thread Ian McInerney
I am currently looking into adding some usability features to cvPCB
(copy/paste, single association delete, etc.) and want to also include the
relevant hotkey assignments for them. I am slightly confused where the
hotkey handling for cvPCB is handled though, since I can't see any handling
for it in the mainframe class. I do see that the tool manager exists for
the footprint preview frame, so it can handle those hotkeys. Does anyone
recall if cvPCB has hotkey handling in the mainframe already?

Thanks,
-Ian
___
Mailing list: https://launchpad.net/~kicad-developers
Post to : kicad-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp