1.235 2026-02-16 ================ [Quiq::Assert] * isDate(): Prüfmethode hinzugefügt [Quiq::KositValidator] * Klasse hinzugefügt [Quiq::Mustang] * validate(): Doku ergänzt, Logging verbessert [Quiq::Path] * mimeTypeByExtension(): Methode hinzugefügt * partonizeDir(): Methode hinzugefügt [Quiq::StreamServe::Block] * concat(): Berücksichtigung von Datums-Nullwert [Quiq::Web::Navigation] * Direktive navFocus hinzugefügt [Quiq::Xml] * Doku korrigiert [Quiq::Zugferd] * Platzhalter in EN16931-Template ergänzt * Business-Terms ergänzt * createTemplate(): Methode hinzugefügt * Rechtsbegründende Anlagen ergänzt [Quiq::Zugferd::Entity::Anhang] * Klasse hinzugefügt [Quiq::Zugferd::Entity::Kaeufer] * Attribut anhaenge hinzugefügt 1.234 2026-01-10 ================ [Quiq::Path] * partionizeDir(): Methode hinzugefügt [Quiq::Zugferd] * createTemplate(): Methode hinzugefügt 1.233 2025-12-22 ================ [Quiq::Smb::Client] * Konfiguration hinzugefügt [Quiq::StreamServe::Block] * getFirst(): Übergehe nicht-existente Attribute [Quiq::StreamServe::Stream] * lookup(): Methode hinzugefügt * lookupHeader(): Methode hinzugefügt [Quiq::Zugferd] * Doku hinzugefügt * Template erweitert [Quiq::Zugferd::Entity::Position] * Zu/Abschläge ergänzt [Quiq::Zugferd::Entity::Rechnung] * addFreitext(): Methode hinzugefügt [Quiq::Zugferd::Entity::Verkäufer] * Auftragsreferenz entfernt * Kontaktdaten hinzugefügt [Quiq::Zugferd::Entity::ZuAbschlagPosition] * Klasse hinzugefügt [Quiq::Zugferd::Tree] * reduceTree(): Returnwert (Referenz auf Baum) hinzugefügt [Quiq::Exit] * check(): ^C wird toleriert [Quiq::Mustang] * new(): Option -javaDir (Pfad zum Programm C{java}) hinzugefügt [Quiq::Path] * dir(): Alias parent() hinzugefügt [Quiq::Tree] * leafPaths(): Doku um Beispiel ergänzt [Quiq::Zugferd] * combine(): Anhang ohne Pfad ergänzt * showPaths(): Methode hinzugefügt * toXml(): um zusätzliche Business Terms erweitert 1.232 2025-10-20 ================ [Quiq::DirHandle] * Doku ergänzt [Quiq::Eog] * moveToEnd(): Methode hinzugefügt [Quiq::FileHandle] * captureStderr(): verbessert [Quiq::Hash] * validate() in validateKeys() umbenannt [Quiq::Logger] * write(): Meldung verbessert [Quiq::Mustang] * validate(): verbessert * getResult(): verbessert * visualize(): verbessert [Quiq::Option] * Exception-Text verbessert [Quiq::Path] * copy(): Option -log hinzugefügt * copyToDir(): Option -log hinzugefügt [Quiq::StreamServe::Block] * concat(): Methode hinzugefügt * getFirst(): Methode hinzugefügt [Quiq::StreamServe::Stream] * numberOfStreams(): Methode hinzugefügt [Quiq::String] * concat(): Methode hinzugefügt [Quiq::Zugferd] * resolvePlaceholders(): Debugmeldungen verbessert * en16931/template.xml: Business Terms ergänzt * business-term.csv: Ergänzug vorgenommen [Quiq::Zugferd_::Entity::Kaeufer] * Attribute auftragsreferenz, umsatzsteuerId hinzugefügt [Quiq::Zugferd_::Entity::Rechnung] * Attribut bestellnummer entfernt [Quiq::Zugferd_::Entity::Verkaeufer] * Attribut auftragsreferenz hinzugefügt 1.231 2025-09-21 ================ [Quiq::StreamServe::Block] * concat(): Methode hinzugefügt *getFirst(): Methode hinzugefügt [Quiq::StreamServe::Stream] * numberOfStreams(): Methode hinzugefügt [Quiq::Zugferd::Entity::Kaeufer] * Attribute auftragsreferenz, umsatzsteuerId hinzugefügt [Quiq::Zugferd::Entity::Rechnung] * Attribut bestellnummer entfernt [Quiq::Zugferd::Entity::Verkaeufer] * Attribute auftragsreferenz hinzugefügt [Quiq::DirHandle] * Doku bearbeitet [Quiq::Eog] * moveToEnd(): Methode hinzugefügt [Quiq::FileHandle] * captureStderr(): Code verbessert [Quiq::Hash] * validate(): in validateKeys() umbenannt [Quiq::Logger] * Kosmetik [Quiq::Mustang] * diverse Verbesserungen [Quiq::Option] * Kosmetik [Quiq::Path] * reduceToEnvVar(): Methode hinzugefügt [Quiq::String] * concat(): Methode hnzugefügt [Quiq::Zugferd] * resolvePlaceholders(): Methode überarbeitet 1.230 2025-08-30 ================ [Quiq::AnsiColor] * Doku bearbeitet [Quiq::Config] * new(): Doku bearbeitet, Fehlermeldung verbessert [Quiq::Hash] * setDeep(): verbessert [Quiq::Mustang] * getResult(): Format html hinzugefügt [Quiq::Path] * getFirst(): Exception verbessert [Quiq::Tree] * blessNodes(): Behandlung von Skalarreferenzen ergänzt [Quiq::Url] * queryEncode(): Option -append hinzugefügt [Quiq::Mustang] * business-rule.txt: Schreibung Business Test korrigiert [Quiq::Sdoc::Producer] * link(), linkDefs(): Attribut target hinzugefügt * segment(): Metode hinzugefügt [Quiq::StreamServe::Block] * add(), content(): Methoden hinzugefügt * get(): Option sloppy hinzugefügt [Quiq::StreamServe::Stream] * new(): Optionen -debug und -ignore hinzugefügt * split(): Doku hinzugefügt [Quiq::Test::Class] * Doku ergänzt [Quiq::Zugferd] * Doku bearbeitet * toXml(): Methode hinzugefügt * en16941/template.xml: Platzhalter hinzugefügt * Business-group.csv: ergänzt * Business-term.csv: ergänzt [Quiq::Zugferd::Entity::Rechnung] * Klasse hinzugefügt [Quiq::Zugferd::Entity::Verkaufer] * Klasse hinzugefügt [Quiq::Zugferd::Entity::Kaeufer] * Klasse hinzugefügt [Quiq::Zugferd::Entity::Empfaenger] * Klasse hinzugefügt [Quiq::Zugferd::Entity::Tree] * processSubTree(): Methode hinzugefügt 1.229 2025-07-12 ================ [Quiq::Mustang] * business-rule.txt: Bezeichner für Bussiness Terms korrigiert * getResult(). Methode überarbeitet [Quiq::Path] * getFirst(): Fehlermeldung korrigiert [Quiq::Sdoc::Producer] * link(), linkDefs(): Attribut target hinzugefügt * segment(): Methode hinzugefügt [Quiq::StreamServe::Stream] * Doku erweitert [Quiq::Test::Class] * Doku erweitert [Quiq::Tree] * blessNodes(): Skalare Referenzen werden durch ihren skalaren Wert aufgelöst [Quiq::Zugferd] * Template EN16931 erweitert * business-group.csv: erweitert * business-term.csv: erweitert * processSubTree(): Doku verbessert [Quiq::Zugferd::Tree] * processSubTree(): Methode hinzugefügt 1.228 2025-06-22 ================ [Quiq::Html::FrameSet} * Klasse hinzugefügt [Quiq::Mustang] * Geschäftsregeln (business rules) hinzugefügt * getResult(): Repräsentation 'html' hinzugefügt * visualize(): HTMl-Visualisierung um Angabe der Business Terms ergänzt * br(): Methode hinzugefügt * mustangDir(): Methode hinzugefügt [Quiq::PerlModule]: * moduleDir(): Methode hinzugefügt [Quiq::Test::Class] * Doku ergänzt [Quiq::Zugferd] * Klasse reimplementiert 1.227 2025-06-15 ================ [Quiq::Hash] * new(): Wenn Instntiierung via Referenz, den Hash unlocken * setDeep(): an die Logik von getDeep() angepasst [Quiq::Path] * getFirst(): Methode hinzugefügt * globExists(): Methode hinzugefügt [Quiq::StreamServe::Block] * Klasse hinzugefügt [Quiq::StreamServe::Stream] * Klasse überarbeitet [Quiq::Tree] *blessNodes(): Methode hinzugefügt [Quiq::Zugferd] * Neue Struktur für die statischen Dateien wie XSDs [Quiq::Zugferd2] * Überarbeitete Fassung der Klasse Quiq::Zugferd (wird diese zukünftig ersetzen) [Quiq::Zugferd::Tree] * Klasse überarbeitet 1.226 2025-05-25 ================ [Quiq::Eog] * transferImages(): Option -addExtension modifiziert [Quiq::Formatter] * readableNumber(): Parameterübergabe verbessert [Quiq::Mustang] * Klasse hinzugefügt [Quiq::Object] * throw(): Option -error hinzugefügt [Quiq::Path]: * moveToDateSubdir(): Option -dirSuffix hinzugefügt * reduceToTilde(): Methode hinzugefügt * swap(): Methode hinzugefügt [Quiq::Progress] * percent(): Nachkommastelle hinzugefügt [Quiq::Shell] * exec(): Option -log hinzugefügt [Quiq::StreamServe::Stream] * Klasse hinzugefügt [Quiq::Tree] * reduceTree(): Parameter $sub hinzugefügt [Quiq::Zugferd] * combine(): Methode hinzugefügt * xml(): Varianten verändert * Template EN16931 erweitert 1.225 2025-03-31 ================ [Quiq::Json] * Klasse hinzugefügt [Quiq::Json::Code] * Umbenannt von Quiq::Json [Quiq::Zugferd] * Template für Profil EN16931 ergänzt 1.224 2025-02-28 ================ [Quiq::Text::Generator] * Klasse hinzugefügt [Quiq::Zugferd] * ZUGFeRD-Profile hinzugefügt [Quiq::Zugferd::Tree] * Klasse hinzugefügt [Quiq::Debug] * showDiff(): Gib optional das Diff-Kommando aus [Quiq::DirHandle] * Fehlermeldungen nun auf Englisch [Quiq::Dumper] * dump(): Globale Setzung NoClassNames hnzugefügt [Quiq::Eog] * transferImages(): Ausgabe Anzahl Bilder hinzugefügt [Quiq::Hash] * getDeep(): um Array-Zugriff erweitert * setDeep(): Methode hinzugefügt [Quiq::Path] * write(): um optionale Logausgabe erweitert * stat(): Prüfung auf Pfadexistenz verbessert [Quiq::Tree] * Klasse substantiell verbessert [Quiq::Xml] * xmlToTree(): hinzugefügt [Quiq::Zugferd] * Klasse substantiell erweitert 1.223 2024-12-28 ================ [Quiq::Chrome] * Klasse hinzugefügt [Quiq::Debug] * showDiff(): Methode hinzugefügt [Quiq::Hash] * getDeep(): Methode hinzugefügt [Quiq::PhotoStorage] * add(): Option -removeName hinzugefügt * addAllByTime(): Option -removeName hinzugefügt [Quiq::Template] * removePlaceholders(): Methode hinzugefügt [Quiq::Terminal] * width(): Methode hinzugefügt * height(): Methode hinzugefügt [Quiq::Tree] * Klasse hinzugefügt [Quiq::Zugferd] * Klasse hinzugefügt 1.222 2024-11-16 ================ [Quiq::Path] * find(): Option -followSkip hinzugefügt [Quiq::UrlObj] * setQuery(): Objekt als Returnwert hinzugefügt [Quiq::Web::Navigation] * backWithParameters(): Methode hinzugefügt * prevWithParameters(): Methode hinzugefügt 1.221 2024-10-26 ================ [Quiq::Eog] * transferImages(): Option -addExtension hinzugefügt [Quiq::Path] * size(): Test auf Existenz der Datei hinzugefügt [Quiq::Xml] * Klasse hinzugefügt 1.220 2024-09-24 ================ [Quiq::Html::Tag] * Attribut "download" hinzugefügt [Quiq::Eog] * show(): Methode hinzugefügt [Eog::Stacktrace] * Doku bearbeitet 1.219 2024-08-21 ================ [Quiq::Css::Snippets] * Doku bearbeitet [Quiq::Debug] * findSubroutine(): Methode hinzugefügt 1.218 2024-07-07 ================ [Makefile.PL] * Net::IMAP::Simple zu den benötigten Modulen (PREREQ_PM) hinzugefügt 1.217 2024-07-04 ================ [Quiq:: Path] * delete(): rm-Option "--interactive=never" entfernt (da auf FreeBSD nicht bekannt) 1.216 2024-06-09 ================ [Quiq::Confluence::Client] * Doku bearbeitet * Methode send(): Exception-Information verbessert [Quiq::Database::Connection] * Methode createTable(): Option -insert hinzugefügt * Methode copyData(): Option -ignoreSourceTable hinzugefügt [Quiq::DestinationTree] * Testcode verbessert [Quiq::Eog] * Methode transferImages() verbessert [Quiq::Path] * Methode delete(): Option -sloppy hinzugefügt * Testcode verbessert [Quiq::Rsync] * Testcode verbessert 1.215 2024-03-28 ================ [Quiq::Confluence::Client] * getPage(), updatePage(): neuer REST API Url [Quiq::Database::Connection] * copyData(): Option -initialData hinzugefügt [Quiq::Hash] * asString(): Methode hinzugefügt [Quiq::Path] * absolute(): Tilde-Expansion hinzugefügt * numberBasePaths(): Prüfung auf korrekten Aufbau der Dateinamen hinzugefügt [Quiq::PhotoStorage] * add(): convert-Operation gegen ungewöhnliche Dateinamen geschützt [Quiq::Url] * encode(): nun wird auch + geschützt 1.214 2024-01-21 ================ [Quiq::Smb::Client] * put(): Methode hinzugefügt [Quiq::Eog] * Doku bearbeitet [Quiq::Hash] * keyVal(): Methode hinzugefügt [Quiq::Path] * moveToDateSubDir(): Methode hinzugefügt * numberBasePaths(): Behandlung von Verzeichnissen korrigiert [Quiq::PhotoStorage] * Speicherung von Doubletten ergänzt [Quiq::SQLite] * Doku bearbeitet 1.213 2023-11-19 ================ [Quiq::Array] * asString(): Alias asLine() hinzugefügt [Quiq::Cache] * Doku bearbeitet [Quiq::Object] * Doku bearbeitet [Quiq::Path] * read(): Option -sloppy hinzugefügt [Quiq::PhotoStorage] * add(): Behandlung von Dateiendung .gif ergänzt [Quiq::TeX::Code] * c(): Optionsverarbeitung mit -sloppy=>1 ergänzt [Quiq::Rsync] * exec(): an neue Version von File::Rsync angepasst 1.212 2023-08-18 ================ [Quiq::Converter] * germanMoneyAmount(): Methode hinzugefügt [Quiq::Path] * Doku-Fehler korrigiert [Quiq::PhotoStorage] * addAllByTime(): Methode hinzugefügt 1.211 2023-06-26 ================ [Quiq::Imap::Client] * Klasse hinzugefügt [Quiq::Eog] * transferImages(): Fehlerbehandlung hinzugefügt [Quiq::PhotoStorage] * Klasse hinzugefügt 1.210 2023-05-26 ================ [Quiq::Path] * mkdir(): liefert nun Pfad zurück * delete(): interaktive Rückfrage unterdrückt [Quiq::Shell] * DESTROY(): Time Summary nur, wenn Logging eingeschaltet ist [Quiq::Ssh] * exec(): Probleme mit Kommando-Encoding dokumentiert 1.209 2023-04-30 ================ [Quiq::DataStructure] Klasse hinzugefügt [Quiq::Logger] Klasse hinzugefügt 1.208 2023-03-26 ================ [Quiq::Database::Connection] * copyData(): Methode verbessert [Quiq::Path] * minFileNumber(): Methode hinzugefügt [Quiq::Shell] * new(): Option "sloppy" hinzugefügt [Quiq::Url] * new(): Auf Dummy-Objekt zu Aufruf der Klassenmethoden reduziert * href(): Methode hinzugefügt [Quiq::UrlObj] Klasse hinzugefügt [Quiq::Web::Navigation] * Klasse Quiq::UrlObj eingeführt 1.207 2023-02-04 ================ [Quiq::Confluence::Markup] * link(): Methode hinzugefügt * tableHeaderRow(): Methode hinzugefügt [Quiq::File::Image] * new(): UTF-8 Encoding des Pfads berücksichtigt [Quiq::Html::Widget::SelectMenu] * new(): Attribut optionPairs hinzugefügt [Quiq::Html::Pygments] * css(): Berücksichtigt, dass pygments UTF-8 liefert * html(): Berücksichtigt, dass pygments UTF-8 liefert [Quiq::Image] * findImages(): UTF-8 Encoding von Pfaden berücksichtigt * standardName(): außer Whitespace auch nicht-ASCII Zeichen in - wandeln [Quiq::TempDir] * new(): Option -parentDir hinzugefügt (Erzeugung in vorgegebenem Verzeichnis) [Quiq::TimeLapse::Directory] * new(): UTF-8 Encoding von Pfaden berücksichtigt [Quiq::Web::Navigation] * prevUrl(): Methode hinzugefügt 1.206 2023-01-01 ================ [Quiq::Converter] * protectRegexChars(): Methode hinzugefügt [Quiq::Database::Connection] * copyData(): Methode hinzugefügt [Quiq::Database::ResultSet] * unshift(): Methode hinzugefügt [Quiq::Epoch] * new(): Bug im falle von 'start-of-previous-month' behoben [Quiq::Hash::Db] * new(): Tilde-Expansion hinzugefügt * sync(): Fehlermeldung verbessert [Quiq::Html::Form::Matrix] * Sonderbehandlung von Hidden-Feldern hinzugefügt * Zellenumrandung hinzugefügt [Quiq::Image] * edit(): Löschen von Backupfile ausgebaut [Quiq::Ldap::Client] * Doku ergänzt * startTls(): Methode hinzugefügt [Quiq::Path] * duplicate(): Doku ergänzt * count(): Tilde-Expansion hinzugefügt * chmod(): Tilde-Expansion hinzugefügt * spreadToSubDirs(): Methode hinzugefügt [Quiq::Url] * Zu Klasse mit instantiierbaren Objekten gemacht [Quiq::Web::Navigation] * backUrlObj(): hinzugefügt * Doku navMsg=... hinzugefügt 1.205 2022-10-23 ================ [Quiq::Ldap::Client] * Klasse hinzugefügt 1.204 2022-09-28 ================ [Quiq::AnsiColor] * str(): Färbung über mehreren Zeilen korrigiert [Quiq::Assert] * check(): Doku bearbeitet [Quiq::CommandLine] * value(): Entscheidung bei Quoting verbessert [Quiq::Database::Connection] * applyPatches(): Verhindert, dass durch Fremschlüssel Daten verloren gehen * save(): RowStatus wird nun nach der Operation auf 0 gesetzt [Quiq::Database::Row::Object] * save(): RowStatus wird nun nach der Operation auf 0 gesetzt [Quiq::FileHandle] * DESTROY((): Destruktor eingeführt, der Filehandle nur schließt, wenn offen [Quiq::Hash] * AUTOLOAD(): Debugcode hinzugefügt [Quiq::Html::Form::Matrix] Klasse hinzugefügt [Quiq::Ipc] * pipeTo(): Methode hinzugefügt [Quiq::Path] * compare(): Unterscheidung, on Datei existiert oder nicht * copy(): Tilde-Expansion eingeführt, kein Kopieren, wenn Dateien identisch * size(): Methode hinzugefügt * tail(): Methode hinzugefügt * sameFile(): Methode hinzugefügt [Quiq::JQuery::DataTable] * instantiate(): Behandlung der Attribute searchable und visable korrigiert [Quiq::Process] * cwd(): Tilde-Expansion hinzugefügt 1.203 2022-06-30 ================ [Quiq::Css::Snippets] * Klasse hinzugefügt [Quiq::Database::Connection] * applyPatches() - Methode hinzugefügt * recreateTable() - Methode hinzugefügt * renameTable() - Methode hinzugefügt * addCheckConstraint() - Methode hinzugefügt [Quiq::Formatter] * geldbetrag() - Methode hinzugefügt [Quiq::JQuery::MenuBar] * Klasse hinzugefügt [Quiq::Path] * detectEncoding() - Alias für encoding() hinzugefügt [Quiq::Sql] * renameTable() - Methode hinzugefügt [Quiq::Web::Navigation] * Zurücknavigation auf Scrollposition hinzugefügt [Quiq::Url] * queryEncode() - Optinalen Parameter $initialChar hinzugefügt 1.202 2022-05-05 ================ [Quiq::Database::Patch] * Klasse hinzugefügt [Quiq::Exit] * Klasse hinzugefügt [Quiq::JQuery::ContextMenu] * Attribut "autoHide" hinzugefügt [Quiq::JQuery::DataTable] * Attribut "visible" hinzugefügt [Quiq::Path] * delete() - Exceptions übersetzt [Quiq::PlotlyJs::XY::DiagramGroup] * "points" -> "data points" [Quiq::Sendmail] * send() - Option -from hinzugefügt [Quiq::Smb::Client] * Klasse hinzugefügt [Quiq::Sftp::Client] * Klasse hinzugefügt [Quiq::Web::Navigation] * backUrl() - hinzugefügt 1.201 2022-03-27 ================ [Quiq::Mechanize] * new(): Code-Verbesserung [Quiq::Path] * convertEncoding(): Methode hinzugefügt [Quiq::Ssh] * exec(): Rückgabewerte $stdout, $stderr auf Leerstring initialisiert 1.200 2022-03-15 ================ [Quiq::Html::Verbatim] * margin: 0 in
 gesetzt

[Quiq::PlotlyJs::XY::DiagramGroup]
* Attribut xAxisHoverFormat einstellbar gemacht
* Bedienelemente downloadPng, fillArea, scaleY einstellbar gemacht

[Quiq::Sdoc::Producer]
* Tabellengenerierung erweitert

[Quiq::Epoch]
* new(): Konstruktor erweitert um start-of-month etc.
* month(): hinzugefügt

[Quiq::Properties]
* width(): zum Setter erweitert
* format(): refakturiert

[Quiq::Shell]
* exec(): Option -capture korrigiert

[Quiq::Table]
* asAsciiTable(): hinzugefügt

1.199 2022-02-13
================

[Quiq::Database:Connection]
* Meldung bei Constraint-Verletzung verallgemeinert

[Quiq::Html::List]
* Bei description-List Eintrag nur bei undef unterdrücken

[Quiq::Sdoc::Producer]
* section() - Abschittsattribute eingeführt

[Quiq::Web::Navigation]
* Klasse hinzugefügt

[Quiq::Dumper]
* dump() - CODE- und GLOB-Referenz hinzugefügt

[Quiq::JavaScript]
* line() - Kommentar-Behandlung verbessert

[Quiq::MailTo]
* Klasse hinzugefügt

[Quiq::Table]
* row() - Methode hinzugefügt

[Quiq::Url]
* new() - Methode hinzugefügt

1.198 2022-01-22
================

[Quiq::Css]
* Methode oneLine() hinzugefügt

[Quiq::Html::Widget::SelectMenu]
* Attribut "addNull" hinzugefügt

[Quiq::Html::Resources]
* Klasse hinzugefügt

[Quiq::Html::Tag]
* Methode setDefault() hinzugefügt
* CSS- und JavaScript-Code kann optional einzeilig generiert werden

[Quiq::JavaScript]
* Bug in Methode line() behoben, wenn Argument $code leer ist

[Quiq::JQuery::DataTable]
* Klasse überarbeitet

[Quiq::LockedContent]
* Test auf nichttemporäre Datei umgestellt, da der Test auf FreeBSD
  aus nicht näher bekannten Gründen manchmal fehlschlägt

1.197 2021-12-26
================

[Quiq::Html::Widget::CheckBox]
* Attribut "options" erweitert, so dass die Checkbox einen Wert sendet, auch
  wenn sie nicht aktiviert ist

[Quiq::Html::Widget::SelectMenu]
* Attribut "optionPairs" hinzugefügt, so dass Wert und Texte paarweise
  angegeben werden können

[Quiq::Html::Widget::TextArea]
* Attribute "autoCols" und "autoRows" hinzugefügt

[Quiq::Html::Component]
* Doku bearbeitet

[Quiq::Html::HorizontalMenu]
* Attribut "class" hinzugefügt

[Quiq::Sdoc::Producer]
* Möglichkeit zur Angabe von Eingenschaften zum Code-Abschnitt hinzugefügt
* link(): Methode hinzugefügt
* linkDefs(): Methode hinzugefügt

[Quiq::ExportFile]
* Klasse hinzugefügt

[Quiq::FileHandle]
* Doku ergänzt

[Quiq::JavaScript]
* Konstruktor hinzugefügt

[Quiq::Object]
* methodName(): Methode hinzugefügt
* Doku ergänzt

[Quiq::SQLite]
* recreateDatabase(): detailliertere Meldungen ergänzt

[Quiq::Sendmail]
* Header "replyTo" hinzugefügt

1.196 2021-11-30
================
* Codeaufbau geändert

1.195 2021-08-08
================

[Quiq::Dumper]
* Klasse hinzugefügt

[Quiq::Eog]
* Klasse hinzugefügt

[Quiq::Image]
* Doku bearbeitet

[Quiq::LockedContent]
* Klasse hinzugefügt

[Quiq::Path]
* entries() - um Tilde-Expansion erweitert
* find() - um Optionen -excludeRoot und -sort erweitert

[Quiq::PerlModule]
* Klasse hinzugefügt

[Quiq::Sendmail]
* Klasse hinzugefügt]

[Quiq::Shell]
* Ausgabe im Destruktor verändert

[Quiq::Trash]
* Klasse hinzugefügt

1.194 2021-08-08
================

[Quiq::Gd::Font]
* Test auf Zeichenhöhe gefixt

1.193 2021-08-05
================

[Quiq::ContentProcessor::SubType]
* Doku bearbeitet

[Quiq::ContentProcessor::Type]
* outputFiles() - Methode entfernt

[Quiq::Database::Api::Dbi::Connection]
* SQLite: Foreign Keys werden per Default aktiviert

[Quiq::Database::ResultSet::Array]
* values() - Methode in Basisklasse verlegt

[Quiq::Database::ResultSet::Object]
* values() - Methode in Basisklasse verlegt

[Quiq::Database::Row::Object::Join]
* Doku bearbeitet

[Quiq::Database::Row::Object]
* asRecord() - Optionen statt Positionsparameter und farbige Ausgabe ergänzt

[Quiq::Database::Connection]
* insert() - Optionsverarbeitung auf Methode parameters() umgestellt
* insertResultSet() - Methode hinzugefügt
* updateNToM() - Methode hinzugefügt

[Quiq::Database::ResultSet]
* values() - Methode aus Subklassen hierhin verlagert

[Quiq::PlotlyJs::XY::DiagramGroup]
* Detailverbesserungen

[Quiq::Assert]
* pathExists() - Methode hinzugefügt

[Quiq::Converter]
* snakeCaseToCamelCase() - Bug gefixt

[Quiq::Formatter]
* new() - Konstruktor eingeführt

[Quiq::Hash]
* Exception übersetzt

[Quiq::Object]
* Kosmetik

[Quiq::Path]
* compareData() - Encoding hinzugefügt
* edit() - Bearbeitung von In-Memory-Daten ergänzt
* link() - Option -force und Tilde-Expansion hinzugefügt
* sha1() - Methode hinzugefügt
* deleteContent() - Methode hinzugefügt
* rename() - Tilde-Expansion hinzugefügt
* numberBasePaths() - Nummerierung auf kurze Basisnamen beschränkt
* split() - Kurzen Basisnamen und lange Extension hinzugefügt

[Quiq::Record]
* fromString() - "==" als Begrenzer hinzugefügt

[Quiq::SQLite]
* Klasse hinzugefügt

[Quiq::Sql]
* createTable() - Foreign Keys hinzugefügt
* delete() - Keine WHERE-Klausel, wenn +null als einzige Angabe

[Quiq::TempDir]
* new() - Cleanup zum Default gemacht

1.192 2020-12-09
================

[Quiq::Html::Table::List]
* Attribut "align" erlaubt nun Abkürzungen

[Quiq::PlotlyJs::XY::DiagramGroup]
* Höhe ohne Rangeslider angepasst
* Option "FillArea" zu Diagramm hinzugefügt

[Quiq::Parameters]
* extractToObject() - Fehlermeldung korrigiert

[Quiq::SqlPlus]
* script() - Sichtbarmachung Nullwert (SET NULL ~) hinzugefügt

1.191 2020-11-01
================

[Quiq::Html::Pygments]
* Test verbessert

1.190 2020-10-30
================

[Quiq::PlotlyJs::XY::Diagram]
* Attribut yTitleColor hinzugefügt

[Quiq::PlotlyJs::XY::DiagramGroup]
* Attribut type hinzugefügt
* Plot-Layout für verschiedene Fontgrößen überarbeitet

[Quiq::Sql]
* Operator "NOT LIKE" hinzugefügt

1.188 2020-09-28
================

[Quiq::Dbms]
* Instantiierung aus Datenbank-Connection hinzugefügt

[Quiq::PlotlyJs::XY::Diagram]
* Attribut unit in yTitle umbenannt

[Quiq::PlotlyJs::XY::DiagramGroup]
* Attribute debug, xTitle hinzugefügt
* Defaultwert fontSize auf 11 gesetzt

[Quiq::Sql]
* mehrzeilige Select-Ausdrücke werden nun eingerückt

[Quiq::Sql::Composer]
* Klasse hinzugefügt

1.187 2020-08-18
================

[Quiq::Database::Connection]
* stmt() - Alias gen() definiert
* select() - Option -sql hinzugefügt

[Quiq::Gd::Image]
* drawCross() - implementiert

[Quiq::Parameters]
* extractPropertiesToVariables() - hinzugefügt

[Quiq::PlotlyJs::TimeSeries]
* Doku bearbeitet

[Quiq::PlotlyJs::XY::Diagram]
* umbenannt von Quiq::PlotlyJs::XY::Parameter

[Quiq::PlotlyJs::XY::DiagramGroup]
* weiter entwickelt

[Quiq::Sql::Analyzer]
* Doku bearbeitet

[Quiq::Terminal]
* askUser() - Option -sloppy hinzugefügt

1.186 2020-08-10
================

[Quiq::Database::Connection]
* newFromSbit() - um Optionen erweitert

[Quiq::Epoch]
* Doku bearbeitet

[Quiq::FileHandle]
* Fehlermeldung erweitert

[Quiq::JavaScript]
* Basisklasse eingeführt
* code() - Methode hinzugefügt

[Quiq::Path]
* numberBasePaths() - Methode hinzugefügt

[Quiq::PlotlyJs]
* Doku erweitert

[Quiq::PlotlyJs::XY::DiagramGroup]
* erweitert

[Quiq::PlotlyJs::XY::Parameter]
* erweitert

[Quiq::Template]
* combine() - Tilde-Expansion hinzugefügt

1.185 2020-07-14
================

[Quiq::Database::ResultSet]
* asTable() - Newline angefügt

[Quiq::Epuch]
* tzOffset() - Methode hinzugefügt

[Quiq::Html::Widget::Button]
* html() - Wert des Attributs "onClick" wird einzeilig gemacht

[Quiq::Html::Widget::CheckBox]
* html() - Wert des Attributs "onClick" wird einzeilig gemacht

[Quiq::Html::Tag]
* tag() - Behandlung von Attribut "style" korrigiert

[Quiq::PlotlyJs]
* Klasse hinzugefügt

[Quiq::PlotlyJs::TimeSeries]
* Überarbeitet. Wird abgelöst durch Quiq::PlotlyJs::TimeSeries::DiagramGroup.

[Quiq::PlotlyJs::TimeSeries::DiagramGroup]
* Klasse hinzugefügt

[Quiq::PlotlyJs::TimeSeries::Parameter]
* Klasse hinzugefügt

[Quiq::Process]
* Doku bearbeitet

[Quiq::String]
* joinLines() - Methode hinzugefügt

[Quiq::Unindent]
* Optionale Zeilenfortsetzung zu allen Methoden hinzugefügt

1.184 2020-06-29
================

[Quiq::Assert]
* Doku bearbeitet

[Quiq::Epoch]
* year() - hinzugefügt

[Quiq::FileHandle]
* new() - Tildeexpansion hinzugefügt

[Quiq::Mechanize]
* new() - strict_forms=>1 als Default gesetzt

[Quiq::Net]
* hinzugefügt

[Quiq::Path]
* basePath() - hinzugefügt
* dir() - hinzugefügt
* mtimeDir() - hinzugefügt

[Quiq::PlotlyJs::TimeSeries]
* weiter entwickelt

[Quiq::Process]
* mtime() - hinzugefügt

[Quiq::Sdoc::Producer]
* format() - hinzugefügt

[Quiq::Shell]
* DESTROY() - Farbausgabe hinzugefügt

[Quiq::Ssh]
* Doku bearbeitet

[Quiq::Template]
* Doku bearbeitet

1.183 2020-05-22
================

[Quiq::Gd::Font]
* Unittest für FreeBSD verbessert

1.182 2020-05-20
================

[Quiq::Cache]
* Doku bearbeitet

[Quiq::Database::ResultSet]
* Doku bearbeitet

[Quiq::Html::Component]
* Doku bearbeitet

1.181 2020-05-19
================

[Quiq::AnsiColor]
* Doku bearbeitet

[Quiq::Cascm]
* deleteVersion() - auf Rückgabewert boolean umgestellt
* edit() - Checkout an den Anfang gestellt
* listPackages() - Suchargument hinzugefügt
* putFiles() - Prüfung auf Datei-Identität optional gemacht
* reduceVersion() - Methode hinzugefügt
* showPackage() - creation_time, username, versionstatus hinzugefügt

[Quiq::Database::Api::Dbi::Connection]
* new() - SQLite: Fehlermeldung Verbindungsaufbau verbessert

[Quiq::Database::ResultSet]
* asExel() - Laden von Quiq::Excel::Writer auf require umgestellt
* reverse() - Methode hinzugefügt

[Quiq::Gd::Image]
* textImage() - Methode hinzugefügt

[Quiq::JQuery::ContextMenu::Ajax]
* js() - Attribut 'target' hinzugefügt

[Quiq::Mechanize]
* Klasse hinzugefügt

[Quiq::Sql]
* insertMulti() - um Behandlung von Nullwerten erweitert

[Quiq::Udl]
* dsn() - SQLite: Tilde-Expansion bei Pfadangabe hinzugefügt

1.180 2020-04-25
================

[Quiq::Cascm]
* new() - Option color=>$bool hinzugefügt
* findItem() - Ergebnismenge um Kolumne versionsstatus erweitert
* switchPackage() - Default nun Übertragung aller Dateien

[Quiq::DirHandle]
* Unittest für CentOS verbessert

1.179 2020-04-19
================

[Quiq::Cascm]
* sync() - um Parameter $repoDir erweitert

[Quiq::Database::Connection]
* Doku bearbeitet

[Quiq::Database::ResultSet]
* asExcel() hinzugefügt

[Quiq::Html::Component]
* Doku bearbeitet

1.178 2020-04-05
================

[Quiq::AnsiColors]
* strLn() - hinzugefügt

[Quiq::Cascm]
* edit() - Optionen -show, -version hinzugefügt

[Quiq::Database::Config]
* Doku bearbeitet

[Quiq::Database::Connection]
* schemaExists() - hinzugefügt
* tableDiff() - Kolumnennamen in "" eingefasst

[Quiq::Database::ResultSet]
* asTable() - Newline am Ende entfernt

[Quiq::Dbms]
* Doku bearbeitet

[Quiq::PostgreSql::Catalog]
* new() - hinzugefügt
* functions() - hinzugefügt
* objects() - hinzugefügt
* views() - hinzugefügt
* viewSelect() - hinzugefügt

[Quiq::PostgreSql::Psql]
* run() - Optionen -echo, -log, -script hinzugefügt
* run() - Exitcode wird zurückgeliefert

[Quiq::Sql]
* Operatoren ~, !~, NOT IN hinzugefügt
* union() - hinzugefügt

[Quiq::Terminal]
* askUser() - Option -timeout hinzugefügt

1.177 2020-03-08
================

[Quiq::Assert]
* check() - hinzugefügt
* Wert in Fehlermeldungen nun ohne Quoting

[Quiq::Cascm]
* deleteVersion() - Packagenamen-Bug behoben

[Quiq::ChartJs::TimeSeries]
* Generierten Beispielcode korrigiert

[Quiq::Database::Connection]
* selectWith() - hinzugefügt
* createTrigger() - Funktionsname zu Signatur erweitert
* dropTrigger() - Funktionsname zu Signatur erweitert

[Quiq::PostgreSql::Catalog]
* correctFunctionDef() - Erkennung 'BEGIN' verbessert
* functionSelect() - hinzugefügt

[Quiq::PostgreSql::Psql]
* Debug-Modus um Expect-Protokoll erweitert

[Quiq::Sql]
* createFunction() - statt Name nun Signatur
* dropFunction() - statt Name nun Signatur
* moveFunction() - hinzugefügt
* select() - Option -with hinzugefügt
* select() - Option -args durch -placeholders ersetzt
* withClause() - hinzugefügt
* selectClause() - Komma auf nächster Zeile
* fromClause() - Alias als erstes Argument bei ['AS',...]
* fromClause() - Komma auf nächster Zeile

1.176 2020-03-01
================

[Quiq::Cascm]
* edit() - Parameter $version hinzugefügt
* passVersion() - Parameter $version hinzugefügt
* findItem() - Kolumnen creationtime, username hinzugefügt
* showPackage() - Unwichtige Kolumnen entfernt
* listPackages() - Kolumnen creationtime, username hinzugefügt

[Quiq::ChartJs::TimeSeries]
* Generierten Beispielcode korrigiert

[Quiq::CommandLine]
* Doku bearbeitet

[Quiq::Image]
* edit() - hinzugefügt

[Quiq::Path]
* nextnumber() - hinzugefügt
* numberPaths() - Option -start hinzugefügt

[Quiq::PostgreSql::PgDump]
* Doku bearbeitet

[Quiq::Sql]
commands() - PostgreSQL / END hinzugefügt

1.175 2020-02-22
================

[Quiq::PostgreSql::PgDump]
* Klasse hinzugefügt

[Quiq::PostgreSql::Psql]
* run(() - Optionen -debug, -command, -showInternal hinzugefügt

[Quiq::Sql]
* commands() - Liste der Kommandos korrigiert

[Quiq::Stopwatch]
* elapsedReadable() hinzugefügt

1.174 2020-02-18
================

[Quiq::Array]
* Doku bearbeitet

[Quiq::AsciiTable]
* Doku bearbeitet

[Quiq::Axis]
* Korrektur y-Position

[Quiq::Css]
* Doku bearbeitet

[Quiq::Hash]
* setOrPush() - Methode hinzugefügt

[Quiq::Html::Component]
* Klasse hinzugefügt

[Quiq::Html::Component::Bundle]
* Klasse hinzugefügt

[Quiq::Html::Construct]
* loadFiles() - Herausfiltern von Dubletten ergänzt

[Quiq::Html::Fragment]
* Klasse entfernt

[Quiq::Html::Page]
* Einbinden von Komponenten hinzugefügt

[Quiq::JQuery::Function]
* ready() - Erzeugung von leeren Handlern verhindert

[Quiq::List]
* grep() - Methode hinzugefügt

1.173 2020-02-09
================

[Quiq::Epoch]
* ISO-Darstellung mit Nachkommastellen hinzugefügt

[Quiq::Html::Widget::SelectMenu]
* JavaScript-Code auf onclick-Handler wird einzeilig gemacht

[Quiq::Html::Page]
* script-Tag für jeden ready-Handler getrennt

[Quiq::JavaScript]
* line() - Behandlung von undef korrigiert

[Quiq::JQuery::DataTable]
* Behandlung orderable-Attribut korrigiert

[Quiq::List]
* Klasse hinzugefügt

[Quiq::PlotlyJs::TimeSeries]
* doubleClickDelay großzügiger gesetzt

1.172 2020-02-01
================

[Quiq::Gd::Component::BlockDiagram]
* Attribut yReverse hinzugefügt

[Quiq::JQuery::ContextMenu::Ajax]
* Doku bearbeitet

[Quiq::JQuery::ContextMenu]
* Klasse hinzugefügt

[Quiq::Sql]
* END (vorerst) aus den ProstgreSQL-Kommandos entfernt
* Argument für portablen Typ DATETIME hinzugefügt

1.171 2020-01-25
================

[Quiq::Cascm]
* edit() - Temporäre Datei von . auf ~/tmp umgestellt
* package() - Pfadkorrektur

[Quiq::Database::Connection]
* runCount() - hinzugefügt

[Quiq::Html::Form::Layout]
* Behandlung von Hidden-Widgets korrigiert

[Quiq::Html::Widget]
* Attribut undefIf dokumentiert

[Quiq::Html::Widget::Button]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::CheckBox]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::CheckBoxBar]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::FileUpload]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::Hidden]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::RadioButton]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::RadioButtonBar]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::ReadOnly]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::SelectMenu]
* Attribut undefIf hinzugefügt
* Attribut readOnly hinzugefügt

[Quiq::Html::Widget::SelectMenuColor]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::TextArea]
* Attribut undefIf hinzugefügt

[Quiq::Html::Widget::TextField]
* Attribut undefIf hinzugefügt
* Attribut readOnly hinzugefügt

[Quiq::Html::List]
* Einrückung für 
-Tag hinzugefügt [Quiq::JQuery::ContextMenu::Ajax] * Übermittlung der Item-Definitionen auf Array umgestellt [Quiq::PlotlyJs::Reference] * Doku bearbeitet [Quiq::Url] * Doku bearbeitet 1.170 2020-01-18 ================ [Quiq::ChartJs::TimeSeries] * Einbettung HTML auf Body beschränkt [Quiq::Database::Tree] * hierarchy() - hinzugefügt * roots() - hinzugefügt * Behandlung von fehlenden Parent-Datenstzen erweitert [Quiq::Hash::Ordered] * von Quiq::OrderedHash umbenannt [Quiq::Html::Widget::Button] * Doku korrigiert [Quiq::Html::Widget::Textfield] * Entfernung von umbegebendem Whitespace hinzugefügt [Quiq::Html::Page] * Attribut bodyOnly hinzugefügt [Quiq::JQuery::ContextMenu::Ajax] * Klasse hinzugefügt [Quiq::PlotlyJs::Reference] * HTML-Doku ausgelagert [Quiq::PlotlyJs::TimeSeries] * Attribut height hinzugefügt * Attribute marginBottom, marginLeft, marginRight, marginTop hinzugefgt * Attribut xSpikeFormat hinzugefügt * Attribut ySide hinzugefügt [Quiq::If] * von Quiq::Concat umbenannt [Quiq::JavaScript] * line() - Kommentare werden entfernt [Quiq::Json::Code] * Objektattribute mit Wert undef werden weggelassen [Quiq::Ssh] * Per SSH ausgeführte Kommandozeile wird encodiert (sonst keine Ausführung) [Quiq::Url] * encode(), decode(), queryEncode(), queryDecode() - um Encoding erweitert * queryEncode() - & statt ; als Default-Trenner 1.169 2020-01-05 ================ [Quiq::Array] * meanValue() - Alias average() hinzugefügt [Quiq::Epoch] * Behandlung von Subsekunden korrigiert [Quiq::Hash::Db] * Doku bearbeitet [Quiq::Html::Table::Simple] * Doku bearbeitet [Quiq::Html::Widget::Button] * Attribut title hinzugefügt [Quiq::Html::Widget::SelectMenu] * Attribut title hinzugefügt [Quiq::Html::List] * Description List (dl) hinzugefügt [Quiq::Html::Tag] * Element details hinzugefügt * Element summary hinzugefügt [Quiq::PlotlyJs::Reference] * Klasse hinzugefügt [Quiq::PlotlyJs::TimeSeries] * Attribut color hinzugefügt * JavaScript Instanzvariable hinzugefügt [Quiq::Sdoc::Producer] * Sectionsebenen -1 und 0 hinzugefügt [Quiq::Sql::Script::Reader] * Option separator hinzugefügt 1.168 2019-12-22 ================ [Quiq::ChartJs::TimeSeries] * Aufteilung der Generierung auf die Methoden js() und html() [Quiq::Database::Api::Dbi::Connection] * MS SQL: LongReadLen vergrößert [Quiq::Database::Connection] * execute() - Methode hinzugefügt [Quiq::Database::ResultSet] * asTable() - Farbdarstellung überarbeitet [Quiq::Html::Page] * JQuery readyHandler verbessert [Quiq::JQuery::Function] * new() - hinzugefügt * ready() - hinzugefügt [Quiq::MediaWiki::Client] * Optionsverarbeitung parameters() umgestellt [Quiq::MediaWiki::Markup] * Optionsverarbeitung parameters() umgestellt [Quiq::PlotlyJs::TimeSeries] * Klasse hinzugefügt [Quiq::Test::Class] * isText() - hinzugefügt [Quiq::Assert] * Doku bearbeitet [Quiq::Json::Code] * Doku bearbeitet * Array-Verarbeitung korrigiert [Quiq::Object] * Doku bearbeitet * parameters() - Behandlung von Namensparametern hinzugefügt [Quiq::Parallel] * extractToVariables() auf parameters() umgestellt [Quiq::Parameters] * extractPropertiesToVariables() - entfernt * extractToVariables() - entfernt [Quiq::Path] * extractToVariables() auf parameters() umgestellt [Quiq::Properties] * extractToVariables() auf parameters() umgestellt [Quiq::Ssh] * extractToVariables() auf parameters() umgestellt [Quiq::Template] * combine() - hinzugefügt 1.167 2019-12-08 ================ [Quiq::ChartJs::TimeSeries] * Klasse überarbeitet * Durchschnitt und Median hinzugefügt [Quiq::JavaScript] * Doku bearbeitet [Quiq::Jason] * Klasse hinzugefügt [Quiq::Template] * Einrückung von Text bei Platzhalterersetzung erweitert 1.166 2019-11-29 ================ [Quiq::AsciiTable] * Doku bearbeitet [Quiq::ChartJs::TimeSeries] * implementiert [Quiq::Gd::Component::ColorBar] * Doku bearbeitet [Quiq::Gd::Component::ScatterGraph] * Doku bearbeitet [Quiq::Html::Page] * Attribut ready hinzugefügt [Quiq::Path] * numberPaths() - Option -move hinzugefügt * rename() - optimiert [Quiq::Storable] * Doku bearbeitet [Quiq::Svg::Tag] * Doku bearbeitet 1.165 2019-11-22 ================ [Quiq::Axis::Numeric] * Rundung korrigiert [Quiq::Axis::Time] * Ermittelung Zeitintervall reimplementiert [Quiq::AxisTick] * width() - Wert auf Label umgestellt, Verbreiterung um 1 Pixel * height() - Wert auf Label umgestellt [Quiq::Cache] * Klasse hinzugefügt [Quiq::CommandLine] * Doku bearbeitet [Quiq::Converter] * camelCaseToSnakeCase() - hinzugefügt [Quiq::Epoch] * dayOfWeek() - hinzugefügt * dayAbbr() - hinzugefügt * dayName() - hinzugefügt * plus() - hinzugefügt * minus() - hinzugefügt * asIso() - hinzugefügt [Quiq::Gd::Component::*] * Umbenannt von Quiq::Gd::Graphic::* [Quiq::Gd::Component::Grid] * Klasse hinzugefügt [Quiq::Gd::Font] * alignLeftOffset() - hinzugefügt [Quiq::Html::Tag] * Doku bearbeitet [Quiq::Math] * Pixel-Rundung von sprintf '%.0f' auf roundToInt() umgestellt [Quiq::Progress] * percent() - Rundung per int() korrigiert [Quiq::Schedule] * Doku bearbeitet * Testcode verbessert [Quiq::Sql] * Doku bearbeitet [Quiq::Svg::Tag] * Klasse hinzugefügt [Quiq::Tag] * Klasse hinzugefügt [Quiq::Timeseries::Synchronizer] * Doku bearbeitet [Quiq::XTerm] * Doku bearbeitet 1.164 2019-11-07 ================ [Quiq::AnsiColor] * Doku bearbeitet [Quiq::Axis] * Doku bearbeitet [Quiq::AxisTick] * Erweitert für nicht-numerische Achsen [Quiq::Time] * Modul POSIX entfernt [Quiq::Axis::Numeric] * Doku bearbeitet [Quiq::Axis::Time] * Klasse hinzugefügt (unfertig) [Quiq::Gd::Graphic::Axis] * Attribut tickDirection (Achsenbeschriftung links, rechts, oben, unten) [Quiq::Gd::Graphic::BlockDiagram] * Modul POSIX entfernt [Quiq::Gd::Graphic::ColorBar] * Modul POSIX entfernt [Quiq::Schedule] * Test robust gegen verschiedene Zeitzonen gemacht 1.163 2019-11-06 ================ [Quiq::AsciiTable] * Doku bearbeitet [Quiq::Axis] * Klasse hinzugefügt [Quiq::AxisTick] * Klasse hinzugefügt [Quiq::Axis::Numeric] * Klasse hinzugefügt [Quiq::Gd::Graphic] * Klasse hinzugefügt [Quiq::Gd::Graphic::Axis] * Klasse hinzugefügt [Quiq::Gd::Graphic::BlockDiagram] * Klasse hinzugefügt [Quiq::Gd::Graphic::ColorBar] * Klasse hinzugefügt [Quiq::Gd::Graphic::ColorLegend] * Klasse hinzugefügt [Quiq::Gd::Graphic::Graph] * Klasse hinzugefügt [Quiq::Gd::Graphic::PointGraph] * Klasse hinzugefügt [Quiq::Gd::Image] * Doku bearbeitet [Quiq::Math] * Konstruktor hinzugefügt * valueToPixelYTop() - hinzugefügt [Quiq::Schedule] * ehedem Quiq::ProcessMatrix 1.162 2019-10-31 ================ [Quiq::AsciiTable] * Kosmetik [Quiq::Database::Cursor] * width() - hinzugefügt * export() - hinzugefügt * fetchAll() - keine Instantiierung in Void-Kontext [Quiq::Database::ResultSet] * asTable() - farbige Terminaldarstellung hinzugefügt [Quiq::Epoch] * new() - Behandlung von Sekundenbruchteilen bei ISO-Darstellung korrigiert [Quiq::FileHandle] * setEncoding() - Doku bearbeitet [Quiq::ProcessMatrix] * Klasse hinzugefügt 1.161 2019-10-25 ================ [Quiq::AnsiColor] * Doku bearbeitet [Quiq::Assert] * Option -sloppy entfernt * Unterscheidung nach Aufrufkontext eingeführt * Stacktrace konfigurierbar * Namensabschnitt in Exception konfigurierbar [Quiq::Cascm] * edit() - Packagename optional gemacht * passVersion() - hinzugefügt * package() - Versionsnummer optional gemacht * showPackage() - Option -minVersion hinzugefügt [Quiq::Database::Connection] * Kosmetik [Quiq::Epoch] * Format YYYY-MM-DD hinzugefügt [Quiq::Path] * tempDir() - Optionen eingeführt [Quiq::Program] * assert() - hinzugefügt [Quiq::Progress] * ":" für alle Formatelemente [Quiq::Shell] * Laufzeitausgabe verbessert [Quiq::Sql::Script::Reader] * Doku bearbeitet [Quiq::TempDir] * new() - Option -cleanup hinzugefügt [Quiq::Test::Class] * Asserts angepasst 1.160 2019-10-17 ================ [Quiq::ChartJs::TimeSeries] * Doku bearbeitet [Quiq::Database::Api::Dbi::Connection] * new() - Option -autoCommit hinzugefügt [Quiq::Database::Connection] * new() - Option -autoCommit hinzugefügt [Quiq::Sdoc::Producer] * Klasse hinzugefügt [Quiq::AsciiTable] * Doku bearbeitet [Quiq::Cascm] * edit() - Rückfrage vor switchPackage() * putFiles() - Rückfrage vor switchPackage() * deleteVersion() - verallgemeinert, Löschen bis zu einer bestimmten Version * findItem() - Optionalen Parameter $minVersion hinzugefügt * createPackage() - Optionalen Parameter $state hinzugefügt * switchPackage() - Packages können sich nun auf verschieden Stufen befinden * movePackage() - Option -askUser hinzugefügt [Quiq::Parallel] * runFetch() - Option -progressNameSub hinzugefügt [Quiq::Path] * mtimePaths() - hinzugefügt [Quiq::Progress] * Prozentangabe nun abgerundet 1.159 2019-10-05 ================ [Quiq::ChartJs::TimeSeries] * Klasse hinzugefügt [Quiq::Html::Tag] * Element hinzugefügt [Quiq::Object] * Doku korrigiert [Quiq::Path] * numberPaths() hinzugefügt * Doku korrigiert [Quiq::PostgreSql::Catalog] * Klasse hinzugefügt [Quiq::TempFile] * Option -dir korrigiert 1.158 2019-09-21 ================ [Quiq::Cascm] * edit() - Transportpackage eingeführt * putFiles() - Transportpackage eingeführt [Makefile.PL] * Expect zu PREREQ_PM hinzugefügt 1.157 2019-09-15 ================ [Quiq::Database::Config] * Default-Konfigurationsdatei von ~/.database.conf in db.conf umbenannt * Option -sloppy zum Konstruktor hinzugefügt * Attribut configFile korrigiert und Exceptions angepasst [Quiq::Database::Connection] * Exceptions auf Englisch [Quiq::PostgreSql::CopyFormat] * Klasse hinzugefügt [Quiq::PostgreSql::Psql] * Klasse hinzugefügt [Quiq::Concat] * Doku bearbeitet [Quiq::Epoch] * Doku bearbeitet * Aussagekräftiger Exception-Text [Quiq::Perl] * perlDoFile() - Execptions auf Englisch [Quiq::Sql] * insertMulti() - Newline am Ende entfernt [Quiq::Stopwatch] * Mehrere Timer in einem Objekt eingeführt * Abschnittszeiten eingeführt [Quiq::Udl] * Erweiterung um UDL-Namen durch Konsultation von Konfigurationsdatei 1.156 2019-09-05 ================ [Quiq::Database::Connection] * Kosmetik [Quiq::Database::Cursor] * fetchAll() um Argument $limit ergänzt [Quiq::Database::ResultSet] * Logik für unvollständige Ergebnismenge hinzugefügt [Quiq::Sql::Script::Reader] * Trennlinie überlesen [Quiq::Cascm] * abstract() hinzugefügt * getVersion() hinzugefügt * deleteToVersion() hinzugefügt * deletePackage() zu deletePackages() erweitert * showPackage() um Rückgabe von Datensätzen erweitert * switchPackage() reduziert auf Dateinamen [Quiq::Converter] * stringToKeyVal() akzeptiert nun auch einfache Anführungsstriche [Quiq::Dbms] * Kosmetik [Quiq::Pygments] * styles() - Test angepasst, falls "pymentize -L" nicht verstanden wird [Quiq::Range] * Klasse hinzugefügt [Quiq::Rsync] * exec() um Option -print und Rückgabewerte erweitert [Quiq::Shell] * backDir() hinzugefügt 1.155 2019-08-27 ================ [Quiq::Database::Api::Dbi::Connection] * Doku bearbeitet [Quiq::Database::Config] * Neue Klasse [Quiq::Database::Connection] * Doku bearbeit [Quiq::Database::Cursor] * Alias elapsed() für time() hinzugefügt [Quiq::Database::ResultSet] * Kosmetik [Quiq::Hash::Db] * umbenannt von Quiq::PersistentHash [Quiq::Hash::Persistent] * Klasse hinzugefügt [Quiq::Html::Widget::SelectMenu] * Attribut optionPairs => \@pairs hinzugefügt [Quiq::JQuery::DataTable] * Unterstützung für Array-Rows hinzugefügt [Quiq::Sql::Script::Reader] * Klasse hinzugefügt [Quiq::Sql::Analyzer] * Klasse hinzugefügt [Quiq::Dbms] * Klasse hinzugefügt [Quiq::FileHandle] * Fehlermeldung geändert [Quiq::Path] * Methoden stat() und touch() hinzugefügt [Quiq::Process] * Methode uid() hinzugefügt * Doku bearbeitet [Quiq::Program] * Behandlung bei fehlender -help Option korrigiert * Behandlung von $maxArgs = undef korrigiert [Quiq::Sql] * Auf Basisklasse Quiq::Dbms umgestellt [Quiq::Storable] * Timeout um negative Werte erweitert (Zeitverlängerung) [Quiq::TempFile] * Option -pathOnly hinzugefügt 1.154 2019-08-11 ================ [Quiq::Cascm] * deleteAllVersions() hinzugefügt * Selektion in findItem() verbessert * repoFileToFile() um Option -sloppy erweitert [Quiq::Database::Connection] * Tempdatei-Erzeugung auf Quiq::Path umgestellt [Quiq::Database::ResultSet] * Ausgabe von asTable() geändert [Quiq::Diff] * Tempdatei-Erzeugung auf Quiq::Path umgestellt [Quiq::Html::Construct] * Klasse hinzugefügt [Quiq::Html::Fragment] * Komponente html auf mehrere Abschnitte ausgedehnt [Quiq::Html::Page] * Attribut load hinzugefügt [Quiq::Html::Producer] * Klasse hinzugefügt [Quiq::Parallel] * Tempdatei-Erzeugung auf Quiq::Path umgestellt [Quiq::Path] * tempFile() und tempDir() hinzugefügt [Quiq::TempFile] * Doku bearbeitet 1.153 2019-08-03 ================ [Quiq::Diff] * Klasse hinzugefügt [Quiq::Gd::Font] * Umbenannt: GD -> Gd [Quiq::Gd::Image] * Umbenannt: GD -> Gd [Quiq::Html::Fragment] * Doku bearbeitet [Quiq::Path] * find(): Tilde-Expansion hinzugefügt * truncate(): Tilde-Expansion hinzugefügt * unindent(): neue Methode [Quiq::Storable] * Kosmetik [Quiq::TempFile] * new(): Speichern von Daten hinzugefügt [Quiq::Test::Class] * in(): Bessere Information im Fehlerfall 1.152 2019-07-25 ================ [Quiq::Digest] * Methode md5() erweitert [Quiq::Excel::Writer] * Doku bearbeitet [Quiq::GD::Font] * Test der Methode charWidth() erweitert [Quiq::Path] * Methode age() hinzugefügt [Quiq::Storable] * Methode memoize() um Parameter $duration erweitert 1.151 2019-07-08 ================ [Quiq::Assert] * Option -sloppy mit Returnwert eingeführt [Quiq::GD::Font] * Tests unabhängiger von Font- und gdlib-Version gemacht [Quiq::GD::Image] * Kosmetik [Quiq::PersistentHash] * Doku bearbeitet [Quiq::Test::Class] * Methode in() hinzugefügt 1.150 2019-07-07 ================ [Quiq::Assert] * Doku bearbeitet [Quiq::Debug] * Doku bearbeitet [Quiq::GD::Font] * Klasse hinzugefügt [Quiq::GD::Image] * Klasse hinzugefügt 1.149 2019-07-05 ================ [Quiq::Assert] * Kosmetik [Quiq::Cascm] * Selektion für das Finden von Items verbessert [Quiq::Converter] * Kosmetik [Quiq::Process] * Von Quiq::System abgeleitet 1.148 2019-07-01 ================ [Quiq::Assert] * Methode isEnumValue() hinzugefügt * Doku bearbeitet [Quiq::Color] * Doku bearbeitet [Quiq::Database::Connection] * Anzeige Hits im Log korrigiert * Methode setSearchPath() hinzugefügt * Methode insertMulti() hinzugefügt [Quiq::Epoch] * Doku bearbeitet [Quiq::Excel::Writer] * Doku bearbeitet [Quiq::FileHandle] * Doku bearbeitet [Quiq::ModelCache] * Doku bearbeitet [Quiq::Database::Api] * Doku bearbeitet [Quiq::Progress] * Doku bearbeitet [Quiq::Properties] * MultiLine-Eigenschaft hinzugefügt [Quiq::Sql] * Methode setSearchPath() hinzugefügt * Methode insertMulti() hinzugefügt [Quiq::Ssh] * Doku bearbeitet [Quiq::Test::Class] * Doku bearbeitet [Quiq::TreeFormatter] * Doku bearbeitet 1.147 2019-06-22 ================ [Makefile.PL] * Excel::Writer::XLSX zu den Prerequisites hinzugefügt 1.146 2019-06-22 ================ [Quiq::Cascm] * edit(): Checkout und Checkin korrigiert * view(): Emacs auf Readonly-Buffer umgestellt * findItem(): Suche ohne Verankerung * showPackage(): Redundante Einträge beseitigt [Quiq::Database::ResultSet] * Kosmetik [Quiq::Excel::Writer] * Klasse hinzugefügt [Quiq::MediaWiki::Client] * editPage(): Behandlung von CAPTCHAs hinzugefügt [Quiq::Object] * parameters(): hinzugefügt [Quiq::Parameters] * extract(): Schnelle Rückkehr bei leerer Parameterliste [Quiq::Path] * nextFile(): hinzugefügt [Quiq::Program] * parameters(): Sloppy-Modus hinzugefügt [Quiq::Shell] * exec(): -outputTo hinzugefügt - Umleitung der gesamten Ausgabe [Quiq::String] * maxLineLength(): hinzugefügt [Quiq::Table] * Kolumnennamen optional [Quiq::TableRow] * Kolumnennamen optional [Quiq::Xml::LibXml] * Methode lookup() hinzugefügt 1.145 2019-06-04 ================ [Quiq::Epoch] * Test ISO-Zeitangabe korrigiert. 1.144 2019-06-04 ================ [Quiq::Config] * Konstruktor umgeschrieben. [Quiq::ContentProcessor] * Methode fetch() durch fetchToDir(), fetchToFile() ersetzt. [Quiq::Epoch] * ISO-Zeitangabe als neues Konstruktorargument. * Methode loacaltime() hinzugefügt. [Quiq::Formatter] * Testcode verbessert. [Quiq::Path] * Methode checkFileSecurity() verbessert. [Quiq::Sql] * Doku bearbeitet. 1.143 2019-06-01 ================ [Quiq::Formatter] * Tests von Methode reducedIsoTime() verbessert 1.142 2019-05-31 ================ [Quiq::Formatter] * Methode reducedIsoTime() um ISO-Zeitangaben erweitert. [Quiq::Path] * Um Methode edit() erweitert. [Quiq::Table] * Doku bearbeitet. [Quiq::TableRow] * Doku bearbeitet. [Quiq::Terminal] * Doku bearbeitet. 1.140 2019-05-16 ================ [Quiq::Cascm] * Methode edit() um automatischen demoten und promoten erweitert * Logausgabe SQL optional gemacht [Quiq::ColumnFormat] * Klasse durch Klasse Quiq::Properties ersetzt [Quiq::Database::Connection] * Cachepfad um UDL ergänzt * Doku tableDiff() erweitert [Quiq::Database::DataAnalysis] * Klasse implementiert [Quiq::Database::ResultSet] * Methode formats() auf Quiq::Properties umgestellt [Quiq::Gnuplot::*] * Klassen hinzugefügt [Quiq::Parameters] * Methode extractToObject() hinzugefügt [Quiq::Path] * Methode nexExtension() hinzugefügt [Quiq::Properties] * Klasse hinzugefügt [Quiq::Sdoc::*] * Klassen entfernt [Quiq::Ssh] * Klasse hinzugefügt [Quiq::Table] * Klasse hinzugefügt [Quiq::TableRow] * Klasse hinzugefügt [Quiq::Udl] * Kosmetik 1.139 2019-05-01 ================ [Quiq::AnsiColor] * Doku bearbeitet [Quiq::Cascm] * Methode edit() verbessert * Methode view() hinzugefügt * Methode repoFileToFile() hinzugefügt [Quiq::CommandLine] * Methode addOption() verbessert, so dass Optionen übergangen werden, die keinen Wert haben. [Quiq::Database::ResultSet::Object] * Doku bearbeitet [Quiq::Database::Connection] * Methode schemas() hinzugefügt * Methode tableDiff() hinzugefügt [Quiq::Database::ResultSet] * Methode asTable() verallgmeinert, dass die Titelliste des ResultSet von der Titelliste der Rows abweichen kann. [Quiq::Parameters] * Doku bearbeitet 1.138 2019-04-22 ================ [Quiq::Database::Connection] * Optionales Caching von Ergebnismengen hinzugefügt [Quiq::Database::Cursor] * Optionales Caching von Ergebnismengen hinzugefügt [Quiq::Html::Table::List] * Erzeugung Footer hinzugefügt [Quiq::Html::Page] * JavaScript-Code kann im Header oder am Ende der Seite plaziert werden [Quiq::JQuery::DataTable] * Erzeugung Footer hinzugefügt [Quiq::Cascm] * Operationen edit() und showPackage() hinzugefügt [Quiq::Digest] * Klasse hinzugefügt [Quiq::Duration] * Zeitformatierung und secondsToString() verbessert [Quiq::FileHandle] * read() korrigiert * Methoden writeData() und readData() hinzugefügt [Quiq::Program] * Methode log() hinzugefügt [Quiq::Sql] * Methode commands() hinzugefügt * Behandlung von undef in Methode whereClause() hinzugefügt [Quiq::TempFile] * Tilde-Expansion ergänzt 1.137 2019-03-30 ================ Kwalitee Issues bearbeitet. 1.136 2019-03-30 ================ Link-Generierung für POD verbessert. [Quiq::Database::Api::Dbi::Connection] * DBMS MSSQL eingeführt. [Quiq::Database::Connection] * DBMS MSSQL eingeführt. [Sdoc2::Node] * Link-Generierung für POD korrigiert. [Quiq::Cascm] * Methode movePackage() hinzugefügt. * Methode demoteToBase() entfernt. [Quiq::Hash] * Akzessoren zu lvalue-Methoden gemacht. [Quiq::Program] * Zeitmessung durch Methode elapsed() eingeführt. [Quiq::Shell] * Tilde-Expansion zu cd() hinzugefügt. [Quiq::Sql] * DBMS MSSQL eingeführt. [Quiq:: TreeFormatter] * Parameter $level zu Callback-Methode hinzugefügt. [Quiq::Udl] * DBMS MSSQL eingeführt. 1.135 2019-03-02 ================ [Quiq::Database::ResultSet] Konstruktor um Default-Klasse erweitert. In asTable() rows und time vertauscht. [Quiq::MediaWiki::Client] Upload von Dateien verbessert. [Quiq::Cascm] Klasse umfangreich erweitert. [Quiq::Parallel] Tilde-Expansion zu Outputfile hinzugefügt. [Quiq::Path] Option -unindent zu write() hinzugefügt. Methode expandTilde() auf Pfad '~' korrigiert. Kosmetik an Methode glob(). [Quiq::Shell] Callback-Option logRewrite => sub{} eingeführt. [Quiq::TreeFormatter] Darstellungen 'up' und 'down' eingeführt. 1.134 2019-02-10 ================ [Quiq::System] Test, der einen Reverse-DNS Eintrag erfordert, entfernt. 1.133 2019-02-09 ================ [Quiq::Array] Methode compare() in different() umbenannt (alter Name als Alias). [Quiq::Cascm] Klasse überarbeitet/erweitert. [Quiq::FileHandle] Methode slurpFromStdin() hinzugefügt. [Quiq::Parallel] Sammeln der Prozessausgabe in getrennten Dateien hinzugefügt (Optionen -outputDir, -outputFile) [Quiq::Path] Methode write() um Option .lock erweitert (für Nutzung via append()) Methode truncate() hinzugefügt. [Quiq::Progress] Doku bearbeitet. [Quiq::Process] Methode user() um parameterlose Fassung erweitert (eigener Benutzername). 1.132 2019-01-27 ================ In der Doku global Abschnitt SEE ALSO vorgezogen. [Quiq::Cascm] Authentisierung mit verschlüsseltem Passwort credentialsOptions() hinzugefügt. Methoden addFiles(), putFiles(), checkin(), checkout(), createPackage(), deletePackage(), demote(), promote(), version(), deleteVersion() hinzugefügt. [Quiq::FileHandle] Tilde-Expansion zu new()/open() hinzugefügt. [Quiq::MediaWiki::Client] Von Quiq::MediaWiki::Api umbenammt. Methode load() implementiert. Doku überarbeitet. [Quiq::Path] Tilde-Expansion zu compare() hinzugefügt. [Quiq::Record] Format @@KEY@@ hinzugefügt. 1.131 2019-01-21 ================ [Quiq::MediaWiki::Api] Request siteInfo() hinzugefügt. [Quiq::MediaWiki::Markup] Codeerzeugung image() hinzugefügt. [Quiq::Concat] Doku bearbeitet. [Quiq::Parameters] Methode extractPropertiesToObject() hinzugefügt. 1.130 2019-01-19 ================ [Quiq::Database::ResultSet] In asTable() Datensatzzähler und Ausführungszeit vertauscht. [Quiq::Html::Listing] Warning im Zusammenhang mit x-Operator behoben. [Quiq::MediaWiki::Api] Konstruktor-Option -warnings hinzugefügt. Methode loadPage() hinzugefügt. [Sdoc2::Code] Kosmetik. [Quiq::AnsiColor] Methode active() hinzugefügt. [Quiq::Config] Konstruktor-Option -secure hinzugefügt. [Quiq::Converter] Methode doubleDecode() hinzugefügt. [Quiq::Hash] Fehlermeldung bei nicht-existentem Schlüssel verbessert. [Quiq::Path] Methode checkFileSecurity() hinzugefügt. [Sdoc2] Methoden code(), paragraph() hinzugefügt. Methode section() verallgemeinert. [Quiq::Stacktrace] Kosmetik. 1.129 2019-01-12 ================ Bibliothek umbenannt von Prty in Quiq. 1.128 2019-01-06 ================ [Quiq::MediaWiki::Markup] POD-Fehler behoben. [Quiq::Test::Class] Durch skipTest() verursachte Meldungen à la "does not map to ascii" behoben. [Quiq::TempDir] Test bei Setzung von TMPDIR korrigiert. [Quiq::TempFile] Test bei Setzung von TMPDIR korrigiert. 1.126 2019-01-06 ================ [Quiq::Confluence::Client] Doku bearbeitet. [Quiq::Confluence::Markup] Doku bearbeitet. [Quiq::Confluence::Page] Von Data::Printer auf Quiq::Debug umgestellt. [Quiq::Database::Resultset] Methode asString() um Option -info erweitert. [Quiq::LaTeX::LongTable] Alignment-Erkennung auf erstes Zeichen beschränkt. [Quiq::MediaWiki::Api] Klasse Quiq::MediaWiki::Client Quiq::MediaWiki::Api umbenannt. [Quiq::MediaWiki::Loader] Klasse hinzugefügt. [Quiq::MediaWiki::Markup] Tabellen und Listen hinzugefügt. [Quiq::MediaWiki::Page] Klasse entfernt. [Quiq::Test::Class] Doku bearbeitet. [Quiq::AnsiColor] Default für Konstruktorargument. [Quiq::AsciiTable] Von FileHandle auf split() umgestellt. [Quiq::Cascm] Klasse hinzugefügt. [Quiq::ColumnFormat] Formatstring für numerische Werte umgestellt, da Problem bei großen Werten. [Quiq::Debug] Methode dump() zur Ausgabe von Datenstrukturen hinzugefügt. [Quiq::FileHandle] Option -createDir auf Dateischreiben eingeschränkt. [Quiq::Parameters] Methoden extractPropertiesToVariables(), extractToVariables() hinzugefügt. [Quiq::Path] Methoden copyToDir(), encoding(), findProgram(), exists() hinzugefügt. Begonnen, Tilde-Expansion hinzuzufügen. [Quiq::Process] Methoden-Alias cd() für cwd() hinzugefügt. [Quiq::Program] Methode parameters() hinzugefügt. [Quiq::Record] Behandlung von Encoding hinzugefügt. [Quiq::Shell] Attribut cmdAnsiColor hinzugefügt. [Quiq::Storable] Methode memoize() hinzugefügt. [Quiq::TempDir] Klasse hinzugefügt. [Quiq::TempFile] Klasse hinzugefügt. [Quiq::Time] Zeitformat YYYYMMDD hinzugefügt. [Quiq::TreeFormatter] Stop-Erkennung und -Formatierung hinzugefügt. [Quiq::Udl] UDL-Zerlegung reimplementiert, damit Quoting von Metazeichen möglich ist. 1.125 2018-10-21 ================ [Quiq::Test::Class] Umlaute in Ausgabe von skipTest(), skipAllTests() konvertiert 1.124 2018-03-02 ================ Zahlreiche Erweiterungen. 1.123 2018-01-30 ================ [Quiq::AsciiTable] Klasse hinzugefügt. [Quiq::LaTeX::Generator] Methoden hinzugefügt. [Quiq::LaTeX::LongTable] Klasse hinzugefügt. [Quiq::Unindent] Methode trimNL() hinzugefügt. 1.122 2018-01-23 ================ Kosmetik. Kleinere Erweiterungen. [Quiq::LaTeX::Generator] Klasse hinzugefügt [Quiq::LineProcessor] Ehedem Quiq::TextFile. Erweitert. [Quiq::LineProcessor::Line] Ehedem Quiq::TextFile::Line. Erweitert. 1.121 2017-12-03 ================ [Quiq::AnsiColor] Klasse hinzugefügt. [Quiq::CommandLine] Klasse hinzugefügt. [Quiq::Config] Konstruktor um Tilde-Expansion erweitert. [Quiq::ContentProcessor] Methode commit() um Option -incomplete erweitert. Methode load() überarbeitet. [Quiq::ContentProcessor::*] Dokumentation bearbeitet. [Quiq::Database::ResultSet::Object] Methode index() um Option -unique erweitert. [Fibu::*] Klassen hinzugefügt. [Quiq::FFmpeg] Methode extract169To43() um Default für fehlenden xOffset erweitert. [Quiq::Hash] Methode push() um das Pushen mehrerer Elemente erweitert. Methode unshift() hinzugefügt. Methode addNumber() hinzugefügt. [Quiq::Math] Diverse Methoden hinzugefügt. [Quiq::Path] Bei Methode delete() undefinierten Pfad berücksichtigt. Bei Methode expandTilde() Exception, wenn $HOME nicht definiert ist. [Quiq::Shell] In Methode exec() Ermittlung des Exitcode korrigiert. [Quiq::Sql] In Methode opIN() zurückgenommen, das Wert als Ausdruck interpretiert wird. [Quiq::Template] Methode replace() liefert nun Referenz auf das Template-Objekt und Keys werden in Regex geschützt. [Quiq::Test::Class] Methode floatIs() um Angabe von Nachkommastellen erweitert. [Quiq::TreeFormatter] Klasse hinzugefügt. 1.120 2017-08-13 ================ [Quiq::Array] Methoden compare(), eq(), pick() hinzugefügt. [Quiq::Confluence::Client] Methode createAttachment() hinzugefügt. [Quiq::DestinationTree] Option -dryRun hinzugefügt. [Quiq::Hash] Doku bearbeitet. [Quiq::Http::Client::Message] Doku bearbeitet. [Quiq::JavaScript] Methode line() hinzugefügt. [Quiq::Math] Methode radToDegree() hinzugefügt. [Quiq::Path] In Methode copy() Behandlung der Option -createDir hinter das Öffnen der Quelldatei verschoben. [Quiq::Section::Object] Methode add() hinzugefügt. [Quiq::Test::Class] Methode isClass() hinzugefügt. 1.119 2017-07-15 ================ [Quiq::Pod::Generator] Eingerückter Code wird nun getrimmt. [Quiq::Test::Class] ClassLoader entfernt. Die von Tests benötigten Klassen müssen nun explizit geladen werden. [Quiq::Hash] Methode isLocked() versions-portabel gemacht. 1.118 2017-07-13 ================ Perl - erforderliche Version auf 5.10.0 gesenkt. File::Rsync - erforderliche Version auf 0.49 gehoben (in Version 0.43 wird Option -delete nicht verstanden) [Quiq::Hash] Klasse umgeschrieben, so dass Hash::Util::hash_unlocked() nicht mehr genutzt wird, da die Funktion in Perl < 5.18.0 nicht funktioniert. Debug-Modus entfernt. [Quiq::Object] Methode bless() umgeschrieben, so dass Hash::Util::hash_unlocked() nicht mehr genutzt wird. [Quiq::Path] Methode copy() um Optionen -move und -overwrite ergänzt. [Quiq::Sql] IN-Klausel-Werte werden jetzt generell als Stringliterale eingesetzt. 1.117 2017-07-09 ================ Datei LICENSE hinzugefügt. [Quiq::Ipc] Testfall für Exitcode != 0 angepasst, so dass auch bei schneller Ausführung von false(1) kein SIGPIPE ausgelöst wird. [Quiq::Option] Argumente, die undef sind, lösen keine Warning mehr aus. 1.116 2017-07-09 ================ [Quiq::Hash] Unsinnigen Test auf gleiche Bucket-Größe nach clear() entfernt, da unportabel. Die zulässigen Keys in einem Restricted Hash bleiben in neueren Perl-Versionen nicht erhalten. Setzen von Bucket-Größe via buckets() entfernt, da unportabel. In neueren Perl-Versionen nicht mehr möglich. [Quiq::Test::Class] Methode floatIs() hinzugefügt. [Quiq::Math] Rundung bei Vergleich von Float-Werten zum Testcode hinzugefügt. [Quiq::Timeseries::Synchronizer] Rundung bei Vergleich von Float-Werten zum Testcode hinzugefügt.