Skip to main content

Build Status Coverage Status PyPI - Version PyPI - Wheel

Team View - Extract (Data extraction for team analysis)

Extract team analysis data from git (current) and other relevant sources (future).

Pre-requisites for Use

  1. Tokei (This fork has initial, rudementary, support for Jupyter notebooks). Tokei is used to collect metrics on volume of source based per source language.

If you don't have rust installed and aren't currently using Tokei, We recommend utilizing the team-view-extract docker image.

Setup

A configuration file that defines the "project" for extract must be defined. The configuration file is json.

Example:

{
  "extracts": [
    {
      "name": "Project 1",
      "repos": [
        {
          "name": "TeamView",
          "remote": "git@github.com:rappdw/TeamViewer.git"
        },
        {
          "name": "team-view-extract",
          "remote": "git@github.com:rappdw/team-viewer-extract.git"
        }
      ],
      "start_date": "2018-07-18",
      "end_date": "2018-08-31"
    }
  ],
  "output_path": "~/.local/share/cache/TeamView",
  "mailmap_file": "~/.local/share/cache/.mailmap",
  "logging": 20
}

Multiple extracts can be defined in a singl configuration file. start_date, end_date, mailmap_file and logging are all optional. logging defaults to info level. start_date defaults to beginning of project. end_date defaults to today. If no mailmap_file is specified, standard git configuration applies.

A good way to create the mailmap file is to construct based on git shortlog -sne for each repository.

Results

For each extract specified in the configuration file, a sub-directory will be created in the directory spcified by output_path. The following files will be created:

  • author_totals.csv - Commit counts by author and repository (excluding merge commits)
  • loc.csv - File counts by language, commit and repository (commits to master branch only)
  • loc_delta.csv - File Counts by author, language, commit and repository (excluding merge commits)
  • prs.csv - Pull request by repo including duration between last commit to branch and merge to master
  • repo.csv - Current state of volume of code by language for each repo
  • revs.csv - Revision graph by repo

'Temporary' Files

~/.local/share/cache is used to cache temporary files including checkout of repos specified by extract and a cache of the LOC revision history of each repo. If present this cache is updated on subsequent runs. If not present it is recreated from scratch.

Release files for tv-extract 1.0.15

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for tv-extract 1.0.15
File Interpreter ABI Platform
tv_extract-1.0.15-py3-none-any.whl Python 3 none any Details

Release files / tv_extract-1.0.15-py3-none-any.whl

Download URL tv_extract-1.0.15-py3-none-any.whl
Size 18.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ac7fd5bdaadc9a0f0e15ff189ef54e4cf58796f51fccca37e2c8e57ee0bb5803
BLAKE2b-256 checksum
How to use checksums
d6df648b02f326d634ebb3eabd89c4fb8f755590782ed1befe0c11373c842f72
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

Release history Release notifications | RSS feed

This release

1.0.15 This release

1 release file

1.0.14

1 release file

1.0.13

1 release file

1.0.12

1 release file

1.0.11

1 release file

1.0.10

1 release file

1.0.9

1 release file

1.0.8

1 release file

1.0.7

1 release file

1.0.6

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page