dep8

Revision 10 as of 2017-04-03 17:45:53

Clear message

Server Team dep8 Status

Overview

The purpose of this research was to determine opportunities for improvements in quality and test automation via the use of dep8. While dep8 is not the end-all be-all of testing as some packages run other tests during build, dep8 provides package maintainers a method for verifying their work and improves confidence when building and making changes and fixing bugs and provides a list of opportunities for experienced and new developers to help increase quality of Ubuntu packages.

This page tracks the status of dep8 tests existing in server team owned packages as defined by the package-to-team mappings.

Process

Given the package-to-team mappings, in order to determine whether a package had dep8 tests or not the following was done for every package owned by the 'server-team': Download the latest source via pull-lp-source <package name> zesty

  1. [testsuite] - control file calls out a testsuite (or XS-Testsuite), may be autopkgtest or otherwise
    • grep debian/control 'Testsuite:'

  2. [dep8] - do dep8 tests exists via the presence of:
    • debian/tests
    • debian/tests/control
  3. [go] - contains build time go-based tests
    • find . -name *_test.go

  4. [python] - setup.py has a test_suite defined
    • grep setup.py 'test_suite'

This is a very crude method that leaves out the additional possibilities of language specific tests, packages that are libraries or source only.

Launchpad Bugs

For each package a Launchpad bug was filed with the tag 'needs-dep8'.

Data

Following was determined on March 29, 2017. Of the 521 packages under 'ubuntu-server':

  • 374 packages do not have dep8 tests (Link)

  • 90 packages have dep8 tests (Link)

  • 57 packages are not available in zesty (Link)

Once removing packages that have golang tests, python test_suite in setup.py, or test-suite set in the control file the number drops to 312 (Link)

Packages Missing dep8 Tests

Name

LP Bug

Status

Notes

acpica-unix

LP: #1677698

amavisd-new

LP: #

analog

LP: #

ant-contrib

LP: #

antlr3

LP: #

apr

LP: #

asterisk

LP: #

at

LP: #

augeas

LP: #

authbind

LP: #

autofs

LP: #

awscli

LP: #

awstats

LP: #

backuppc

LP: #

bacula

LP: #

bcache-tools

LP: #

beanstalkc

LP: #

beautifulsoup

LP: #

billiard

LP: #

bind9

LP: #

blinker

LP: #

bridge-utils

LP: #

bsd-mailx

LP: #

byobu

LP: #

c3p0

LP: #

cglib

LP: #

cglib3

LP: #

cgroup-lite

LP: #

charm-tools

LP: #

checksecurity

LP: #

cheetah

LP: #

chkrootkit

LP: #

cloud-init

LP: #

cloud-initramfs-tools

LP: #

cluster-glue

LP: #

cobbler-enlist

LP: #

commons-io

LP: #

commons-vfs

LP: #

curtin

LP: #

cyrus-sasl2

LP: #

dh-php

LP: #

ding-libs

LP: #

dlm

LP: #

dns-root-data

LP: #

dnsjava

LP: #

dnsmasq

LP: #

dnstracer

LP: #

drac

LP: #

drbd-utils

LP: #

dwarves-dfsg

LP: #

ebtables

LP: #

ec2-ami-tools

LP: #

ec2-api-tools

LP: #

elinks

LP: #

etckeeper

LP: #

ethtool

LP: #

euca2ools

LP: #

excalibur-logkit

LP: #

eximdoc4

LP: #

fetchmail

LP: #

freeipmi

LP: #

geronimo-ejb-3.0-spec

LP: #

geronimo-interceptor-3.0-spec

LP: #

geronimo-j2ee-connector-1.5-spec

LP: #

geronimo-jacc-1.1-spec

LP: #

geronimo-jms-1.1-spec

LP: #

geronimo-jpa-3.0-spec

LP: #

golang-1.6

LP: #

golang-1.6-race-detector-runtime

LP: #

golang-1.7

LP: #

golang-check.v1

LP: #

golang-context

LP: #

Invalid

Package has tests which are run at build time

golang-github-bmizerany-assert

LP: #

golang-github-bmizerany-pat

LP: #

golang-github-gorilla-mux

LP: #

Invalid

Package has tests which are run at build time

golang-github-mattn-go-colorable

LP: #

Invalid

Package has tests which are run at build time

golang-github-mattn-go-isatty

LP: #

Invalid

Package has tests which are run at build time

golang-github-mattn-go-sqlite3

LP: #

Invalid

Package has tests which are run at build time

golang-github-olekukonko-tablewriter

LP: #

Invalid

Package has tests which are run at build time

golang-github-pborman-uuid

LP: #

Invalid

Package has tests which are run at build time

golang-go-dbus

LP: #

golang-go.crypto

LP: #

Invalid

Package has tests which are run at build time

golang-gocapability-dev

LP: #

Invalid

Package has tests which are run at build time

golang-golang-x-net-dev

LP: #

golang-gopkg-flosch-pongo2.v3

LP: #

Invalid

Package has tests which are run at build time

golang-gopkg-inconshreveable-log15.v2

LP: #

Invalid

Package has tests which are run at build time

golang-gopkg-tomb.v2

LP: #

Invalid

Package has tests which are run at build time

golang-goprotobuf

LP: #

Invalid

Package has tests which are run at build time

golang-juju-loggo

LP: #

golang-petname

LP: #

Invalid

Package has tests which are run at build time

golang-pretty

LP: #

golang-text

LP: #

golang-x-text

LP: #

golang-yaml.v2

LP: #

Invalid

Package has tests which are run at build time

google-apputils-python

LP: #

groovy

LP: #

hardlink

LP: #

heartbeat

LP: #

heimdal

LP: #

htop

LP: #

http-parser

LP: #

ibmasm-utils

LP: #

iotop

LP: #

ipmitool

LP: #

iproute2

LP: #

ipsec-tools

LP: #

iptraf-ng

LP: #

ipvsadm

LP: #

ipxe

LP: #

irqbalance

LP: #

janino

LP: #

joyent-mdata-client

LP: #

jug

LP: #

keepalived

LP: #

kerberos-configs

LP: #

krb5

LP: #

ldap-auth-client

LP: #

ldb

LP: #

ldns

LP: #

libaio

LP: #

libapache-mod-auth-kerb

LP: #

libapache2-mod-auth-pgsql

LP: #

libapache2-mod-auth-plain

LP: #

libapache2-reload-perl

LP: #

libaxiom-java

LP: #

libcacard

LP: #

libcgroup

LP: #

libcommons-cli-java

LP: #

libcommons-compress-java

LP: #

libcommons-fileupload-java

LP: #

libcommons-jxpath-java

LP: #

libconfig-general-perl

LP: #

libcss-minifier-xs-perl

LP: #

libdbi

LP: #

libdbi-drivers

LP: #

libecap

LP: #

libesmtp

LP: #

libezmorph-java

LP: #

libfcgi-perl

LP: #

libibverbs

LP: #

libiscsi

LP: #

libjavascript-minifier-xs-perl

LP: #

libjson-java

LP: #

liblockfile

LP: #

libmemcached

LP: #

libmime-tools-perl

LP: #

libmnl

LP: #

libmspack

LP: #

libnet

LP: #

libnetfilter-conntrack

LP: #

libnetfilter-cthelper

LP: #

libnetfilter-cttimeout

LP: #

libnetfilter-queue

LP: #

libnl3

LP: #

libnss-ldap

LP: #

libp11

LP: #

libpam-ldap

LP: #

libpam-mount

LP: #

libpam-radius-auth

LP: #

libparse-recdescent-perl

LP: #

libparse-yapp-perl

LP: #

libpcap

LP: #

librabbitmq

LP: #

librdmacm

LP: #

librtas

LP: #

libs3

LP: #

libsdl1.2

LP: #

libslf4j-java

LP: #

libstatgrab

LP: #

libtime-parsedate-perl

LP: #

libtirpc

LP: #

libtommath

LP: #

liburcu

LP: #

libxml-security-java

LP: #

libxml-xpath-perl

LP: #

libyaml

LP: #

lm-sensors

LP: #

logcheck

LP: #

logwatch

LP: #

lsscsi

LP: #

lua-lpeg

LP: #

lua5.2

LP: #

m2300w

LP: #

m2crypto

LP: #

maas

LP: #

maas-enlist

LP: #

mail-spf-perl

LP: #

mako

LP: #

markupsafe

LP: #

maven-ant-helper

LP: #

mcollective

LP: #

mdbtools

LP: #

migrationtools

LP: #

mime-construct

LP: #

minicom

LP: #

moin

LP: #

monitoring-plugins

LP: #

mtx

LP: #

mvel

LP: #

mysql-defaults

LP: #

nagios-images

LP: #

nagios-nrpe

LP: #

nbd

LP: #

ndg-httpsclient

LP: #

net-snmp

LP: #

net-tools

LP: #

netcf

LP: #

netty

LP: #

nicstat

LP: #

nis

LP: #

nmap

LP: #

nose

LP: #

nspr

LP: #

nss

LP: #

ntdb

LP: #

ntp

LP: #

numactl

LP: #

oops

LP: #

oops-amqp

LP: #

oops-datedir-repo

LP: #

oops-twisted

LP: #

oops-wsgi

LP: #

openbsd-inetd

LP: #

openhpi

LP: #

openipmi

LP: #

openldap

LP: #

openvpn

LP: #

pam-p11

LP: #

parsedatetime

LP: #

pax

LP: #

php-defaults

LP: #

php-pear

LP: #

pm-utils

LP: #

pnm2ppa

LP: #

pollen

LP: #

pollinate

LP: #

popt

LP: #

powernap

LP: #

pptpd

LP: #

procmail

LP: #

psmisc

LP: #

pwgen

LP: #

pyjunitxml

LP: #

pylibmc

LP: #

python-amqplib

LP: #

python-cloudfiles

LP: #

python-coffin

LP: #

python-cryptography-vectors

LP: #

python-ddt

LP: #

python-dingus

LP: #

python-django

LP: #

python-django-piston

LP: #

python-django-south

LP: #

python-dns

LP: #

python-elasticsearch

LP: #

python-gevent

LP: #

python-gflags

LP: #

python-hacking

LP: #

python-happybase

LP: #

python-hplefthandclient

LP: #

python-httpretty

LP: #

python-itsdangerous

LP: #

python-jingo

LP: #

python-jsonrpclib

LP: #

python-jujuclient

LP: #

python-kajiki

LP: #

python-ldappool

LP: #

python-mailer

LP: #

python-mccabe

LP: #

python-nine

LP: #

python-nose-testconfig

LP: #

python-nosehtmloutput

LP: #

python-oauth

LP: #

python-oauthlib

LP: #

python-pyelftools

LP: #

python-pytyrant

LP: #

python-recaptcha

LP: #

python-requestbuilder

LP: #

python-seamicroclient

LP: #

python-setuptools-git

LP: #

python-stompy

LP: #

python-sysv-ipc

LP: #

python-tempita

LP: #

python-termstyle

LP: #

python-thrift

LP: #

python-tx-tftp

LP: #

python-ws4py

LP: #

python-xstatic

LP: #

qdox

LP: #

qemu

LP: #

quota

LP: #

rabbitmq-server

LP: #

raphael

LP: #

re2c

LP: #

requests

LP: #

rpcbind

LP: #

rrdtool

LP: #

rsync

LP: #

ruby-augeas

LP: #

ruby-childprocess

LP: #

ruby-hashie

LP: #

ruby-indentation

LP: #

ruby-json

LP: #

ruby-molinillo

LP: #

ruby-net-http-persistent

LP: #

ruby-rspec

LP: #

ruby-safe-yaml

LP: #

ruby-shadow

LP: #

run-one

LP: #

seabios

LP: #

setserial

LP: #

sg3-utils

LP: #

sharutils

LP: #

shtool

LP: #

siege

LP: #

simplestreams

LP: #

slof

LP: #

smartmontools

LP: #

socat

LP: #

sphinxcontrib-httpdomain

LP: #

sphinxcontrib-pecanwsme

LP: #

sphinxcontrib-programoutput

LP: #

spice

LP: #

spice-protocol

LP: #

squid-deb-proxy

LP: #

squid-langpack

LP: #

ssh-import-id

LP: #

ssl-cert

LP: #

sssd

LP: #

subunit

LP: #

sysstat

LP: #

taglibs-standard

LP: #

tevent

LP: #

tftp-hpa

LP: #

tickcount

LP: #

tinycdb

LP: #

tmux

LP: #

tomcat7

LP: #

tomcat8

LP: #

tomsfastmath

LP: #

txamqp

LP: #

txaws

LP: #

txlongpoll

LP: #

txzookeeper

LP: #

ubuntu-cloudimage-keyring

LP: #

ubuntu-virt

LP: #

unbound

LP: #

unixodbc

LP: #

urlgrabber

LP: #

urwid

LP: #

usbredir

LP: #

uucp

LP: #

uvtool

LP: #

vblade

LP: #

vblade-persist

LP: #

vcversioner

LP: #

vgabios

LP: #

vlan

LP: #

vlock

LP: #

vm-builder

LP: #

w3m

LP: #

wakeonlan

LP: #

walinuxagent

LP: #

websocket-client

LP: #

websockify

LP: #

whois

LP: #

wss4j

LP: #

xen

LP: #

xinetd

LP: #

xmlrpc-epi

LP: #

xmlunit

LP: #

xz-java

LP: #

yajl

LP: #

yui3

LP: #