califax has quit [Remote host closed the connection]
califax has joined #openscad
teepee_ has joined #openscad
teepee has quit [Ping timeout: 240 seconds]
teepee_ is now known as teepee
kintel has joined #openscad
castawayc has quit [Server closed connection]
castawayc has joined #openscad
<kintel>
I just noticed that sometime between 2015 and 2019, search() no longer prints a warning if a character is not found in a string, e.g. `echo(search("e","abcdabcd"));`
<kintel>
Does anyone know if that was done on purpose?
<kintel>
Other search variants seem to still print a warning
* InPhase
"search"es memory...
<InPhase>
peepsalot: Did you clean-up some of search 2018-2019 or so around the same time frames as those comparison cleanups and such?
<InPhase>
I only have hazy memories of discussions of it roughly in that jumbled timeframe of memories.
<peepsalot>
possibly, off the top of my head I feel like I might have touched it as part of Value rework, where EmbededVectorType was added etc.
<kintel>
This was before 2019, so it's very possible it's my own fault, didn't try to search git history in detail yet
<peepsalot>
is it not something that we have a test for?
<peepsalot>
i don't recall removing any warnings on purpose myself
<kintel>
Not sure we have tests for warnings
<kintel>
peepsalot but since you're here and have touched the Value utf8 stuff a bit:
<peepsalot>
echo tests should include warnings afaik
<kintel>
ok, I'll double check the test histories
<kintel>
What I'm trying to do is to move the glib features g_utf8_get_char(), g_utf8_validate() etc. into the str_utf8_wrapper class
<kintel>
-> with the goal of isolating calls into glib to that class itself, as a stepping stone towards playing with glib utf8 alternatives.
<peepsalot>
i guess the issue is code that's not accessing through Value already?
<peepsalot>
i don't recall how much glib usage there is across the project, but the str_utf8_wrapper calls a couple of those functions
<peepsalot>
and has builtin character iterator
<kintel>
yeah, there's only a handful of glob usage elsewhere
<InPhase>
https://github.com/openscad/openscad/pull/2310/files I did find this, authored by peepsalot and committed by kintel in 2018. But it doesn't sound like it could cause the mentioned behavioral change.
<peepsalot>
well, mystery solved :)
<kintel>
For some reason, only some warnings were removed...
<InPhase>
:)
<InPhase>
I still believe we should destroy "search" with fire and have a completely redesigned tool for this.
<InPhase>
But that would be a thing to think about for a bit.
<kintel>
haha, yeah, it's such a weird function
<InPhase>
It feels like the "what if it also did this" meeting had some intoxicants in the meeting snacks. :)
<kintel>
This was the early days where functions were invented just to enable certain demo features
<kintel>
This was actually a feature built to render text, where fonts were defined as lists of vertices vertices. Before teepee wrote the font feature
<kintel>
Anyway, I figured out what happened. Someone remove warnings by doing test-driven development. ..except we didn't have full test coverage back then.
tarski-operator has quit [Ping timeout: 265 seconds]
guso78 has quit [Quit: Client closed]
L29Ah has left #openscad [#openscad]
L29Ah has joined #openscad
J23k58 has joined #openscad
J23k90 has quit [Ping timeout: 245 seconds]
Guest42 has joined #openscad
<Guest42>
I was on this chat yesterday with a question how to import OBJ & MTL to openSCAD. I was advised to use latest dev snapshot. I tried - it failed with error. Is it supposed to be supported?
<Guest42>
Also - is there a discord channel for OpenScad?
<J23k58>
discord is evil
<J23k58>
teepee said obj import should be supported - was was the error msg? Guest42
<Guest42>
unsupported file format
<Guest42>
And yes - a devil, yet I can follow up on messages and answers after I log off
<Guest42>
Wait,... Maybe it's a wrong error message - let me run it again on the new version
<guso78[m]>
There IS an example ctest dodecahedron which works.
<guso78[m]>
Maybe import obj needs to become much more versatile. MTL IS Not yet supported e.g.
<guso78[m]>
Will Look into the shown obj in the evening
<J23k58>
maybe some conversion thing ..
<J23k58>
i have tried other obj files and all give the same error
snaked has quit [Quit: Leaving]
<guso78[m]>
No Problem, later i will know more about the issue
<guso78[m]>
Could BE stupid crlf Thing even ....
peeps[work] has joined #openscad
guerd871 has quit [Ping timeout: 240 seconds]
snaked has joined #openscad
J23k58 has quit [Quit: Client closed]
J23k58 has joined #openscad
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
J23k58 has quit [Client Quit]
J23k58 has joined #openscad
J23k58 has quit [Client Quit]
J23k58 has joined #openscad
<lf94>
Do people make money using hardware description languages in the FOSS ecosystem?
<lf94>
I feel there's a parallel to code CAD there
<lf94>
Both produce plans to create tangible things
guso78 has joined #openscad
<Scopeuk>
hdl is in a weird place
<juri_>
so, i know people who do.
<juri_>
and i officially make $15 a month, writing implicitcad/HSlice.
<juri_>
that's one *good* cup of coffee, in exchange for my evenings and weekends. :P
<Scopeuk>
the tools, foss and proprietary are capable but also naff. development there will likely blow it open. I guess most people who re doing it aren't doing it for foss, particularly as a lot of your tool chains are weird and proprietary if you want to extract the last 30% of performance
<InPhase>
lf94: In my past drifts into hardware description languages, you are typically coupled to some vendor's hardware if you want to do anything with the serious hardware, and you don't want to spend forever on infrastructure. Although this appears to be gradually getting a little better with some of the hobbyist options like a few arduino associated items.
<lf94>
Oddly similar to CAD world: everyone's tied to some vendor for their CADware.
<InPhase>
lf94: So there are limits on how "open" it is until there are more standardized options that interoperate well with open source tools.
<teepee>
there's a couple of fabs now with fully open source PDKs, so interesting stuff happening
<teepee>
I was surprised GF joined the club too, although I only saw some sort of press release
<teepee>
big difference is you buy *chips*, nobody really wants to buy software
guerd87 has quit [Read error: Connection reset by peer]
guerd87 has joined #openscad
<joseph_>
kintel: I have been tinkering locally with refactoring. Before deciding how to check in everything and push it, I think it would be useful to know beforehand the way that I'm eventually going to get this year's (and last year's) work into the main repository. I thought that making a visualization would help with the final decision-making. I created this: https://github.com/jbinvnt/gsoc-2023-git-planning/blob/master/
<joseph_>
GitDiagram20230612.pdf and perhaps teepee can weigh in too
<kintel>
I think I, by far, would prefer Method 3, probably even split the refactoring code into multiple PRs as you progress
<kintel>
..but I think a more interesting discussion is going to be how to scope the refactoring, as that in itself could easily be too large of a project to finish in time, especially if you want to target both preview rendering and geometry rendering
<kintel>
Reasoning for my preference: Method 1: Dirty master, which will break our nightly releases, Method 2: Too many feature in the same PR; will be too time consuming to review and merge, and thus run the risk of never making it into master.
<kintel>
Btw. in terms of refactoring: Have you reviewed the existing GL code in OpenSCAD, and determined where legacy GL calls are made from, as a starting point for choosing where to focus refactoring work? ..or is the refactoring meant to be a green "no functional changes" refactoring to make it easier to progress afterwards?
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
J23k58 has quit [Quit: Client closed]
J23k58 has joined #openscad
<joseph_>
kintel: Thanks for the feedback. Because I anticipate that the rebase required for option 3 would likely have many conflicts, it might become easier to just rewrite the rendering changes from last year on top of the refactored master (hopefully which, as a result of the refactoring, won't be a huge amount of work).
othx has quit [Remote host closed the connection]
guso78 has quit [Quit: Client closed]
<joseph_>
kintel: When I say "refactoring," for now what I mean is just the "no functional changes" edits. My core goal is to decouple the OpenGL drawing methods from the logic that processes the incoming geometry (be it CGAL or OpenCSG). I expect that this will then allow me to consolidate the rendering that is shared in OpenCSGRenderer and CGALRenderer, allowing future modernizations/edits to happen in one place
othx has joined #openscad
teepee_ has joined #openscad
guso78 has joined #openscad
teepee has quit [Ping timeout: 240 seconds]
teepee_ is now known as teepee
JakeSays has quit [Server closed connection]
JakeSays has joined #openscad
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
snaked has quit [Quit: Leaving]
mmu_man has quit [Ping timeout: 246 seconds]
kintel has joined #openscad
<kintel>
joseph_: I would probably largely deselect preview rendering if I were you; OpenCSG is most probably making its own GL calls, or put some limitations on how to use OpenGL, so you may hit a wall there at some point.
<kintel>
Also keep in mind that there is legacy rendering core scattered elsewhere, outside of the geometry rendering classes.
<kintel>
I do believe CGALRenderer should be largely legacy free already if the VBO stuff is enabled. Refactoring the VBO stuff itself might be a big enough task for the remaining time
<kintel>
^ as you can read between the lines, I feel that the largest risk is to take on a too big of a task, ending up with another PR which cannot be merged.
<kintel>
..but once you understand the code in the renderers and can estimate what a green refactoring looks like, that should de-risk this.
foul_owl has quit [Quit: WeeChat 2.3]
mmu_man has joined #openscad
guso26 has joined #openscad
kintel has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]