From a0e92061640404afa7e81fa9dd48e5446d3ab5ce Mon Sep 17 00:00:00 2001 From: Nigel Lutale Date: Fri, 24 Oct 2025 10:43:41 +0100 Subject: [PATCH 1/2] Update 1.4.0 to 1.4.1 --- .../add-path-substitution.png | Bin images/{1.4.0 => 1.4.1}/bad-total-columns.png | Bin .../edit-file-substitution.png | Bin images/{1.4.0 => 1.4.1}/file-open.png | Bin .../filepath-text-box-populated.png | Bin .../gui-file-selects-highlighted.png | Bin .../highlight-settings-arrow.png | Bin images/{1.4.0 => 1.4.1}/main-screen.png | Bin ...opened-create-substitution-highlighted.png | Bin images/{1.4.0 => 1.4.1}/settings-opened.png | Bin .../settings-with-entered-substitution.png | Bin .../validation-error-checksum-mismatches.png | Bin .../validation-errors-various.png | Bin .../version-declaration-error.png | Bin index.html | 50 +++++++++--------- 15 files changed, 25 insertions(+), 25 deletions(-) rename images/{1.4.0 => 1.4.1}/add-path-substitution.png (100%) rename images/{1.4.0 => 1.4.1}/bad-total-columns.png (100%) rename images/{1.4.0 => 1.4.1}/edit-file-substitution.png (100%) rename images/{1.4.0 => 1.4.1}/file-open.png (100%) rename images/{1.4.0 => 1.4.1}/filepath-text-box-populated.png (100%) rename images/{1.4.0 => 1.4.1}/gui-file-selects-highlighted.png (100%) rename images/{1.4.0 => 1.4.1}/highlight-settings-arrow.png (100%) rename images/{1.4.0 => 1.4.1}/main-screen.png (100%) rename images/{1.4.0 => 1.4.1}/settings-opened-create-substitution-highlighted.png (100%) rename images/{1.4.0 => 1.4.1}/settings-opened.png (100%) rename images/{1.4.0 => 1.4.1}/settings-with-entered-substitution.png (100%) rename images/{1.4.0 => 1.4.1}/validation-error-checksum-mismatches.png (100%) rename images/{1.4.0 => 1.4.1}/validation-errors-various.png (100%) rename images/{1.4.0 => 1.4.1}/version-declaration-error.png (100%) diff --git a/images/1.4.0/add-path-substitution.png b/images/1.4.1/add-path-substitution.png similarity index 100% rename from images/1.4.0/add-path-substitution.png rename to images/1.4.1/add-path-substitution.png diff --git a/images/1.4.0/bad-total-columns.png b/images/1.4.1/bad-total-columns.png similarity index 100% rename from images/1.4.0/bad-total-columns.png rename to images/1.4.1/bad-total-columns.png diff --git a/images/1.4.0/edit-file-substitution.png b/images/1.4.1/edit-file-substitution.png similarity index 100% rename from images/1.4.0/edit-file-substitution.png rename to images/1.4.1/edit-file-substitution.png diff --git a/images/1.4.0/file-open.png b/images/1.4.1/file-open.png similarity index 100% rename from images/1.4.0/file-open.png rename to images/1.4.1/file-open.png diff --git a/images/1.4.0/filepath-text-box-populated.png b/images/1.4.1/filepath-text-box-populated.png similarity index 100% rename from images/1.4.0/filepath-text-box-populated.png rename to images/1.4.1/filepath-text-box-populated.png diff --git a/images/1.4.0/gui-file-selects-highlighted.png b/images/1.4.1/gui-file-selects-highlighted.png similarity index 100% rename from images/1.4.0/gui-file-selects-highlighted.png rename to images/1.4.1/gui-file-selects-highlighted.png diff --git a/images/1.4.0/highlight-settings-arrow.png b/images/1.4.1/highlight-settings-arrow.png similarity index 100% rename from images/1.4.0/highlight-settings-arrow.png rename to images/1.4.1/highlight-settings-arrow.png diff --git a/images/1.4.0/main-screen.png b/images/1.4.1/main-screen.png similarity index 100% rename from images/1.4.0/main-screen.png rename to images/1.4.1/main-screen.png diff --git a/images/1.4.0/settings-opened-create-substitution-highlighted.png b/images/1.4.1/settings-opened-create-substitution-highlighted.png similarity index 100% rename from images/1.4.0/settings-opened-create-substitution-highlighted.png rename to images/1.4.1/settings-opened-create-substitution-highlighted.png diff --git a/images/1.4.0/settings-opened.png b/images/1.4.1/settings-opened.png similarity index 100% rename from images/1.4.0/settings-opened.png rename to images/1.4.1/settings-opened.png diff --git a/images/1.4.0/settings-with-entered-substitution.png b/images/1.4.1/settings-with-entered-substitution.png similarity index 100% rename from images/1.4.0/settings-with-entered-substitution.png rename to images/1.4.1/settings-with-entered-substitution.png diff --git a/images/1.4.0/validation-error-checksum-mismatches.png b/images/1.4.1/validation-error-checksum-mismatches.png similarity index 100% rename from images/1.4.0/validation-error-checksum-mismatches.png rename to images/1.4.1/validation-error-checksum-mismatches.png diff --git a/images/1.4.0/validation-errors-various.png b/images/1.4.1/validation-errors-various.png similarity index 100% rename from images/1.4.0/validation-errors-various.png rename to images/1.4.1/validation-errors-various.png diff --git a/images/1.4.0/version-declaration-error.png b/images/1.4.1/version-declaration-error.png similarity index 100% rename from images/1.4.0/version-declaration-error.png rename to images/1.4.1/version-declaration-error.png diff --git a/index.html b/index.html index 0652accc..3a5003c0 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ - CSV Validator 1.4.0 + CSV Validator 1.4.1 @@ -54,11 +54,11 @@

CSV Validator is a CSV validation and reporting tool which implements CSV Schema Language. Released as Open Source under the Mozilla Public Licence version 2.0. - This page is for CSV Validator 1.4.0 (and related minor releases), the equivalent page for the previous releases can now found at csv-validator-1.0.html, csv-validator-1.1.html + This page is for CSV Validator 1.4.1 (and related minor releases), the equivalent page for the previous releases can now found at csv-validator-1.0.html, csv-validator-1.1.html and csv-validator-1.3.0.html.

@@ -91,9 +91,9 @@

Background

-

New features in Version 1.4.0

+

New features in Version 1.4.1

- A full list of changes associated with CSV Validator 1.4.0 can be found in the release notes. + A full list of changes associated with CSV Validator 1.4.1 can be found in the release notes.

@@ -102,18 +102,18 @@

Installing the CSV Validator

The core of the CSV Validator is written in Scala 2.13, Scala runs in the JVM and requires Java 21 or newer to be available. For our Windows users, we include a JRE (64-bit Java 21 Runtime) with the distribution package. For non-Windows users, you will need to have Java (21+) installed on your computer in order to run the latest version of CSV Validator. The release build is published from the source code repository - on GitHub to Maven Central. Current release (as of 6 March 2025), Version 1.4.0. + on GitHub to Maven Central. Current release (as of 2 October 2025), Version 1.4.1.

- CSV Validator 1.4.0 comes with 2 distribution packages. + CSV Validator 1.4.1 comes with 2 distribution packages.

    -
  • csv-validator-distribution-1.4.0-bin-win64-with-jre.zip: This package has a 64-bit JRE bundled with it. If you are a Windows OS user and do not manage your +
  • csv-validator-distribution-1.4.1-bin-win64-with-jre.zip: This package has a 64-bit JRE bundled with it. If you are a Windows OS user and do not manage your own java installation, this package is most suitable for you
  • -
  • csv-validator-distribution-1.4.0-bin.zip: This package comprises only the binary files of CSV Validator. If you are a Linux or Mac user, this package is +
  • csv-validator-distribution-1.4.1-bin.zip: This package comprises only the binary files of CSV Validator. If you are a Linux or Mac user, this package is most suitable for you. If you are a Windows user who wants to use your own version of Java, you can use this package
- To install, download the appropriate distribution package from maven central or - GitHub release page. Once downloaded, simply extract the entire contents of the zip to your + To install, download the appropriate distribution package from maven central or + GitHub release page. Once downloaded, simply extract the entire contents of the zip to your desired installation location. The packages have .bat (for Windows OS) and shell scripts (for Linux, Mac) to launch the command line tool or the GUI application. The package also has a text file (running-csv-validator.txt) that has detailed instructions about running the CSV Validator.

@@ -130,7 +130,7 @@

Starting the GUI

You should then see the following:

- The basic GUI, boxes to enter file names for data and schema, 'Validate' button, text box for output + The basic GUI, boxes to enter file names for data and schema, 'Validate' button, text box for output

Selecting metadata and schema for validation

@@ -145,14 +145,14 @@

Selecting metadata and schema for validation

Select the files via the dialog window

In order to select the files via a dialog window, click the buttons labelled "Choose..." (highlighted in the image below):

- Part of GUI, showing in detail, the boxes to enter file names for data and schema, file open dialog buttons highlighted in yellow + Part of GUI, showing in detail, the boxes to enter file names for data and schema, file open dialog buttons highlighted in yellow

This will open up a standard File picker dialog. The dialog only shows the files of the type being chosen. You can navigate to the file you want to choose in the file system and select it:

- Standard file open dialog, with CSV file selected + Standard file open dialog, with CSV file selected

Clicking "OK" will populate the related text box:

- Part of GUI, showing completed CSV file text box + Part of GUI, showing completed CSV file text box This location will be remembered for subsequent file selections.

Drag and drop the files onto the application

Go to your file explorer, select the file(s) (you can either drop the files one by one or both together) and drag and drop them onto the application. @@ -167,7 +167,7 @@

Using Settings

(note that there is one additional option at the command line that is not available within Settings, to produce a detailed report on the parse of the schema itself). To open up Settings, click on the downward-facing double arrow below the file dialog buttons (highlighted below):

- Part of GUI, highlighting Settings box + Part of GUI, highlighting Settings box

Having opened up Settings, you will see that there are 8 sets of options:

    @@ -189,7 +189,7 @@

    Using Settings

  1. Path Substitutions

- Part of GUI, showing opened Settings section + Part of GUI, showing opened Settings section

Maximum number of errors to display

This setting will determine the number of lines of errors that are output in the output pane; it is set to 2000 by default.

@@ -261,11 +261,11 @@
Creating Path Substitutions

To create a Path Substitution in the GUI, click the "Add Path Substitution..." button (highlighted):

- Part of GUI, showing 'Add Path Substitution...' button highlighted + Part of GUI, showing 'Add Path Substitution...' button highlighted

This will open a popup:

- Popup window for entering substitution 'find-and-replace' + Popup window for entering substitution 'find-and-replace'

If the "identifier" column in your CSV is present, CSV Validator will look through it and find the parent folder for the files and then add it to the "From:" box for you, automatically. If the "from" box has not been automatically populated, manually enter the top-level folder (as a text string) that all the file paths in the supplied CSV belong to (this string should be contained in the file paths), @@ -277,7 +277,7 @@

Creating Path Substitutions
C:\test-data\MUPT_2\content\ (where they are now) in order to check for their existence and verify the associated checksums. We enter the folder paths into the "From:" and "To:" boxes respectively, and click OK; this gives:

- Popup window for entering substitution 'find-and-replace' + Popup window for entering substitution 'find-and-replace'

Creating a Path Substitution in this way is equivalent to running via the Command Line with the -p or --path flags and supplying a key:value pair. @@ -327,12 +327,12 @@

Schema Errors

column definitions included in the schema (e.g. @totalColumns = 9 but number of columns defined = 10 at line: 2, column: 1).

- @totalColumns = 9 but number of columns defined = 10 at line: 2, column: 1 + @totalColumns = 9 but number of columns defined = 10 at line: 2, column: 1

The schema itself is always checked before validation of the data begins, and schema errors always terminate the validation. If the Version Declaration has been omitted from the schema, or is incorrect, you will see a schema error saying that the Version Declaration is not present (eg [1.1] failure: version 1.0 missing or incorrect); you will also see this if you accidentally put the filepath for the CSV data file into the field for the schema and vice versa:

- [1.1] failure: version 1.0 missing or incorrect
+						<img src= + Error:   checksum(file($file_path), "SHA-256") file "file:///TEST_1/1/1/1_1_001.xml" checksum match fails for line: 1, column: file_checksum, value: "fb58b56a17af0f52cf794c108e0c1574a3a2c02b25e22699668bb43801028432". Computed checksum value:"16f5e200047a0b71bea821ea6db7c3a79605079baae96940a1ec8bb0d6ab4d6d"" " id="checksumErr1">
 Error:   checksum(file($file_path), "SHA-256") file "file:///TEST_1/1/1/1_1_001.xml" checksum match fails for line: 1, column: file_checksum, value: "fb58b56a17af0f52cf794c108e0c1574a3a2c02b25e22699668bb43801028432". Computed checksum value:"16f5e200047a0b71bea821ea6db7c3a79605079baae96940a1ec8bb0d6ab4d6d"
 FAIL
@@ -355,7 +355,7 @@ 

Validation Errors

The next image shows a more varied selection of Validation Errors, and demonstrates that the basic format of the error messages is consistent:

- Various validation errors starting with 'Error:   ' are demonstrated + Various validation errors starting with 'Error:   ' are demonstrated

The full text of each of these example error messages is shown below, the errors are:

    @@ -414,7 +414,7 @@

    Starting the CSV Validator at the command line

Subsequently, executing with the --help argument, should produce the following help text:

-CSV Validator - Command Line 1.4.0
+CSV Validator - Command Line 1.4.1
 Usage: validate [options] <csv-path> <csv-schema-path>
 
   --help

From 897cdc58d23d8bb2d9d2afa6a36241d9be00a577 Mon Sep 17 00:00:00 2001
From: Nigel Lutale 
Date: Fri, 24 Oct 2025 10:56:18 +0100
Subject: [PATCH 2/2] Doc corrections

---
 README.md  | 4 ++--
 index.html | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md
index c3698fa6..17c9c9db 100644
--- a/README.md
+++ b/README.md
@@ -5,10 +5,10 @@
 In order to protect the website, you are required to create a PR before merging to the gh-pages branch; in order to do this, you should:
 
 1. (After cloning the CSV Validator repo) Switch to the `gh-pages` branch
-2. Create a new branch based on this branch i.e. `git checkout -b gh-pages-update`
+2. Create a new branch based on this branch e.g. `git checkout -b gh-pages-update`
 3. Make your changes and push them to GitHub
 4. Click the "Compare and pull request" button
-5. You Should see "`base:master` <- compare ``"
+5. You should see "`base:master` <- compare ``"
 6. Click the `base:master` dropdown menu and select `gh-pages` which will enable you to see all the changes between the `gh-pages` branch and yours
 7. Click the "Create pull request" button
 8. Once you get approval, merge the branch
diff --git a/index.html b/index.html
index 3a5003c0..39850f9d 100644
--- a/index.html
+++ b/index.html
@@ -102,7 +102,7 @@ 

Installing the CSV Validator

The core of the CSV Validator is written in Scala 2.13, Scala runs in the JVM and requires Java 21 or newer to be available. For our Windows users, we include a JRE (64-bit Java 21 Runtime) with the distribution package. For non-Windows users, you will need to have Java (21+) installed on your computer in order to run the latest version of CSV Validator. The release build is published from the source code repository - on GitHub to Maven Central. Current release (as of 2 October 2025), Version 1.4.1. + on GitHub to Maven Central. Current release (as of 2nd October 2025), Version 1.4.1.

CSV Validator 1.4.1 comes with 2 distribution packages.