Forum teuk.org

TeuK  Admin

Member since 2025-12-22 09:24:20Z · 6mo ago

Total posts: 151  ·  Total topics: 148


Topics (page 11/15)

← PrevPage 11 / 15Next →

Posts (page 14/16)

1. DBD::MariaDB Migration

The database driver was migrated from the legacy DBD::mysql to DBD::MariaDB throughout the entire codebase.

All DSN strings were updated from DBI:mysql: to DBI:MariaDB:, with host forced to 127.0.0.1 (MariaDB refuses port-based connections when `localho…

A new cleanup and hardening pass just landed in mediabot_v3.

Commit:
⚡ Stupefy fuzzy matches: unified hostmask magic and taught Mediabot stricter SQL spells

This round was focused on reliability rather than flashy features.

What changed

  • unified hostmask matching logic in…

Just pushed a small cleanup commit on mediabot_v3:

🪄 Mischief managed: banished stray SELECT * queries and taught Mediabot cleaner SQL spells

This pass removes a bunch of leftover SELECT * queries and replaces them with explicit column lists where it made sense. The goal is simple: cl…

Overview

This session tackled one of the oldest forms of technical debt in the codebase: implicit SQL JOINs. Since Mediabot’s origins in 2007, many queries were written in the traditional comma-separated FROM A, B WHERE A.id = B.id style. Modern SQL has preferred explicit JOIN ... ON synta…

Overview

This session focused on a methodical bottom-up audit of all 32 Perl modules in the stack. No new features — just making the existing code more correct, more defensive, and less likely to silently misbehave under load or after a connection drop.

Three distinct categories of issues w…

Why This Matters

A codebase that’s been evolving since 2007 accumulates technical debt. Some of it is cosmetic. Some of it is a ticking clock. After a methodical audit of all 32 Perl modules, five categories of real issues surfaced — ranging from broken database calls to latent shell injection…

Mediabot v3 — Development Journal, March 2026


A Monster in the Making

Every long-lived project has one: a file that started small and quietly grew into something terrifying. For Mediabot v3, that file was Mediabot.pm — a 15,530-line monolith containing everything: IRC dispatc…

Background

Mediabot v3 has been using Mediabot::Context and Mediabot::Command objects for a while, but their adoption was partial and inconsistent. Two dispatch functions — mbCommandPublic and mbCommandPrivate — were mixing three different coding styles simultaneously: legacy `($sel…

Building a portable Windrop environment under Cygwin

Overview

This guide describes a reproducible method for building a portable Windrop environment under Cygwin around the following components:

  • OpenSSL 3.6.1
  • Tcl 9.0.3
  • TclTLS 2.0
  • tcllib 2.0
  • Eggdrop 1.10.1
  • optional addi…

Introduction

If you still run or maintain Eggdrop bots in 2026, chances are you are dealing with more than just an IRC bot binary. You are also dealing with an ecosystem: Tcl itself, TLS support, auxiliary Tcl packages, legacy scripts, and all the small runtime assumptions that tend to accumul…

← PrevPage 14 / 16Next →