!dMDtGbujSAcxoTlFTk:matrix.org

GTAD - Generate Things from API Descriptions

7 Members
GTAD 0.7 is out | https://github.com/KitsuneRal/gtad3 Servers

Load older messages


SenderMessageTime
10 Jul 2018
* @adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz goes to power-wash deck instead23:41:31
@kitsune:matrix.orgkitsuneI'm afraid no, there's a bit more work than an evening can fit.23:43:23
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz(my wife is very happy I ran into an error I think)23:43:49
@kitsune:matrix.orgkitsuneYou can drop your environment information here if it's more convenient for you.23:44:02
* @max:kamax.io@max:kamax.io is just getting his room count up ;)23:51:26
@max:kamax.io@max:kamax.ioand lurking ofc, in case exciting things happen!23:51:37
@kitsune:matrix.orgkitsuneThat's just fine - you're getting this room members count up too :)23:53:33
11 Jul 2018
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyzOh cool. You fixed that build bug already.00:10:52
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz kitsune: running into another build error. Want me to file another issue, add a comment to the existing one, or work it out with you in here as I have time? 00:11:39
@kitsune:matrix.orgkitsuneJust dump it here and we'll see.00:12:00
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyzs/I/you/00:12:00
@kitsune:matrix.orgkitsuneOne of those bugs caused by lack of cross-platform building.00:12:10
@kitsune:matrix.orgkitsune(the one with std::placeholders)00:12:37
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz
[ 89%] Building CXX object CMakeFiles/gtad.dir/yaml.cpp.o
/home/adam/repos/gtad/yaml.cpp: In member function 'std::vector<std::basic_string<char> > YamlSequence::asStrings() const':
/home/adam/repos/gtad/yaml.cpp:71:20: error: 'mem_fn' is not a member of 'std'
               std::mem_fn(&YamlNode::as<string>));
                    ^~~~~~
/home/adam/repos/gtad/yaml.cpp:71:20: note: suggested alternative: 'mem_fun'
               std::mem_fn(&YamlNode::as<string>));
                    ^~~~~~
                    mem_fun
make[2]: *** [CMakeFiles/gtad.dir/build.make:128: CMakeFiles/gtad.dir/yaml.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:68: CMakeFiles/gtad.dir/all] Error 2
make: *** [Makefile:130: all] Error 2
00:12:48
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz (c++ is weird. Whenever I compile a project, the newer the compiler I use, the harder time I have building things. It's the opposite of other languages. Guessing that's what's going on here as not many mainstream distros are publishing anything close to gcc 7.3.0 yet.) 00:17:57
@kitsune:matrix.orgkitsuneIt's because folks are working hard on making C++ more error-proof. And people writing programs are mostly stuck with the C++11 standard at best, if not older - and the respective practices.00:19:24
@kitsune:matrix.orgkitsuneNormal C++ evolution started just this decade - before that the language was evolving like HTML3 - mostly driving by commercial interests of specific companies...00:20:28
@kitsune:matrix.orgkitsune*driven00:20:36
@kitsune:matrix.orgkitsuneAanyway.00:20:40
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz
In reply to @kitsune:matrix.org
Normal C++ evolution started just this decade - before that the language was evolving like HTML3 - mostly driving by commercial interests of specific companies...
Huh. TIL. Always assumed C++ kind of just kept on plodding slowly along in whatever direction. Interesting to hear about actual "eras" of dev.
00:21:44
@kitsune:matrix.orgkitsuneWell, I'd say there were 3 eras. Bjarne's era, roughly before 1998, when C++ spec was mostly driven Bjarne, with people from biggies like AT&T and others gradually joining in, and Microsoft/Intel starting to make their own compilers. C++98 was the first attempt to document a baseline for the language. Then there was a feature-driven evolution era, between 1998 and, roughly, 2007 or 2008 - during this time people from everywhere were trying to agree on certain language and library features and ship them when they feel they are ready. This didn't go well, they only managed to release C++03 standard, it was much better than C++98 but still missing plenty of things that were needed like a decade ago. And the rise of WWW didn't help, either - more people, harder to agree. So by the end of last decade everybody's got fed up with being in a stalemate most of the time and the new, current era began - the era of timed standard releases. And that one finally worked. Also, coincidentally, LLVM/Clang project was born at this time which gave a huge boost to compiler and tooling development across the board. Now we're catching up with what should have been done a decade or two ago - slowly but steadily.00:30:50
@kitsune:matrix.orgkitsune...and that bug is fixed, too00:32:05
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz🎉00:32:58
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyzRedacted or Malformed Event00:34:14
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz
adam: [build] $ ./gtad --help
Usage: ./gtad [options] files...
Client-server API source files generator

Options:
  -h, --help             Displays this help.
  -v, --version          Displays version information.
  --config <configfile>  API generator configuration in YAML format
  --out <outputdir>      Write generated files to <outputdir>.
  --role <role>          For JSON Schema, generate code assuming <role>, one
                         of: i (input), o (output); all other values mean both
                         directions

Arguments:
  files                  Files or directories with API definition in Swagger
                         format. Append a hyphen to exclude a file/directory.

it lives!

00:34:29
@kitsune:matrix.orgkitsuneSweeeet :)00:34:48
@kitsune:matrix.orgkitsuneSo the next step is to read all those docs about the configuration and template files, producing your own along the way. I really advise you to take lib/csapi/gtad.yaml from libQMatrixClient as the base for the configuration file - you'll have to replace all the types with Julia's, and the "mustache" part will have to go entirely (you'll make your own snippets when/if you need).00:38:00
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyzSounds groovy. We'll see how this goes. Basically at this point, it's an open question in my mind whether it will take more time to learn the configuration for this system or just write my own macros generating types/functions from the swagger. I'll let you know what I decide once I've read a little further in the docs.00:44:00
@adam:thebeckmeyers.xyz@adam:thebeckmeyers.xyz(learning a DSL for this process and getting to leave behind the actual implementation vs. not having to learn anything new but having to do the implementation myself)00:44:47
@kitsune:matrix.orgkitsuneMaking your DSL along the way :)00:45:12

Show newer messages


Back to Room ListRoom Version: