IRC log for #brlcad on 20160813

00:44.56 brlcad starseeker: there definitely is too much "public" redblack api in libbu terms
00:45.35 brlcad frankly none of it should probably be public, instead providing higher level containers like hash, list, vector, map, with redblack under the hood (stl operates exactly that way)
00:46.55 brlcad starseeker: before merging in the latest github sources, how many regression tests do we have?
00:47.43 brlcad we need at least one test that exercises a variety of entities and hierarchy with mixed attributes (the cause of the last regression failure when we tried to update)
00:48.26 brlcad if the nist samples do that, then by all means
01:18.49 starseeker shakes his head - I doubt we have a test case like that to hand
01:19.30 starseeker the NIST files (except for the 7-10 aggregation) are all single objects, and the 7-10 aggregation I had to do as a 3DM both for multi-color support and speed
01:19.45 starseeker agrees we should build several test cases
01:31.08 starseeker agrees - the log(n) behavior of the STL containers is one of my main drivers for using C++ - if we had set,map,etc. in C there'd be a lot less incentive
01:37.49 Stragus I think I have written a bunch of such code...
01:41.54 starseeker brlcad: can the bu_badmagic change be considered minimally impacting, or does it need deprecation?
01:42.01 starseeker Stragus: not surprised :-)
01:42.14 Stragus Besides, the C++ containers are terrible (unusable) for high performance multithreaded code
01:42.58 Stragus If I'm not mistaken, you can't have 64 threads hammering the same C++ map, it would all have to be serialized on a single lock
01:43.13 starseeker nods
01:44.08 Stragus I think an early version of my hash table with concurrent multithreaded access is in the mesh decimation code
01:44.36 starseeker might be worth pulling into libbu
01:46.21 Stragus Just in case you are interested - http://www.rayforce.net/mmhash.c http://www.rayforce.net/mmhash.h http://www.rayforce.net/mmhashinternal.h http://www.rayforce.net/mmhashinline.h
01:47.00 starseeker Stragus: cool! that's the latest version?
01:47.52 Stragus Should be, it's meant to use atomics (pthread fallback) so there are minor dependencies on some other headers you probably have somewhere
01:48.38 starseeker what's the state of atomics these days
01:49.38 starseeker remembers discussing some of that with brlcad a while back, but I don't recall the details
01:49.42 Stragus Frankly, no idea, always using my own inline assembly, but I'm sure you'll frown on that. I always include some slower pthread-based fallback... http://www.rayforce.net/mmatomic.h
01:50.36 starseeker Stragus: that hasn't been too difficult to keep portable?
01:51.10 Stragus The pthread fallback is portable, the problem is the big performance drop you get when not running on x86/amd64 with a GCC compatible compiler :)
01:51.24 Stragus C11 is supposed to have atomics, but I have no idea what platforms are supported. And it's not exactly "complete"
01:51.52 starseeker nor is it (or will it be) portable to MSVC unless C++ incorporates the C version
01:51.55 starseeker grr...
01:52.36 starseeker Stragus: do you set build flags manually, or are there a set of configure-time tests you've built up to detect ssystem capabilities?
01:53.14 starseeker sees a lot of ifdefs in the atomics file, which is probably inevitable, but winces a little at the system introspection tests needed to drive it properly...
01:53.37 Stragus I have never personally worried much about portability (I know that's a big problem for you guys...)
01:53.45 starseeker heh
01:54.04 starseeker at one point we actually built (non-graphically) on Haiku-OS
01:54.19 starseeker should fix that, actually...
01:55.22 starseeker can see atomics being a bit like openblas - high performance may require system specific tweaking...
01:55.33 brlcad latest c11 and c++11 standards both have complete atomics support
01:55.33 Stragus It bothers me when the inline assembly atomic version provides perfect scalability on a 64 cores machine (and beyond, probably), but some portable pthread-based solution just doesn't scale
01:55.57 brlcad http://en.cppreference.com/w/c/atomic
01:56.23 starseeker Stragus: oh, that reminds me - did you decide if you were going to release your high-performance OpenGL GUI element drawing library as a stand-alone?
01:56.57 Stragus C11 atomics are missing a few important details... Let's say I have threads waiting in a spin loop for some variable to change, I really need to "rep nop" to tell a hyperthreading CPU core: "I'm a spin loop, try to run another concurrent thread"
01:57.18 Stragus Without that, spin loops are a problem on hyperthreading processors
01:58.27 Stragus starseeker: I would like to... Do you think you guys would perhaps use it? I would say that makes a difference on the grade of motivation :)
02:00.24 starseeker Stragus: fair enough. for me, the biggest driver for Qt is the availability of things like html rendering widgets and tree widgets that are "pre-packaged" - I'm not sure if it's practical to code stuff like that up for a custom OpenGL interface
02:00.26 brlcad Stragus: I'm not sure I'd agree that's a critical detail missing -- it's more a threading issue than anything to do with atomics, and there are so many ways to code around that
02:00.52 Stragus Well brlcad, atomics are all about threads, this kind of stuff is very closely related
02:01.22 Stragus starseeker: HTML rendering would be monstrous task, for sure
02:01.47 brlcad that smacks of self-justification
02:02.11 brlcad sure atomics are heavily used by threads and used for thread synching (among man other uses), but that's not their sole purpose
02:02.24 starseeker Stragus: yeah, I think the most practical solutions I've seen for OpenGL have been those that render the html to an image
02:02.42 brlcad thread api could just as well yield or be architected to not sit there spinning idle in the first place
02:03.11 Stragus brlcad: Have you used atomics in a different context? While writing to device mapped memory I guess?... That's not very common
02:03.25 starseeker ironically enough, tkhtml3 would probably be the most logical starting point for a "native OpenGL" html rendering widget, but small as it is compared to webkit there's still quite a lot of logic there :-/
02:04.11 Stragus I'm not fond enough of HTML to ever consider using it unless I'm forced to
02:04.28 brlcad actually, yeah used it as an initialization construct to implement lock-free data structures
02:05.59 starseeker Stragus: heh. Don't blame you - I use tkhtml3, but the few times I've tried digging into its guts I ended up backing away slowly...
02:06.06 Stragus And an "yield" is totally different, that goes back to the OS which is something you never want in a spin lock, the "rep nop" just makes a hyperthreading processor switch to other threads resident on the CPU core
02:09.25 starseeker ah, here's the library I was thinking of - the "C Container Library": https://github.com/starseeker/ccl - thought I'd stashed a copy before the google project vanished.
02:11.03 starseeker over 300 pages of docs - don't know how good the library itself is implementation wise, but Jacob Navia clearly put a lot of work into it...
02:11.27 Stragus Not thread safe, but there's quite a bit of work into that
02:11.36 Stragus nods
02:15.33 Stragus The self-balanced RB tree wasn't written to be as efficient as possible
02:15.57 starseeker Stragus: yeah, it's probably not the solution I thought it might be when I first found it
02:18.18 starseeker there are several RB implementations floating around online (one of the "nicer" looking ones, looking casually, is in sudo: https://github.com/millert/sudo/blob/master/plugins/sudoers/redblack.c)
02:18.58 starseeker to my eye it looks well organized and readable, but I'm not sure if it's efficient
02:22.40 Stragus It's less messy... but I still don't like this idea of having a "compare" callback find where to insert the node, among other things. The calling code can traverse the tree and find the insertion point in one function, without the overhead of 15 tiny function calls
02:23.02 starseeker there's this: http://www.25thandclement.com/~william/projects/llrb.h.html
02:25.16 starseeker not sure how the preprocessor-only approach works from a usability standpoint, but has the plus of duplicating the BSD api
02:26.50 Stragus Doesn't seem to make sense if you get any "compare" and "key/value/whatever" out of the core tree code itself
02:27.11 Stragus Headers with preprocessor abuse makes more sense when some critical callback has to be inlined, like sort functions
02:29.13 starseeker suppose we'll end up implementing the public APIs we want and trying several rb backends to see what works best
02:30.08 starseeker does confess that the combo of liberal license plus single small header appeals
02:32.30 Stragus I tend to write everything from scratch and I'll probably stick to that :)
02:33.07 starseeker chuckles - to each their own. I'm not smart enough to get away with that - I like having other people shake out the bugs before I add my own
02:33.34 Notify 03BRL-CAD:brlcad * 68659 (brlcad/trunk/include/dm.h brlcad/trunk/src/libdm/dm-Null.c and 8 others): make the remainder of the dm device callback signatures all consistently return int
02:35.22 Stragus Eh, I don't think it's a matter of smartness. I like writing my own reusable chunks because once I made them as optimized as possible, I never have to worry about it again
02:35.38 starseeker until the hardware changes ;-)
02:36.08 Stragus Yup. :) Mostly, mmatomic.h would have to be expanded with new architectures...
02:36.32 Stragus As well as the SSE/AVX abuse
02:37.35 Stragus It's hard to trust other people's code when performance matters. You would think qsort() with an inlined comparison function would be fast enough? But it's 30% slower than it should be!
02:41.03 Stragus Sorry, 38% slower
02:52.18 starseeker brlcad: do you know if anyone has ever looked into the possibility of using libpkg instead of Tcl channels for communication on Windows? I have very vague memories of trying it when I first arrived and finding out the hard way that libpkg didn't work on Windows, but I don't recall if I ever followed up further. It's an issue of more interest now, since that's one of the major pieces keeping a Tcl
02:52.24 starseeker dependency in libged
07:41.26 *** join/#brlcad tandoorichick (b64b2de1@gateway/web/freenode/ip.182.75.45.225)
08:10.57 *** join/#brlcad merzo (~merzo@188.173.16.122)
09:15.32 *** join/#brlcad sniok (~sniok@89.252.2.135)
09:35.34 *** join/#brlcad Caterpillar2 (~caterpill@unaffiliated/caterpillar)
09:35.53 Caterpillar2 hi, in next daya I will start working on including brl-cad into Fedora repositories
12:08.31 *** join/#brlcad asad_ (~asad00@host10-2.natpool.mwn.de)
12:49.17 *** join/#brlcad sniok (~sniok@89.252.2.135)
13:33.19 *** join/#brlcad Mandeep_Singh (~mandeep@117.220.151.253)
13:36.20 Caterpillar2 :-)
13:36.30 starseeker Caterpillar2: nice!
13:37.05 starseeker it's been a while since anyone had a run at that - last effort I recall was the Redhat packaging effort, and that got hung up in the src/other stuf
13:37.09 starseeker s/stuf/stuff
13:38.27 starseeker ah yes https://bugzilla.redhat.com/show_bug.cgi?id=518949
13:39.10 starseeker so tnt/jama is no longer an issue
13:39.18 starseeker openNURBS is still the same situation
13:39.43 starseeker someone would need to package STEPcode, but in principle we should be able to work with them externally...
13:41.06 starseeker there's been no change on the tkhtml3 and utah raster toolkit fronts - if someone needs those projects set up we could put a bit more effort into it
13:42.44 Caterpillar2 starseeker: ah I did not know about that ticket. The libraries you just mentioned, are them included in brlcad?
13:42.54 starseeker yes
13:43.00 starseeker src/other subdirectory
13:43.17 Caterpillar2 starseeker: ok, I will have to package them separately
13:43.34 starseeker most of what's in src/other has packages already
13:43.45 starseeker the ones I called out are the problem children
13:44.02 Caterpillar2 children problem?
13:44.34 starseeker er, sorry - libraries for which we expect difficulty with the Redhat/Fedora upstream
13:44.39 *** join/#brlcad tandoorichick (b64b2de1@gateway/web/freenode/ip.182.75.45.225)
13:44.48 starseeker libraries for which there are not already packages
13:45.25 Caterpillar2 that is not a problem, we can package them. It will only require more time
13:45.35 starseeker nods
13:46.27 Caterpillar2 brlcad will be a good thing to push Fedora usage among engineers, etc
13:47.41 starseeker fyi - I'm not sure the current CMake logic for RPM generation is correct
13:47.46 starseeker in BRL-CAD
13:50.49 Caterpillar2 starseeker: why?
13:51.21 Notify 03BRL-CAD:starseeker * 68660 (brlcad/trunk/src/libpkg/example/client.c brlcad/trunk/src/libpkg/example/server.c brlcad/trunk/src/libpkg/tpkg.c): libpkg appears to be excluded from the normal repository regression tests, but I'm not seeing any reason to keep the stdio includes when bio.h is included... go ahead and remove for now.
13:51.23 starseeker when I tried to generate an RPM for 7.26.0, it was a lot smaller than the tarballs
13:51.45 starseeker I need to figure out why
13:55.47 Caterpillar2 starseeker: so you have a quite working spec file? This will be a great help to start with
13:56.07 starseeker not really - we use CMake's CPack mechanisms to create a package
13:56.16 starseeker it generates a spec file, I believe
13:56.51 Caterpillar2 starseeker: I don't know
13:57.53 starseeker Caterpillar2: our logic for this starts in the top level CMakeLists.txt around line 2873
13:58.23 Caterpillar2 this is the list of packages that I (co)maintain in Fedora https://admin.fedoraproject.org/pkgdb/packager/germano/
13:58.53 starseeker nice!
13:59.45 Caterpillar2 in my experience, everytime we add a package into Fedora repositories, we always have some nice exchange of ideas with upstream developers, so for sure something good will pop-up
14:00.25 starseeker nods - I recommend reading over the older Redhat ticket - a couple of the issues are obsolete, but many still remain to be resolved
14:00.35 Caterpillar2 my skill in making new packages of software writte in C is not high (I have taken orphaned packages), but I have very high skilled people that can suggest me
14:00.56 Caterpillar2 yep I just subscribed to that ticket
14:01.28 starseeker you'll probably want to start with stepcode, utahrle and perhaps openNURBS
14:01.54 starseeker the primary difficulty with openNURBS is that we do patch it and so far our patches have not been accepted upstream
14:02.40 Caterpillar2 starseeker: oh, why openNURBS upstream developers did not accept them?
14:02.53 starseeker uh... it's a long story
14:03.12 starseeker in one case there's a disagreement about what the "right" code is
14:04.01 Caterpillar2 mmh... but we can take your patches and appy them to the corrispective Fedora package :-)
14:04.21 starseeker that would be workable
14:04.43 starseeker you may also want our build system for openNURBS ;-)
14:05.35 Caterpillar2 what is made of?
14:05.42 starseeker CMake
14:05.50 Caterpillar2 ah ok
14:06.09 starseeker fyi - there was apparently some interest in an openNURBS package back in 2011: https://lists.fedoraproject.org/archives/list/legal@lists.fedoraproject.org/thread/JP2RTIBREMZ5SIFMJ35AHXXQDJHQPQLX/
14:06.35 Caterpillar2 I added a comment, so that if any of other Fedora contributors wants to help me, he can contact me https://bugzilla.redhat.com/show_bug.cgi?id=518949#c29
14:08.04 Caterpillar2 starseeker: I can contact the guy who wanted to package openNURBS
14:08.22 starseeker I don't know if he made any progress - just something to be aware of
14:10.53 Caterpillar2 starseeker: I have just made a query to find his name among Fedora contributors, but he seems to not be present. For your info, to do such queries, you have to query zodbot (that is present in all #fedora-* channels) and enter command fas name surname or fas nickname. Then you will get some results, and when you get his Fedora-Account-System name, you do: fasinfo foo
14:11.13 starseeker ndos
14:11.18 starseeker nods rather
14:12.14 starseeker Caterpillar2: the stepcode upstream site is here: http://stepcode.org/
14:12.46 starseeker Caterpillar2: the openNURBS site is here: https://www.rhino3d.com/opennurbs
14:12.58 Caterpillar2 ok
14:13.17 starseeker I don't think we've synced our own sources to the latest openNURBS yet, so there may be a bit of work to do there
14:13.57 starseeker this is the upstream project we started to establish for utahrle: https://sourceforge.net/projects/utahrle/
14:14.03 Caterpillar2 ok I will save this chat log, make a list of libraries that have to be packaged, and starting sorting my ideas
14:14.29 Caterpillar2 I am going to add #brlcad to my autojoin channels list
14:14.50 starseeker cool - good luck!
14:15.07 Caterpillar2 ;-)
14:15.34 starseeker another point - I know definitely at the moment that some parts of our code will not work with the new Itcl/Itk 4 packages
14:15.48 starseeker if Fedora is on Tcl/Tk 8.6, that may be an issue
14:16.02 *** join/#brlcad sniok (~sniok@89.252.2.135)
14:17.24 Caterpillar2 you can find my email address at https://fedoraproject.org/wiki/User:Germano#Contact
14:17.38 Caterpillar2 starseeker: is tcl/tk -->> tcl-tkpng.x86_64 : Tcl/Tk support for PNG ?
14:18.13 Caterpillar2 mmh no it seems not
14:25.37 *** join/#brlcad tandoorichick (3d0c28b1@gateway/web/freenode/ip.61.12.40.177)
14:26.07 Notify 03BRL-CAD:starseeker * 68661 brlcad/trunk/regress/repository.cmake: Add a mechanism to exclude files in the build directory, should it be located in the source directory. Can't do anything about the in-src-dir case (yet) but this is a start...
14:26.09 Notify 03BRL-CAD:starseeker * 68662 brlcad/trunk/misc/CMake/test_srcs/sleep.c: another unistd include when we have bio
14:50.50 Notify 03BRL-CAD:starseeker * 68663 brlcad/trunk/include/pkg.h: Add common.h to pkg.h, unless/until we find out there's a reason not to...
14:56.22 Notify 03BRL-CAD:starseeker * 68664 brlcad/trunk/regress/repository.cmake: list a few more files and patterns we don't want to examine
15:03.40 Notify 03BRL-CAD:starseeker * 68665 brlcad/trunk/regress/repository.cmake: There are a few 'public' headers that do have one or both of bio and bnetwork in them - excempt them from this check, since it hasn't been a regress-repository breaker...
15:04.14 Notify 03BRL-CAD:starseeker * 68666 brlcad/trunk/src/burst/paint.c: Only include common.h once
15:05.15 Notify 03BRL-CAD:starseeker * 68667 brlcad/trunk/src/libged/simulate/interface.cpp: common.h and ged.h get included regardless
15:06.04 Notify 03BRL-CAD:starseeker * 68668 brlcad/trunk/src/libged/simulate/physics_world.hpp: add common.h
15:36.02 starseeker brlcad: I notice that repository.sh doesn't report WIN32 et. al. instances in any of the include header files. Is this intentional?
16:03.26 *** join/#brlcad sniok (~sniok@89.252.2.135)
17:03.07 *** join/#brlcad kintel (~kintel@unaffiliated/kintel)
17:22.23 *** join/#brlcad amarjeet (~Amarjeet@101.208.5.88)
17:58.24 *** join/#brlcad amarjeet (~Amarjeet@101.208.5.88)
18:20.50 *** join/#brlcad amarjeet (~Amarjeet@101.208.5.88)
18:31.02 *** join/#brlcad amarjeet (~Amarjeet@101.208.5.88)
18:35.20 *** join/#brlcad amarjeet (~Amarjeet@101.208.5.88)
18:35.33 *** join/#brlcad tandoorichick (b64b2d01@gateway/web/freenode/ip.182.75.45.1)
18:36.54 *** join/#brlcad amarjeet (~Amarjeet@101.208.5.88)
18:42.09 *** join/#brlcad amarjeet_ (~Amarjeet@101.211.235.40)
18:47.45 *** join/#brlcad amarjeet (~Amarjeet@101.211.235.40)
18:56.26 *** join/#brlcad teepee (~teepee@unaffiliated/teepee)
18:58.11 brlcad starseeker: pkg instead of tcl channels has been discussed before, but nobody has looked or tried
19:02.35 *** join/#brlcad amarjeet (~Amarjeet@101.211.228.237)
19:03.14 *** join/#brlcad amarjeet (~Amarjeet@101.211.228.237)
19:04.29 brlcad starseeker: what do you mean it doesn't report headers? it does, was, or at least should be (see line 268)
19:07.46 brlcad starseeker: also regarding pkg .. I think you tried before anyone had gotten libpkg compiling (nothing tricky, we just needed the winsock2 init bits and types)
19:10.10 *** join/#brlcad amarjeet_ (~Amarjeet@101.211.237.160)
19:11.39 brlcad Caterpillar2: shall I set you as a maintainer for fedora, to receive release notifications?
19:27.55 *** join/#brlcad amarjeet (~Amarjeet@101.211.237.160)
19:31.06 starseeker brlcad: my cmake scripts are reporting WIN32 instances in bu/defines.h, common.h and a few other headers - I'm not seeing these listed in the repository.sh report, unless I'm missing something
19:31.28 starseeker trying to make the CMake script a full replacement for the .sh script, which means matching its results...
19:33.23 starseeker I'm getting close to being ready to set up individual tests to do in parallel, but I don't want to do that until I've first achieved functional parity
19:35.58 Notify 03BRL-CAD:starseeker * 68669 brlcad/trunk/regress/repository.cmake: Do less expensive matching tests before we go for the all-upregex match, although we have to be careful with this - common.h test, for example, looks for either system includes or common.h so we can't rely on a simple qualification test there. If this works as well as it seems to now, cuts execution time from about 70 seconds to a little over 30.
19:36.00 Notify repository.sh is about 21, so if we can execute individual tests in parallel we should get a significant speed up overall.
19:36.02 Notify ...
19:40.35 Notify 03BRL-CAD:brlcad * 68670 brlcad/trunk/HACKING: add Caterpillar2 as a maintainer for fedora
19:42.09 brlcad starseeker: they are printed in sections, headers first then sources then build files
19:42.22 brlcad so maybe in a different section/earlier in the output?
19:47.36 Caterpillar2 brlcad: ok
19:48.48 brlcad Caterpillar2: cool, great! thank you
19:49.21 brlcad you can pass the torch on at any time, it just means you'll get an e-mail notification whenever we push out a new release, so you can decide whether to update fedora
19:56.12 Notify 03BRL-CAD:brlcad * 68671 (brlcad/trunk/include/ged/defines.h brlcad/trunk/src/libged/rt.c and 2 others): eliminate exposing tcl types and symbols in ged's public header, cast accordingly
19:56.58 Caterpillar2 brlcad: ok
19:59.12 Caterpillar2 brlcad: the process of bringing brlcad into Fedora repositories will take some months, because of various libraries that have to be included into Fedora repositories
20:05.48 brlcad Caterpillar2: yes, I understand .. it's a lot of work and greatly appreciated!
20:06.27 Caterpillar2 ;-)
20:08.07 Caterpillar2 starseeker: brlcad: I have forgotten to also say that brlcad will be included in Fedora EPEL repositories too, that means that it will be available for RHEL, CentOS, ScientificLinux, Oracle Linux too
20:09.21 brlcad that's great to hear
20:09.48 Caterpillar2 https://fedoraproject.org/wiki/EPEL/
20:10.40 brlcad yeah, was just reading up on it
20:11.16 Caterpillar2 :-)
20:11.21 brlcad we manually pull together rpm's for RHEL currently
20:12.03 Caterpillar2 brlcad: I have heard from starseeker that you use a particular way to make RPM packages
20:12.09 brlcad oh, for what it's worth -- we have a variety of build materials in misc/ that may be of interest/relevance to you
20:13.10 brlcad misc/archlinux, misc/brlcad.spec,.in and misc/debian in particular
20:13.23 Caterpillar2 ah ok
20:13.49 brlcad if it's helpful for you to store files or make changes, let me know and I'll get you set up so you can commit as needed
20:15.30 Caterpillar2 brlcad: on which distro did you test the spec file?
20:17.35 brlcad Caterpillar2: it was last used 4 years ago and just as a spec file for our manually prepared rpm installer, but maybe has some relevant/useful bits
20:19.52 brlcad several distro managers (e.g., gentoo's ebuild) choose to maintain their build logic in their repo system, others stash their files into our repo for convenience
20:20.56 Caterpillar2 brlcad: I am forced to use Fedora infrastructure. If I do not use it, I cannot update packages in official Fedora repositories
20:21.21 brlcad that's fine, just giving you options ;)
20:22.18 brlcad Caterpillar2: this may also be of interest, manual build instructions for linux lists some expected deps (should be fairly up-to-date): http://brlcad.org/wiki/Compiling
20:22.59 brlcad I notice that list is not consistent with http://diyhpl.us/~bryan/irc/brlcad/doc/README.Linux ...
20:25.32 Caterpillar2 brlcad: ah, I think that the http://diyhpl.us/~bryan/irc/brlcad/doc/README.Linux should be updated soon
20:32.18 brlcad let me know what updates, or send a diff/patch ... that's in our repo
20:32.50 brlcad it's in doc/README.Linux in a checkout if that wasn't obvious :)
20:34.31 Caterpillar2 brlcad: I haven't seen it yet, but I said that after you wrote that there is a unconsistence between http://brlcad.org/wiki/Compiling and http://diyhpl.us/~bryan/irc/brlcad/doc/README.Linux
20:40.04 Caterpillar2 which distro do you use usually?
20:40.07 brlcad starseeker: only reason I can recall for disallowing bio/bnetwork/etc in public headers is because, like common.h, we don't yet define who owns them
20:41.05 brlcad Caterpillar2: I hop all around, but most often on mac and freebsd
20:41.26 brlcad main professional platform is rhel
20:41.33 brlcad (and windows)
20:44.29 brlcad while mostly mac and bsd, I also play/help a bit with haiku, rtems, and minix development
20:45.46 brlcad starseeker: should just skip all of misc/ for repository testing, just like src/other
20:47.39 Caterpillar2 brlcad: what is the homepage of upstream gct library? ( brlcad-7.26.0/src/other/gct/ )
20:48.34 brlcad it probably shouldn't be in src/other .. there is no upstream location
20:50.29 Caterpillar2 brlcad: is it a library developed by brlcad developers?
20:52.05 brlcad Caterpillar2: it's in src/other simply because it was written by a dev that doesn't usually write code for brl-cad (directly, at least), but as far as I know, we're the only public presence it has as that was code developed under contract for public release inclusion in brl-cad
20:53.56 brlcad Stragus: care to comment on GCT? does it exist anywhere else such that fedora would point to it as a stand-alone thing that we depend on?
20:56.29 brlcad Caterpillar2: it was primarily written by that guy there, so you can ask him.. ;) he has a habit of writing useful code and then not packaging it up
20:56.34 Caterpillar2 brlcad: I asked because https://fedoraproject.org/wiki/Packaging:Guidelines#Bundling_and_Duplication_of_system_libraries and https://fedoraproject.org/wiki/Bundled_Libraries?rd=Packaging:Bundled_Libraries so I started reading stuff in /others and searching of ach item, if there is already a package into Fedora repositories. GCT was the first occurrence of a /others library that is not present into Fedora
20:56.36 Caterpillar2 repositories
20:58.58 brlcad of i'm the opinion that it doesn't belong in src/other, that we should move it under one of our processing libs as a backend detail (not a stand-alone lib)
20:59.53 brlcad so unless Stragus has some fundamental objection or plans to turn it into a project, give it a home, then we'll treat it as our code
21:00.06 brlcad we kind of already did with a slew of widespread changes for portability
21:01.04 brlcad we may even end up ripping it out if we can't eaily fix a few issues already encountered in the decimation logic
21:01.11 Caterpillar2 how many stable developers are involved in brlcad?
21:02.20 brlcad about a dozen depending on who you count
21:02.49 brlcad ohloh says 6 in the last 30 days, 12 over past year, 84 committers over lifetime
21:03.25 brlcad few more if you count the github repos which cover various web services
21:05.47 Caterpillar2 does USA's army still spend money for its development or is it entirely in community hands?
21:06.25 brlcad still spending quite a bit annually
21:07.20 brlcad BRL-CAD is tightly integrated into a complex DoD analysis workflow so it's used by several agencies, Army in particular
21:07.54 Caterpillar2 good to hear that money is spent for a product freely available for everybody
21:08.17 brlcad it would probably cost $50.M USD minimum to uncouple BRL-CAD and do something different
21:09.40 Caterpillar2 brlcad: what DoD stands for?
21:09.46 brlcad ~dod
21:09.46 infobot it has been said that dod is Dial on Demand, a way of making the modem dial whenever you try and send info to the inet
21:09.50 brlcad heh, not that
21:10.06 brlcad ~dod is also the U.S. Department of Defense
21:10.06 infobot okay, brlcad
21:10.10 Caterpillar2 ok
21:12.26 brlcad open source has been catching up, though
21:12.55 brlcad before this year's burnout lull, open source activity surpassed funded activity a number of times last year and the year before
21:13.34 brlcad I'd like to see that grow even more, all the more reason we need better integration with repos, more devs working projects, scrape off our usability warts
21:14.33 Caterpillar2 I will start asking some mechanical engineer professors at University of Rome Tor Vergata, to try using brlcad for their work, in order to get some nice feedbacks, etc.
21:15.16 brlcad to be completely honest, it's often jarring for them as our interface is very different from the commercial systems
21:16.36 brlcad and dod's obsession with analysis requirements is not their requirements (they want usability, annotated engineering drawings, tight integration with FEA codes, etc)
21:17.22 brlcad we're definitely working on briding that gap, though -- feedback from them is always appreciated
21:17.55 brlcad we have a couple engineering universities in India also providing good feedback (and devs to help improve)
21:18.22 brlcad need devs more than we need users ... we should probably put that on our website ;)
21:20.17 Caterpillar2 what are FEA codes?
21:20.51 brlcad ~fea
21:21.02 brlcad infobot: you are 0 for 2
21:21.02 infobot brlcad: I think you lost me on that one
21:22.36 brlcad ~fea is Finite Element Analysis does hard math and science on geometry chopped up into little pieces
21:22.36 infobot okay, brlcad
21:23.39 Caterpillar2 it would be great if in the future brlcad will have a Qt based GUI
21:26.55 Caterpillar2 if one day there will be some funds to start such work, I know a guy that works on KDE' ark software, that is skilled in Qt libraries
21:32.02 brlcad that work is already started, qt branch in rpo
21:32.07 brlcad *repo
21:32.43 Caterpillar2 uh good
21:32.46 Caterpillar2 brlcad: Qt5?
21:32.52 brlcad we've had a gsoc project defined as well, but nobody skilled enough to propose it as their project: http://brlcad.org/wiki/Convert_MGED_from_Tk_to_Qt
21:33.45 brlcad http://brlcad.org/wiki/User:Vladbogolin/qt-display-manager
21:34.29 brlcad don't recall, that was circa 2013 which was shortly after qt5
21:34.35 brlcad I think it was
21:36.45 Caterpillar2 sorry for the question (English is not my first language): <<but nobody skilled enough to propose it as their project: http://brlcad.org/wiki/Convert_MGED_from_Tk_to_Qt>> does it mean that nobody worked on brlCAD Google Summer of Code project?
21:37.16 brlcad no no
21:37.52 brlcad nobody has ever proposed the "convert mged to qt" project for the gsoc program
21:38.02 brlcad at least nobody skilled enough
21:38.26 brlcad there was someone that worked on some qt infrastructure, though, for a different gsoc project
21:38.42 brlcad and a couple core devs have been working that area a bit
21:39.20 brlcad starseeker was working on a new prototype in qt, got pretty far
21:39.55 brlcad several of our india devs have been working on recreating things in web technologies using node.js and friends
21:40.31 Caterpillar2 interesting
21:40.41 Caterpillar2 anyway if you need some Qt developers I can suggest you some guys
21:41.06 brlcad you can see that work here: http://brlcad.org/wiki/OGV
21:41.15 brlcad okay, good to know thanks!
21:42.12 Caterpillar2 the web GUI is very nice
21:44.19 *** join/#brlcad kintel (~kintel@unaffiliated/kintel)
21:48.25 brlcad one of our tasks for the next couple months is to integrate the 700+ design and code submissions from participating in the GCI program
21:48.42 brlcad several items in there that were really pretty exciting were really awesome GUI prototypes
21:50.22 brlcad one such example: http://brlcad.org/design/gui/gci_skriptkid_prototype/brlCad-03.png
21:54.43 brlcad some more fun ones at http://yash-m.github.io/BRL-CAD-Portfolio/ under GUI
21:54.53 Caterpillar2 brlcad: nice, is that qt stuff?
21:55.05 brlcad they're mock-up designs
21:56.05 Caterpillar2 brlcad: ah ok
22:02.29 Caterpillar2 brlcad: I have to go to bed, see you tomorrow
22:15.07 starseeker needs another knock-down-and-drag-out round with libdm/libfb before we're really going to be in a good position for the Qt stuff
22:22.57 starseeker brlcad: do you want to skip misc/CMake as well for the build files? We do define a lot of our macros/functions there...
22:26.13 starseeker brlcad: here's what I'm currently seeing from the sh script: http://brlcad.org/~starseeker/regress_repository_sh.log
22:26.53 starseeker and the CMake version: http://brlcad.org/~starseeker/regress_repository_cmake.log
22:27.21 starseeker fwiw, the sh script does look in misc/CMake...
22:38.56 starseeker brlcad: when I boil it down the the line reports, here's the current diff: http://brlcad.org/~starseeker/repository_reports.diff.txt
22:51.03 *** join/#brlcad ries (~ries@D979C7EF.cm-3-2d.dynamic.ziggo.nl)

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.