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 +4 -4
- data/.github/workflows/ruby-with-dbs.yml +180 -0
- data/.gitignore +4 -1
- data/.rubocop.yml +9 -2
- data/.simplecov +2 -0
- data/.yardopts +4 -5
- data/CHANGELOG.md +303 -0
- data/CHANGELOG.org +145 -0
- data/Gemfile +5 -7
- data/README.md +2961 -0
- data/README.org +1234 -914
- data/Rakefile +5 -0
- data/bin/ft_console +1 -0
- data/fat_table.gemspec +2 -0
- data/lib/{ext → core_ext}/array.rb +2 -0
- data/lib/core_ext/numeric_string.rb +196 -0
- data/lib/core_ext.rb +4 -0
- data/lib/fat_table/column.rb +5 -1
- data/lib/fat_table/convert.rb +2 -0
- data/lib/fat_table/footer.rb +1 -1
- data/lib/fat_table/formatters/formatter.rb +26 -52
- data/lib/fat_table/formatters/latex_formatter.rb +2 -2
- data/lib/fat_table/table.rb +8 -8
- data/lib/fat_table/version.rb +1 -1
- data/lib/fat_table.rb +51 -26
- metadata +11 -14
- data/examples/create_trans.sql +0 -14
- data/examples/quick.pdf +0 -0
- data/examples/quick.png +0 -0
- data/examples/quick.ppm +0 -0
- data/examples/quick.tex +0 -8
- data/examples/quick_small.png +0 -0
- data/examples/quicktable.tex +0 -123
- data/examples/trades.db +0 -0
- data/examples/trans.csv +0 -13
- /data/{lib/fat_table/formatters → data}/xcolors.txt +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8e02012b75b592621a0bd1a40dfb65b889bf8e1d85d3316588bae6460979e777
|
|
4
|
+
data.tar.gz: 70c4c97c9aa8fbd7ee9527f87cda32ab5688c490ba8cc051a9ab2979737fb071
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
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
|
-
|
|
2
|
-
|
|
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
data/.yardopts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
--
|
|
2
|
-
--
|
|
3
|
-
--
|
|
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
|