# eric7.MicroPython.Devices.CircuitPythonUpdater.CircuitPythonUpdaterInterface

Module implementing an interface to the 'circup' package.

### Global Attributes

None

### Classes

CircuitPythonUpdaterInterface | Class implementing an interface to the 'circup' package.

### Functions

isCircupAvailable | Function to check for the availability of 'circup'.

## CircuitPythonUpdaterInterface

Class implementing an interface to the 'circup' package.

### Derived from

QObject

### Class Attributes

None

### Class Methods

None

### Methods

CircuitPythonUpdaterInterface | Constructor
__aboutCircup | Private slot to show some info about 'circup'.
__addBundle | Private slot to add a bundle to the local bundles list, by "user/repo" github string.
__doUpdateModules | Private method to perform the update of a list of modules.
__generateRequirements | Private slot to generate requirements for the connected device.
__installFromAvailable | Private slot to install modules onto the connected device.
__installFromCode | Private slot to install modules based on the 'code.py' file of the connected device.
__installModules | Private method to install the given list of modules.
__installRequirements | Private slot to install modules determined by a requirements file.
__listOutdatedModules | Private slot to list the outdated modules of the connected device.
__removeBundle | Private slot to remove one or more bundles from the local bundles list.
__showAvailableModules | Private slot to show the available modules.
__showBundles | Private slot to show the available bundles (default and local).
__showBundlesModules | Private slot to show the available bundles (default and local) with their modules.
__showCachePath | Private slot to show the path used by 'circup' to store the downloaded bundles.
__showInstalledModules | Private slot to show the modules installed on the connected device.
__uninstallModules | Private slot to uninstall modules from the connected device.
__updateAllModules | Private slot to update all modules of the connected device.
__updateModules | Private slot to update the modules of the connected device.
installCircup | Public slot to install the 'circup' package via pip.
populateMenu | Public method to populate the 'circup' menu.

### Static Methods

None

#### CircuitPythonUpdaterInterface (Constructor)

CircuitPythonUpdaterInterface(device, parent=None)

Constructor

device (CircuitPythonDevice)
  reference to the CircuitPython device interface
parent (QObject (optional))
  reference to the parent object (defaults to None)

#### CircuitPythonUpdaterInterface.__aboutCircup

__aboutCircup()

Private slot to show some info about 'circup'.

#### CircuitPythonUpdaterInterface.__addBundle

__addBundle()

Private slot to add a bundle to the local bundles list, by "user/repo" github string.

#### CircuitPythonUpdaterInterface.__doUpdateModules

__doUpdateModules(modules)

Private method to perform the update of a list of modules.

modules (circup.Module)
  list of modules to be updated

#### CircuitPythonUpdaterInterface.__generateRequirements

__generateRequirements()

Private slot to generate requirements for the connected device.

#### CircuitPythonUpdaterInterface.__installFromAvailable

__installFromAvailable()

Private slot to install modules onto the connected device.

#### CircuitPythonUpdaterInterface.__installFromCode

__installFromCode()

Private slot to install modules based on the 'code.py' file of the connected device.

#### CircuitPythonUpdaterInterface.__installModules

__installModules(installs)

Private method to install the given list of modules.

installs (list of str)
  list of module names to be installed

#### CircuitPythonUpdaterInterface.__installRequirements

__installRequirements()

Private slot to install modules determined by a requirements file.

#### CircuitPythonUpdaterInterface.__listOutdatedModules

__listOutdatedModules()

Private slot to list the outdated modules of the connected device.

#### CircuitPythonUpdaterInterface.__removeBundle

__removeBundle()

Private slot to remove one or more bundles from the local bundles list.

#### CircuitPythonUpdaterInterface.__showAvailableModules

__showAvailableModules()

Private slot to show the available modules.

These are modules which could be installed on the device.

#### CircuitPythonUpdaterInterface.__showBundles

__showBundles(withModules=False)

Private slot to show the available bundles (default and local).

withModules (bool (optional))
  flag indicating to list the modules and their version (defaults to False)

#### CircuitPythonUpdaterInterface.__showBundlesModules

__showBundlesModules()

Private slot to show the available bundles (default and local) with their modules.

#### CircuitPythonUpdaterInterface.__showCachePath

__showCachePath()

Private slot to show the path used by 'circup' to store the downloaded bundles.

#### CircuitPythonUpdaterInterface.__showInstalledModules

__showInstalledModules()

Private slot to show the modules installed on the connected device.

#### CircuitPythonUpdaterInterface.__uninstallModules

__uninstallModules()

Private slot to uninstall modules from the connected device.

#### CircuitPythonUpdaterInterface.__updateAllModules

__updateAllModules()

Private slot to update all modules of the connected device.

#### CircuitPythonUpdaterInterface.__updateModules

__updateModules()

Private slot to update the modules of the connected device.

#### CircuitPythonUpdaterInterface.installCircup

installCircup()

Public slot to install the 'circup' package via pip.

#### CircuitPythonUpdaterInterface.populateMenu

populateMenu(menu)

Public method to populate the 'circup' menu.

menu (QMenu)
  reference to the menu to be populated

Up

## isCircupAvailable

isCircupAvailable()

Function to check for the availability of 'circup'.

Return:
  flag indicating the availability of 'circup'

Return Type:
  bool

Up