Skip to content

Commit 67f61e1

Browse files
authored
Merge pull request #1040 from saulpw/v2.5rc
v2.5 Release
2 parents 6979e01 + eab80e4 commit 67f61e1

File tree

133 files changed

+1632
-3705
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

133 files changed

+1632
-3705
lines changed

.circleci/config.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ workflows:
44
test:
55
jobs:
66
- test-3.6
7+
- test-3.7
8+
- test-3.8
9+
- test-3.9
710
jobs:
811
test-3.6: &test-template
912
working_directory: ~/visidata
@@ -25,3 +28,18 @@ jobs:
2528
- run:
2629
command: |
2730
dev/test.sh
31+
32+
test-3.7:
33+
<<: *test-template
34+
docker:
35+
- image: circleci/python:3.7
36+
37+
test-3.8:
38+
<<: *test-template
39+
docker:
40+
- image: circleci/python:3.8
41+
42+
test-3.9:
43+
<<: *test-template
44+
docker:
45+
- image: circleci/python:3.9

.envrc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
if has guix; then
2+
use guix -m requirements.scm
3+
fi
4+
5+
if has python3; then
6+
layout python python3
7+
fi

.gitmodules

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,4 @@
44
[submodule "deps/pyxlsb"]
55
path = deps/pyxlsb
66
url = https://github.com/saulpw/pyxlsb.git
7-
[submodule "deps/sh"]
8-
path = deps/sh
9-
url = https://github.com/saulpw/sh.git
107

CHANGELOG.md

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,107 @@
11
# VisiData version history
22

3+
# v2.5 (2021-07-08)
4+
5+
- [social] #visidata has moved off of freenode to libera.chat
6+
- [deps] required pandas version for the pandas loader has been bumped to at least 1.0.5
7+
- [caa] new PR submitters required to sign CAA
8+
9+
## Features
10+
11+
- [cli] when no arguments on commandline, open currentDirSheet (previously vdmenu); -f opens empty sheet of that filetype
12+
- [clipboard] bind `x` family to `cut-*` (thanks @geekscrapy #895)
13+
- [date] add specialized comparators for `datetime.date` (thanks @aborruso #975)
14+
- visidata.date now compares to datetime.date (previously raised exception)
15+
- identical dates compare equal even if intra-day times are different
16+
- this does not work for incompletely specified visidata.date; e.g.
17+
`visidata.date(2016, 10, 29, 4, 0, 0) != visidata.date(2016, 10, 29)`
18+
- [DirSheet] add y/gy to copy file(s) to given directory
19+
- [loaders vds] save non-jsonable cells as string (thanks @pacien #1011)
20+
- [loaders zstd] support loading zstd-compressed files (thanks @lxcode #971)
21+
- [movement] bind `Ctrl+Left/Right` to `go-left`/`right-page` (thanks @davidwales #1002)
22+
- [options] save to foo.visidatarc from OptionsSheet (thanks @njthomas #958)
23+
- [sqlite] RENAME and DROP tables from SqliteIndexSheet
24+
- [unfurl] add `options.unfurl_empty` to include row for empty list/dict (thanks @frosencrantz #898)
25+
- [quitguard] confirm quit/reload only if sheet modified (references #955, #844, #483; thanks @jvns, @frosencrantz)
26+
27+
## Improvements
28+
29+
- [addRow] advance cursor if row inserted before cursor
30+
- [archive] add .lzma as alias for .xz
31+
- [clipboard] gzp pastes None if nothing on clipboard
32+
- [clipboard] make syspaste async
33+
- [clipboard] bind `zP` to syspaste-cells and gzP to syspaste-cells-selected (thanks @jvns and frosencrantz #983, #990)
34+
- [cliptext] better support for combining and variant chars (thanks @lxcode #758 #1034)
35+
- [colors] reduce color swatch size to remove flashing (thanks @frosencrantz #946)
36+
- [encoding] specify encoding explicitly for all Path.open_text (thanks @pacien #1016)
37+
- [error] exceptionCaught(status=False) to add to status history, but not post to status (thanks @frosencrantz #982)
38+
- [freqtbl] copy fmtstr from source col to aggcol (thanks @geekscrapy #1003)
39+
- [help] ENTER/exec-command to execute command on undersheet (thanks @geekscrapy #1011)
40+
- [help] add `all_bindings` hidden column (thanks @frosencrantz #896)
41+
- [inputs] put reused input at end of lastInputs (thanks @geekscrapy #1033)
42+
- [loaders json] streamify save to .json
43+
- [loaders npy] add `npy_allow_pickle` option, default False
44+
- [loaders tsv] increase bufsize to improve loader performance by 10%
45+
- [path] all Path.open track Progress via read/filesize (thanks @jspatz #987)
46+
- [path] add Progress for opening compressed files
47+
- [path] implement line-seek operations (thanks @pacien #1010)
48+
- [regex expand] deprecate `options.expand_col_scanrows`; standardize on `options.default_sample_size` (thanks @jsvine)
49+
- [regex] "match regex" to "capture regex" (thanks @geekscrapy #1032)
50+
- [shell] `addcol-shell` pass command to $SHELL (thanks @juston2004 #1023)
51+
- [shortcut] allow shortcut for jump-sheet to be settable
52+
- [splitwin] push sheet in empty pane iff splitwin
53+
- [stdin] use cli --encoding option for piped data (thanks @pacien #1018)
54+
- [undo] remove undo for reload (replaced with quitguard+confirm)
55+
- [quit] add Shift+Q/quit-sheet-free to quit and free associated memory (thanks @cwarden)
56+
57+
## Display
58+
- [canvas] add `options.disp_canvas_charset` to change displayed chars (thanks @albert-ying #963)
59+
- [canvas] use sheet specific options for draw
60+
- [disp] format list/dict as [n]/{n} only for anytype
61+
- [save] iterdispvals(format=True) convert None to empty string
62+
63+
## Bugfixes
64+
65+
- [batch] ensure quitguard is off during batch mode
66+
- [canvas[ fix error on dive into cursor including y-axis
67+
- [cli] have an actual error if there is a missing argument for final option
68+
- [cli] do nothing (no error) if no sources given
69+
- [clipboard] fix zy/gzp regression (thanks @sfranky #961)
70+
- [clipboard] syscopy-cell do not include column name
71+
- [cmdlog] fix bug where customising replayable options in Options Sheet led to issues opening metasheets (thanks @jsvine #952)
72+
- [cmdlog] fix bug where cmdlog records new sheet name, instead of old sheet name for `rename-sheet` (thanks @aborruso #979)
73+
- [color] track precedence so colorizers apply over `color_current_row`
74+
- [color] determine color availability with `init_pair`
75+
- [color] do not break on nonsense color
76+
- [column] getitemdeep/setitemdeep get/set dotted item key if exists (thanks @frosencrantz #991)
77+
- [column] fix bug where hard crash occurs when cursor on cell of SheetsSheet is on cursorDisplay (thanks @frosencrantz #1029)
78+
- [curses] add default `vd.tstp_signal` for non-cli users
79+
- [execCommand] warn gracefully if bound command longname does not exist
80+
- [expr] setValuesFromExpr do not stop processing on exception
81+
- [join] fix when keys have different names (thanks @aborruso #964)
82+
- [join] fix for rowdefs without bool (like pandas)
83+
- [join] fix multiple extend (thanks @cwarden for reporting)
84+
- [loaders fixed] fix editing in final column for fixed-width load (thanks @mwayne #974)
85+
- [loaders geojson] do not abort plot if rows have errors
86+
- [loaders html] add columns even if not in first row
87+
- [loaders pandas] fix column rename
88+
- [loaders rec json] fix adding new columns for json and rec loaders (thanks @ajkerrigan #959)
89+
- [loaders postgresql] add postgresql scheme (fixes #966) (thanks @zormit #967)
90+
- [loaders sqlite] fix saving deleted cells (thanks @mattenklicker #969)
91+
- [loaders vds] save SettableColumn as Column (thanks @pacien #1012)
92+
- [loaders zip] fix extract-selected-to
93+
- [open] fix regression where opening blank sheets of type tsv, csv, txt, etc was not working
94+
- [plugins] fix stdout/error from plugins installation message (was in bytes, changed to str)
95+
- [quit] remove sheets from **Sheets Sheet** upon quit
96+
- [save-col] fix inputPath error (thanks @savulchik #962)
97+
- [shell] fix `options.dir_hidden`; also apply to dirs when `dir_recurse`
98+
- [textsheet] fix reload after `^O` sysopen
99+
100+
## vdplus
101+
102+
- moved clickhouse, vsh, vgit, windows to vdplus
103+
104+
3105
# v2.4 (2021-04-11)
4106

5107
- [splitwindow] stabilize sheet stack associations

CONTRIBUTING.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,19 +41,21 @@ VisiData is designed to be extensible, and most feature requests can be implemen
4141
If this would require changes to the VisiData core, and a reasonable design is approved, then the issue can stay open until the core changes have been made.
4242
Otherwise, in the spirit of Marie Kondo, the issue will be closed without prejudice.
4343

44-
Feature requests with some amount of working Python code are more likely to get attention.
44+
Feature requeste with some amount of working Python code are more likely to get attention.
4545
Design proposals with concrete use cases are very welcome.
4646

4747
## Writing a well constructed bug report
4848

4949
If you encounter any bugs or have any problems, please [create an issue on GitHub](https://github.com/saulpw/visidata/issues).
5050

5151
A great bug report will include:
52+
5253
- a stacktrace, if there is an unexpected error; the most recent full stack traces can be viewed with `Ctrl+E` (then saved with `Ctrl+S`)
5354
- a [.vd](http://visidata.org/docs/save-restore/) and sample dataset that reproduces the issue
5455
- a .png/.gif (esp. for user interface changes)
5556

5657
Some examples of great bug reports:
58+
5759
- [#350 by @chocolateboy](https://github.com/saulpw/visidata/issues/350)
5860
- [#340 by @Mikee-3000](https://github.com/saulpw/visidata/issues/340)
5961

@@ -69,7 +71,7 @@ VisiData has two main branches:
6971
- [stable](https://github.com/saulpw/visidata/tree/stable) has the last known good version of VisiData (what is in pypi/brew/apt).
7072
- [develop](https://github.com/saulpw/visidata/tree/develop) has the most up-to-date version of VisiData (which will eventually be merged to stable).
7173

72-
All pull requests should be submitted against `develop`.
74+
All pull requests should be submitted against `develop`. Submitters will need to e-sign a Copyright Assignment Agreement (CAA) before a pull request will be accepted.
7375

7476
# Open Source License and Copyright
7577

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11

2-
# VisiData v2.4 [![twitter @VisiData][1.1]][1] [![CircleCI](https://circleci.com/gh/saulpw/visidata/tree/stable.svg?style=svg)](https://circleci.com/gh/saulpw/visidata/tree/stable) [![Gitpod ready-to-code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/saulpw/visidata)
2+
# VisiData v2.5 [![twitter @VisiData][1.1]][1] [![CircleCI](https://circleci.com/gh/saulpw/visidata/tree/stable.svg?style=svg)](https://circleci.com/gh/saulpw/visidata/tree/stable) [![Gitpod ready-to-code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/saulpw/visidata)
33

44
A terminal interface for exploring and arranging tabular data.
55

deps/sh

Lines changed: 0 additions & 1 deletion
This file was deleted.

dev/ROADMAP

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
- [scroll cell] zh/zl Left hand side of a cell with content hidden doesn't show ellipsis #751
1010

1111
2. Persistence
12-
- input history #736 #468
12+
+ input history #736 #468
1313
- key indexes for better joining and lookups
1414

1515
3. Interface discoverability for commands #247 #742
@@ -19,9 +19,9 @@
1919
- possibly add popup modals
2020

2121
4. more expressive expressions
22-
- Memory sheet; can give things names and use in expressions. #392
22+
+ Memory sheet; can give things names and use in expressions. #392
2323
- access column values from execstr #655
24-
- shortcut name for current column #659
24+
+ shortcut name for current column #659
2525

2626
5. better asynchronicity
2727
- async thread pool
@@ -57,4 +57,4 @@ c) intra-cell coloring (for search results, markup)
5757

5858
- #480: HTTP API pagination loader
5959
- #465: Ability to load from the contents of a cell.
60-
- #505: [html] Provide way to access non-table elements
60+
+ #505: [html] Provide way to access non-table elements

dev/checklists/release.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ git push --tags
115115
116116
16. Upload new motd
117117
118-
17. Update the website by pushing to master.
118+
17. Update the website by pushing to master. Update with new manpage. Update redirect to point to new manpage.
119119
120120
18. Comb through issues and close the ones that have been solved, referencing the version number
121121

dev/debian/changelog

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
visidata (2.4-1) unstable; urgency=low
2+
3+
* Update package to 2.4
4+
5+
-- Anja Boskovic <[email protected]> Mon, 12 Apr 2021 20:49:47 -0700
6+
17
visidata (2.3-1) unstable; urgency=low
28

39
* Update package to 2.3

0 commit comments

Comments
 (0)