'q66' on IRC; Software Engineer at Samsung Electronics Czech (working for SRUK Open Source Group); OctaForge project maintainer, Elua maintainer, and a heavy Lua (ab)user.
- User Since
- Apr 12 2013, 5:06 PM (301 w, 3 d)
Sat, Jan 19
The thing in charge of freeing the structure is in charge of freeing its owned fields. If they're not marked owned, it is assumed that the struct does not own them and they will be freed somewhere else. I wonder if this behavior is what we want though. Maybe we should make them owned by default, and reverse the behavior so that you explicitly have to mark the field *not* owned in order to prevent it from being freed as a part of the structure?
Fri, Jan 18
Yes, we allow that. It means the struct owns the reference. If the field is not @owned, it will not be freed when freeing the structure. It is separate from owning on params; if the param is not owned, it means the caller will free it, if it is, it means the callee will free it. Either way, @owned fields will be freed by one of them.
you forgot an else
Thu, Jan 17
Fixed in 18ab4f2eec444bbef11605bd0e2ba057709cbb7e.
actually, i found a better way for this, so please abandon the rev
Landed the Eolian-side enforcement in 1b7129cea0d90f76a21bd6b4e40d1528141e087f.
Wed, Jan 16
I did however disable explicit usage of it in interfaces in 90f604327586eb8fb3f0c9e7b83816573bea820d.
I added a check to help with this in eb830d8e46ce5aae656bc7d93a4d01bac0a82e5d. Methods/properties are implicitly pure_virtual in interfaces, so the ticket is a bit misleading, and it's currently also allowed (and used) in mixins. However, pure virtual methods are treated as unimplemented by 211064113104702b2c6bd279e9e8a04ee0e8254a, so any potential cases are caught by that.
Thu, Jan 10
Besides that one thing, looks good to me, I think.
Yes, have those two values for now, and if "lua" is selected, disable elua entirely. I will update it as necessary when luajit is removed.
my proposal involves keeping support for *only* 5.3, so a build option will be unnecessary
Wed, Jan 9
Also, it's not true that 5.1 is API/ABI compatible with luajit; it only applies the other way around, i.e. luajit is a superset of 5.1 functionality. While elua itself might compile with 5.1 (because it doesn't really use any C API calls beyond what 5.1 provides), it will be effectively useless because all the elua scripts rely on runtime luajit functionality (primarily the FFI)
elua only supports luajit.
Dec 20 2018
Dec 6 2018
Well, since it covers all the C# docs, I'll just go ahead and remove it from our own generator for the time being. The current C# code is pretty much copy-paste-parts-of-the-generator-into-separate-file-and-modify and it's kind of a pain to do changes in it as i make them in the rest of the generator, so if we want C# support later in it, might as well just write it from scratch.
The API reference is correct. The problem is that the .eo file it's referencing is not being installed, which means it works in-tree but not when in the system...
Dec 5 2018
Does this mean we will not need C# support inside the eo doc generator?
Dec 3 2018
@segfaultxavi as for tagging methods directly, well, eolian by design doesn't specifically enforce ordering of methods in their block, especially since generators typically work with Eolian_Implementation rather than Eolian_Function list directly; in a constructors section, we'd typically want the order of the fields to be strict, I'd assume.
Nov 30 2018
this is not possible to do efficiently in the eolian library (would require revalidating classes multiple times, as well as keep a fresh hash table for each validation layer and that would likely add quite a bit of time)
That has for now optionally been done in T7365, once all the definitions are fixed, we can enable it unconditionally...
Nov 29 2018
Nov 28 2018
Nov 27 2018
eolian in fact does have a way to do notes, just start the paragraph with "Note:", so like you did, but different case
Nov 23 2018
Initial work has been merged on T7459. I believe once that is done, we can restrict things in Eolian so that only interfaces/mixins are allowed in the "implements Foo, Bar" list, but that will need some .eo file refactoring...
Nov 21 2018
A fix for this issue has been introduced in 9535eff025d7be0810e07917ea642b44104995d5. However, it cannot be enabled just yet, since we have those conflicts (like resize) in the tree so those must be fixed first...
this has been solved with the recent grouping changes, therefore closing
Nov 16 2018
so that third party bindings can make use of it, obviously
yep - and we need a standard way which is not a bash script
Nov 15 2018
welcome back @cedric o/
Nov 14 2018
eolian_aux which is currently under review (D7245) provides this.
Nov 12 2018
Nov 8 2018
Not what I am getting
Also, I believe you are wrong:
IS that so? That is interesting, because a potential change of implementation (i.e. potentially behavior of Eolian itself) should trigger re-generation of eo.* files (in order to account for the new behavior), and changed headers should rebuild the rest of it. At least that's how I see it, if Meson does not do it, we potentially have another problem at hand...
Honestly, I think we should drop autotools as soon as possible.
why not? i don't see any particular disadvantage to it, and at least it allows addition of new APIs and being able to run tests on them without triggering a full EFL rebuild every time (as eolian_gen itself is most likely not going to depend on it)
Nov 7 2018
I had plans for more, but I wasn't able to abstract these APIs well enough to make it into a reusable piece that makes sense. So for now there's these (they will help shorten the docgen) and more will be added gradually as I figure them out (but I won't actually focus on the library anymore once it's merged, just add new APIs as they make sense)
Nov 6 2018
Nov 2 2018
Perfect. We can synchronize efforts later then.
Nov 1 2018
I took a break from that to work on meson, eolian_aux (which will be used to move some of the core from the docgen) and some other things, but the code is all in my personal dev repo... I will try to get a proper repository set up early next week or maybe even during this weekend. If somebody wants to help with working on the doc generator or even provide feedback on the generated output, go ahead, it would be much appreciated.