hypfvieh / dbus-java

Improved version of java DBus library provided by freedesktop.org (https://dbus.freedesktop.org/doc/dbus-java/)
https://hypfvieh.github.io/dbus-java/
MIT License
185 stars 73 forks source link

On wiring up continuous integration amongst other things #12

Closed cdancy closed 6 years ago

cdancy commented 6 years ago

Hey Guys! You got a jump start on the very thing I've been meaning to do for some time now ;) Is this project still active? I see 1 release but nothing else. Maybe just nothing new to add? In either event, and with interest in dbus-broker getting more attention, we've got a need to bring this project up to snuff with continuous integration support, releases deployed to jcenter, a pure gradle build and all that comes with that, and more regular releases. Is this something this project would be up for or are we better off forking it? I maintain a hand full of other projects perhaps most notably the gradle-docker-plugin and we'd like to do something very similar here to what we did there.

hypfvieh commented 6 years ago

This project is active, more or less. I'm the only maintainer right now.

The original dbus-java was developed by Matthew Johnson around a decade ago and was no longer maintained.

As I needed dbus for one of my private projects and wanted to have a version available in maven central, I forked the original project and cleaned it up, introduced junit and slf4j. There were also a few pull requests/bug reports/feature request which have been merged.

Currently there are 4 releases (2.7.1 - 2.7.4) with only a few changes and fixes. The version scheme was re-used from the original library which had version 2.7.0.

Version 2.7.5 is also ready to go and will be released soon.

I also started developing version 3.0.0 with some major changes in used datastructures, packages, class naming, and thread handling (that's why it is version 3.0.0, it is no longer a 'drop-in' replacement for old 2.7.x versions). I also fixed the unit tests and added some missing DBus interfaces.

I'm not sure when 3.0.0 will be released. I don't have much time atm and dbus-java has not the highest priority right now (2.7.x is working in most cases). It's also very difficult to test the whole thread and parallel running stuff to find race-conditions or missing synchronization.

To answer your question about continues integration: If you want to do the continues integration stuff, it's ok for me. But as this project is not changed very frequently (only a few commits per month or even per half year), I don't think continues integration will help much (except of providing SNAPSHOT builds now and then).

This will also answer the question about regular releases .. what to release if nothing has changed?

Gradle is another thing: I don't use it because I don't like it. I have maven and I'm happy with it and will stick with it. It works for everything I need in this project. Why to re-invent the wheel, if everything is fine just like it is?