Skip to main content

No project description provided

Project description

mtng

Generate meeting notes from GitHub + Indico. This tool generates LaTeX code that can be compiled into a PDF presentation. The result looks something like this:

Screenshot of the tool's output

Installation

pip install mtng

Interface

$ mtng --help
Usage: mtng [OPTIONS] COMMAND [ARGS]...

  Meeting generation script, version 0.4.1

Options:
  --install-completion [bash|zsh|fish|powershell|pwsh]
                                  Install completion for the specified shell.
  --show-completion [bash|zsh|fish|powershell|pwsh]
                                  Show completion for the specified shell, to
                                  copy it or customize the installation.
  --help                          Show this message and exit.

Commands:
  generate  Generate a LaTeX fragment that includes an overview of PRs,...
  preamble  Print a preamble suitable to render fancy output
  schema    Print the configuration schema
$ mtng generate --help
Usage: mtng generate [OPTIONS] CONFIG

  Generate a LaTeX fragment that includes an overview of PRs, Issues and
  optionally an Indico agenda

Arguments:
  CONFIG  [required]

Options:
  --token TEXT                    Github API token to use. Can be supplied
                                  with environment variable GH_TOKEN
  --since [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]
                                  Start window for queries  [required]
  --now [%Y-%m-%d|%Y-%m-%dT%H:%M:%S|%Y-%m-%d %H:%M:%S]
                                  End window for queries  [default:
                                  2022-08-17T21:24:07]
  --event TEXT                    Optionally attach an Indico based agenda
                                  overview. This only works with public
                                  events!
  --full                          Write a full LaTeX file that is compileable
                                  on it's own
  --pdf FILE                      Compile the report as a PDF file. This
                                  requires a LaTeX installation.
  --help                          Show this message and exit.

Configuration

mtng consumes a configuration file to specify which GitHub repositories to ingest. An example configuration could look like this:

repos:
  - name: acts-project/acts
    stale_label: Stale
    wip_label: ":construction: WIP"
    show_wip: true
    do_recent_issues: true
    no_assignee_attention: true
    filter_labels: 
      - backport

Schema

  • Repository (object): Cannot contain additional properties.
    • name (string): Name of the repository, e.g. 'acts-project/acts'.
    • wip_label (string): Label to identify WIP PRs.
    • show_wip (boolean): If true, WIP PRs will be included in the output, else they are ignored. Default: False.
    • filter_labels (array): If any PR or issue has any label that matches any of these labels, they are excluded.
      • Items (string)
    • stale_label (string): A label to identify stale PRs/issues. If set, stale PRs and issues will be listed separately and split into newly and other stale items.
    • do_open_prs (boolean): Show a list of open PRs. Default: True.
    • do_merged_prs (boolean): Show a list of merged PRs. Default: True.
    • do_recent_issues (boolean): Show a list of issues opened in the time interval. Default: False.
    • no_assignee_attention (boolean): Draw attention to items without an assignee. Default: True.
  • Spec (object): Cannot contain additional properties.
    • repos (array)
      • Items: Refer to #/definitions/Repository.

This configuration will look up the acts-project/acts repository. The output will contain sections on

  1. Stale PRs and issues. If this is turned on, the stale_label key must be given as well
  2. A list of open PRs, optionally filtered to not include the label given by wip_label
  3. Merged PRs since the date given by the --since option
  4. Issues opened since the date given by the --since option

In addition and independent of this config, a meeting agenda can be attached at the end if the --event option is provided and contains a valid Indico URL.

Making a presentation

By default, the output of mtng generate is a LaTeX fragment. It has to be incorporated into a set of Beamer/LaTeX slides, for example like

$ mtng generate spec.yml > gen.tex

with a LaTeX file like

% Preamble and beginnig of slides
\input{gen.tex}
% Rest of slides

Alternatively, you can generate a fully compileable LaTex document, by using the --full option.

$ mtng generate spec.yml --full > gen.tex
$ latexmk gen.tex

Project details


Download files

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

Source Distribution

mtng-0.8.1.tar.gz (28.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mtng-0.8.1-py3-none-any.whl (32.7 kB view details)

Uploaded Python 3

File details

Details for the file mtng-0.8.1.tar.gz.

File metadata

  • Download URL: mtng-0.8.1.tar.gz
  • Upload date:
  • Size: 28.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.19

File hashes

Hashes for mtng-0.8.1.tar.gz
Algorithm Hash digest
SHA256 4f7d897aa72db05dd4f48c259b45588ab09367e25f365d0b88dd3bfc014bad3b
MD5 8252d2db3b1be1538856a9eb007a3368
BLAKE2b-256 ac4b3ea062c08ee964c0d4daba2573eee3e443055727a3c0c12b18590022b857

See more details on using hashes here.

File details

Details for the file mtng-0.8.1-py3-none-any.whl.

File metadata

  • Download URL: mtng-0.8.1-py3-none-any.whl
  • Upload date:
  • Size: 32.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.19

File hashes

Hashes for mtng-0.8.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fcb60b6e48a3db736ef9acd5550896ee0ca581c273fa4c498df0c3a9364542c8
MD5 d225ad1a23a82ca9ec122d6e527508b4
BLAKE2b-256 a1fc11ee9208550ba3fcfc48e3eab877abd1e9ae1e4564cf0158d34351d896e6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page