Compare commits

...

2 commits

Author SHA1 Message Date
d2237c0a12
Format
Some checks failed
BUILD x86_64-linux.picard
UPLOAD x86_64-linux.picard
DOWNLOAD x86_64-linux.picard
CACHIX x86_64-linux.picard
ATTIC x86_64-linux.picard
EVAL x86_64-linux.picard
/ test (push) Successful in 20s
2024-12-18 14:58:39 +01:00
a45c032180
Improve automatic formatting 2024-12-18 14:58:20 +01:00
13 changed files with 366 additions and 392 deletions

View file

@ -13,4 +13,3 @@ jobs:
run: nix-fast-build --no-nom --systems "x86_64-linux aarch64-linux" --attic-cache "nixfleet" --skip-cached --result-file result.json || true
- name: Report checks
run: report-checks

View file

@ -1,7 +1,7 @@
name: update-flake-lock
on:
schedule:
- cron: '0 15 * * *' # daily at 15:00
- cron: "0 15 * * *" # daily at 15:00
jobs:
lockfile:

View file

@ -19,7 +19,21 @@
flakeCheck = true;
programs = {
nixfmt.enable = true;
prettier.enable = true;
black.enable = true;
shfmt.enable = true;
};
settings.global.excludes = [
"*.age"
"*.svg"
"*.png"
"*.jpg"
"*.bin"
"*.el"
"*.org"
".envrc"
"*.conf"
];
};
pre-commit.settings = {

View file

@ -1,187 +1,193 @@
:root { /* Catppuccin Colors */
--bg: #1e1e2e;
--currentline: #302D41;
--fg: #d9e0ee;
--comment: #575268;
--flamingo: #f2cdcd;
--mauve: #ddb6f2;
--pink: #f5c2e7;
--maroon: #e8a2af;
--red: #f28fad;
--peach: #f8bd96;
--yellow: #fae3b0;
--green: #abe9b3;
--teal: #b5e8e0;
--blue: #96cdfb;
--sky: #89dceb;
--lavender: #c9cbff;
--rosewater: #f5e0dc;
--font: monospace; /*"FiraCode Nerd Font Mono";*/
:root {
/* Catppuccin Colors */
--bg: #1e1e2e;
--currentline: #302d41;
--fg: #d9e0ee;
--comment: #575268;
--flamingo: #f2cdcd;
--mauve: #ddb6f2;
--pink: #f5c2e7;
--maroon: #e8a2af;
--red: #f28fad;
--peach: #f8bd96;
--yellow: #fae3b0;
--green: #abe9b3;
--teal: #b5e8e0;
--blue: #96cdfb;
--sky: #89dceb;
--lavender: #c9cbff;
--rosewater: #f5e0dc;
--font: monospace; /*"FiraCode Nerd Font Mono";*/
/* vimium theme uses colors: flamingo, peach, rosewater, green, blue, lavender */
--tridactyl-fg: var(--fg);
--tridactyl-bg: var(--bg);
--tridactyl-url-fg: var(--rosewater);
--tridactyl-url-bg: var(--bg);
--tridactyl-highlight-box-bg: var(--currentline);
--tridactyl-highlight-box-fg: var(--fg);
--tridactyl-of-fg: var(--fg);
--tridactyl-of-bg: var(--currentline);
--tridactyl-cmdl-fg: var(--bg);
--tridactyl-cmdl-font-family: var(--font);
--tridactyl-cmplt-font-family: var(--font);
--tridactyl-hintspan-font-family: var(--font);
/* vimium theme uses colors: flamingo, peach, rosewater, green, blue, lavender */
--tridactyl-fg: var(--fg);
--tridactyl-bg: var(--bg);
--tridactyl-url-fg: var(--rosewater);
--tridactyl-url-bg: var(--bg);
--tridactyl-highlight-box-bg: var(--currentline);
--tridactyl-highlight-box-fg: var(--fg);
--tridactyl-of-fg: var(--fg);
--tridactyl-of-bg: var(--currentline);
--tridactyl-cmdl-fg: var(--bg);
--tridactyl-cmdl-font-family: var(--font);
--tridactyl-cmplt-font-family: var(--font);
--tridactyl-hintspan-font-family: var(--font);
/* Hint character tags */
--tridactyl-hintspan-fg: var(--bg) !important;
--tridactyl-hintspan-bg: var(--green) !important;
/* Hint character tags */
--tridactyl-hintspan-fg: var(--bg) !important;
--tridactyl-hintspan-bg: var(--green) !important;
/* Element Highlights */
--tridactyl-hint-active-fg: none;
--tridactyl-hint-active-bg: none;
--tridactyl-hint-active-outline: none;
--tridactyl-hint-bg: none;
--tridactyl-hint-outline: none;
/* Element Highlights */
--tridactyl-hint-active-fg: none;
--tridactyl-hint-active-bg: none;
--tridactyl-hint-active-outline: none;
--tridactyl-hint-bg: none;
--tridactyl-hint-outline: none;
}
#command-line-holder {
order: 1;
border: 2px solid var(--lavender);
background: var(--tridactyl-bg);
order: 1;
border: 2px solid var(--lavender);
background: var(--tridactyl-bg);
}
#tridactyl-input {
padding: 1rem;
color: var(--tridactyl-fg);
width: 90%;
font-size: 1.5rem;
line-height: 1.5;
background: var(--tridactyl-bg);
padding-left: unset;
padding: 1rem;
padding: 1rem;
color: var(--tridactyl-fg);
width: 90%;
font-size: 1.5rem;
line-height: 1.5;
background: var(--tridactyl-bg);
padding-left: unset;
padding: 1rem;
}
#completions table {
font-size: 0.8rem;
font-weight: 200;
border-spacing: 0;
table-layout: fixed;
padding: 1rem 0;
/* padding-top: 1rem; */
/* padding-bottom: 1rem; */
font-size: 0.8rem;
font-weight: 200;
border-spacing: 0;
table-layout: fixed;
padding: 1rem 0;
/* padding-top: 1rem; */
/* padding-bottom: 1rem; */
}
#completions > div {
max-height: calc(20 * var(--option-height));
min-height: calc(10 * var(--option-height));
max-height: calc(20 * var(--option-height));
min-height: calc(10 * var(--option-height));
}
/* COMPLETIONS */
#completions {
--option-height: 1.4em;
color: var(--tridactyl-fg);
background: var(--tridactyl-bg);
display: inline-block;
font-size: unset;
font-weight: 200;
overflow: hidden;
width: 100%;
border-top: unset;
order: 2;
--option-height: 1.4em;
color: var(--tridactyl-fg);
background: var(--tridactyl-bg);
display: inline-block;
font-size: unset;
font-weight: 200;
overflow: hidden;
width: 100%;
border-top: unset;
order: 2;
}
/* Olie doesn't know how CSS inheritance works */
#completions .HistoryCompletionSource {
max-height: unset;
min-height: unset;
max-height: unset;
min-height: unset;
}
#completions .HistoryCompletionSource table {
width: 100%;
font-size: 9pt;
border-spacing: 0;
table-layout: fixed;
width: 100%;
font-size: 9pt;
border-spacing: 0;
table-layout: fixed;
}
/* redundancy 2: redundancy 2: more redundancy */
#completions .BmarkCompletionSource {
max-height: unset;
min-height: unset;
max-height: unset;
min-height: unset;
}
#completions table tr td.prefix,#completions table tr td.privatewindow,#completions table tr td.container,#completions table tr td.icon {
display: none;
#completions table tr td.prefix,
#completions table tr td.privatewindow,
#completions table tr td.container,
#completions table tr td.icon {
display: none;
}
#completions .BufferCompletionSource table {
width: unset;
font-size: unset;
border-spacing: unset;
table-layout: unset;
width: unset;
font-size: unset;
border-spacing: unset;
table-layout: unset;
}
#completions table tr .title, #completions table tr td.excmd {
width: 50%;
padding-left: 1rem;
color: var(--blue);
#completions table tr .title,
#completions table tr td.excmd {
width: 50%;
padding-left: 1rem;
color: var(--blue);
}
#completions table tr .content, #completions table tr td.documentation {
#completions table tr .content,
#completions table tr td.documentation {
padding-right: 1rem;
}
#completions table tr {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
#completions table tr td {
padding: .5rem 0;
padding: 0.5rem 0;
}
#completions .sectionHeader {
background: unset;
font-weight: bold;
border-bottom: unset;
padding: 1rem 1rem 0 !important;
padding-left: unset;
padding-bottom: 0.2rem;
color: var(--peach);
background: unset;
font-weight: bold;
border-bottom: unset;
padding: 1rem 1rem 0 !important;
padding-left: unset;
padding-bottom: 0.2rem;
color: var(--peach);
}
#cmdline_iframe {
position: fixed !important;
bottom: unset;
top: 25% !important;
left: 10% !important;
z-index: 2147483647 !important;
width: 80% !important;
box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 20px !important;
position: fixed !important;
bottom: unset;
top: 25% !important;
left: 10% !important;
z-index: 2147483647 !important;
width: 80% !important;
box-shadow: rgba(0, 0, 0, 0.5) 0px 0px 20px !important;
}
.TridactylStatusIndicator {
position: fixed !important;
bottom: 0 !important;
background: var(--tridactyl-bg) !important;
border: unset !important;
border: 1px var(--purple) solid !important;
font-size: 12pt !important;
/*font-weight: 200 !important;*/
padding: 0.8ex !important;
position: fixed !important;
bottom: 0 !important;
background: var(--tridactyl-bg) !important;
border: unset !important;
border: 1px var(--purple) solid !important;
font-size: 12pt !important;
/*font-weight: 200 !important;*/
padding: 0.8ex !important;
}
#completions .focused {
background: var(--currentline);
/* color: var(--blue); */
font-weight: bold;
background: var(--currentline);
/* color: var(--blue); */
font-weight: bold;
}
#completions .focused td.title {
color: var(--pink);
}
#completions .focused .url {
background: var(--currentline);
color: var(--green);
background: var(--currentline);
color: var(--green);
}

View file

@ -1,19 +1,24 @@
/* * Do not remove the @namespace line -- it's required for correct functioning */
/* set default namespace to XUL */
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
/* Remove Back button when there's nothing to go Back to */
#back-button[disabled="true"] { display: none; }
#back-button[disabled="true"] {
display: none;
}
/* Remove Forward button when there's nothing to go Forward to */
#forward-button[disabled="true"] { display: none; }
#forward-button[disabled="true"] {
display: none;
}
/* Remove Home button (never use it) */
#home-button { display: none; }
#home-button {
display: none;
}
.titlebar-spacer {
display: none !important;
display: none !important;
}
/* Remove import bookmarks button */
@ -27,7 +32,8 @@ toolbarbutton.bookmark-item:not(.subviewbutton) {
}
/* Remove whitespace in toolbar */
#nav-bar toolbarpaletteitem[id^="wrapper-customizableui-special-spring"], #nav-bar toolbarspring {
#nav-bar toolbarpaletteitem[id^="wrapper-customizableui-special-spring"],
#nav-bar toolbarspring {
display: none;
}
@ -53,8 +59,8 @@ toolbarbutton.bookmark-item:not(.subviewbutton) {
}
.titlebar-restore {
appearance: auto !important;
-moz-default-appearance: -moz-window-button-restore !important;
appearance: auto !important;
-moz-default-appearance: -moz-window-button-restore !important;
}
.titlebar-close {

View file

@ -3,7 +3,6 @@
border-radius: 0;
min-height: 0;
font-family: Fira Code;
}
window#waybar {
@ -23,7 +22,8 @@ window#waybar {
box-shadow: inset 0 -5px red;
}
#workspaces button.focused, #workspaces button:hover {
#workspaces button.focused,
#workspaces button:hover {
box-shadow: inset 0 -5px white;
}
@ -39,7 +39,16 @@ window#waybar {
/* color: @unfocused_borders; */
}
#pulseaudio, #network, #cpu, #memory, #disk, #temperature, #battery, #language, #clock, #tray {
#pulseaudio,
#network,
#cpu,
#memory,
#disk,
#temperature,
#battery,
#language,
#clock,
#tray {
margin: 0 4px;
padding: 0 2px;
}

View file

@ -1,26 +0,0 @@
{pkgs, ...}: {
# $ nix-env -qaP | grep wget
environment.systemPackages =
[ pkgs.vim
];
# # Auto upgrade nix package and the daemon service.
# services.nix-daemon.enable = true;
# # nix.package = pkgs.nix;
# # Necessary for using flakes on this system.
# nix.settings.experimental-features = "nix-command flakes";
# # Create /etc/zshrc that loads the nix-darwin environment.
# programs.zsh.enable = true; # default shell on catalina
# # programs.fish.enable = true;
# # # Set Git commit hash for darwin-version.
# # system.configurationRevision = self.rev or self.dirtyRev or null;
# # Used for backwards compatibility, please read the changelog before changing.
# # $ darwin-rebuild changelog
# system.stateVersion = 4;
# # The platform the configuration will be used on.
}

View file

@ -4,83 +4,154 @@
@import url("cgit.css");
* { line-height: 1.25em; }
* {
line-height: 1.25em;
}
div#cgit {
max-width: 117ch;
margin: auto;
font-family: monospace;
-moz-tab-size: 4;
tab-size: 4;
max-width: 117ch;
margin: auto;
font-family: monospace;
-moz-tab-size: 4;
tab-size: 4;
}
div#cgit table#header td.sub {
border-top: none;
border-top: none;
}
div#cgit table#header td.sub.right {
padding-right: 1em;
padding-right: 1em;
}
div#cgit table.tabs {
border-bottom: none;
border-bottom: none;
}
div#cgit div.content {
border-bottom: none;
border-bottom: none;
}
div#cgit table.list th a {
color: inherit;
color: inherit;
}
div#cgit table.list tr:nth-child(even) {
background: inherit;
background: inherit;
}
div#cgit table.list tr:hover {
background: inherit;
background: inherit;
}
div#cgit table.list tr.nohover-highlight:hover:nth-child(even) {
background: inherit;
background: inherit;
}
div#cgit table.blob td.linenumbers a:target {
color: goldenrod;
text-decoration: underline;
outline: none;
color: goldenrod;
text-decoration: underline;
outline: none;
}
div#cgit div#summary {
max-width: 80ch;
max-width: 80ch;
}
/* for hilex(1) */
div#cgit pre .Ke { color: dimgray; }
div#cgit pre .Ma { color: green; }
div#cgit pre .Co { color: navy; }
div#cgit pre .St { color: teal; }
div#cgit pre .Fo { color: teal; font-weight: bold; }
div#cgit pre .Su { color: olive; }
div#cgit pre .Ke {
color: dimgray;
}
div#cgit pre .Ma {
color: green;
}
div#cgit pre .Co {
color: navy;
}
div#cgit pre .St {
color: teal;
}
div#cgit pre .Fo {
color: teal;
font-weight: bold;
}
div#cgit pre .Su {
color: olive;
}
/* for htagml(1) */
div#cgit pre a.tag { color: inherit; text-decoration: underline; }
div#cgit pre a.tag:target { color: goldenrod; outline: none; }
div#cgit pre a.tag {
color: inherit;
text-decoration: underline;
}
div#cgit pre a.tag:target {
color: goldenrod;
outline: none;
}
/* for mandoc(1) */
table.head, table.foot { width: 100%; }
td.head-rtitle, td.foot-os { text-align: right; }
td.head-vol { text-align: center; }
div.Pp { margin: 1ex 0ex; }
div.Nd, div.Bf, div.Op { display: inline; }
span.Pa, span.Ad { font-style: italic; }
span.Ms { font-weight: bold; }
dl.Bl-diag > dt { font-weight: bold; }
code.Nm, code.Fl, code.Cm, code.Ic, code.In, code.Fd, code.Fn,
code.Cd { font-weight: bold; font-family: inherit; }
table.head,
table.foot {
width: 100%;
}
td.head-rtitle,
td.foot-os {
text-align: right;
}
td.head-vol {
text-align: center;
}
div.Pp {
margin: 1ex 0ex;
}
div.Nd,
div.Bf,
div.Op {
display: inline;
}
span.Pa,
span.Ad {
font-style: italic;
}
span.Ms {
font-weight: bold;
}
dl.Bl-diag > dt {
font-weight: bold;
}
code.Nm,
code.Fl,
code.Cm,
code.Ic,
code.In,
code.Fd,
code.Fn,
code.Cd {
font-weight: bold;
font-family: inherit;
}
h1.Sh { font-size: 1.5em; }
table.Nm td:first-child { padding-right: 1ch; }
code.Fl { white-space: nowrap; }
span.RsT { font-style: italic; }
dl.Bl-tag:not(.Bl-compact) > dt { margin-top: 1em; }
ul.Bl-bullet:not(.Bl-compact) > li { margin-top: 1em; }
div.Bd-indent { margin-left: 4ch; }
table.Bl-column { width: 100%; }
table.foot { margin-top: 1em; }
h1.Sh {
font-size: 1.5em;
}
table.Nm td:first-child {
padding-right: 1ch;
}
code.Fl {
white-space: nowrap;
}
span.RsT {
font-style: italic;
}
dl.Bl-tag:not(.Bl-compact) > dt {
margin-top: 1em;
}
ul.Bl-bullet:not(.Bl-compact) > li {
margin-top: 1em;
}
div.Bd-indent {
margin-left: 4ch;
}
table.Bl-column {
width: 100%;
}
table.foot {
margin-top: 1em;
}
div#cgit a.permalink { color: inherit; }
div#cgit a.permalink {
color: inherit;
}

View file

@ -1,9 +1,9 @@
host=${1-picard}
nixos-rebuild switch \
--flake ".#${host}" \
--target-host "root@${host}.fleet" \
--build-host "root@${host}.fleet" \
--option warn-dirty false \
--fast \
"${@:2}"
--flake ".#${host}" \
--target-host "root@${host}.fleet" \
--build-host "root@${host}.fleet" \
--option warn-dirty false \
--fast \
"${@:2}"

View file

@ -13,24 +13,21 @@ class MaildirHandler(FileSystemEventHandler):
def on_created(self, event):
if not event.is_directory:
print(f"New email found: {event.src_path}")
with open(event.src_path, 'r') as email_file:
with open(event.src_path, "r") as email_file:
msg = message_from_file(email_file)
print(f'{msg["From"]}: {msg["Subject"]}')
self.notifier.send(
title=msg["From"],
message=msg["Subject"],
sound=DEFAULT_SOUND,
icon=Icon(name="mail-message-new"),
timeout=20
title=msg["From"],
message=msg["Subject"],
sound=DEFAULT_SOUND,
icon=Icon(name="mail-message-new"),
timeout=20,
)
if __name__ == "__main__":
maildir_new = os.path.expanduser(os.environ.get("INBOX_NEW"))
notifier = DesktopNotifierSync(
app_name="Mails",
notification_limit=10
)
notifier = DesktopNotifierSync(app_name="Mails", notification_limit=10)
event_handler = MaildirHandler(notifier)
observer = Observer()

View file

@ -4,18 +4,20 @@ from pyforgejo.models.create_status_option import CreateStatusOption
import json
from os import environ
client = AuthenticatedClient(base_url=environ["GITHUB_API_URL"], token=environ["GITHUB_TOKEN"])
client = AuthenticatedClient(
base_url=environ["GITHUB_API_URL"], token=environ["GITHUB_TOKEN"]
)
with open('result.json', 'r') as file:
with open("result.json", "r") as file:
data = json.load(file)
print("Reporting statuses acording to the following result.json")
print(json.dumps(data, indent=2))
for result in data['results']:
attr = result['attr']
success = result['success']
type = result['type']
for result in data["results"]:
attr = result["attr"]
success = result["success"]
type = result["type"]
print(f"Report status success={success} for {type} {attr}")
response = repo_create_status.sync_detailed(
owner="aciceri",
@ -26,8 +28,10 @@ for result in data['results']:
context=type,
description=attr,
target_url="https://git.aciceri.dev", # FIXME
state="success" if success else "failure" # may be pending,success,failure,error_message
)
state=(
"success" if success else "failure"
), # may be pending,success,failure,error_message
),
)
print("Done reporting statuses")

View file

@ -66,8 +66,19 @@ class GarminCollector:
def collect(self):
try:
body = self.api.get_daily_weigh_ins(today.isoformat())["totalAverage"]
metric_gauge = GaugeMetricFamily("body_composition", "Body composition and weight", labels=["metric"])
for k in ["weight", "bmi", "bodyFat", "bodyWater", "boneMass", "muscleMass", "physiqueRating", "visceralFat"]:
metric_gauge = GaugeMetricFamily(
"body_composition", "Body composition and weight", labels=["metric"]
)
for k in [
"weight",
"bmi",
"bodyFat",
"bodyWater",
"boneMass",
"muscleMass",
"physiqueRating",
"visceralFat",
]:
metric_gauge.add_metric([k], body[k])
except Exception as e:
print(f"Something went wrong while fetching body composition data\n{e}")
@ -79,4 +90,4 @@ if __name__ == "__main__":
registry = CollectorRegistry()
registry.register(GarminCollector())
push_to_gateway(gateway_address, job='garmin', registry=registry)
push_to_gateway(gateway_address, job="garmin", registry=registry)

View file

@ -653,25 +653,11 @@
},
"targets": {
"default": {
"aiohttp": [
"aiosignal",
"attrs",
"frozenlist",
"multidict",
"yarl"
],
"aiosignal": [
"frozenlist"
],
"alembic": [
"mako",
"sqlalchemy",
"typing-extensions"
],
"aiohttp": ["aiosignal", "attrs", "frozenlist", "multidict", "yarl"],
"aiosignal": ["frozenlist"],
"alembic": ["mako", "sqlalchemy", "typing-extensions"],
"annotated-types": [],
"ansible": [
"ansible-core"
],
"ansible": ["ansible-core"],
"ansible-core": [
"cryptography",
"jinja2",
@ -679,45 +665,27 @@
"pyyaml",
"resolvelib"
],
"anyio": [
"idna",
"sniffio"
],
"anyio": ["idna", "sniffio"],
"argcomplete": [],
"attrs": [],
"beautifulsoup4": [
"soupsieve"
],
"build": [
"packaging",
"pyproject-hooks"
],
"beautifulsoup4": ["soupsieve"],
"build": ["packaging", "pyproject-hooks"],
"certifi": [],
"cffi": [
"pycparser"
],
"cffi": ["pycparser"],
"chardet": [],
"charset-normalizer": [],
"click": [],
"colorclass": [],
"compressed-rtf": [],
"cryptography": [
"cffi"
],
"dataclasses-json": [
"marshmallow",
"typing-inspect"
],
"cryptography": ["cffi"],
"dataclasses-json": ["marshmallow", "typing-inspect"],
"distro": [],
"dnspython": [],
"docutils": [],
"docx2txt": [],
"easygui": [],
"ebcdic": [],
"email-validator": [
"dnspython",
"idna"
],
"email-validator": ["dnspython", "idna"],
"et-xmlfile": [],
"extract-msg": [
"beautifulsoup4",
@ -731,25 +699,12 @@
"frozenlist": [],
"greenlet": [],
"h11": [],
"httpcore": [
"certifi",
"h11"
],
"httpx": [
"anyio",
"certifi",
"httpcore",
"idna",
"sniffio"
],
"httpcore": ["certifi", "h11"],
"httpx": ["anyio", "certifi", "httpcore", "idna", "sniffio"],
"idna": [],
"iniconfig": [],
"jinja2": [
"markupsafe"
],
"jsonpatch": [
"jsonpointer"
],
"jinja2": ["markupsafe"],
"jsonpatch": ["jsonpointer"],
"jsonpointer": [],
"langchain": [
"aiohttp",
@ -785,42 +740,21 @@
"pyyaml",
"tenacity"
],
"langchain-openai": [
"langchain-core",
"openai",
"tiktoken"
],
"langchain-text-splitters": [
"langchain-core"
],
"langsmith": [
"orjson",
"pydantic",
"requests"
],
"langchain-openai": ["langchain-core", "openai", "tiktoken"],
"langchain-text-splitters": ["langchain-core"],
"langsmith": ["orjson", "pydantic", "requests"],
"lark": [],
"lxml": [],
"mako": [
"markupsafe"
],
"markdown-it-py": [
"mdurl"
],
"mako": ["markupsafe"],
"markdown-it-py": ["mdurl"],
"markupsafe": [],
"marshmallow": [
"packaging"
],
"marshmallow": ["packaging"],
"mdurl": [],
"msoffcrypto-tool": [
"cryptography",
"olefile"
],
"msoffcrypto-tool": ["cryptography", "olefile"],
"multidict": [],
"mypy-extensions": [],
"names": [],
"numexpr": [
"numpy"
],
"numexpr": ["numpy"],
"numpy": [],
"olefile": [],
"oletools": [
@ -840,16 +774,11 @@
"tqdm",
"typing-extensions"
],
"openpyxl": [
"et-xmlfile"
],
"openpyxl": ["et-xmlfile"],
"orjson": [],
"packaging": [],
"pcodedmp": [],
"pdfminer-six": [
"charset-normalizer",
"cryptography"
],
"pdfminer-six": ["charset-normalizer", "cryptography"],
"pillow": [],
"pip": [],
"pip-tools": [
@ -861,68 +790,31 @@
"wheel"
],
"pluggy": [],
"prompt-toolkit": [
"wcwidth"
],
"prompt-toolkit": ["wcwidth"],
"pycparser": [],
"pydantic": [
"annotated-types",
"pydantic-core",
"typing-extensions"
],
"pydantic-core": [
"typing-extensions"
],
"pydantic": ["annotated-types", "pydantic-core", "typing-extensions"],
"pydantic-core": ["typing-extensions"],
"pygments": [],
"pyparsing": [],
"pyperclip": [],
"pyproject-hooks": [],
"pytest": [
"iniconfig",
"packaging",
"pluggy"
],
"pytest-datadir": [
"pytest"
],
"python-frontmatter": [
"pyyaml"
],
"python-pptx": [
"lxml",
"pillow",
"xlsxwriter"
],
"pytest": ["iniconfig", "packaging", "pluggy"],
"pytest-datadir": ["pytest"],
"python-frontmatter": ["pyyaml"],
"python-pptx": ["lxml", "pillow", "xlsxwriter"],
"pyyaml": [],
"red-black-tree-mod": [],
"regex": [],
"requests": [
"certifi",
"charset-normalizer",
"idna",
"urllib3"
],
"requests": ["certifi", "charset-normalizer", "idna", "urllib3"],
"resolvelib": [],
"rich": [
"markdown-it-py",
"pygments"
],
"rtfde": [
"lark",
"oletools"
],
"rich": ["markdown-it-py", "pygments"],
"rtfde": ["lark", "oletools"],
"setuptools": [],
"six": [],
"sniffio": [],
"soupsieve": [],
"speechrecognition": [
"requests",
"typing-extensions"
],
"sqlalchemy": [
"greenlet",
"typing-extensions"
],
"speechrecognition": ["requests", "typing-extensions"],
"sqlalchemy": ["greenlet", "typing-extensions"],
"tenacity": [],
"textract": [
"argcomplete",
@ -937,26 +829,17 @@
"speechrecognition",
"xlrd"
],
"tiktoken": [
"regex",
"requests"
],
"tiktoken": ["regex", "requests"],
"tqdm": [],
"typing-extensions": [],
"typing-inspect": [
"mypy-extensions",
"typing-extensions"
],
"typing-inspect": ["mypy-extensions", "typing-extensions"],
"tzlocal": [],
"urllib3": [],
"wcwidth": [],
"wheel": [],
"xlrd": [],
"xlsxwriter": [],
"yarl": [
"idna",
"multidict"
]
"yarl": ["idna", "multidict"]
},
"dev": {}
}