Leading UnitTest++ to 1.5

I have take the initiative to continue to develop UnitTest++ and release a 1.5 version. This has had relative strong and positive feedback from the community. It is effectively a fork of the project, but the problem is that the original authors are currently dormant.

The latest source code can be found in my GitHub repository located at: http://github.com/rioki/unittest-cpp.

The current road to 1.5 can be found at http://unittestcpp.rioki.org/road_map.

Let's see how it turns out.

The __LOCATION__ Macro

I always forget this, so here a short blog post. If you want to use the current source location in processor commands or with stings, use the __LOCATION__ macro.

#ifndef __LOCATION__
#define STRINGIFY(x) #x
#define TOSTRING(x) STRINGIFY(x)
#define __LOCATION__ __FILE__ "(" TOSTRING(__LINE__) ")"
#endif

This macro will create a string like file(line). It is useful if you want to use it with pragma message like so:

#pragma message (__LOCATION__ ": warning: Use of this source file is stupid.")

User Management and Access Control in DrupalMine

What is the easiest way to restrict access to certain projects on a project management website? I am building (for fun) DrupalMine a project management and groupware built on Drupal. DrupalMine is inspired by Redmine. I have investigated a solution to the problem of how to restrict access to certain projects. There are basically two rights that can be restricted, project access (read) and project collaboration (create and modify content).

How To Lockdown Drupal

If you want to create a website that only a selected group of individuals should be able to access, with Drupal this is a piece of cake. If recently a private website and was very impressed how easy this is.

Some refer to this an intranet stite, which is wrong. If you have and intranet, that is web services within a local area network, chances are you don't need to bother with access control in any way, since access is handled on a network level. You might still have restricted sites, that only a selected group of individuals should be able to access, this is a private intranet site.

What I am coming to is:
How do you restrict access, that is lockdown Drupal?

Building Redmine in Drupal

Is it possible to build a web application similar to Redmine in Drupal? The simple answer is yes. If you look at the presentation on building a Basecamp clone in Drupal in 48 hours, it becomes clear what a versatile tool Drupal is. It now becomes rather the problem of how much work it takes.

Using git on Windows

Introduction

git is one of the most powerful and versatile source control management software available. For my projects git is used exclusively, this comes form the fact that git can be used in basically all imaginable scenarios and no other tool is needed.

There are multiple options to install and use git, but the simplest is to use TortoiseGit. TortoiseGit is a port of the well known TortoiseCVS and TortoiseSVN. It is a easy to use graphical extension to the windows explorer. It combines the strength of the command line tools and adds a layer of ease of use for the novice user.

Open Atrium

I am currently looking for web based project management and group collaboration software. I happen to stumble across Open Atrium.

Open Atrium is basically a group ware based on Drupal. It features a blog, document management, a calender, a issue tracker and a solid and simple access control system. Since it is based on Drupal, not much is really customized and adding features is as easy as adding a feature to any other Drupal site. All in all it really feels very polished and solid.

Release libxmlmm-0.3

I finally came around to fix some minor issues on libxmlmm and "port" it to build a MSys DLL.

Downloads

Building DLLs with MinGW

I sunk for libxmlmm quite some time into this since it used not to be so easy...

So I read up on it and you just need to add AC_LIBTOOL_WIN32_DLL to your configure.ac and -no-undefined to your Makefile.am. Unless you have very odd situations you need to make no changes to the code, yes it is that easy.

The git Advantage

When it comes to source code management, git is one of the few tools that are worthwhile. git was developed for the Linux kernel and the development structure of the Linux kernel was one of the dominating factors that shaped git into what it is now. But the advantage does not only apply to distributed and free software projects.