fosslight-dependency 4.1.11__py3-none-any.whl → 4.1.13__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -354,11 +354,12 @@ def check_license_name(license_txt, is_filepath=False):
354
354
 
355
355
 
356
356
  def change_file_mode(filepath, mode=''):
357
- current_mode = os.stat(filepath).st_mode
357
+ current_mode = ''
358
358
 
359
359
  if not os.path.exists(filepath):
360
360
  logger.debug(f"The file{filepath} does not exist.")
361
361
  else:
362
+ current_mode = os.stat(filepath).st_mode
362
363
  if not mode:
363
364
  new_mode = current_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH
364
365
  else:
@@ -11,6 +11,7 @@ from bs4 import BeautifulSoup
11
11
  import urllib.request
12
12
  import re
13
13
  import shutil
14
+ import time
14
15
  import fosslight_util.constant as constant
15
16
  import fosslight_dependency.constant as const
16
17
  from fosslight_dependency._package_manager import PackageManager, get_url_to_purl
@@ -128,16 +129,29 @@ class Go(PackageManager):
128
129
  homepage_set.append(oss_item.homepage)
129
130
 
130
131
  for homepage_i in homepage_set:
131
- try:
132
- res = urllib.request.urlopen(homepage_i)
133
- if res.getcode() == 200:
134
- urlopen_success = True
135
- if homepage_i == oss_item.homepage:
136
- if oss_item.version:
137
- oss_item.comment = f'Cannot connect {tmp_homepage}, get info from the latest version.'
132
+ urlopen_success = False
133
+ while True:
134
+ try:
135
+ res = urllib.request.urlopen(homepage_i)
136
+ if res.getcode() == 200:
137
+ urlopen_success = True
138
+ if homepage_i == oss_item.homepage:
139
+ if oss_item.version:
140
+ oss_item.comment = f'Cannot connect {tmp_homepage}, get info from the latest version.'
141
+ break
142
+ except urllib.error.HTTPError as e:
143
+ if e.code == 429:
144
+ logger.info(f"{e} ({homepage_i}), Retrying to connect after 20 seconds")
145
+ time.sleep(20)
146
+ continue
147
+ else:
148
+ logger.info(f"{e} ({homepage_i})")
149
+ break
150
+ except Exception as e:
151
+ logger.warning(f"{e} ({homepage_i})")
138
152
  break
139
- except Exception:
140
- continue
153
+ if urlopen_success:
154
+ break
141
155
 
142
156
  if urlopen_success:
143
157
  content = res.read().decode('utf8')
@@ -134,15 +134,17 @@ class Maven(PackageManager):
134
134
 
135
135
  def run_maven_plugin(self):
136
136
  logger.info('Run maven license scanning plugin with temporary pom.xml')
137
+ current_mode = ''
137
138
  if os.path.isfile('mvnw') or os.path.isfile('mvnw.cmd'):
138
139
  if self.platform == const.WINDOWS:
139
140
  cmd_mvn = "mvnw.cmd"
140
141
  else:
141
142
  cmd_mvn = "./mvnw"
143
+ current_mode = change_file_mode(cmd_mvn)
142
144
  else:
143
145
  cmd_mvn = "mvn"
144
146
  cmd = f"{cmd_mvn} license:aggregate-download-licenses"
145
- current_mode = change_file_mode(cmd_mvn)
147
+
146
148
  ret = subprocess.call(cmd, shell=True)
147
149
  if ret != 0:
148
150
  logger.error(f"Failed to run maven plugin: {cmd}")
@@ -159,7 +161,8 @@ class Maven(PackageManager):
159
161
  except Exception as e:
160
162
  logger.error(f"Failed to run '{cmd}': {e}")
161
163
  self.set_direct_dependencies(False)
162
- change_file_mode(cmd_mvn, current_mode)
164
+ if current_mode:
165
+ change_file_mode(cmd_mvn, current_mode)
163
166
 
164
167
  def create_dep_stack(self, dep_line):
165
168
  dep_stack = []
@@ -176,7 +176,7 @@ class Npm(PackageManager):
176
176
  if d[_private]:
177
177
  private_pkg = True
178
178
 
179
- oss_item.homepage = self.dn_url + oss_init_name
179
+ oss_item.download_location = self.dn_url + oss_init_name
180
180
  dn_loc = f"{self.dn_url}{oss_init_name}/v/{oss_item.version}"
181
181
  dep_item.purl = get_url_to_purl(dn_loc, self.package_manager_name)
182
182
  purl_dict[f'{oss_init_name}({oss_item.version})'] = dep_item.purl
@@ -185,10 +185,10 @@ class Npm(PackageManager):
185
185
  elif private_pkg:
186
186
  dn_loc = ''
187
187
 
188
- oss_item.download_location = dn_loc
188
+ oss_item.homepage = dn_loc
189
189
 
190
190
  if private_pkg:
191
- oss_item.homepage = oss_item.download_location
191
+ oss_item.download_location = oss_item.homepage
192
192
  oss_item.comment = 'private'
193
193
  if self.package_name == f'{oss_init_name}({oss_item.version})':
194
194
  oss_item.comment = 'root package'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fosslight-dependency
3
- Version: 4.1.11
3
+ Version: 4.1.13
4
4
  Summary: FOSSLight Dependency Scanner
5
5
  Home-page: https://github.com/fosslight/fosslight_dependency_scanner
6
6
  Author: LG Electronics
@@ -2,7 +2,7 @@ fosslight_dependency/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
2
2
  fosslight_dependency/_analyze_dependency.py,sha256=AKwKPEjA5x4p3oCWMJugQjd4zX9WKy9zfUqp44gL63Q,4617
3
3
  fosslight_dependency/_graph_convertor.py,sha256=D8GwmJfuj9Wg3_DeKRPLGGdyHSLcoU2Q0VzKQbkJG4g,2267
4
4
  fosslight_dependency/_help.py,sha256=S5tt26ccMLp-BEgWoXWyPxd8JzLtwZ5bIc-A2UTeM4k,3365
5
- fosslight_dependency/_package_manager.py,sha256=GUqMLidGGVrek0XpApron3SWFf66VsmfycsmnvxQOkY,14890
5
+ fosslight_dependency/_package_manager.py,sha256=e2elnBIxVjuAaFGVx1y9VUUcUSMrd8t9RKj4lCMXinY,14916
6
6
  fosslight_dependency/constant.py,sha256=nGa2Q_IWMojHEKkwdvoFvZrsqZZ4jMCk9h3M78j_lMc,1122
7
7
  fosslight_dependency/dependency_item.py,sha256=wNLWcsNycf3HQ5Pib2WrMeo2dn0eHCRg20NLcL95Qew,3345
8
8
  fosslight_dependency/run_dependency_scanner.py,sha256=rCHwKW2NsOSRyRxsFmUunKruK9vN24O2ucHghJYgey4,17600
@@ -12,11 +12,11 @@ fosslight_dependency/package_manager/Android.py,sha256=0UZFvbLxDIreerK4fR316YPyh
12
12
  fosslight_dependency/package_manager/Cargo.py,sha256=erAHVVbnRW5KUHVcrPgaHFGJOClpnf4Oi-8HbnSuCaY,5918
13
13
  fosslight_dependency/package_manager/Carthage.py,sha256=VU506KafUiHBrr_62iOOXNI1fDOreOQgcC2EWM5PpQo,6122
14
14
  fosslight_dependency/package_manager/Cocoapods.py,sha256=k_URV1ekMOU8l_y9_KIp_luu96ZGOl1xLIkH737VREA,8524
15
- fosslight_dependency/package_manager/Go.py,sha256=O-6DTTRM2EoTpCVmlIPKFy8ZTz64EHTooOAoUimjeyk,6491
15
+ fosslight_dependency/package_manager/Go.py,sha256=HvMjCOE82WY9cECf3V7y_V9hKtQnrCqHzbXGZI2519c,7195
16
16
  fosslight_dependency/package_manager/Gradle.py,sha256=IYmj9q3XiE_DPKdtll6lyRr98lFuyKWW2qz57X26Fn0,4359
17
17
  fosslight_dependency/package_manager/Helm.py,sha256=ucx2Y0tWX37UHIzIGaRyTe7uQ2vlu2nUuO09hOMq9ZU,4223
18
- fosslight_dependency/package_manager/Maven.py,sha256=XDVTmxRjeQmATpJDP__yw47Pk5e4utXAkkEkskXPQCQ,10443
19
- fosslight_dependency/package_manager/Npm.py,sha256=EvXXJUJ3-4cyvGNQU2cXPGkOcOQPr4CkuxpNDKk-49w,10655
18
+ fosslight_dependency/package_manager/Maven.py,sha256=vAiBEAEGQD5eaFGVSLmrZ8AAtoz_IuTmhaWuPTmsku0,10503
19
+ fosslight_dependency/package_manager/Npm.py,sha256=1geiBG2nGamGPW8Jd3_Unn3eh7ejnd7kogpM2-HrWeA,10655
20
20
  fosslight_dependency/package_manager/Nuget.py,sha256=x1SPdxwXS2Oyi1RnLasvJJL-IFJl45VI2CXt3wReW24,8884
21
21
  fosslight_dependency/package_manager/Pnpm.py,sha256=LDKooFGQHui_Q5U7XqSJ8KcCPiLVndXf5oGKTJExh5w,7056
22
22
  fosslight_dependency/package_manager/Pub.py,sha256=Rrz8_6wdrmMU6f3vbbuAwyMbODBauXNnBbI619OQgDk,10184
@@ -24,12 +24,12 @@ fosslight_dependency/package_manager/Pypi.py,sha256=LPeI7amFXKxhXMSRwiVaKfhHL_D7
24
24
  fosslight_dependency/package_manager/Swift.py,sha256=8fdbdAXTNlp2NDoSqQXm48JGAg9UhxA91M1-NhHkT40,6752
25
25
  fosslight_dependency/package_manager/Unity.py,sha256=n1006GZ6Qrk8wAdO6wla1Q-JD7Evin7REVj-HDeTARc,5142
26
26
  fosslight_dependency/package_manager/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
- fosslight_dependency-4.1.11.dist-info/Apache-2.0.txt,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
28
- fosslight_dependency-4.1.11.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
29
- fosslight_dependency-4.1.11.dist-info/LicenseRef-3rd_party_licenses.txt,sha256=EcsFt7aE1rp3OXAdJgmXayfOZdpRdBMcmRnyoqWMCsw,95687
30
- fosslight_dependency-4.1.11.dist-info/METADATA,sha256=JISBXkWlFao4FSg3zHDcER45_tvRIWHN_I0eAouymKw,5103
31
- fosslight_dependency-4.1.11.dist-info/MIT.txt,sha256=9cx4CbArgByWvkoEZNqpzbpJgA9TUe2D62rMocQpgfs,1082
32
- fosslight_dependency-4.1.11.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
33
- fosslight_dependency-4.1.11.dist-info/entry_points.txt,sha256=e1QZbnCrQvfbwe9L6PxXnkRZMhl-PSo0QyUes0dGjU8,91
34
- fosslight_dependency-4.1.11.dist-info/top_level.txt,sha256=Jc0V7VcVCH0TEM8ksb8dwroTYz4AmRaQnlr3FB71Hcs,21
35
- fosslight_dependency-4.1.11.dist-info/RECORD,,
27
+ fosslight_dependency-4.1.13.dist-info/Apache-2.0.txt,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
28
+ fosslight_dependency-4.1.13.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
29
+ fosslight_dependency-4.1.13.dist-info/LicenseRef-3rd_party_licenses.txt,sha256=EcsFt7aE1rp3OXAdJgmXayfOZdpRdBMcmRnyoqWMCsw,95687
30
+ fosslight_dependency-4.1.13.dist-info/METADATA,sha256=xG_h1Ljn_76Wm6_4RXLZeHqQWUCse52LMPYK75aFkGk,5103
31
+ fosslight_dependency-4.1.13.dist-info/MIT.txt,sha256=9cx4CbArgByWvkoEZNqpzbpJgA9TUe2D62rMocQpgfs,1082
32
+ fosslight_dependency-4.1.13.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
33
+ fosslight_dependency-4.1.13.dist-info/entry_points.txt,sha256=e1QZbnCrQvfbwe9L6PxXnkRZMhl-PSo0QyUes0dGjU8,91
34
+ fosslight_dependency-4.1.13.dist-info/top_level.txt,sha256=Jc0V7VcVCH0TEM8ksb8dwroTYz4AmRaQnlr3FB71Hcs,21
35
+ fosslight_dependency-4.1.13.dist-info/RECORD,,