References

py_deps.deps module.

class py_deps.deps.Depth

Bases: object

Cache of the dependency level.

get(pkg_name)

Get depth of package.

Return type:int
Returns:dependency level.
Parameters:pkg_name (str) – package name.
parse(pkgs, pkg_name)

Parse dependency depth.

Parameters:
  • pkgs (list) – package nodes list.
  • pkg_name (str) – package name.
set(pkg_name, depth)

Set depth of package.

Parameters:
  • pkg_name (str) – package name
  • depth (int) – dependency level
class py_deps.deps.Node(name, version=None, url=None)

Bases: object

Node object class.

add_targets(nodes)

Add targets.

Parameters:nodes (list) – nodes list
add_test_targets(nodes)

Add test targets.

Parameters:nodes (list) – nodes list for testing.
remove_targets(*nodes)

Remove targets.

Parameters:*nodes (*list) –

nodes list

update_depth(depth)

set dependency level.

Parameters:depth (int) – dependency level.
class py_deps.deps.Package(name, version=None, update_force=False, **kwargs)

Bases: object

Package class.

cleanup(alldir=False)

Cleanup temporary build directory.

Parameters:alldir (bool) – Remove all temporary directories. (default: False)
Return type:None
draw(draw_type=None, decode_type='', disable_time=False, disable_descr=False, link_prefix=None)

Generate drawing data.

Parameters:
  • draw_type (str) – [dot|blockdiag|linkdraw]
  • decode_type (str) – [‘’|json(linkdraw)]
trace_chain(pkg_name=None)

Trace dependency chain.

Parameters:pkg_name (str) – package name
Return type:None
class py_deps.deps.Target(nodename, specs, extras=False)

Bases: py_deps.deps.Node

Target objects.

add_targets(nodes)

Add targets.

Parameters:nodes (list) – nodes list
add_test_targets(nodes)

Add test targets.

Parameters:nodes (list) – nodes list for testing.
remove_targets(*nodes)

Remove targets.

Parameters:*nodes (*list) –

nodes list

update_depth(depth)

set dependency level.

Parameters:depth (int) – dependency level.
py_deps.deps.latest_version(pkg_name)

retrieve latest version.

Return type:str
Returns:latest version
Parameters:pkg_name (str) – package name.
py_deps.deps.search(pkg_name, exactly=False)

Search package.

Return type:

list

Returns:

search packages

Parameters:
  • pkg_name (str) – package name.
  • exactly (bool) – exactly match only.
py_deps.deps.u2h(name)

Change underscore to hyphen of package name.

Return type:str
Returns:string replaced underscore with hyphen
Parameters:name (str) – package name

py_deps.graph module.

class py_deps.graph.Graph(chain_data, link_prefix=None)

Bases: object

Graph data generate abstract class.

count_depth()

Count each depth.

generate_nodes()

Generate nodes data.

class py_deps.graph.Linkdraw(chain_data, link_prefix=None)

Bases: py_deps.graph.Graph

Linkdraw object class.

count_depth()

Count each depth.

disable_descr()

Disable description.

disable_time()

Disable time.

generate_data()

Generate Linkdraw data.

generate_edges()

Generate edges data.

generate_nodes()

Generate nodes data.

generate_position()

Generate position.

level 0 is the base depth, that is one only.

Nodes depth images is follows.:

0---1---2---3
|    `--2---3---4---5
|     `-2---3
|        `--3---4
1---2---3
     `--3
base position
0
level distance
the value that the smaller of the SVG width and height devided by the depth level.
node disstance
the circumference drawed by the same level nodes devided by the num same level.
depth level
len(self.count_depth().key())
deepest level
self.count_depth().keys()[-1]
num same level
self.count_depth().get(int:'some level')
class py_deps.graph.Metadata

Bases: object

Metadata object class.

class py_deps.graph.Networkx(chain_data, link_prefix=None)

Bases: py_deps.graph.Graph

Networkx object class.

count_depth()

Count each depth.

generate_data()

Generate networkx graph data.

generate_edges()

Generate edges data.

generate_nodes()

Generate nodes data.

py_deps.graph.color(depth)

color by depth level.

Return type:str
Returns:hex color code based blue.
Parameters:depth (int) – dependency level
py_deps.graph.pretty_print(chain_data)

Pretty print on terminal.

Parameters:chain_data (list) – List of deps.Node
py_deps.graph.router(chain_data, draw_type=None, decode_type='', disable_time=False, disable_descr=False, link_prefix=None)

Routing drawing tool.

py_deps.cache module.

class py_deps.cache.Container(cache_name=None)

Bases: object

Package container class.

list_data()

Return dictionary stored package metadata.

Return type:dict
Returns:packages metadata
read_data(key)

Read traced_chain data.

Return type:list
Returns:dependency chain list
Parameters:key (tuple) – package name, version
store_data(key, data)

store traced_chain data.

class py_deps.cache.Memcached(servers=None, username=None, password=None, behaviors=None)

Bases: py_deps.cache.Container

Cache backend is Memecached.

list_data()

Return dictionary stored package metadata.

Return type:dict
Returns:packages metadata
read_data(key)

Read traced_chain data.

Return type:list
Returns:dependency chain list
Parameters:key (tuple) – package name, version
store_data(key, data)

Store traced_chain data.

Parameters:
  • key (tuple) – package name, version
  • data (list) – traced dependency chain data
class py_deps.cache.Pickle(cache_name=None)

Bases: py_deps.cache.Container

Cache backend is Pickle.

list_data()

Return dictionary stored package metadata.

Return type:dict
Returns:packages metadata
load_cache()

Load cache file.

read_data(key)

Read traced_chain data.

Return type:list
Returns:dependency chain list
Parameters:key (tuple) – package name, version
save_cache()

Save cache file.

store_data(key, data)

Store traced_chain data.

Parameters:
  • key (tuple) – package name, version
  • data (list) – traced dependency chain data
py_deps.cache.backend(**kwargs)

Specify cache backend.

Return type:py_deps.cache.Container
Returns:Pickle object or Memcached object.
Parameters:**kwargs

parameters

servers

Memcached servers (required in Memcached)

Required when Memcached. Using Pickle in default without servers.

username
Memcached SASL username (optional)
password
Memcached SASL password (optional)
cache_name
Pickle filename (default, optional)

py_deps.exceptions module.

exception py_deps.exceptions.BackendFailure(message=None)

Bases: py_deps.exceptions.Error

PyPI service down.

with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

exception py_deps.exceptions.BrokenPackage(message=None)

Bases: py_deps.exceptions.Error

BrokenPackage.

with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

exception py_deps.exceptions.Error(message=None)

Bases: Exception

Base error class.

with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

exception py_deps.exceptions.InvalidMetadata(message=None)

Bases: py_deps.exceptions.Error

Invalid package metadata.

with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

exception py_deps.exceptions.NotFound(message=None)

Bases: py_deps.exceptions.Error

Not Found.

with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.