fat_table 0.9.9 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5e9d5fc6b7d8ff78de97e8bf04024a96039b98e6190fc2ba74fdee278b51f45f
4
- data.tar.gz: ced82055dd734b519373417f512ed86b0b081782d82fa62f063143dda5fb8798
3
+ metadata.gz: 8e02012b75b592621a0bd1a40dfb65b889bf8e1d85d3316588bae6460979e777
4
+ data.tar.gz: 70c4c97c9aa8fbd7ee9527f87cda32ab5688c490ba8cc051a9ab2979737fb071
5
5
  SHA512:
6
- metadata.gz: 16457961d9efa0d6965cd3ff3731a4161d8c0fa22622f9c269a585bbed4d011b03e0398f5c65f1570a2d6c1910f0e0a900b6087223fced276369b04a96cf0627
7
- data.tar.gz: 0b32725f560c402f5a867b0d191c0648d889bbde14f122f41ce80cc4f411f60f089c63bb3f1aeab370cc0db2bcfd94b609b6f1806e2a6f2e079019246c7f9b49
6
+ metadata.gz: 6f84eb22459c4e4867055116665c121d23f689ce4e2e8848bec80c6ec4843d533c9efc092afcb48e223a8b089771d80c95d8bdb2fc121fb2c0642d94fad068e1
7
+ data.tar.gz: dc28f38ec803a3a54e02e18a18e1c1d0a8f19efaa10accd8178844899942f5d980e762c7407ed8c7e605fe536b8db4ac0d12d9193565144a04f546270bc3e0a1
@@ -0,0 +1,180 @@
1
+ # GitHub Actions: Ruby matrix with sqlite and postgres test variants
2
+ # - matrix: ruby x db (sqlite, postgres)
3
+ # - postgres is provided as a service container
4
+ # - sqlite requires libsqlite3-dev installed so the sqlite3 gem can build native ext
5
+ # Adjust the DB setup commands (rake/rails tasks) to match your project's test bootstrap.
6
+ name: Ruby CI (with sqlite & postgres)
7
+
8
+ on:
9
+ push:
10
+ pull_request:
11
+
12
+ jobs:
13
+ test:
14
+ runs-on: ubuntu-24.04
15
+
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ ruby: [3.2.2, 3.3.0, 3.4.0] # change or narrow as desired
20
+ db: [sqlite, postgres]
21
+
22
+ services:
23
+ postgres:
24
+ # Only used when matrix.db == postgres; running as a service is harmless for sqlite jobs.
25
+ image: postgres:15
26
+ env:
27
+ POSTGRES_USER: postgres
28
+ POSTGRES_PASSWORD: postgres
29
+ POSTGRES_DB: test
30
+ ports:
31
+ - 5432:5432
32
+ options: >-
33
+ --health-cmd "pg_isready -U postgres"
34
+ --health-interval 10s
35
+ --health-timeout 5s
36
+ --health-retries 5
37
+
38
+ steps:
39
+ - name: Check out code
40
+ uses: actions/checkout@v4
41
+
42
+ - name: Install system packages
43
+ # Needed for compiling Ruby gems and SQLite/Postgres native extensions
44
+ run: |
45
+ sudo apt-get update
46
+ sudo apt-get install -y --no-install-recommends \
47
+ build-essential autoconf bison libssl-dev libreadline-dev \
48
+ zlib1g-dev libyaml-dev libffi-dev libgdbm-dev libncurses5-dev \
49
+ libgmp-dev pkg-config libsqlite3-dev libpq-dev \
50
+ latexmk texlive-latex-recommended texlive-latex-extra \
51
+ texlive-fonts-recommended texlive-fonts-extra texlive-xetex \
52
+ texlive-luatex dvipng
53
+ shell: bash
54
+
55
+
56
+ - name: Set up Ruby
57
+ uses: ruby/setup-ruby@v1
58
+ with:
59
+ ruby-version: ${{ matrix.ruby }}
60
+
61
+ # Keep cache keyed by Ruby version and Gemfile.lock to avoid ABI mismatches.
62
+ # Native gems (pg, sqlite3, etc.) produce compiled extensions tied to a Ruby ABI.
63
+ # If we reuse a vendor/bundle compiled for a different Ruby, extensions can fail to load
64
+ # (e.g. "undefined symbol: ruby_abi_version"). Making the cache key permanent
65
+ # ensures each Ruby version gets its own cache and reduces flaky failures.
66
+ - name: Cache Ruby gems
67
+ uses: actions/cache@v4
68
+ with:
69
+ path: vendor/bundle
70
+ key: ${{ runner.os }}-gems-${{ matrix.ruby }}-${{ hashFiles('**/Gemfile.lock') }}
71
+ restore-keys: |
72
+ ${{ runner.os }}-gems-${{ matrix.ruby }}-
73
+
74
+ # Ensure libpq and build tools exist for compiling native gems like pg
75
+ - name: Install system dependencies for pg
76
+ run: |
77
+ sudo apt-get update
78
+ sudo apt-get install -y libpq-dev build-essential
79
+
80
+ # Cache keyed to the Ruby version to avoid reusing compiled gems across Rubies
81
+ - name: Cache Ruby gems
82
+ uses: actions/cache@v4
83
+ with:
84
+ path: vendor/bundle
85
+ key: ${{ runner.os }}-gems-${{ matrix.ruby-version }}-${{ hashFiles('**/Gemfile.lock') }}
86
+ restore-keys: |
87
+ ${{ runner.os }}-gems-${{ matrix.ruby-version }}-
88
+
89
+ - name: Install gems
90
+ run: |
91
+ # Install into vendor/bundle for deterministic paths
92
+ bundle config set --local path 'vendor/bundle'
93
+
94
+ # Force building gems for the current Ruby platform instead of using prebuilt binary gems
95
+ bundle config set --local force_ruby_platform true
96
+
97
+ # If needed, point pg build to system pg_config
98
+ bundle config set --local build.pg --with-pg-config=/usr/bin/pg_config || true
99
+
100
+ # Avoid stale compiled extensions from previous runs with different Ruby versions
101
+ if [ -d vendor/bundle ]; then
102
+ echo "Removing vendor/bundle to avoid ABI mismatch"
103
+ rm -rf vendor/bundle
104
+ fi
105
+
106
+ bundle install --jobs 4 --retry 3
107
+
108
+ - name: List installed gems
109
+ run: |
110
+ echo "=== bundle list ==="
111
+ bundle list
112
+ echo
113
+ echo "=== gem list (system) ==="
114
+ gem list
115
+ echo
116
+ echo "=== gem env ==="
117
+ gem env
118
+
119
+ - name: Verify pg
120
+ if: matrix.db == 'postgres'
121
+ run: |
122
+ echo
123
+ echo "=== pg gem info ==="
124
+ bundle show pg || gem which pg || true
125
+ bundle exec ruby -e "begin; require 'pg'; puts 'pg loaded: ' + (defined?(PG) && (PG.const_defined?(:VERSION) ? PG::VERSION : (PG.const_defined?(:PG_VERSION) ? PG::PG_VERSION : 'unknown'))); rescue => e; puts 'pg require failed: ' + e.class.to_s + ': ' + e.message; puts e.backtrace[0..5]; exit 1; end"
126
+ shell: bash
127
+
128
+ - name: Configure DB environment
129
+ run: |
130
+ if [ "${{ matrix.db }}" = "postgres" ]; then
131
+ echo "DB_ADAPTER=postgres" >> $GITHUB_ENV
132
+ # DATABASE_URL commonly used by many ORMs/test setups
133
+ echo "DATABASE_URL=postgres://postgres:postgres@127.0.0.1:5432/test" >> $GITHUB_ENV
134
+ echo "PGHOST=127.0.0.1" >> $GITHUB_ENV
135
+ echo "PGUSER=postgres" >> $GITHUB_ENV
136
+ echo "PGPASSWORD=postgres" >> $GITHUB_ENV
137
+ else
138
+ echo "DB_ADAPTER=sqlite" >> $GITHUB_ENV
139
+ # Use a file-based sqlite DB path; your tests may override with config
140
+ echo "DATABASE_URL=sqlite3:db/test.sqlite3" >> $GITHUB_ENV
141
+ fi
142
+ shell: bash
143
+
144
+ - name: Wait for Postgres (only postgres jobs)
145
+ if: matrix.db == 'postgres'
146
+ run: |
147
+ # Use Ruby to probe TCP port so we don't rely on pg_isready being present
148
+ ruby -e "require 'socket'; loop do
149
+ begin
150
+ TCPSocket.new('127.0.0.1', 5432).close
151
+ puts 'Postgres is listening'
152
+ break
153
+ rescue => _
154
+ warn 'Waiting for Postgres...'
155
+ sleep 1
156
+ end
157
+ end"
158
+ shell: bash
159
+
160
+ - name: Verify LaTeX is available
161
+ # This step is lightweight and helps debugging: prints pdflatex/latexmk versions.
162
+ run: |
163
+ pdflatex --version || true
164
+ latexmk --version || true
165
+ shell: bash
166
+
167
+ # Snippet: Run tests step (place inside your job that already sets matrix.db)
168
+ # This runs all tests on postgres jobs, and excludes postgres-tagged tests on sqlite jobs.
169
+ - name: Run tests
170
+ run: |
171
+ if [ "${{ matrix.db }}" = "postgres" ]; then
172
+ echo "Running full test suite against Postgres"
173
+ bundle exec rspec --tag postgres
174
+ bundle exec rubocop
175
+ else
176
+ echo "Running test suite excluding Postgres-only specs"
177
+ bundle exec rspec --tag ~postgres
178
+ bundle exec rubocop
179
+ fi
180
+ shell: bash
data/.gitignore CHANGED
@@ -13,7 +13,6 @@
13
13
  .rspec_status
14
14
  /README.pdf
15
15
  /README.tex
16
- /README.md
17
16
  /README.synctex.gz
18
17
  /_minted*
19
18
  /auto/
@@ -27,3 +26,7 @@
27
26
  /TAGS
28
27
  /README.pyg
29
28
  /.ruby-version
29
+ /spec/example_files/auto/
30
+ /spec/example_files/quick.aux
31
+ /spec/example_files/quicktable.aux
32
+ /.examples-stamp
data/.rubocop.yml CHANGED
@@ -1,5 +1,6 @@
1
- inherit_from:
2
- - ~/.rubocop.yml
1
+ # Inherit the shared config from the rubocop-ddoherty gem (git-hosted on GitHub)
2
+ inherit_gem:
3
+ rubocop-ddoherty: 'config/default.yml'
3
4
 
4
5
  AllCops:
5
6
  Include:
@@ -7,7 +8,10 @@ AllCops:
7
8
  - 'spec/**/*'
8
9
  Exclude:
9
10
  - 'test/tmp/**/*'
11
+ - 'spec/tmp/**/*'
12
+ - 'spec/example_files/**/*'
10
13
  - 'vendor/bundle/**/*'
14
+ - 'lib/fat_table/formatters/xcolors.txt'
11
15
 
12
16
  Style/MethodCallWithArgsParentheses:
13
17
  Exclude:
@@ -23,3 +27,6 @@ Naming/VariableName:
23
27
 
24
28
  RSpec/VariableName:
25
29
  Enabled: false
30
+
31
+ RSpec/IndexedLet:
32
+ Enabled: false
data/.simplecov CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # -*- mode: ruby -*-
2
4
 
3
5
  SimpleCov.start do
data/.yardopts CHANGED
@@ -1,5 +1,4 @@
1
- --no-private lib/**/*.rb
2
- --markup=markdown
3
- --main=md/README.md
4
- -
5
- md/README.md
1
+ --markup markdown
2
+ --output-dir doc
3
+ --readme README.md
4
+ lib/**/*.rb
data/CHANGELOG.md ADDED
@@ -0,0 +1,303 @@
1
+ - [Version 1.0.0 <span class="timestamp-wrapper"><span class="timestamp">[2025-12-28 Sun]</span></span>](#org99202c8)
2
+ - [Version 0.9.9 <span class="timestamp-wrapper"><span class="timestamp">[2025-03-19 Wed]</span></span>](#orgbe3a609)
3
+ - [Version 0.9.8 <span class="timestamp-wrapper"><span class="timestamp">[2024-12-31 Tue]</span></span>](#org4574465)
4
+ - [Version 0.9.7 <span class="timestamp-wrapper"><span class="timestamp">[2024-12-26 Thu]</span></span>](#org20e1d3c)
5
+ - [Version 0.9.5 <span class="timestamp-wrapper"><span class="timestamp">[2023-11-07 Tue]</span></span>](#org31e8a65)
6
+ - [Version 0.9.3 <span class="timestamp-wrapper"><span class="timestamp">[2023-05-24 Wed]</span></span>](#org842f384)
7
+ - [Version 0.9.2 <span class="timestamp-wrapper"><span class="timestamp">[2023-05-22 Mon]</span></span>](#orgf156f54)
8
+ - [Version 0.9.1 <span class="timestamp-wrapper"><span class="timestamp">[2023-05-22 Mon]</span></span>](#org2a66ab7)
9
+ - [Version 0.9.0 <span class="timestamp-wrapper"><span class="timestamp">[2023-05-22 Mon]</span></span>](#orgb45c20a)
10
+ - [Version 0.8.0 <span class="timestamp-wrapper"><span class="timestamp">[2023-04-20 Thu]</span></span>](#org5aaa371)
11
+ - [Version 0.7.0 <span class="timestamp-wrapper"><span class="timestamp">[2023-04-02 Sun]</span></span>](#org426e756)
12
+ - [Version 0.6.6 <span class="timestamp-wrapper"><span class="timestamp">[2023-01-09 Mon]</span></span>](#orgbea8e5d)
13
+ - [Version 0.6.3 <span class="timestamp-wrapper"><span class="timestamp">[2022-06-04 Sat]</span></span>](#orgab9a591)
14
+ - [Version 0.6.2 <span class="timestamp-wrapper"><span class="timestamp">[2022-05-24 Tue]</span></span>](#org4a9a878)
15
+ - [Version 0.6.1 <span class="timestamp-wrapper"><span class="timestamp">[2022-03-26 Sat]</span></span>](#org61a3852)
16
+ - [Version 0.6.0 <span class="timestamp-wrapper"><span class="timestamp">[2022-03-26 Sat]</span></span>](#orgda285b7)
17
+ - [Version 0.5.5 <span class="timestamp-wrapper"><span class="timestamp">[2022-03-25 Fri]</span></span>](#orgb6a12a2)
18
+ - [Version 0.5.4 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-27 Thu]</span></span>](#org7b65547)
19
+ - [Version 0.5.3 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-24 Mon]</span></span>](#org7d79f24)
20
+ - [Version 0.5.2 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-22 Sat]</span></span>](#org6f191db)
21
+ - [Version 0.5.1 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-21 Fri]</span></span>](#org2ae05d9)
22
+ - [Version 0.4.2 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-06 Thu]</span></span>](#org580001e)
23
+ - [Version 0.4.0 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-02 Sun]</span></span>](#org434338f)
24
+ - [Version 0.3.4 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-01 Sat]</span></span>](#org4c7012d)
25
+ - [Version 0.3.3 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-01 Sat]</span></span>](#org655ba65)
26
+ - [Version 0.3.1 <span class="timestamp-wrapper"><span class="timestamp">[2020-12-13 Sun]</span></span>](#org2c11577)
27
+ - [Version 0.3.0 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-10 Wed]</span></span>](#org0117714)
28
+ - [Version 0.2.11 <span class="timestamp-wrapper"><span class="timestamp">[2019-12-29 Sun]</span></span>](#org0ef284b)
29
+ - [Version 0.2.9 <span class="timestamp-wrapper"><span class="timestamp">[2019-04-04 Thu]</span></span>](#org31f4993)
30
+ - [Version 0.2.8 <span class="timestamp-wrapper"><span class="timestamp">[2018-08-28 Tue]</span></span>](#org52cb1f0)
31
+ - [Version 0.2.7 <span class="timestamp-wrapper"><span class="timestamp">[2017-12-29 Fri]</span></span>](#org93f5350)
32
+ - [Version 0.2.6 <span class="timestamp-wrapper"><span class="timestamp">[2017-10-27 Fri]</span></span>](#org6b7de5a)
33
+ - [Version 0.2.4 <span class="timestamp-wrapper"><span class="timestamp">[2017-05-23 Tue]</span></span>](#org153576f)
34
+ - [Version 0.2.3 <span class="timestamp-wrapper"><span class="timestamp">[2017-05-08 Mon]</span></span>](#org2302a13)
35
+ - [Version 0.2.2 <span class="timestamp-wrapper"><span class="timestamp">[2017-05-08 Mon]</span></span>](#org386d2b5)
36
+
37
+
38
+ <a id="org99202c8"></a>
39
+
40
+ # Version 1.0.0 <span class="timestamp-wrapper"><span class="timestamp">[2025-12-28 Sun]</span></span>
41
+
42
+ - Bug fixes.
43
+ - Numeric default post-digits changed from 0 to 4 so BigDecimal can be distinguished from Integers.
44
+ - README more readable with above fix.
45
+ - Documentation improvements.
46
+ - CHANGELOG added.
47
+
48
+
49
+ <a id="orgbe3a609"></a>
50
+
51
+ # Version 0.9.9 <span class="timestamp-wrapper"><span class="timestamp">[2025-03-19 Wed]</span></span>
52
+
53
+ - bug fixes
54
+
55
+ - No notable changes.
56
+
57
+
58
+ <a id="org4574465"></a>
59
+
60
+ # Version 0.9.8 <span class="timestamp-wrapper"><span class="timestamp">[2024-12-31 Tue]</span></span>
61
+
62
+ - bug fixes
63
+
64
+ - No notable changes.
65
+
66
+
67
+ <a id="org20e1d3c"></a>
68
+
69
+ # Version 0.9.7 <span class="timestamp-wrapper"><span class="timestamp">[2024-12-26 Thu]</span></span>
70
+
71
+ - bug fixes
72
+
73
+ - No notable changes
74
+
75
+
76
+ <a id="org31e8a65"></a>
77
+
78
+ # Version 0.9.5 <span class="timestamp-wrapper"><span class="timestamp">[2023-11-07 Tue]</span></span>
79
+
80
+ - Raise FatTable::NoTable exception when no table can be formed from the input.
81
+ - Ingore org rows with the wrong number of columns.
82
+
83
+
84
+ <a id="org842f384"></a>
85
+
86
+ # Version 0.9.3 <span class="timestamp-wrapper"><span class="timestamp">[2023-05-24 Wed]</span></span>
87
+
88
+ - Bug fixes
89
+
90
+
91
+ <a id="orgf156f54"></a>
92
+
93
+ # Version 0.9.2 <span class="timestamp-wrapper"><span class="timestamp">[2023-05-22 Mon]</span></span>
94
+
95
+ - Bug fixes
96
+
97
+
98
+ <a id="org2a66ab7"></a>
99
+
100
+ # Version 0.9.1 <span class="timestamp-wrapper"><span class="timestamp">[2023-05-22 Mon]</span></span>
101
+
102
+ - Bug fixes
103
+
104
+
105
+ <a id="orgb45c20a"></a>
106
+
107
+ # Version 0.9.0 <span class="timestamp-wrapper"><span class="timestamp">[2023-05-22 Mon]</span></span>
108
+
109
+ - Bug fixes
110
+
111
+
112
+ <a id="org5aaa371"></a>
113
+
114
+ # Version 0.8.0 <span class="timestamp-wrapper"><span class="timestamp">[2023-04-20 Thu]</span></span>
115
+
116
+ - Changed the API to allow explicit column typing and tolerance designation with keyword args such as `head1: 'num~'` to make `head1` column be typed as numeric (the `num` part) but tolerant (the `~`)
117
+
118
+
119
+ <a id="org426e756"></a>
120
+
121
+ # Version 0.7.0 <span class="timestamp-wrapper"><span class="timestamp">[2023-04-02 Sun]</span></span>
122
+
123
+ - Bug fixes
124
+
125
+
126
+ <a id="orgbea8e5d"></a>
127
+
128
+ # Version 0.6.6 <span class="timestamp-wrapper"><span class="timestamp">[2023-01-09 Mon]</span></span>
129
+
130
+ - Changed the default number of post-decimal digits to 0 for Numeric,
131
+
132
+
133
+ <a id="orgab9a591"></a>
134
+
135
+ # Version 0.6.3 <span class="timestamp-wrapper"><span class="timestamp">[2022-06-04 Sat]</span></span>
136
+
137
+ - Allow select to set new column to a constant,
138
+ - Allow select string expression to signal literal string with a leading colon, since string constants are now allowed; otherwise eval the string.
139
+ - Added day-of-week to org-formatted dates just like `org-mode`
140
+
141
+
142
+ <a id="org4a9a878"></a>
143
+
144
+ # Version 0.6.2 <span class="timestamp-wrapper"><span class="timestamp">[2022-05-24 Tue]</span></span>
145
+
146
+ - Bug fixes
147
+
148
+
149
+ <a id="org61a3852"></a>
150
+
151
+ # Version 0.6.1 <span class="timestamp-wrapper"><span class="timestamp">[2022-03-26 Sat]</span></span>
152
+
153
+ - Fixed bug in dynamic labels in footers,
154
+
155
+
156
+ <a id="orgda285b7"></a>
157
+
158
+ # Version 0.6.0 <span class="timestamp-wrapper"><span class="timestamp">[2022-03-26 Sat]</span></span>
159
+
160
+ - Added dynamic labels in footers,
161
+
162
+
163
+ <a id="orgb6a12a2"></a>
164
+
165
+ # Version 0.5.5 <span class="timestamp-wrapper"><span class="timestamp">[2022-03-25 Fri]</span></span>
166
+
167
+ - Better handling of aggregates for all-nil columns
168
+
169
+
170
+ <a id="org7b65547"></a>
171
+
172
+ # Version 0.5.4 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-27 Thu]</span></span>
173
+
174
+ - Aggregate function filter out all type-incompatible elements, not just nils, since tolerant columns may have such elements,
175
+ - Make header-based formatting a higher priority than type-based formatting,
176
+
177
+
178
+ <a id="org7d79f24"></a>
179
+
180
+ # Version 0.5.3 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-24 Mon]</span></span>
181
+
182
+ - Added support for "tolerant" column types that allow non-coercable strings in non-String columns,
183
+
184
+
185
+ <a id="org6f191db"></a>
186
+
187
+ # Version 0.5.2 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-22 Sat]</span></span>
188
+
189
+ - documentation only
190
+
191
+
192
+ <a id="org2ae05d9"></a>
193
+
194
+ # Version 0.5.1 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-21 Fri]</span></span>
195
+
196
+ - changed `rng` column aggregate to `range` and return `Range(min, max)`
197
+ - Added new methods for forming table footers based on aggregates,
198
+ - Allow lambdas as group aggregate functions,
199
+ - Improved handling of nils in aggregate and `order_by`,
200
+ - Added an `order_with` method for ordering by expression,
201
+ - Bug fixes and performance improvements,
202
+ - Added special symbol `:omni` in `select` as short-hand for all columns,
203
+
204
+
205
+ <a id="org580001e"></a>
206
+
207
+ # Version 0.4.2 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-06 Thu]</span></span>
208
+
209
+ - bug fixes only
210
+
211
+
212
+ <a id="org434338f"></a>
213
+
214
+ # Version 0.4.0 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-02 Sun]</span></span>
215
+
216
+ - bug fixes only
217
+
218
+
219
+ <a id="org4c7012d"></a>
220
+
221
+ # Version 0.3.4 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-01 Sat]</span></span>
222
+
223
+ - minor bug fix only
224
+
225
+
226
+ <a id="org655ba65"></a>
227
+
228
+ # Version 0.3.3 <span class="timestamp-wrapper"><span class="timestamp">[2022-01-01 Sat]</span></span>
229
+
230
+ - Added date format 'Tue, 01 Nov 2016' to be parsed as a Date.
231
+
232
+
233
+ <a id="org2c11577"></a>
234
+
235
+ # Version 0.3.1 <span class="timestamp-wrapper"><span class="timestamp">[2020-12-13 Sun]</span></span>
236
+
237
+ - documentation only
238
+
239
+
240
+ <a id="org0117714"></a>
241
+
242
+ # Version 0.3.0 <span class="timestamp-wrapper"><span class="timestamp">[2020-06-10 Wed]</span></span>
243
+
244
+ - gem dependency changes only
245
+
246
+
247
+ <a id="org0ef284b"></a>
248
+
249
+ # Version 0.2.11 <span class="timestamp-wrapper"><span class="timestamp">[2019-12-29 Sun]</span></span>
250
+
251
+ - bug fixes only
252
+
253
+
254
+ <a id="org31f4993"></a>
255
+
256
+ # Version 0.2.9 <span class="timestamp-wrapper"><span class="timestamp">[2019-04-04 Thu]</span></span>
257
+
258
+ - documentation fixes only
259
+
260
+
261
+ <a id="org52cb1f0"></a>
262
+
263
+ # Version 0.2.8 <span class="timestamp-wrapper"><span class="timestamp">[2018-08-28 Tue]</span></span>
264
+
265
+ - No notable changes
266
+
267
+
268
+ <a id="org93f5350"></a>
269
+
270
+ # Version 0.2.7 <span class="timestamp-wrapper"><span class="timestamp">[2017-12-29 Fri]</span></span>
271
+
272
+ - Minor bug fixes and performance improvements
273
+
274
+
275
+ <a id="org6b7de5a"></a>
276
+
277
+ # Version 0.2.6 <span class="timestamp-wrapper"><span class="timestamp">[2017-10-27 Fri]</span></span>
278
+
279
+ - Added recognition of American-style dates
280
+ - Allows + or negative signs before numbers
281
+ - Added `ivars` that can be set in `before_hook` and `after_hook`
282
+ - Allowed American-order date 'mm-dd-yyyy' to be parsed
283
+
284
+
285
+ <a id="org153576f"></a>
286
+
287
+ # Version 0.2.4 <span class="timestamp-wrapper"><span class="timestamp">[2017-05-23 Tue]</span></span>
288
+
289
+ - Added instance variables to ft\_console
290
+
291
+
292
+ <a id="org2302a13"></a>
293
+
294
+ # Version 0.2.3 <span class="timestamp-wrapper"><span class="timestamp">[2017-05-08 Mon]</span></span>
295
+
296
+ - No notable changes
297
+
298
+
299
+ <a id="org386d2b5"></a>
300
+
301
+ # Version 0.2.2 <span class="timestamp-wrapper"><span class="timestamp">[2017-05-08 Mon]</span></span>
302
+
303
+ - Initial release