Announce: Java package to import XMLs/export as sources


This package may be of interest...


I have programmed this over a hunch, in order to facilitate the retrieval of source code from a Caché installation. It makes use of the Java API provided by Caché.

Right now, I use it as a means to salvage sources in order to analyze them using the SonarQube plugin I develop for my employer. Unfortunately this plugin is not open source.

I am calling for help here, on two fronts:

  • improve the code,
  • obtain source samples to analyze!




I will study those two repositories; I did hear of intersystems-ru and one of the projects hosted there, however there is no license specified, so I am unsure as to whether I can publish the results of an analysis...

These are not repositiories, but rather GitHub organisations with repositories. For example one of the repositories in intersistems-ru organisation is MDX2JSON,  and there is a LICENSE file present with MIT licence right at the root.  Most other projects are also licensed (check LICENSE file in the root folder of a repository).

Yes I know; note that I haven't reviewed all these repositories yet.

Anyway, expect an update soon.

Interesting. Are you able to tell us more about what you're doing with SonarQube?

I am theoretically not allowed to show the site but here goes:

As to "what I do", it is just writing a language plugin, and that implies filling basic metrics (number of files, classes, methods, etc) and writing code checks...

Feel free to have a look around but please note that I am not a seasoned COS developer, therefore some checks may be grossly {over,under}estimated as to their severity and time to fix... I'm happy to receive any feedback!

Note that I already know that there _are_ false positives on the reports; I'm working to fix them.

This is just awesome! 

This green and red arrows what do they mean?

Looks quite interesting. Are there any planned release date? Would there be an option to write your own checks?


As to the release date: I cannot really say more than "end of Q1", sorry. I'm the tech guy, not the project manager :)

As to an option to write your own checks, all I can say is this: there will be a presentation of this plugin at the InterSystems summit in Phoenix; and a plan is to collect user feedback. It is already being considered to include this feature, however its cost is non negligible... But man, it'd be nice. In short, I sincerely believe that this will be a feature, but maybe not in the very first version!

Again, sorry, I cannot say more and I have already said waaaay too much.

In the meanwhile, I know the rules not to be perfect in any way, so if you have feedback, please send it to me by mail :p It should be in my profile!

Those are indicators; rather, metric evolutions.

Metrics are numeric values, and an up arrow means an increase and a down arrow means a decrease, so far it's rather obvious.

As to green and red, those represent the perceived direction, and this is defined in the metric. As could be guessed, green means better and red worse, but it may be that for some metrics a _higher_ value is in fact better.

In the image you posted here, the metric on the right hand side is the technical debt and a higher value is considered worse; the other column is the number of lines of code and it is shown as increasing because I solved a parser error for a file in that project.

Note that this view displays the tendency over 30 days. The rhythm at which you run analyses is yours to choose. And I need to update the plugin... There are quite a few false positives, and the technical debt of a few of these projects may drop as a result!