CTAGS Upgrade

I have upgraded ctags from exuberant-ctags to universal-ctags. This will, in future, help to fix the problems of function prototypes across multiple lines.

But, let me know if you see any strangeness - it's supposed to be completely backwards compatible, but you never know...

Comments

I have refreshed and updated

I have refreshed and updated under Plugin Manager, and the only thing which updated was "Exuberant CTags Parser".

But now my sketches don't compile anymore; compile messages seem meaningless, like: (dozens of them)

• Error at line 9 in file am_ffat0.1a_proto.h: ‣ expected constructor, destructor, or type conversion before ';' token

• Error at line 28 in file am_ffat0.1a_proto.h: ‣ expected constructor, destructor, or type conversion before ';' token

• Error at line 36 in file am_ffat0.1a_proto.h: ‣ expected constructor, destructor, or type conversion before ';' token

That one just adds a new

That one just adds a new script that is irrelevant to current operation. You can upgrade it and nothing much will happen (one file will be added).

No idea what went wrong there

No idea what went wrong there - I use Ubuntu all the time as my desktop, so I know it should work on there, because that is where I have been using it. Are you on 64 or 32 bit?

64bit.

64bit. Uecide is 0.10.6. I tried the last beta initially, but had trouble, cleaned everything and installed 0.10.6. That worked.

matt@ubuntu1604-64:~/.uecide

matt@ubuntu1604-64:~/.uecide/tools/ctags/bin/linux_amd64$ ./universal-ctags 
./universal-ctags: error while loading shared libraries: libjansson.so.4: cannot open shared object file: No such file or directory

Maybe I need to try and compile a statically linked version...?

Can't do static, but I can

Can't do static, but I can disable support for such things as json, xml, etc, which massively reduces the library requirements...

"such an old version of

"such an old version of Ubuntu" - come on, this has support until April 2021!

I did a fresh install on my laptop with 18.04, but had nothing but trouble. This laptop is now also back to 16.04, and is reliable.

I am not going to touch my desktop until I absolutely have to!

With respect to your "static" discussion - is beyond my pay grade; I won't be of any help, I am afraid.

Myself, I'm a "bleeding edge"

Myself, I'm a "bleeding edge" champion. If something's more than 1 day old it needs upgrading ;)

As for the static thing - the ctags package has both exuberant and universal ctags in there now as separate binaries (I need universal ctags for the new version of UECIDE I'm working on to fix problems with split-line prototypes), si you can try running the binary manually to check that it works - although it should, since I set up a 16.04 64-bit VM to test it on...

This exuberant thing is not

This exuberant thing is not convincing :-((

I upgraded it - I believe it should now be 1.09? - and restarted uecide.

It now shows the editor with the first sketch open, and is frozen solid. I can't even close it by Alt-F4 or the Window frame tools; must kill it! The opening logo is also still open and responds to nothing.

Another roll-back would be highly appreciated !!!

But, eeh, how can I roll-back when the program does not open???

UPDATE: Tried to start uecide one last time - and it works again! Plugin manager says that the exuberant thingy 1.0.9 is installed (and 1.0.4 is available?).

How comes? Does it take several minutes (>10min) to update, and while updating freezes everything ?

Ctags should have zero effect

Ctags should have zero effect on the opening of the program. It is merely a tool that is called periodically during running to parse your sketch. There will be something else causing the problem - possibly a corrupt preferences.txt caused by the first lockup.

Whenever it locks up like this it is usually the fault of an exception being thrown. Step one is always to run it from the terminal:

$ uecide --exceptions

That should tell you why it's crashing and I can translate that into what to do to fix it.

By the way, all that changed since the last version (which was working) was I replaced the universal-ctags binaries with slimmed down ones. Nothing in your setup uses those binaries - they are only used in my development branch. So they cannot have a bearing on anything at all.

Java does strange things. I

Java does strange things. I sometimes have to kill it outright and restart because it's gone unresponsive. And not just UECIDE - many Java programs...

running "$ uecide -

running "$ uecide --exceptions" now gives about 2 dozen identical lines of this:

Warning: substituting default font for missing font Monotype

I guess this is of no help.

That's just a typo in the

That's just a typo in the default preferences settings. Monotype should read Monospaced. It's no matter though, I think it replaces it with Monospaced anyway as the default. If and when it crashes though it should spew out a stack trace of information about why it crashed. The most common problem is "Null Pointer"...

So, from one moment to the

So, from one moment to the next, uecide won't start. Killing it, then restarting with "$ uecide --exceptions" gives this:

$ uecide --exceptions
0 packages can be upgraded.
Exception in thread "main" java.lang.NullPointerException
    at org.uecide.Editor.openNewTab(Editor.java:2464)
    at org.uecide.Editor.openOrSelectFile(Editor.java:2420)
    at org.uecide.Editor.<init>(Editor.java:632)
    at org.uecide.Base.createNewEditor(Base.java:1352)
    at org.uecide.Base.doOpenThings(Base.java:958)
    at org.uecide.Base.<init>(Base.java:809)
    at org.uecide.Base.main(Base.java:185)

But then it still hangs at this stage. Now what?

Looking at that backtrace you

Looking at that backtrace you have "editor.save.loadlast" enabled, but the last sketch either doesn't exist or it's corrupt. Edit the file ~/.uecide/preferences.txt and find the line "editor.save.loadlast=true" (or whatever it equals - I forget if it's true or yes) and delete it.

Pages