# HG changeset patch
# User František Kučera
# Date 1547843698 -3600
# Node ID f71d300205b72c687a4ae2a2e8fe69ce4c9dba7b
# Parent d81c623de7881460ece6f69f0b82f2bea9ebdecc
Release v0.9
diff -r d81c623de788 -r f71d300205b7 relpipe-data/css/relpipe.css
--- a/relpipe-data/css/relpipe.css Fri Jan 18 13:18:54 2019 +0100
+++ b/relpipe-data/css/relpipe.css Fri Jan 18 21:34:58 2019 +0100
@@ -76,3 +76,7 @@
#text code {
color: #066;
}
+
+.already-implemented {
+ color: grey;
+}
\ No newline at end of file
diff -r d81c623de788 -r f71d300205b7 relpipe-data/download.xml
--- a/relpipe-data/download.xml Fri Jan 18 13:18:54 2019 +0100
+++ b/relpipe-data/download.xml Fri Jan 18 21:34:58 2019 +0100
@@ -52,6 +52,7 @@
- 2018-12-20: v0.8
+ - 2019-01-18: v0.9
diff -r d81c623de788 -r f71d300205b7 relpipe-data/examples.xml
--- a/relpipe-data/examples.xml Fri Jan 18 13:18:54 2019 +0100
+++ b/relpipe-data/examples.xml Fri Jan 18 21:34:58 2019 +0100
@@ -817,7 +817,7 @@
@@ -825,7 +825,7 @@
+
+
+
+
+
+
+
+ ~ since
+
+
+
+
+
+
+
+
+
+
+
+
diff -r d81c623de788 -r f71d300205b7 relpipe-data/release-v0.9.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/relpipe-data/release-v0.9.xml Fri Jan 18 21:34:58 2019 +0100
@@ -0,0 +1,100 @@
+
+
+ Release v0.9
+ second public release of Relational pipes
+ v0.9
+
+
+
+ We are pleased to introduce you the new version of .
+ It brings several important features:
+
+
+
+ -
+ XML input and output:
+ offers lossless bidirectional conversion between relational format and text.
+ Can be used for manual modifications or reviews.
+ XML form of relational data can be generated or consumed by XQuery or XSLT processors or other XML tools.
+
+
+ -
+ CSV input and output:
+ CSV is a standard format defined in RFC 4180.
+ It is very simple, lacks data types and can contain only a single relation.
+ Despite this, it is very useful when integrating with other tools.
+ At the end of our pipeline, we can put
relpipe-out-csv
, feed the relation to e.g. GNU R and compute some statistics or generate some nice graphs.
+
+
+ -
+ Filesystem input: this input filter reads file paths (usually generated by the
find
command)
+ and fetches metadata of given files. Supports various name/path formats, size, owner, symlinks… and extended attributes (xattr).
+ The output can be customized using CLI arguments.
+ This tool can be used to catalogue disk contents, search files or to collect data for some statistics like:
+ How much space does files in particular formats occupy? or
+ From which domains I download files most often?
+ Other use case is: save the output of relpipe-in-filesystem
in a file and use it as an index of our files (even on offline media).
+
+
+
+ See the examples page for details.
+
+
+ Data types
+
+ - boolean
+ - variable unsigned integer (prototype)
+ - string in UTF-8
+
+ Inputs
+
+ - XML
+ - CSV
+ - file system
+ - CLI
+ - fstab
+
+ Transformations
+
+ - grep: regular expression filter, removes unwanted records from the relation
+ - cut: regular expression attribute cutter (removes or duplicates attributes and can also DROP whole relation)
+ - sed: regular expression replacer
+ - validator: just a pass-through filter that crashes on invalid data
+ - python: highly experimental
+
+ Outputs
+
+ - CSV
+ - tabular
+ - XML
+ - nullbyte
+ - GUI in Qt
+ - ODS (LibreOffice)
+
+
+
+ Instalation was tested on Debian GNU/Linux 9.6.
+ The process should be similar on other distributions.
+
+
+
+
+
+ are modular thus you can download and install only parts you need (the libraries are needed always).
+ Tools out-gui.qt
and tr-python
require additional libraries and are not built by default.
+
+
+
+ The module relpipe-in-filesystem
uses C++ filesystem API which is supported since GCC 8.
+ This module can be compiled and seems usable even with GCC 6, but requires some patching (switch to the experimental API):
+
+
+ @#include @g' -i "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/FileAttributeFinder.h "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/XattrAttributeFinder.h "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/FilesystemCommand.h "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/AttributeFinder.h
+sed 's@std::filesystem@std::experimental::filesystem@g' -i "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/FileAttributeFinder.h "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/XattrAttributeFinder.h "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/FilesystemCommand.h "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/AttributeFinder.h
+sed 's/.*PROPERTY CXX_STANDARD.*/#\0/g' -i "$RELPIPE_SRC"/relpipe-in-filesystem.cpp/src/CMakeLists.txt]]>
+
+
+
+
diff -r d81c623de788 -r f71d300205b7 relpipe-data/roadmap.xml
--- a/relpipe-data/roadmap.xml Fri Jan 18 13:18:54 2019 +0100
+++ b/relpipe-data/roadmap.xml Fri Jan 18 21:34:58 2019 +0100
@@ -12,7 +12,11 @@
Releases after v1.0.0 should follow the rules of Semantic versioning.
- v0.9, v0.10, v0.11 etc.
+
+ Released versions are described on the download page.
+
+
+ v0.10, v0.11, v0.12 etc.
Releases for discussion and verification of the format and API design.
@@ -40,23 +44,17 @@
Inputs
-
- - XML
- - DSV
- - regular expression
-
+ Probably no new ones before v1.0.0.
+
Transformations
Outputs
-
- - CLI: null-byte separated values
-
+ Probably no new ones before v1.0.0.
Other tasks
- - review the build system (probably use cmake in all modules)
- pkg-config: version numbers, debug vs. release
- automated complex tests (specification vs. implementation compliance)
- verify the format from the performance point of view
@@ -77,7 +75,11 @@
- relpipe-lib-reader
- relpipe-in-cli
- relpipe-out-tabular
+ - relpipe-in-xml
- relpipe-out-xml
+ - relpipe-in-csv
+ - relpipe-out-csv
+ - relpipe-out-ods
@@ -117,6 +119,7 @@
Formats:
+ - regular expression (regex groups → attributes)
- XML: as xmlTable() in SQL
- ODS (LibreOffice)
- iCalendar