atarashi.license.licenseDownloader module

Copyright 2018 Aman Jain (amanjain5221@gmail.com)

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

class atarashi.license.licenseDownloader.LicenseDownloader[source]

Bases: object

static download_license(threads=4, force=False)[source]

Downloads license data from spdx.org.

Lists data from https://spdx.org/licenses/licenses.json, https://spdx.org/licenses/exceptions.json and check if the version is already loaded. If the data already exists, simply skip else create a new CSV. CSV file names are created as <releaseDate>_<version>.csv. For each license, shortname, fullname, text, url, deprecated, osi_approved are collected.

Parameters:
  • threads – Number of CPU to be used for downloading. This is done to speed up the process
  • force – Bool value if licenses needs to be downloaded forcefully
Returns:

File path if success, None otherwise.

static fetch_exceptional_license(license)[source]
Parameters:license – JSON of each license identifier from https://spdx.org/licenses/exceptions.json
Returns:Data frame of all the exceptional licenses downloaded from SPDX
static fetch_license(license)[source]
Parameters:license – JSON of each license identifier from https://spdx.org/licenses/licenses.json
Returns:Data frame of all the licenses downloaded from SPDX