|
| 1 | +<a name="0.9.7"></a> |
| 2 | +# [0.9.7](https://github.com/qri-io/qri/compare/v0.9.6...v0.9.7) (2020-04-07) |
| 3 | + |
| 4 | +aka `midnight_blue_sloughi` |
| 5 | + |
| 6 | +Qri CLI v0.9.7 is **huge**. This release adds SQL support, turning Qri into an ever-growing database of open datasets. |
| 7 | + |
| 8 | +If that wasn't enough, we've added tab completion, nicer automatic commit messages, unified our command descriptions, and fixed a whole slew of bugs! |
| 9 | + |
| 10 | +## 📊 Run SQL on datasets |
| 11 | + |
| 12 | +Exprimental support for SQL is here! Landing this feature brings qri full circle to the [original whitepaper](http://qri.io/papers/deterministic-querying) we published in 2017. |
| 13 | + |
| 14 | +We want to live in a world where you can `SELECT * FROM any_qri_dataset`, and we're delighted to say that day is here. |
| 15 | + |
| 16 | +We have plans to improve & build upon this crucial feature, and are marking it as experimental while we flesh out our SQL implemetation. We'll drop the "experimental" flag when we support a healthy subset of the SQL spec. |
| 17 | + |
| 18 | +We've been talking about SQL a bunch in our community calls: |
| 19 | +* [🎦 introducing SQL support](https://youtu.be/_kvwuZbnyV4?t=2030) |
| 20 | +* [🎦 qri as a global SQL database](https://youtu.be/U6FoBaO0tYM?t=1612) |
| 21 | +* [🎦 SQL errors & prepping datasets for querying](https://youtu.be/D5zUIS_v0iY?t=242) |
| 22 | + |
| 23 | + |
| 24 | +## 🚗🏁 Autocomplete |
| 25 | + |
| 26 | +The name says it all. after following the instructions on `qri generate --help`, type `qri get`, then press tab, and _voilá_, your list of datasets appears for the choosing. This makes working with datasets much easier, requiring you to remember and type less. [🎦 Here's](https://youtu.be/ROkxdM2pRgY?t=145) a demo from our community call. |
| 27 | + |
| 28 | + |
| 29 | +## 🤝📓 Friendlier Automatic Commit Messages |
| 30 | + |
| 31 | +For a long time Qri has automatically generated commit messages for you if one isn't suppied by analyzing what's changed between versions. This release makes titles that look like this: |
| 32 | + |
| 33 | +``` |
| 34 | +updated structure, viz, and transform |
| 35 | +``` |
| 36 | + |
| 37 | +and adds detailed messages that look like this: |
| 38 | +``` |
| 39 | +structure: |
| 40 | + updated schema.items.items.63.title |
| 41 | +viz: |
| 42 | + updated scriptPath |
| 43 | +transform: |
| 44 | + updated resources./ipfs/QmfQu6qBS3iJEE3ohUnhejb7vh5KwcS5j4pvNxZMi717pU.path |
| 45 | + added scriptBytes |
| 46 | + updated syntaxVersion |
| 47 | +``` |
| 48 | + |
| 49 | +These automatic messages form a nice textual description of what's changed from version to version. Qri will automatically add these if you don't provide `--title` and/or `--message` values to `qri save`. |
| 50 | + |
| 51 | +## 📙 Uniform CLI help |
| 52 | + |
| 53 | +Finally, a big shout out to one of our biggest open source contributions to date! @Mr0Grog not only contributed a massive cleanup of our command line help text, they also wrote a [style guide](https://github.com/qri-io/qri/blob/master/DEVELOPERS.md#cli-help-style) based on the existing help text for others to follow in the future! |
| 54 | + |
| 55 | +### Bug Fixes |
| 56 | + |
| 57 | +* **base:** permission for files generated on init ([14816f2](https://github.com/qri-io/qri/commit/14816f2)) |
| 58 | +* **cmd:** added the email flag to 'registry prove' as it required ([#1200](https://github.com/qri-io/qri/issues/1200)) ([996f3de](https://github.com/qri-io/qri/commit/996f3de)) |
| 59 | +* **cmd:** autocomplete failed to handle search ([#1257](https://github.com/qri-io/qri/issues/1257)) ([e48001d](https://github.com/qri-io/qri/commit/e48001d)) |
| 60 | +* **cmd:** pass node when not making online request for peers ([#1234](https://github.com/qri-io/qri/issues/1234)) ([2cc7aff](https://github.com/qri-io/qri/commit/2cc7aff)) |
| 61 | +* **cmd:** propperly utilize --no-color and --no-prompt ([ff5bdeb](https://github.com/qri-io/qri/commit/ff5bdeb)) |
| 62 | +* **cmd:** qri list should match against peername and dataset name ([eb38505](https://github.com/qri-io/qri/commit/eb38505)) |
| 63 | +* **cmd:** restrict number of args in fsi commands ([4c8e42c](https://github.com/qri-io/qri/commit/4c8e42c)) |
| 64 | +* **cmd:** signup should provide feedback on success ([855ff8f](https://github.com/qri-io/qri/commit/855ff8f)) |
| 65 | +* **cmd:** stats command works with an FSI directory ([f6696c1](https://github.com/qri-io/qri/commit/f6696c1)), closes [#1186](https://github.com/qri-io/qri/issues/1186) |
| 66 | +* **dry-run:** dry-runs must never add to the refstore ([d1b71c2](https://github.com/qri-io/qri/commit/d1b71c2)) |
| 67 | +* **dsfs:** fix dag structure, defend against bad DAGs ([73d0f98](https://github.com/qri-io/qri/commit/73d0f98)) |
| 68 | +* **export:** export even if dag contains missing viz referernce ([44c696d](https://github.com/qri-io/qri/commit/44c696d)), closes [#1161](https://github.com/qri-io/qri/issues/1161) |
| 69 | +* **fetch:** fetch should return DatasetLogItems ([#1221](https://github.com/qri-io/qri/issues/1221)) ([842aef5](https://github.com/qri-io/qri/commit/842aef5)) |
| 70 | +* **fsi:** qri remove --all --force should not fail on low value files ([#1203](https://github.com/qri-io/qri/issues/1203)) ([398e0ac](https://github.com/qri-io/qri/commit/398e0ac)) |
| 71 | +* **get:** Get with a path will ignore fsi, to get old versions ([2125edd](https://github.com/qri-io/qri/commit/2125edd)) |
| 72 | +* **profileID:** Properly decode example profileID for tests that use it ([4f55c6c](https://github.com/qri-io/qri/commit/4f55c6c)) |
| 73 | +* **registry:** Prompt for password without echoing it to terminal ([3906b49](https://github.com/qri-io/qri/commit/3906b49)) |
| 74 | +* **rpc:** registered json.RawMessage for gob encoding ([#1232](https://github.com/qri-io/qri/issues/1232)) ([0832292](https://github.com/qri-io/qri/commit/0832292)) |
| 75 | +* **save:** Cannot save new datasets if name contains upper-case characters ([ff68b40](https://github.com/qri-io/qri/commit/ff68b40)) |
| 76 | +* **save:** If body is too large to diff, compare checksums ([37dc5c7](https://github.com/qri-io/qri/commit/37dc5c7)) |
| 77 | +* **save:** Infered name must start with a letter ([86ddca3](https://github.com/qri-io/qri/commit/86ddca3)) |
| 78 | +* **search:** change type from interface to dataset so rpc can serialize ([#1226](https://github.com/qri-io/qri/issues/1226)) ([ebadaec](https://github.com/qri-io/qri/commit/ebadaec)) |
| 79 | +* **startf:** script print statements print to stderr ([3b3d6b8](https://github.com/qri-io/qri/commit/3b3d6b8)) |
| 80 | +* **transform:** Re-open transform after friendly, so it writes to cafs ([6f30ae5](https://github.com/qri-io/qri/commit/6f30ae5)) |
| 81 | +* **unlink:** Fsi unlink handles more edge-cases, acts more sane. ([945b853](https://github.com/qri-io/qri/commit/945b853)) |
| 82 | +* **update:** Change default port for update service ([6500a91](https://github.com/qri-io/qri/commit/6500a91)) |
| 83 | +* **watchfs:** Methods need a mutex to avoid concurrent writes ([2cebeff](https://github.com/qri-io/qri/commit/2cebeff)) |
| 84 | +* **whatchanged:** Hide command so it doesn't show up in help ([2ea1441](https://github.com/qri-io/qri/commit/2ea1441)) |
| 85 | + |
| 86 | + |
| 87 | +### Features |
| 88 | + |
| 89 | +* **api:** add SQL endpoint ([4f5be38](https://github.com/qri-io/qri/commit/4f5be38)) |
| 90 | +* **cmd:** added command to generate basic cmd autocompletion scripts ([#1240](https://github.com/qri-io/qri/issues/1240)) ([0845289](https://github.com/qri-io/qri/commit/0845289)) |
| 91 | +* **cmd:** remove `--blank` option from `export` ([47f8c70](https://github.com/qri-io/qri/commit/47f8c70)) |
| 92 | +* **dscache:** Dscache can be used for get command ([144ad50](https://github.com/qri-io/qri/commit/144ad50)) |
| 93 | +* **save:** Friendly commit messages by analyzing head, body, and transform ([eb91b27](https://github.com/qri-io/qri/commit/eb91b27)) |
| 94 | +* **showcommit:** Split cmd status-at-version into showcommit. ([9dd444e](https://github.com/qri-io/qri/commit/9dd444e)) |
| 95 | +* **sql:** run SQL SELECT queries on datasets ([7a6d8ae](https://github.com/qri-io/qri/commit/7a6d8ae)) |
| 96 | + |
| 97 | + |
| 98 | +### BREAKING CHANGES |
| 99 | + |
| 100 | +* **cmd:** `qri export --blank` has been removed. (You can still `qri export peer/some_dataset`.) |
| 101 | + |
| 102 | + |
| 103 | + |
1 | 104 | # [v0.9.6](https://github.com/qri-io/qri/compare/v0.9.5...v0.9.6) (2020-03-05) |
2 | 105 |
|
3 | 106 | This patch release fixes a number of small bugs, mainly in support of our Desktop app, and continues infrastructural improvements in preparation for larger feature releases. These include: our improved diff experience, significantly better filesystem integration, and a new method of dataset name resolution that better handles changes across a peer network. |
|
0 commit comments