Subject: [bug#63894] [PATCH 07/55] gnu: Add perl-sql-translator.

From: Antero Mejr <[email-masked]>
Date: Sun, 4 Jun 2023 17:42:01 +0000

* gnu/packages/databases.scm (perl-sql-translator): New variable.
---
 gnu/packages/databases.scm | 52 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 99b0fc87bd..a587ab30bc 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -2440,6 +2440,58 @@ (define-public perl-sql-tokenizer
 valid SQL query.")
     (license license:perl-license)))
 
+(define-public perl-sql-translator
+  (package
+    (name "perl-sql-translator")
+    (version "1.63")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "mirror://cpan/authors/id/V/VE/VEESH/SQL-Translator-"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "0cric118ms3dcnb3m2a1jdhdxmai8wwp5jbx34mf72s9jd6b11aq"))))
+    (build-system perl-build-system)
+    (native-inputs (list perl-file-sharedir-install
+                         perl-json-maybexs
+                         perl-test-differences
+                         perl-test-exception
+                         perl-test-most
+                         perl-xml-writer
+                         perl-yaml))
+    (propagated-inputs (list perl-carp-clan
+                             perl-dbi
+                             perl-file-sharedir
+                             perl-gd
+                             perl-graph
+                             perl-graphviz
+                             perl-moo
+                             perl-package-variant
+                             perl-parse-recdescent
+                             perl-spreadsheet-parseexcel
+                             perl-strictures-2
+                             perl-sub-quote
+                             perl-template-toolkit
+                             perl-text-recordparser
+                             perl-try-tiny
+                             perl-xml-libxml))
+    (home-page "https://metacpan.org/release/SQL-Translator")
+    (synopsis "Manipulate structured data definitions (SQL and more)")
+    (description
+     "@code{SQL::Translator} is a group of Perl modules that converts
+vendor-specific SQL table definitions into other formats, such as other
+vendor-specific SQL, ER diagrams, documentation (POD and HTML), XML, and
+@code{Class::DBI} classes. The main focus is SQL, but parsers exist for other
+structured data formats, including Excel spreadsheets and arbitrarily
+delimited text files. Through the separation of the code into parsers and
+producers with an object model in between, it's possible to combine any parser
+with any producer, to plug in custom parsers or producers, or to manipulate
+the parsed data via the built-in object model. Presently only the definition
+parts of SQL are handled (CREATE, ALTER), not the manipulation of
+data (INSERT, UPDATE, DELETE).")
+    (license license:perl-license)))
+
 (define-public unixodbc
   (package
    (name "unixodbc")
-- 
2.39.2