Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Dap archives loader and checker

Project Description

Python module that loads a dap file, check it for sanity/validity and provide access for metadata via a Python class.

You can also run daplint on your daps to see some errors or warnings.

Also provides very basic command line tool to install daps from Dapi (dapi).


Dap is a format of extension for DevAssistant that contains custom assistants. The whole thing is now in development phase and the specification may change in the future. This module should define the standard.


  • <package_name>-<version>/
    • assistants/
      • {crt,mod,prep,task}/
        • <package_name>.yaml and optionally <package_name>/*.yaml
    • files/
      • {crt,mod,prep,task,snippets}/
        • <package_name>/
          • additional files needed by your assistant(s) (scripts, templates, etc.)
    • icons/
      • {crt,mod,prep,task,snippets}/
        • <package_name>.{svg,png…}
    • snippets/
      • <package_name>.yaml and optionally <package_name>/*.yaml
    • doc/
      • <package_name>/
        • LICENSE or COPYING file
        • README
        • other documentation
    • meta.yaml
      • metadata

Basically only meta.yaml is mandatory, but a dap with meta.yaml only makes no sense. All content is wrapped in tar.gz archive and renamed to <package_name>-<version>.dap. Both .yaml and icons file extension (currently only .svg and .png) must be lower case. The archive should contain one top level directory named <package_name>-<version>.


package_name: foo # required
version: 1.0.0 # required
license: GPLv2 # required
authors: [Bohuslav Kabrda <>, ...] # required
homepage: # optional
summary: Some brief one line text # required
bugreports: <a single URL or email address> # optional
description: |
    Some not-so-brief optional text.
    It can be split to multiple lines.
  • package name can contain lowercase letters (ASCII only), numbers, underscore and dash (while it can only start and end with a letter or digit), it has to be unique, several names are reserved by DevAssitant itself (e.g. python, ruby)
  • version follows this scheme: <num>[.<num>]*[dev|a|b], where 1.0.5 < 1.1dev < 1.1a < 1.1b < 1.1
  • license is specified via license tag used in Fedora
  • authors is a list of authors with their e-mail addresses (_at_ can be used instead of @)
  • homepage is an URL to existing webpage that describes the dap or contains the code (such as in example), only http(s) or ftp is allowed, no IP addresses
  • summary and description are self-descriptive in the given example
  • bugreports defines where the user should report bugs, it can be either an URL (issue tracker) or an e-mail address (mailing list or personal)
Release History

Release History

This version
History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


History Node


Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
daploader-0.0.9.tar.gz (32.3 kB) Copy SHA256 Checksum SHA256 Source Jul 7, 2014

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting