vandenoever (Jos van den Oever)
User

Projects

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Saturday

  • Clear sailing ahead.

User Details

User Since
Jul 9 2015, 3:00 PM (179 w, 1 h)
Availability
Available

Recent Activity

Sun, Dec 9

vandenoever committed R881:0fb6e84077f7: Increase version to 0.2.2 and update ChangeLog (authored by vandenoever).
Increase version to 0.2.2 and update ChangeLog
Sun, Dec 9, 11:36 PM
vandenoever committed R881:ecd135f31132: Fix build with rust <= 1.30 (authored by vandenoever).
Fix build with rust <= 1.30
Sun, Dec 9, 11:32 PM
vandenoever committed R881:86652e860562: Increase version to 0.2.1 and add ChangeLog (authored by vandenoever).
Increase version to 0.2.1 and add ChangeLog
Sun, Dec 9, 11:22 PM
vandenoever committed R881:b41b1be3369c: Add anonymous parameter placeholders to generated code (authored by vandenoever).
Add anonymous parameter placeholders to generated code
Sun, Dec 9, 11:22 PM
vandenoever committed R881:319991e77fa5: Add anonymous parameter placeholders to generated code (authored by vandenoever).
Add anonymous parameter placeholders to generated code
Sun, Dec 9, 10:45 PM
vandenoever added a comment to D17447: Add support for Rust 2018 edition projects..

Thank you very much Owen! Hope you're enjoying Rust Qt Binding Generator.

Sun, Dec 9, 10:36 PM
vandenoever committed R881:325ffc2a2c84: Add support for Rust 2018 edition projects. (authored by onelson).
Add support for Rust 2018 edition projects.
Sun, Dec 9, 10:34 PM
vandenoever closed D17447: Add support for Rust 2018 edition projects..
Sun, Dec 9, 10:34 PM
vandenoever added a comment to D17447: Add support for Rust 2018 edition projects..

It's a very clear patch and well documented. I'd prefer it to use an enum though. I've put a suggestion in the code.

Sun, Dec 9, 9:28 PM
vandenoever added a comment to D17447: Add support for Rust 2018 edition projects..

I would prefer it if the patch would parse Cargo.toml to determine the edition of Rust. This can be done with the toml crate.

Sun, Dec 9, 1:22 PM
vandenoever added a comment to D17447: Add support for Rust 2018 edition projects..

I've tried the patch. To get a 2018 project to compile, cargo needs to know about the 2018 edition feature:

rust_qt_binding_generator = { path = "../rust_qt_binding_generator", features = ["use-2018-edition"] }
Sun, Dec 9, 1:09 PM
vandenoever added a comment to D17447: Add support for Rust 2018 edition projects..

Thank you for the simple patch. Is use-2018-edition a feature that is automatically set by Cargo when edition = "2018"? I've not found the documentation on that.

Sun, Dec 9, 11:59 AM

Sat, Nov 24

vandenoever committed R881:4acf7e3176c7: Resolve resource path relative to qrc path (authored by vandenoever).
Resolve resource path relative to qrc path
Sat, Nov 24, 1:14 PM

Nov 11 2018

vandenoever committed R881:f678d441e9fe: Fix building with MSVC (authored by vandenoever).
Fix building with MSVC
Nov 11 2018, 4:05 PM

Nov 1 2018

vandenoever accepted D16576: Use more rust syntactic sugar.

Looks good. Thanks and welcome to Rust Qt Binding Generator.

Nov 1 2018, 10:16 AM
vandenoever requested changes to D16576: Use more rust syntactic sugar.

Nice work, Carl.

Nov 1 2018, 7:20 AM

Oct 29 2018

vandenoever committed R881:e6d220bc1808: Increase version number and add ChangeLog (authored by vandenoever).
Increase version number and add ChangeLog
Oct 29 2018, 9:41 PM
vandenoever committed R881:037322f27008: Cleanup code (authored by vandenoever).
Cleanup code
Oct 29 2018, 9:41 PM

Oct 28 2018

vandenoever committed R881:89c86642f8e3: Print the c++ library that cargo should link against (authored by vandenoever).
Print the c++ library that cargo should link against
Oct 28 2018, 9:05 PM

Oct 27 2018

vandenoever committed R881:ed2de054928d: Add a template that is built by Cargo (authored by vandenoever).
Add a template that is built by Cargo
Oct 27 2018, 7:19 PM

Oct 26 2018

vandenoever committed R881:c1a0bd7bfb63: Top processes have no parent (authored by vandenoever).
Top processes have no parent
Oct 26 2018, 9:29 AM
vandenoever committed R881:aa7e6c7e3b72: Remove unneeded enum value (authored by vandenoever).
Remove unneeded enum value
Oct 26 2018, 9:29 AM

Oct 25 2018

vandenoever committed R881:385ae17bb7bb: Pass the emitter as mutable. It is pointless otherwise. (authored by vandenoever).
Pass the emitter as mutable. It is pointless otherwise.
Oct 25 2018, 10:32 PM
vandenoever committed R881:fa337c37b1fb: Adapt code to changes in generator (authored by vandenoever).
Adapt code to changes in generator
Oct 25 2018, 10:01 PM
vandenoever committed R881:b603a2262b47: Only allow mutable objects to call back into C++ (authored by vandenoever).
Only allow mutable objects to call back into C++
Oct 25 2018, 10:01 PM

Oct 9 2018

vandenoever committed R881:a78f8c9b737b: Fix description and increase version number (authored by vandenoever).
Fix description and increase version number
Oct 9 2018, 10:46 PM
vandenoever committed R881:67c9cf122e7a: Add metadata to Cargo.toml (authored by vandenoever).
Add metadata to Cargo.toml
Oct 9 2018, 10:46 PM
vandenoever committed R881:4a3879388293: Add documentation and tweak function name (authored by vandenoever).
Add documentation and tweak function name
Oct 9 2018, 10:46 PM
vandenoever committed R881:5d5745bac0fb: Merge branch 'master' of git://anongit.kde.org/rust-qt-binding-generator (authored by vandenoever).
Merge branch 'master' of git://anongit.kde.org/rust-qt-binding-generator
Oct 9 2018, 4:13 PM
vandenoever committed R881:08876fd75754: Take changes in .h and .cpp files into account during build (authored by vandenoever).
Take changes in .h and .cpp files into account during build
Oct 9 2018, 4:13 PM
vandenoever committed R881:ea876ec81d7c: Add functions for building Qt applications with Cargo (authored by vandenoever).
Add functions for building Qt applications with Cargo
Oct 9 2018, 4:13 PM
vandenoever committed R881:59d0092e55da: Build even when CMAKE_DL_LIBS is not defined (authored by vandenoever).
Build even when CMAKE_DL_LIBS is not defined
Oct 9 2018, 4:13 PM

Oct 2 2018

vandenoever added a comment to D14634: Add moveable objects.

The implementation language of RQBG has changed from C++ to Rust. This affects the files src/cpp.cpp and src/rust.cpp which are now src/cpp.rs and src/rust.rs.

Oct 2 2018, 7:35 PM

Sep 29 2018

vandenoever committed R881:df9122697953: Expose function for reading the configuration (authored by vandenoever).
Expose function for reading the configuration
Sep 29 2018, 10:10 PM
vandenoever committed R881:fac04fd6d45f: Remove unneeded annotations (authored by vandenoever).
Remove unneeded annotations
Sep 29 2018, 10:09 PM
vandenoever committed R881:ca8f870e5e2f: Update generate file (authored by vandenoever).
Update generate file
Sep 29 2018, 10:09 PM
vandenoever committed R881:13d8d1cf1d13: Use AtomicPtr instead of Mutex (authored by vandenoever).
Use AtomicPtr instead of Mutex
Sep 29 2018, 10:09 PM
vandenoever committed R881:49f67ffc61d1: Slightly update sysinfo (authored by vandenoever).
Slightly update sysinfo
Sep 29 2018, 4:24 PM

Sep 28 2018

vandenoever committed R881:fe9731819fef: Use the version number from Cargo.toml (authored by vandenoever).
Use the version number from Cargo.toml
Sep 28 2018, 9:57 PM
vandenoever committed R881:6ee8ca626d01: Add function to create bindings from runtime Config object (authored by vandenoever).
Add function to create bindings from runtime Config object
Sep 28 2018, 9:38 PM
vandenoever committed R881:baaa8f230cf3: Use full include path to Qt headers (authored by vandenoever).
Use full include path to Qt headers
Sep 28 2018, 9:38 PM
vandenoever committed R881:cbf66a128ccd: Fix draggin of scrollbar in SplitView (authored by vandenoever).
Fix draggin of scrollbar in SplitView
Sep 28 2018, 7:48 PM
vandenoever committed R881:83e5f01fe0be: Specify the dependency differently to (try to) appease CMake 3.12 (authored by vandenoever).
Specify the dependency differently to (try to) appease CMake 3.12
Sep 28 2018, 5:29 PM
vandenoever committed R881:d7860d903196: Also check for module directory (authored by vandenoever).
Also check for module directory
Sep 28 2018, 4:45 PM
vandenoever committed R881:034e5526cfbb: Add missing ? (authored by vandenoever).
Add missing ?
Sep 28 2018, 4:08 PM
vandenoever committed R881:b3e43ae1d265: Handle result of write! and writeln! (authored by vandenoever).
Handle result of write! and writeln!
Sep 28 2018, 4:05 PM
vandenoever committed R881:cb27f4c5ce56: Add missing dependency (authored by vandenoever).
Add missing dependency
Sep 28 2018, 10:25 AM
vandenoever committed R881:d6e88b0ab62f: Add missing file (authored by vandenoever).
Add missing file
Sep 28 2018, 10:24 AM
vandenoever committed R881:d7e4f1362de3: Port rust_qt_binding_generator from C++ to Rust (authored by vandenoever).
Port rust_qt_binding_generator from C++ to Rust
Sep 28 2018, 10:14 AM

Sep 25 2018

vandenoever committed R881:0294ed948b45: Add a link to a presentation (authored by vandenoever).
Add a link to a presentation
Sep 25 2018, 7:49 PM
vandenoever committed R881:ad8dd3223593: Add two more links to tutorials (authored by vandenoever).
Add two more links to tutorials
Sep 25 2018, 7:47 PM

Sep 18 2018

vandenoever added a comment to D14634: Add moveable objects.

Sure, i can give comments via Phabricator.

Sep 18 2018, 8:29 PM
vandenoever added a comment to D14634: Add moveable objects.

This could certainly become a separate experimental branch. You have commit access and also the ability to make a new branch (I think). Note however, that branches are not easily deleted on KDE infrastructure. Creating a branch moveable_objects is fine with me.

Sep 18 2018, 7:58 PM
vandenoever added a comment to D14634: Add moveable objects.

Deleting the QObject is now no memory issue. That's good progress.
I'm still wondering about the Rust side of the replaceableObject. The Rust struct should be tied to the replaceableObject.
A good practice might be to use something like

rust
struct InnerObjectData {
    ...
}
type InnerObject = Arc<Mutex<InnerObjectData>>;
Sep 18 2018, 7:23 PM

Sep 16 2018

vandenoever accepted D15553: Use nullptr in generated C++ sources.
Sep 16 2018, 5:11 PM
vandenoever accepted D15552: Remove unused QWidget dependecy from Todo example app.
Sep 16 2018, 5:10 PM
vandenoever accepted D15545: Use Q_SIGNALS/Q_EMIT instead of signals/emit in generated sources.

Better safe than sorry. I was not familiar with this practice. I looked for some information on it and found these https://www.kdab.com/kdab-contributions-to-qt-5-0-part-5/ I found no qt.io docs on QT_NO_SIGNALS_SLOTS_KEYWORDS but using Q_SIGNALS is listed as a good idea at http://doc.qt.io/qt-5/qobject.html#Q_SIGNALS.

Sep 16 2018, 7:05 AM

Sep 15 2018

vandenoever accepted D15541: Add break; statements in the generated switch code for model::data().

Very good. Weirdly, my compiler did not complain about this.

Sep 15 2018, 7:59 PM

Sep 11 2018

vandenoever committed R881:0192124c7087: Fix some clippy issues in written and generated code (authored by vandenoever).
Fix some clippy issues in written and generated code
Sep 11 2018, 11:12 PM
vandenoever committed R881:9549c5021717: Automatically update index when calling layoutChanged (authored by vandenoever).
Automatically update index when calling layoutChanged
Sep 11 2018, 11:12 PM

Sep 8 2018

vandenoever committed R881:f0eb78457bbd: Make the model struct that emits model signals clonable (authored by vandenoever).
Make the model struct that emits model signals clonable
Sep 8 2018, 9:13 PM
vandenoever committed R881:96376517c699: Add bindings for layoutAboutToBeChanged and layoutChanged (authored by vandenoever).
Add bindings for layoutAboutToBeChanged and layoutChanged
Sep 8 2018, 8:49 PM
vandenoever committed R881:b702c980afc5: Add bindings for beginMoveRows and endMoveRows (authored by vandenoever).
Add bindings for beginMoveRows and endMoveRows
Sep 8 2018, 7:54 PM
vandenoever committed R881:2a3123eda3d5: Consistently use Option instead of two arguments (value and bool) (authored by vandenoever).
Consistently use Option instead of two arguments (value and bool)
Sep 8 2018, 7:54 PM
vandenoever committed R881:754214e7b48e: snapshot (authored by vandenoever).
snapshot
Sep 8 2018, 7:54 PM

Aug 26 2018

vandenoever committed R881:32fed925e9ad: Intruduce rustByFunction (authored by vandenoever).
Intruduce rustByFunction
Aug 26 2018, 5:47 PM

Aug 19 2018

vandenoever added a comment to D14634: Add moveable objects.

Here is test that could be added for the delete functionality:

void TestRustObjects::testObjectSetterDelete()
{
    // GIVEN
    Person person;
    InnerObject* inner = new InnerObject();
    QSignalSpy spy(&person, &Person::replaceableObjectChanged);
Aug 19 2018, 8:37 AM
vandenoever added a comment to D14634: Add moveable objects.

The reason why the above test works is

rust
#[derive(Clone)]
pub struct InnerObjectEmitter {
    qobject: Arc<Mutex<*const InnerObjectQObject>>,
    description_changed: fn(*const InnerObjectQObject),
}

The qobject is in an Arc, so when you clone it, it's not cloned, but another reference is created. When that referenced object is set to null, the reference in Person will also be null.
However any other information that got cloned is probably not wrapped in Rc or Arc. The question is if that is cloning is the intended behavior or if a single reference is desired.
The current patch allows both, but requires the user to be aware of the issue. This could be helped by documenting clearly how this works.

Aug 19 2018, 7:09 AM

Aug 18 2018

vandenoever added a comment to D14634: Add moveable objects.

I tried to find an easy error in the patch with this code:

Person person;
InnerObject* inner = new InnerObject();
person.setReplaceableObject(inner);
delete inner;
QCOMPARE(person.replaceableObject(), nullptr);

To my astonishment, this test passes. How does the code know that the object is null?

Aug 18 2018, 9:44 PM
vandenoever added a comment to D14634: Add moveable objects.

No more copy constructors saves a lot of code. :-) I'll continue the review with this new version.

Aug 18 2018, 7:03 PM
vandenoever added a comment to D14634: Add moveable objects.

The Qt documentation says that QObject and derived classes should not have copy constructor or assignment operator. Is it possible to make the same functionality without them?

Aug 18 2018, 1:26 PM
vandenoever added a comment to D14634: Add moveable objects.

The copy constructor that is causing the double free is not used in the test code. Where is it needed? I've thought about it some more and see that copying the object causes more problems. If you copy an object, what do you do with the signal/slot bindings? Only one of the copies will have the binding, so when you want to remove the binding you'll have to remove it from the same copy.

Aug 18 2018, 8:13 AM
vandenoever added a comment to D14634: Add moveable objects.

This is a good start to making the nesting of binding objects more flexible.

Aug 18 2018, 7:58 AM

Aug 17 2018

vandenoever abandoned D11232: Make qstring_t and qbytearray_t into POD types.

Similar code has been committed a while ago.

Aug 17 2018, 8:16 AM
vandenoever closed D7704: add rust-qt-binding-generator to the CI system.
Aug 17 2018, 8:14 AM

Aug 16 2018

vandenoever awarded T9390: Next Gen MTP a Like token.
Aug 16 2018, 10:56 AM · Frameworks

Aug 6 2018

vandenoever added a comment to D14634: Add moveable objects.

The null_mut is not urgent and can be made nice later. A good test that shows how to use the features is required to let he code be maintainable.

Aug 6 2018, 8:51 PM

Aug 5 2018

vandenoever requested changes to D14634: Add moveable objects.

This code is quite tricky, so I'd like it if it had some tests.

Aug 5 2018, 7:13 PM
vandenoever committed R881:ee5df0337bb0: Fix test in testQuoteBytesFunction: it should compare to QByteArray (authored by vandenoever).
Fix test in testQuoteBytesFunction: it should compare to QByteArray
Aug 5 2018, 6:04 PM
vandenoever committed R881:5b458fddde4b: Adapt quote_bytes test so it return QByteArray which was not yet tested (authored by vandenoever).
Adapt quote_bytes test so it return QByteArray which was not yet tested
Aug 5 2018, 5:52 PM
vandenoever committed R881:73b9c89b3032: Check function parameters and return type for use of QString and QByteArray (authored by vandenoever).
Check function parameters and return type for use of QString and QByteArray
Aug 5 2018, 5:52 PM
vandenoever committed R881:cdc50304b3a5: Remove unneeded boolean hasStringWrite (authored by vandenoever).
Remove unneeded boolean hasStringWrite
Aug 5 2018, 5:36 PM
vandenoever committed R881:b32ed198c729: Merge branch 'master' of git://anongit.kde.org/rust-qt-binding-generator (authored by vandenoever).
Merge branch 'master' of git://anongit.kde.org/rust-qt-binding-generator
Aug 5 2018, 12:45 PM
vandenoever committed R881:26eacf2095e5: Update templates and example to latest version of rust_qt_binding_generator (authored by vandenoever).
Update templates and example to latest version of rust_qt_binding_generator
Aug 5 2018, 12:43 PM
vandenoever committed R881:c4d9b0408343: Update to CMake 3.10 so that AUTOMOC scans generated files (authored by vandenoever).
Update to CMake 3.10 so that AUTOMOC scans generated files
Aug 5 2018, 12:43 PM
vandenoever committed R881:c5b09ca04c06: Fix the generated implementation.rs variable name (authored by vandenoever).
Fix the generated implementation.rs variable name
Aug 5 2018, 12:43 PM
vandenoever committed R881:ac286829bae7: Remove unneeded parentheses (authored by vandenoever).
Remove unneeded parentheses
Aug 5 2018, 12:43 PM

Jun 30 2018

vandenoever committed R881:233cab0bfca0: Update generated interface.rs files (authored by vandenoever).
Update generated interface.rs files
Jun 30 2018, 6:25 PM
vandenoever committed R881:7f2f4b71a47d: Prefix signal with property name (authored by vandenoever).
Prefix signal with property name
Jun 30 2018, 6:25 PM

Jun 25 2018

vandenoever accepted D13719: OdfExtractor: deal with non-common prefix names.

Good fixes. Just some small naming suggestions.

Jun 25 2018, 5:30 PM · Baloo, Frameworks

Jun 22 2018

vandenoever accepted D13631: Add metadata extraction plugin for ODF files.
Jun 22 2018, 10:02 PM
vandenoever added a comment to D13631: Add metadata extraction plugin for ODF files.

Looks good. Certainly good enough. I think it's readable.

Jun 22 2018, 4:02 PM

Jun 21 2018

vandenoever added a comment to D13631: Add metadata extraction plugin for ODF files.

If you want to be really correct, you have to remove foreign elements first or parse in a way that you ignore foreign elements.

Jun 21 2018, 5:38 PM
vandenoever added a comment to D13631: Add metadata extraction plugin for ODF files.

QDomDocument is lazy, you have to explicitly ask for namespace processing.

Jun 21 2018, 5:00 PM

Jun 20 2018

vandenoever added a comment to D13631: Add metadata extraction plugin for ODF files.

Don't feel bad. I'm not even sure what this patch will do. I guess KRename has some renaming rules where you can use extracted information.

Jun 20 2018, 9:10 PM
vandenoever added a comment to D13631: Add metadata extraction plugin for ODF files.

Apart from that I do not see any bugs, just differences in taste which I commented on and you can take as you see fit.

Jun 20 2018, 7:34 PM
vandenoever requested changes to D13631: Add metadata extraction plugin for ODF files.

I added a comment that was apparently lost in my first review.

Jun 20 2018, 7:32 PM
vandenoever requested changes to D13631: Add metadata extraction plugin for ODF files.

Nice addition! You might want to apply some of the suggested changes.

Jun 20 2018, 5:33 PM

Jun 8 2018

vandenoever committed R881:916d59ac1640: Update generated source code (authored by vandenoever).
Update generated source code
Jun 8 2018, 12:21 PM
vandenoever committed R881:7d4b55b90afc: Use "index" instead of "item" for the index in the model (authored by vandenoever).
Use "index" instead of "item" for the index in the model
Jun 8 2018, 12:21 PM