Skip to content

Commit

Permalink
[Dependencies] Allow to specify a different version for KiCad versions
Browse files Browse the repository at this point in the history
Applied to KiKit
  • Loading branch information
set-soft committed Feb 20, 2025
1 parent c90575a commit e995043
Showing 1 changed file with 19 additions and 4 deletions.
23 changes: 19 additions & 4 deletions kibot/dep_downloader.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,9 @@
github: INTI-CMNB/KiKit
pypi: KiKit
downloader: pytool
version: 1.7.0
version_k6: 1.5.0
version_k7: 1.6.0
version_k9: 1.7.0
- from: KiKit
role: Separate multiboard projects
- name: Xvfbwrapper
Expand Down Expand Up @@ -955,6 +957,21 @@ def __init__(self, output, name, url=None, url_down=None, is_python=False, deb=N
self.role = role


def get_dep_version(dep):
# Look if we have a version depending on KiCad version
k_ver = GS.kicad_version_major
version = None
while k_ver >= 5 and version is None:
version = dep.get('version_k'+str(k_ver), None)
k_ver -= 1
# Try a version for all KiCad versions
if version is not None:
version = dep.get('version', None)
if version is not None:
version = version_str2tuple(str(version))
return version


def register_dep(context, dep):
# Solve inheritance
parent = dep.get('from', None)
Expand All @@ -971,9 +988,7 @@ def register_dep(context, dep):
desc = dep['role']
if desc.lower() == 'mandatory':
desc = None
version = dep.get('version', None)
if version is not None:
version = version_str2tuple(str(version))
version = get_dep_version(dep)
max_version = dep.get('max_version', None)
if max_version is not None:
max_version = version_str2tuple(str(max_version))
Expand Down

0 comments on commit e995043

Please sign in to comment.