patchwork_csv_utils 0.1.19-x86_64-linux → 0.1.20-x86_64-linux

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8638e11585bf0de8be0e52e53723e21601d54d6d27537554d541fdf03ed84c1d
4
- data.tar.gz: 57ab3ccfa5a762e029bf662b8a6abd11e3bf44395e21adc34b4c4efb448812cb
3
+ metadata.gz: 0b55f28de4e8edc679fdef4dbe72c9dbca5a61d6d66d836afad18aa74fa8929e
4
+ data.tar.gz: fa95157d02d5b4efad84f98deac9d13d85ce9af880435185bd40875e144aff0c
5
5
  SHA512:
6
- metadata.gz: 517c34da0b755540d78ca39ab057599e9947583f1f27d6c3853842d6a59fba8d8d3147df70f77bfb79b161f7cc633e8a22103a1fff8eb592030944157d5f430e
7
- data.tar.gz: d8f481d34a8d950185e19c2bc772b23fa3071c9af013bc2e430295d5b6de8f084454b2b10f9b3a97ddf519e1f49c48da652add9f9a3c25d4732ef096fb68f43d
6
+ metadata.gz: 9f1735171dadf789156570f968a12dccff8091249329845383ef5915cb443530c0c78d01e9613e2a2cc5e918118760d4365dca7cdadde2780df3b33e0d205794
7
+ data.tar.gz: aa8be283c479af4ab01571a3f93d32cd2debced7f901eb5de803ad89303a43b607976a00c2f1d688f428325cb3d19d67d5fb022465414649ca6ace3f0a67f484
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- patchwork_csv_utils (0.1.19)
4
+ patchwork_csv_utils (0.1.20)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,10 +1,10 @@
1
- use std::collections::HashMap;
2
- use std::fs::File;
3
1
  use chrono::{NaiveDate, NaiveDateTime, NaiveTime, Utc};
4
2
  use csv::{Reader, StringRecord, Writer};
5
3
  use magnus::{Error, RArray, Ruby};
4
+ use std::collections::HashMap;
5
+ use std::fs::File;
6
6
 
7
- use crate::utils::{FileExtension, magnus_err, missing_header, to_datetime_error, check_mandatory_headers, create_header_map, missing_value, headers_as_byte_record, index_of_header_in_mandatory_list};
7
+ use crate::utils::{check_mandatory_headers, create_header_map, headers_as_byte_record, index_of_header_in_mandatory_list, magnus_err, missing_header, missing_value, to_datetime_error, FileExtension};
8
8
 
9
9
  pub fn transform_csv(ruby: &Ruby, csv_path: String,
10
10
  target_path: String, exclusions: RArray,
@@ -60,7 +60,7 @@ pub fn transform_csv(ruby: &Ruby, csv_path: String,
60
60
  let column_value = record.get(*column_index).ok_or(missing_value(ruby, column))?;
61
61
  let column_value = column_value.trim_end();
62
62
 
63
- validate_trust_name(ruby, &expected_trust_name, trust_name, ri, i, &column_value.to_string())?;
63
+ validate_trust_name(ruby, &expected_trust_name, trust_name, i, &column_value.to_string())?;
64
64
 
65
65
  if i == *date {
66
66
  let current = string_to_datetime(column_value).ok_or(to_datetime_error(ruby, column_value, ri, "Date"))?;
@@ -88,10 +88,11 @@ pub fn transform_csv(ruby: &Ruby, csv_path: String,
88
88
  }
89
89
 
90
90
 
91
- fn validate_trust_name(ruby: &Ruby, expected_trust_name: &String, trust_name: &usize, ri: usize, i: usize, s: &String) -> magnus::error::Result<()> {
91
+ fn validate_trust_name(ruby: &Ruby, expected_trust_name: &String, trust_name: &usize, i: usize, s: &String) -> magnus::error::Result<()> {
92
92
  if i == *trust_name {
93
+ let s = s.trim();
93
94
  if s != &expected_trust_name.clone() {
94
- return Err(magnus::Error::new(ruby.exception_standard_error(), format!("Trust actual name: '{}' is not as expected: '{}'", s, expected_trust_name)));
95
+ return Err(Error::new(ruby.exception_standard_error(), format!("Trust actual name: '{}' is not as expected: '{}'", s, expected_trust_name)));
95
96
  }
96
97
  }
97
98
  Ok(())
@@ -2,11 +2,11 @@ use std::collections::HashMap;
2
2
  use std::fs::File;
3
3
  use std::io::{BufWriter, Write};
4
4
 
5
- use calamine::{Data, open_workbook, Range, Reader, Xls, open_workbook_auto};
5
+ use calamine::{open_workbook_auto, Data, Range, Reader};
6
6
  use chrono::{NaiveDateTime, Timelike, Utc};
7
7
  use magnus::{RArray, Ruby};
8
8
 
9
- use crate::utils::{FileExtension, magnus_err, missing_header, to_datetime_error, check_mandatory_headers, missing_value, index_of_header_in_mandatory_list};
9
+ use crate::utils::{check_mandatory_headers, index_of_header_in_mandatory_list, magnus_err, missing_header, missing_value, to_datetime_error, FileExtension};
10
10
 
11
11
  pub fn to_csv(ruby: &Ruby, xls_path: String,
12
12
  target_path: String,
@@ -147,6 +147,7 @@ fn write_csv<W: Write>(ruby: &Ruby, dest: &mut W, range: &Range<Data>,
147
147
  fn validate_trust_name(ruby: &Ruby, expected_trust_name: &String, trust_name: &usize, ri: usize, r: &Vec<&Data>) -> magnus::error::Result<()> {
148
148
  if ri > 0 {
149
149
  let s = r[*trust_name].to_string();
150
+ let s = s.trim();
150
151
  if s != expected_trust_name.clone() {
151
152
  return Err(magnus::Error::new(ruby.exception_standard_error(), format!("Trust actual name: '{}' is not as expected: '{}'", s, expected_trust_name)));
152
153
  }
Binary file
Binary file
Binary file
Binary file
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CsvUtils
4
- VERSION = '0.1.19'
4
+ VERSION = '0.1.20'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: patchwork_csv_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.19
4
+ version: 0.1.20
5
5
  platform: x86_64-linux
6
6
  authors:
7
7
  - kingsley.hendrickse
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-12-04 00:00:00.000000000 Z
11
+ date: 2024-12-05 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Deduplication of CSV files and XLS to CSV conversion.
14
14
  email: