Changes for version 2.1126 - 2026-10-18
- oEdtk::DBAdmin: new caller parameter force_copy (true) forces the parsed PostgreSQL COPY path ahead of pg_copy_staging, burst_mo and EDTK_DB_BURST_MO, so an operator can bypass the ELT staging path before a large import starts. The decision reason is logged as 'force_copy => 1'. The packaged tracker exposes it as --forceCopy for --csvInsert, --csvDistrib and --csvIdCheck.
- POD: EDTK_DB_BURST_MO now documents the shipped 50 MiB default; the old '0 is the shipped value' claim was stale.
- tests: t/30_dbadmin_pure.t pins the force_copy precedence without a database, and t/int/d21_burst_threshold.t gains a PostgreSQL facet proving the COPY path is taken even when pg_copy_staging and burst_mo would select ELT.
- oEdtk::DBAdmin: the edtk_admin action duration is now truncated to whole seconds through the new _elapsed_seconds helper. DBAdmin imports time() from Time::HiRes, so the raw time - $time delta was fractional and PostgreSQL rejected it on the integer column edtk_admin.ed_action_duration, leaving the action open in START. The three update sites (acheck_request_for_db, acheck_db_admin_on_connect and _db_with_lock) go through the helper; t/30_dbadmin_pure.t pins it without a database.
- All modules of the oEdtk package are realigned on the package version 2.1126; the frozen duplicate lib/oEdtk/logger2.pm follows, so its sha256 pin in t/int/67_logger_normalization.t is re-baselined.
Documentation
Modules
A module for industrial printing processing
address field: trim, drop accents, uppercase
read the oEdtk configuration (edtk.ini)
delegate to the oEUser document-type typology
oEdtk database administration, schema upkeep and bulk CSV loading
date field: YYYYMMDD to DD/MM/YYYY
INI-backed translation dictionary
delegate to the oEUser dissemination-plan client
abstract base class for emitted documents
inject documents into the ECM and stamp their mailed date
electronic document management output: index files and archive transfer
delegate to the oEUser e-mailing client
plug corporate extensions into the generic oEdtk without a registry
fixed-point numeric field
turn fatal errors into an email
abstract base class for fixed-width record fields
make every document of a CSV index span an even number of pages
validate IBAN and BIC identifiers
delegate to the oEUser Infinite record import
delegate to the oEUser Keycloak client
build the LaTeX index of an edtk document
core helpers for the oEdtk document pipeline
send a simple notification email
shared HTTP transport settings for the service clients
Outmngr index document (CSV lines)
output management for printed document batches
a fixed-width record made of typed fields
stream reader and dispatcher over an Infinite flux
read a value out of nested data with a key path
orchestrate a composition run: LaTeX, post-processing and output
driver-neutral database schema introspection
signed amount field (Infinite encoding)
Helper module for parsing printer spool files
concrete LaTeX document emitter
a single LaTeX tag
object-oriented production tracking
legacy warn-based production tracking
small one-off utility helpers
generic text, index, date and tracking helpers
parse and validate XML documents against their DTD
delegate to oEdtk::XML::DTD
the default Cameleon XML reader
generic XML reader and schema verifier
validate an XML file against an XSD schema
XML::XPath subclass returning plain string values
legacy COBOL descriptor helpers
helpers for running an application in the development environment
build paginated Excel workbooks from tabular data
the oEdtk diagnostic logger
production tracking: configuration, environment and insert
simple terminal screens for the oEdtk launcher
Provides
in lib/oEdtk/logger2.pm