kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #27777
Re: Schematic I/O plugin.
I just got a crash when trying to load the eeschema symbol picker
thing, this is using 092c61e02. This happens two out of two times.
#0 0x00007faf85e92c38 in main_arena () at /usr/lib/libc.so.6
#1 0x00007faf74dda458 in
SCH_LEGACY_PLUGIN_CACHE::~SCH_LEGACY_PLUGIN_CACHE() (this=0x4f600f0,
__in_chrg=<optimized out>)
at /home/kicad/kicad-git/eeschema/sch_legacy_plugin.cpp:2033
#2 0x00007faf74dcf70f in SCH_LEGACY_PLUGIN::~SCH_LEGACY_PLUGIN()
(this=0x4f2f450, __in_chrg=<optimized out>)
at /home/kicad/kicad-git/eeschema/sch_legacy_plugin.cpp:556
#3 0x00007faf74dcf764 in SCH_LEGACY_PLUGIN::~SCH_LEGACY_PLUGIN()
(this=0x4f2f450, __in_chrg=<optimized out>)
at /home/kicad/kicad-git/eeschema/sch_legacy_plugin.cpp:557
#4 0x00007faf74c81a9a in
std::default_delete<SCH_PLUGIN>::operator()(SCH_PLUGIN*) const
(this=0x4f2f438, __ptr=0x4f2f450)
at /usr/include/c++/6.3.1/bits/unique_ptr.h:76
#5 0x00007faf74c80a27 in std::unique_ptr<SCH_PLUGIN,
std::default_delete<SCH_PLUGIN> >::~unique_ptr() (this=0x4f2f438,
__in_chrg=<optimized out>)
at /usr/include/c++/6.3.1/bits/unique_ptr.h:239
#6 0x00007faf74c7bf16 in PART_LIB::~PART_LIB() (this=0x4f2f320,
__in_chrg=<optimized out>) at
/home/kicad/kicad-git/eeschema/class_library.cpp:81
#7 0x00007faf74c81f8c in
std::default_delete<PART_LIB>::operator()(PART_LIB*) const
(this=0x7ffe759fcf10, __ptr=0x4f2f320)
at /usr/include/c++/6.3.1/bits/unique_ptr.h:76
#8 0x00007faf74c8120f in std::unique_ptr<PART_LIB,
std::default_delete<PART_LIB> >::~unique_ptr() (this=0x7ffe759fcf10,
__in_chrg=<optimized out>)
at /usr/include/c++/6.3.1/bits/unique_ptr.h:239
#9 0x00007faf74c7daf9 in PART_LIB::LoadLibrary(wxString const&)
(aFileName=...) at
/home/kicad/kicad-git/eeschema/class_library.cpp:300
#10 0x00007faf74c7dbb4 in PART_LIBS::AddLibrary(wxString const&)
(this=0x3ae95d0, aFileName=...) at
/home/kicad/kicad-git/eeschema/class_library.cpp:334
#11 0x00007faf74c7f4c9 in PART_LIBS::LoadAllLibraries(PROJECT*, bool)
(this=0x3ae95d0, aProject=0x6892b0 <Kiway+144>, aShowProgress=true)
at /home/kicad/kicad-git/eeschema/class_library.cpp:623
#12 0x00007faf74e15323 in PROJECT::SchLibs() (this=0x6892b0
<Kiway+144>) at /home/kicad/kicad-git/eeschema/schframe.cpp:165
#13 0x00007faf74d3ab06 in
SCH_BASE_FRAME::SelectComponentFromLibrary(SCHLIB_FILTER const*,
wxArrayString&, int&, bool, int*, int*, wxString const&) (this=
0x38c9a00, aFilter=0x0, aHistoryList=...,
aHistoryLastUnit=@0x7faf75408ca0: 0, aUseLibBrowser=true,
aUnit=0x7ffe759feaac, aConvert=0x7ffe759feaa8, aHighlight=...) at
/home/kicad/kicad-git/eeschema/getpart.cpp:108
#14 0x00007faf74d3b212 in SCH_EDIT_FRAME::Load_Component(wxDC*,
SCHLIB_FILTER const*, wxArrayString&, int&, bool) (this=
0x38c9a00, aDC=0x7ffe759fef70, aFilter=0x0, aHistoryList=...,
aHistoryLastUnit=@0x7faf75408ca0: 0, aUseLibBrowser=true)
at /home/kicad/kicad-git/eeschema/getpart.cpp:196
#15 0x00007faf74d927ef in SCH_EDIT_FRAME::OnLeftClick(wxDC*, wxPoint
const&) (this=0x38c9a00, aDC=0x7ffe759fef70, aPosition=...)
at /home/kicad/kicad-git/eeschema/onleftclick.cpp:308
#16 0x00007faf74f16378 in EDA_DRAW_PANEL::OnMouseEvent(wxMouseEvent&)
(this=0x38dd0d0, event=...) at
/home/kicad/kicad-git/common/draw_panel.cpp:1153
#17 0x00007faf887ec74e in
wxAppConsoleBase::CallEventHandler(wxEvtHandler*, wxEventFunctor&,
wxEvent&) const () at /usr/lib/libwx_baseu-3.0.so.0
#18 0x00007faf8896fc35 in
wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&,
wxEvtHandler*, wxEvent&) () at /usr/lib/libwx_baseu-3.0.so.0
#19 0x00007faf8896fd2b in wxEventHashTable::HandleEvent(wxEvent&,
wxEvtHandler*) () at /usr/lib/libwx_baseu-3.0.so.0
#20 0x00007faf889700db in wxEvtHandler::TryHereOnly(wxEvent&) () at
/usr/lib/libwx_baseu-3.0.so.0
#21 0x00007faf88970163 in wxEvtHandler::ProcessEventLocally(wxEvent&)
() at /usr/lib/libwx_baseu-3.0.so.0
#22 0x00007faf889701c5 in wxEvtHandler::ProcessEvent(wxEvent&) () at
/usr/lib/libwx_baseu-3.0.so.0
#23 0x00007faf89356a6b in
wxScrollHelperEvtHandler::ProcessEvent(wxEvent&) () at
/usr/lib/libwx_gtk2u_core-3.0.so.0
#24 0x00007faf8896ff37 in wxEvtHandler::SafelyProcessEvent(wxEvent&)
() at /usr/lib/libwx_baseu-3.0.so.0
<snip>
2017-02-11 1:03 GMT+01:00 Wayne Stambaugh <stambaughw@xxxxxxxxx>:
> I just checked and it's the revision parsing code. I will either have
> to create a SYMBOL_LIB_ID from LIB_ID and overload
> LIB_ID::SetLibItemName() or just remove the version parsing from LIB_ID.
> I wont have time to look at this until tomorrow afternoon so if you
> need to get some work done, please revert to an earlier build. Thanks
> for the info.
>
> On 2/10/2017 6:52 PM, José Ignacio wrote:
>> In any case this will break backwards compatibility in a way it did not
>> happen in PCBnew, EEschema always looks for symbols in libraries
>> (including the cache) when loading a file (there are no embedded symbols
>> to fall back to), so suddenly making certain names not resolve will
>> cause schematics to break upon opening. To avoid breaking previous
>> designs either a special case needs to be done for the cache (my least
>> favourite option), or like Chris says, let each plugin define what's
>> legal or not.
>>
>> On Fri, Feb 10, 2017 at 5:37 PM, Wayne Stambaugh <stambaughw@xxxxxxxxx
>> <mailto:stambaughw@xxxxxxxxx>> wrote:
>>
>> This is a direct result of LIB_ID which has to be used for symbol
>> library mapping. I could silently force slashes to underscores or some
>> other valid file name character. I'm sure that is not going to make
>> folks happy but it will have to happen when we convert the legacy symbol
>> libraries to the new format. We went through the same issue when we
>> converted the footprint libraries as well. I'll see if I can come up
>> with a work around for the legacy parser but this is only temporary.
>>
>> Was it our microchip libs that are the problem or someone's custom lib?
>> If it's a custom lib, please attach the lib causing the issues so I can
>> debug it.
>>
>> On 2/10/2017 5:42 PM, Nick Østergaard wrote:
>> > I did notice that the new io manager thing broke some libs things
>> > related to the microchip libs, but it also found an error in the
>> > official libs that I patched. But then I forgot to report the other
>> > issues.
>> >
>> > But yeah, it seems strange that slash'es are not allowed in footprint
>> > property names.
>> >
>> > 2017-02-10 22:59 GMT+01:00 Chris Pavlina <pavlina.chris@xxxxxxxxx
>> <mailto:pavlina.chris@xxxxxxxxx>>:
>> >> To elaborate - I get that / is forbidden because part names will
>> be file
>> >> names in the new format, but this is going to break libraries. Manufs
>> >> have used all kinds of horrid symbols in part numbers. Perhaps we
>> should
>> >> make the plugin system allow each plugin to specify its own valid
>> >> characters? The legacy format has always allowed / so the legacy
>> plugin
>> >> should.
>> >>
>> >> On Fri, Feb 10, 2017 at 03:57:11PM -0600, José Ignacio wrote:
>> >>> This broke all my designs with microchip parts (which have
>> forward slashes
>> >>> in the symbol names). Sadpanda.jpg
>> >>>
>> >>> On Fri, Feb 10, 2017 at 8:55 AM, Wayne Stambaugh
>> <stambaughw@xxxxxxxxx <mailto:stambaughw@xxxxxxxxx>>
>> >>> wrote:
>> >>>
>> >>>> I just pushed my changes to make the schematic I/O plugin the
>> default
>> >>>> for all schematic and symbol library I/O. This is a pretty
>> significant
>> >>>> change. I tested everything I could think of but there may be some
>> >>>> corner cases that I missed. I also used LIB_ID instead of
>> wxString to
>> >>>> store symbol library lookup information. For now, it behaves
>> the same
>> >>>> way it always has. Please let me know if you find any issues
>> and I will
>> >>>> try to fix them as quickly as possible.
>> KICAD_USE_SCH_IO_MANAGER is no
>> >>>> longer a build option.
>> >>>>
>> >>>> I'm going to try to get the symbol library table implemented in
>> the next
>> >>>> week or so. This will likely be the last of the schematic I/O
>> changes
>> >>>> before the next stable release. I am going to push the new
>> file formats
>> >>>> to the stable 6 release due to the increasing amount of time I am
>> >>>> spending doing project management stuff and the equally decreasing
>> >>>> amount of time I have to code. Given that none of the new features
>> >>>> provided by the new file formats would have been implemented
>> for the
>> >>>> stable 5 release, I don't think this is a major setback. This
>> will give
>> >>>> us some more time to further discuss the new file formats before I
>> >>>> implement them. The new file formats will be my first task
>> after the
>> >>>> stable 5 release.
>> >>>>
>> >>>> Cheers,
>> >>>>
>> >>>> Wayne
>> >>>>
>> >>>> _______________________________________________
>> >>>> Mailing list: https://launchpad.net/~kicad-developers
>> <https://launchpad.net/~kicad-developers>
>> >>>> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>> >>>> Unsubscribe : https://launchpad.net/~kicad-developers
>> <https://launchpad.net/~kicad-developers>
>> >>>> More help : https://help.launchpad.net/ListHelp
>> <https://help.launchpad.net/ListHelp>
>> >>>>
>> >>
>> >>
>> >> _______________________________________________
>> >> Mailing list: https://launchpad.net/~kicad-developers
>> <https://launchpad.net/~kicad-developers>
>> >> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>> >> Unsubscribe : https://launchpad.net/~kicad-developers
>> <https://launchpad.net/~kicad-developers>
>> >> More help : https://help.launchpad.net/ListHelp
>> <https://help.launchpad.net/ListHelp>
>> >
>> > _______________________________________________
>> > Mailing list: https://launchpad.net/~kicad-developers
>> <https://launchpad.net/~kicad-developers>
>> > Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>> > Unsubscribe : https://launchpad.net/~kicad-developers
>> <https://launchpad.net/~kicad-developers>
>> > More help : https://help.launchpad.net/ListHelp
>> <https://help.launchpad.net/ListHelp>
>> >
>>
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~kicad-developers
>> <https://launchpad.net/~kicad-developers>
>> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
>> <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>> Unsubscribe : https://launchpad.net/~kicad-developers
>> <https://launchpad.net/~kicad-developers>
>> More help : https://help.launchpad.net/ListHelp
>> <https://help.launchpad.net/ListHelp>
>>
>>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp
Follow ups
References