Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make command fails on vega-visualization branch #59

Closed
letusfly85 opened this issue Aug 18, 2020 · 5 comments
Closed

make command fails on vega-visualization branch #59

letusfly85 opened this issue Aug 18, 2020 · 5 comments

Comments

@letusfly85
Copy link

Hi, thank you for the cool extension!

We're now planning to use this library.
And if we can, we want to try using vega extension.

So, I tried building on the following branch, it failed.
Is there any lack of installation or some steps...? 🤔

https://github.com/jupyter-xeus/xeus-sqlite/tree/vega-visualization

/root/userspace/xeus-sqlite/src/xeus_sqlite_interpreter.cpp: In member function ‘void xeus_sqlite::interpreter::execute_SQLite(int, const string&)’:
/root/userspace/xeus-sqlite/src/xeus_sqlite_interpreter.cpp:493:41: error: no matching function for call to ‘tabulate::Table::add_row(std::vector<std::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, tabulate::Table> >&)’
         plain_table.add_row(column_names);
                                         ^
In file included from /root/userspace/xeus-sqlite/src/xeus_sqlite_interpreter.cpp:19:0:
/home/ubuntu/miniconda/include/tabulate/table.hpp:58:10: note: candidate: tabulate::Table& tabulate::Table::add_row(const std::vector<std::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, const char*, tabulate::Table> >&)
   Table &add_row(const std::vector<variant<std::string, const char *, Table>> &cells) {
          ^~~~~~~
/home/ubuntu/miniconda/include/tabulate/table.hpp:58:10: note:   no known conversion for argument 1 from ‘std::vector<std::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, tabulate::Table> >’ to ‘const std::vector<std::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, const char*, tabulate::Table> >&’
/root/userspace/xeus-sqlite/src/xeus_sqlite_interpreter.cpp:507:36: error: no matching function for call to ‘tabulate::Table::add_row(std::vector<std::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, tabulate::Table> >&)’
             plain_table.add_row(row);
                                    ^
In file included from /root/userspace/xeus-sqlite/src/xeus_sqlite_interpreter.cpp:19:0:
/home/ubuntu/miniconda/include/tabulate/table.hpp:58:10: note: candidate: tabulate::Table& tabulate::Table::add_row(const std::vector<std::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, const char*, tabulate::Table> >&)
   Table &add_row(const std::vector<variant<std::string, const char *, Table>> &cells) {
          ^~~~~~~
/home/ubuntu/miniconda/include/tabulate/table.hpp:58:10: note:   no known conversion for argument 1 from ‘std::vector<std::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, tabulate::Table> >’ to ‘const std::vector<std::variant<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, const char*, tabulate::Table> >&’
CMakeFiles/xeus-sqlite.dir/build.make:81: recipe for target 'CMakeFiles/xeus-sqlite.dir/src/xeus_sqlite_interpreter.cpp.o' failed
make[2]: *** [CMakeFiles/xeus-sqlite.dir/src/xeus_sqlite_interpreter.cpp.o] Error 1
CMakeFiles/Makefile2:123: recipe for target 'CMakeFiles/xeus-sqlite.dir/all' failed
make[1]: *** [CMakeFiles/xeus-sqlite.dir/all] Error 2
Makefile:148: recipe for target 'all' failed
make: *** [all] Error

Thank you.

@marimeireles
Copy link
Member

Hey @letusfly85 thank you for getting in touch!

I haven't looked into this problem in depth, but my first guess would be that we're supporting an older version of tabulate for this branch as you can see here: p-ranav/tabulate#44 so an easy fix should be downloading tabulate 1.2 and using it instead of the current version 1.3 that you probably have.

I have to say we're not currently maintaining this branch anymore, this was mostly an experiment to show people what are the possibilities with xeus-SQLite. Fortunately! Now we have @madhur-tandon doing some amazing work to make vega (the library we use to generate the visualizations) compatible with C++. xeus-SQLite backend is in C++ which means we will benefit 100% from his work. He's soon going to release a first version of this lib and then we plan to integrate it with xeus-SQLite.

You can keep an eye on the QuantStack channel for updates: https://gitter.im/QuantStack/Lobby, or I could also ping you here, if you want to (both if you want to help with this integration or just know when it's done). :)
I'll also announce it on my twitter https://twitter.com/mari_meir!

@letusfly85
Copy link
Author

Hi, @marimeireles thank you for your reply!

I downgraded tabulate to 1.2, but the error happens still...

I will wait for @madhur-tandon 's solution 👍

If you can, I want to get your ping from here.
Of course, I will follow you on twitter.

Currently, I'm supporting one of the data science classes at the university in Japan.
We want to serve SQL environment on Jupyter to learn data science courses, and if we can, we want to visualize results, because it is super easy to understand data.

Thank you!

@marimeireles
Copy link
Member

Currently, I'm supporting one of the data science classes at the university in Japan.
We want to serve SQL environment on Jupyter to learn data science courses, and if we can, we want to visualize results, because it is super easy to understand data.

Awesome! :)
I'll let you know and if I have some time I'll try to give a look at this in the weekend.

But Madhur's work is definitely a much better alternative to what we currently have. It's gonna be worth some waiting :)

@marimeireles
Copy link
Member

hey @letusfly85!
The changes including xvega are out! :)
We have a minimal functional example on the new notebook and for now we only have it on master.
If you're interested in any specific feature of vega, let me know, I can either add it on my free time, or help you do it. I wrote an issue #62 that hopefully helps people interested in expanding this library.
If you don't know what's vega and what it can offer check the docs: https://vega.github.io/vega/docs/
XVega is the C++ implementation for vega that we're running here.

@marimeireles
Copy link
Member

Closing this since this branch was discontinued and soon we'll release a version containing xvega by default.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants