Channels ▼
RSS

Open Source

Open Source Code Detection For Cut and Paste Carelessness


Open source development shops looking to tighten up license and copyright compliance in commercial deployment environments now have a new free source code scanner option in the form of JNinka from White Source.

Based on the Ninka algorithm and offered under the AGPL license, JNinka exists as a means of tracking open source components throughout software development lifecycles that may harbor open source code hidden within a team's own proprietary code.

NOTE: Ninka is a lightweight license identification tool for source code. It is sentence-based and provides a simple way to identify open source licenses in a source code file. It is capable of identifying several dozen different licenses (and their variations).

Scans are run locally for security reasons and the results can be imported into the company's own cloud-based open source lifecycle management service, to be managed alongside other open source components. Its makers say that the JNinka scanner is ideal for searching for open source code components that were cut and pasted into proprietary code, but were "inadvertently not reported" in the longer term.

White Source explains that since JNinka is based on common texts, the scanner does not require access to a huge up-to-date database, so hence it can be run offline very quickly in private. The scanner produces XML-based output that can optionally be consumed by White Source's open source lifecycle management service.

"Some licenses permit copying source code text, but require notification and proper management. The JNinka tool reveals these open source licenses," said White Source CEO Rami Sass. "The JNinka scanner represents another step in White Source's mission to help software developers manage their usage of Open Source".


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
 

Video