LibreCAD gets native DWG importer, needs community’s help


Just when you think the DWG story is buried for good, a gang of brave tomb raiders prove otherwise. LibreCAD team started working on their own DWG importer, and FSF is trying to figure out what to do with LibreDWG.

“If you want something done, do it yourself.”

Around mid-March one of LibreCAD core developers, Rallaz, started adding support for DWG files to libdxfrw, a library for reading and writing DXF files, started by the project and licensed under GPLv2+. The scope of the importer? Rallaz says:

The main goal is to provide DWG support to LibreCAD (2D), but also to be as complete as possible. As for 3D, Autodesk products supports two types (3 really) of 3D entities: meshes and acis solids. Meshes are easy and partly supported in the DXF format, in DWG they are work in progress. Acis solids are unsupported, because it’s encrypted data which can be read, but not interpreted.

So far the supported features are:

  • versions: R13, R14 & v2000;
  • objects: linetype, layer, block & text style;
  • entities: point, line, circle, arc, ellipse, ellipse arc, insert, lwpolyline & text.

Rallaz is working on the importer in his own Git repository. Some of his changes have already been cherry-picked to the main development branch of LibreCAD, but there are more patches still to be merged. It remains to be seen if the DWG importer will be available or hidden in LibreCAD 2.0.

We contacted Yorik van Havre, member of FreeCAD team, to tell about the news, and he responded:

Something to follow closely! The cool thing is that the code looks pretty simple. Which is good, because the DWG format is so complex that you can easily get lost in its many layers of data. I think that was part of the problem with LibreDWG. But here, if you restrict yourself at importing a very strict set of data (line endpoints, circles centers + radius, etc.), things migh be different, and maybe even you can keep up to date with Autodesk’s crazy changes to the format each year or so.

In other words, all hope isn’t lost. But the LibreCAD team is still shorthanded and needs more developers. If you thought you could get involved, now is the high time for that. As a 3rd party project with more liberal licensing (than LibreDWG), libdxfrw could benefit more projects than just LibreCAD and FreeCAD.

Signs of life at FSF and LibreDWG

Is LibreDWG a lost cause? A couple of weeks ago someone called H.S. Rai wrote in the LibreDWG mailing list to inform that he picked the maintenance of the library, but so far he hasn’t committed any code to the public repository. Latest changes still date back to February 2012.

Meanwhile Free Software Foundation regained some sort of interest in the LibreDWG story. This is thanks to Arthur Torrey, a LibreCAD contributor, who attended LibrePlanet 2013 conference in March and spoke to foundation’s representatives. In his own words:

I attended the FSF’s LibrePlanet conference this past weekend, and talked with some of their folks about this license incompatibility issue, and how it seemed that something was wrong with the picture if a GPL license problem was causing issues for a free software project…

I got agreement that it was a significant issue and that it was something the FSF would be willing to discuss making changes on their end to fix, but that there seems to have been some missed communications or other confusion about this which led to the issue not being handled properly… At least as I understand it, they were going to talk about fixing the license (presumably by changing it to be LGPL v3 instead of GPL v3 which would solve the use problem) and then someone said there wasn’t any interest, so the effort got dropped.

However, last week FSF’s member Kyra started posting comments in bug trackers of LibreCAD and FreeCAD asking for more information. He also claims to have contacted Ribbonsoft and OpenCASCADE teams, but so far hasn’t reported about the results.

Not that we should hold our breath for any: Ribbonsoft view LibreCAD as a competitor, and the relicensing of Open CASCADE is in the hands of a corporation’s stakeholders. FSF will need more than just luck with that.

Conclusions

For contributors and 3rd party free software developers libdxfrw looks like the most viable option at the moment. There’s an actual team working on it (albeit a tiny one), and the GPLv2+ license is slightly more permissive than LibreDWG’s GPLv3+. For users who are less picky, DraftSight and QCAD are both available to open and save DWG files.