Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Moving libkqueue forward #40

Closed
arr2036 opened this issue Nov 23, 2017 · 10 comments
Closed

Moving libkqueue forward #40

arr2036 opened this issue Nov 23, 2017 · 10 comments
Assignees

Comments

@arr2036
Copy link
Collaborator

arr2036 commented Nov 23, 2017

The FreeRADIUS project has adopted libkqueue as the primary eventing system on Linux and Solaris.

We now have four outstanding pull requests for various issues, but haven't see any response from the maintainer (@mheily). He does not appear to have been active since January this year.

We would rather not have to fork this project to continue development, but as the number of unpatched issues increases, the difficulty on maintaining multiple pull requests in parallel will force us to do so.

In the mean time, our temporary fork is available here: https://github.com/FreeRADIUS/libkqueue

It contains fixes for outstanding issues we've identified. If users/developers also working with/submitting patches to libkqueue, they may also wish to open a pull request against our repository.

If our temporary fork becomes permanent (six months from now if no response from @mheily is received), then we'll also pull in any outstanding fixes from this repository.


FreeRADIUS was founded in June 1999 by Miquel van Smoorenburg and Alan DeKok. The first public "alpha" release of the code was in August 1999, with 0.1 being released in May 2001. Since then, new versions have been released every few months.

FreeRADIUS is used daily by 100 million people to access the Internet.

The project has grown to include support for more authentication types than any other open source server. It is used daily by 100 million people to access the Internet. There are over 50 thousand sites using FreeRADIUS, ranging in size from 10 users to over 10 million users.

@mheily
Copy link
Owner

mheily commented Nov 24, 2017

Thanks @arr2036 for making me aware of the outstanding items that need to be addressed with libkqueue. I apologize for the long delay in responding to PRs, and would like to offer a quick explanation of what happened and what I plan to do going forward.

Some of the reasons for the lack of attention to libkqueue include:

  • Increasing workload at $DAY_JOB has left less time for open source projects in general
  • I rarely spend time in GitHub looking for things to do related to my older projects
  • Other open source projects have attracted my attention, leaving less time for libkqueue specifically
  • Switching all my personal computers over to FreeBSD made it harder to develop libkqueue, due to lack of a development and test environment.

Here's what I plan to do going forward:

  • In the next week, I will review the backlog of PRs and take action on all of them.
  • I will create a personal Linux development environment, probably as a virtual machine.
  • I will cut a new release of libkqueue that incorporates all of the fixes that have been contributed since the last release.

@mheily mheily self-assigned this Nov 24, 2017
@arr2036
Copy link
Collaborator Author

arr2036 commented Nov 24, 2017

@mheily thanks for the response. I absolutely understand what it's like having legacy projects hanging around. You've moved on but there's still a community that find it useful and bug you for things.

If you ever want assistance in dealing with pull requests (maybe after there have been a few more PRs that you're happy with) then let me know and I'd be glad to step up.

  • In the next week, I will review the backlog of PRs and take action on all of them.
  • I will create a personal Linux development environment, probably as a virtual machine.
  • I will cut a new release of libkqueue that incorporates all of the fixes that have been contributed since the last release.

That sounds great, thanks!

Out of the PRs that we've contributed #33 is the most contentious. I'm honestly not sure if this is correct fix or not. We have worked around it internally, but it'd be good to get a proper fix into libkqueue, as libkqueue in its current state is non-functional with libpcap (unless you work the issue specifically). We needed a fix because it affects our DHCP module and packet analysis utilities.

Regarding cutting a new release, I don't know what the cmake packaging state is for Debian, if you find it's unusable and don't want to deal with the horrors of cmake packaging, ping me, and i'll find some time next week to sort it out. We run support both, but the immediate need was to generate sane RPMs on RedHat/Centos so that got the fixups (#34) first.

@mheily
Copy link
Owner

mheily commented Nov 26, 2017

@arr2036 I've merged all the pull requests and tagged a v2.2.0 release. I've also sent you an invitation to become a committer to this project. Thanks for offering to help o ut.
Regarding the CMake packaging question, would you mind working on that? I don't care to learn CPack at this time. I'll submit an updated Debian package upstream, and see about submitting something to Fedora/EPEL. I'm considering using the opensuse build/packacking system to publish semi-official packages.

@mheily mheily closed this as completed Nov 26, 2017
@arr2036
Copy link
Collaborator Author

arr2036 commented Nov 27, 2017

@arr2036 I've merged all the pull requests and tagged a v2.2.0 release. I've also sent you an invitation to become a committer to this project. Thanks for offering to help o ut.

Accepted, thanks!

Regarding the CMake packaging question, would you mind working on that? I don't care to learn CPack at this time. I'll submit an updated Debian package upstream, and see about submitting something to Fedora/EPEL. I'm considering using the opensuse build/packacking system to publish semi-official packages.

Yep absolutely.

There were a few maintenance things I was going to crack on with but wanted to check with you.

Currently, the project doesn't seem to have any kind of CIT integration. Mind if I set it up with Travis? That way the existing test suite gets run on new PRs and whenever anyone pushes to the repo.

Formatting is not always consistent especially with the windows code. I can try and come up with some rules based on the general style of the code and run it through an automated formatter?

Are you adverse to Doxygen (code documentation tool)? We tend to use this style of function headers https://github.com/FreeRADIUS/freeradius-server/blob/v4.0.x/src/lib/ldap/connection.c#L196. One of the nice things about Doxygen is clang can perform validation of the Doxygen headers, and warn you when they don't match the observed arguments.

@mheily
Copy link
Owner

mheily commented Nov 28, 2017 via email

@arr2036
Copy link
Collaborator Author

arr2036 commented Nov 28, 2017

OK, there's now a .travis.yml file in the repo (tested on my repo: https://travis-ci.org/arr2036/libkqueue/builds/308392873). You just need to turn on Travis builds for this repo at https://travis-ci.org/. You should be able to login with your GitHub credentials.

@mheily
Copy link
Owner

mheily commented Nov 29, 2017 via email

@arr2036 arr2036 reopened this Jan 15, 2019
@arr2036
Copy link
Collaborator Author

arr2036 commented Jan 15, 2019

@mheily, @mcnewton has now fixed the build process for Debian packages, thanks @mcnewton!

Would you agree to a 3.2.1 release, and submitting the new packages to Debian?

@mcnewton
Copy link
Contributor

@arr2036 @mheily I have just also finished updating the Debian packaging in the debian-packages repo, which is now building packages of 2.3.0. I will test that they work correctly tomorrow and then do a PR. Hopefully that will make it easier to push new packages to the main Debian repo.

@arr2036 arr2036 changed the title Notice to @mheily, and other users of libkqueue Moving libkqueue forward Jan 16, 2019
@mcnewton
Copy link
Contributor

Debian packaging for libkqueue updated: mheily/debian-packages#1

@arr2036 arr2036 closed this as completed Mar 25, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants