Welcome to Cadabra Q&A, where you can ask questions and receive answers from other members of the community.
0 votes

After updating to v2.3.5, only one window can be opened, is it a bug? My system is Ubuntu 18.04 in WLS.

in Bug reports by (1.4k points)

1 Answer

0 votes

You should be able to start cadabra2-gtk multiple times; that certainly works on Ubuntu 18.04 on bare metal. Using File / New is not intended to open an extra window (essentially, every instance of cadabra2-gtk has one kernel, and if you want more than one kernel you just start a new instance).

Or are you talking about the Jupyter kernel?

by (76.4k points)

No, I don't mean Jupyter kernel. When I input cadabra2-gtk in terminal to open another window, I get https://1drv.ms/u/s!ArFGkL9IczNNqnLxRlE-rL9Wl3MP?e=pUa4gZ

Can you try to do the following? First stop all running cadabra2-gtk processes. Then

rm -f ~/.log/Cadabra*

Finally, try to start cadabra2-gtk again. (I suspect that you may have run cadabra2-gtk as root, or otherwise messed up the log database, which it can now no longer write to as a normal user.)

It doesn't work.

Give some more details please. Does the first one start? Is your ~/.log directory writable?

The problem remains unchanged. I have opened the first windows, and another window cannot be opened. The error message is the same as before. The ~/.log directory is writable.

I have reinstalled Ubuntu 18.04 in WLS, but the question keeps still, i.e. only one window can be open and error reports are the same as the above.

There is another bug: tab completion doesn't work, and it will result in the crash of Cadabra.

Thanks for spotting that, I have fixed tab-completion in github.

Are you building cadabra from source?

Yes, I build from source.

Thanks, tab-completion works. But I still can only open one window.

Hi Kasper, I have tried it on another pc, but still only one window can be opened. The error report is

~$ cadabra2-gtk

(cadabra2-gtk:5931): glibmm-ERROR **: 00:05:22.324: 
unhandled exception (type std::exception) in signal handler:
what: Failed to create table runs

Trace/breakpoint trap (core dumped)
~$ terminate called after throwing an instance of 'std::logic_error'
  what():  Failed to create table runs

I can't reproduce this outside WSL, and I lack the time at the moment to dig into this further.

It's ok. I guess I should move on to another platform. This is frustrating for some Windows users. After all, as far as I know, the Windows version still doesn't work.

With a few rare exceptions, providing binaries/installers is all on my shoulders, and I simply do not have the time anymore to battle with Windows. Despite many people asking for a Windows version, no-one has stepped up to help with building it.

Got it. Maybe I should also report this bug to WLS developer. I will try other ways. Thanks for your explanation.

When I install from source, I get the following warning

[ 22%] Building CXX object core/CMakeFiles/cadabra2.dir/Adjform.cc.o
/home/guowei/cadabra2/core/Adjform.cc: In member function ‘uint64_t cadabra::Adjform::to_lehmer_code() const’:
/home/guowei/cadabra2/core/Adjform.cc:230:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if (counts.size() <= perm[i])
/home/guowei/cadabra2/core/Adjform.cc:255:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
      if (elem > i)
          ~~~~~^~~
/home/guowei/cadabra2/core/Adjform.cc:266:25: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    for (size_t j = 0; j < perm[i]; ++j) {
/home/guowei/cadabra2/core/Adjform.cc: In member function ‘std::__cxx11::string cadabra::Adjform::to_string() const’:
/home/guowei/cadabra2/core/Adjform.cc:297:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    else if (data[i] > i) {
/home/guowei/cadabra2/core/Adjform.cc: In member function ‘void cadabra::AdjformEx::apply_young_symmetry(const std::vector<long unsigned int>&, bool)’:
/home/guowei/cadabra2/core/Adjform.cc:575:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
      if (loc >= 0 && loc < values.size() && values[loc] < rk) {
                      ~~~~^~~~~~~~~~~~~~~
/home/guowei/cadabra2/core/Adjform.cc:593:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i = r + 1; i < directions.size(); ++i)
                     ~~^~~~~~~~~~~~~~~~~~~

Is it possible to have a relation to the problem?

No, these are warnings which are related to the meld algorithm only.

After I update cadabra2 to v2.3.4, the problem raises, and v2.3.2 works fine. I hope this will provide some help for this problem.

Hi Kasper. After I update wls to wls2, everything is ok.

...