New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

asciidag

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

asciidag

Draw DAGs (directed acyclic graphs) as ASCII art, à la git log --graph

  • 0.2.0
  • PyPI
  • Socket score

Maintainers
1

asciidag - draw DAGs as ASCII art

|build-status| |win-build-status| |coverage| |requires|

.. |build-status| image:: https://travis-ci.org/sambrightman/asciidag.svg?branch=master :target: https://travis-ci.org/sambrightman/asciidag :alt: Travis CI status

.. |win-build-status| image:: https://ci.appveyor.com/api/projects/status/t4dv71xsfcifk8mg/branch/master?svg=true :target: https://ci.appveyor.com/project/sambrightman/asciidag :alt: AppVeyor CI status

.. |coverage| image:: https://coveralls.io/repos/github/sambrightman/asciidag/badge.svg?branch=master :target: https://coveralls.io/github/sambrightman/asciidag?branch=master :alt: Coverage

.. |requires| image:: https://requires.io/github/sambrightman/asciidag/requirements.svg?branch=master :target: https://requires.io/github/sambrightman/asciidag/requirements/?branch=master :alt: Requirements Status

Overview

This is a direct port of the Git_ log graphing code, which draws directed acyclic commit graphs as ASCII art. It was done very mechanically and quickly, so the code is not Pythonic. Dependencies on Git_ specifics should be gone but look and feel remains.

This project is alpha quality and subject to breaking API changes.

.. note::
   💡
   If you are thinking about doing a large refactoring, please submit
   an issue for discussion first; I consider it potentially worthwhile
   to stay close to the `Git`_ source.

Installation

Available for install/upgrade from PyPI_:

.. code-block:: bash

pip install -U asciidag

As usual, it is best to install your packages into a virtual environment_.

Usage

examples/demo.py is included in the installation directory and is executable. The core functionality is:

.. code:: python

   from asciidag.graph import Graph
   from asciidag.node import Node

   graph = Graph()

   root = Node('root')
   grandpa = Node('grandpa', parents=[root])
   tips = [
       Node('child', parents=[
           Node('mom', parents=[
               Node('grandma', parents=[
                   Node('greatgrandma', parents=[]),
               ]),
               grandpa,
           ]),
           Node('dad', parents=[
               Node('bill', parents=[
                   Node('martin'),
                   Node('james'),
                   Node('paul'),
                   Node('jon'),
               ])]),
           Node('stepdad', parents=[grandpa]),
       ]),
       Node('foo', [Node('bar')]),
   ]

   graph.show_nodes(tips)

Output:

.. image:: https://raw.githubusercontent.com/sambrightman/asciidag/master/images/demo.png :alt: Demonstration screenshot

:copyright: © 2016 Sam Brightman :license: GNU General Public License v2.0, see LICENSE for more details.

.. _virtual environment: http://docs.python-guide.org/en/latest/dev/virtualenvs .. _Git: https://git-scm.com .. _PyPI: https://pypi.python.org

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc