|
7 | 7 |
|
8 | 8 | ## Summary
|
9 | 9 |
|
10 |
| -Mathesar 0.2.2 focuses on improvements to importing data and creating new tables |
11 |
| - |
12 |
| -We also have a new form to allow users to submit suggestions and feedback about Mathesar to our team. |
| 10 | +Mathesar 0.2.2 brings key improvements, including enhanced primary key handling, smart pasting for easier data entry, and various bug fixes. Users can now choose UUIDs as primary keys, designate any existing column as a primary key during data import, and benefit from a new UUID column type. |
13 | 11 |
|
14 | 12 | _This page provides a comprehensive list of all changes in the release._
|
15 | 13 |
|
16 | 14 | ## Improvements
|
17 | 15 |
|
18 |
| -### Better pasting |
| 16 | +### Enhanced primary key handling |
19 | 17 |
|
20 |
| -[#4258](https://github.com/mathesar-foundation/mathesar/pull/4258 "Support pasting data into cells from system clipboard") [#4322](https://github.com/mathesar-foundation/mathesar/pull/4322 "Allow pasting empty strings in NOT NULL columns") [#4327](https://github.com/mathesar-foundation/mathesar/pull/4327 "Add PK control to New Table form") [#4326](https://github.com/mathesar-foundation/mathesar/pull/4326 "Define pkey during table.add") |
21 |
| -[#4345](https://github.com/mathesar-foundation/mathesar/pull/4345 "Fix bug when pasting into cell n edit mode") |
| 18 | +Mathesar 0.2.2 introduces several improvements to working with primary keys, including support for UUIDs as primary keys. We've also added a dedicated UUID column type, making it easier to work with UUIDs in any column—not just primary keys. |
| 19 | + |
| 20 | +#### Improvements when importing data |
| 21 | + |
| 22 | +When importing existing data, Mathesar automatically generates a primary key column if one isn’t provided. Previously, importing a simple CSV like: |
| 23 | + |
| 24 | +```csv |
| 25 | +First Name,Last Name |
| 26 | +Jane,Park |
| 27 | +Steve,Smith |
| 28 | +Laura,Stein |
| 29 | +Amy,Richards |
| 30 | +``` |
| 31 | + |
| 32 | +would result in Mathesar automatically adding an integer primary key column that auto-increments by default. |
| 33 | + |
| 34 | +That's still the default behavior. But now, you can choose the type of generated primary key column: either an auto-incrementing integer _or_ a UUID column with a default value of a random UUIDv4: |
| 35 | + |
| 36 | + |
| 37 | + |
| 38 | +Additionally, you can now designate _any_ existing column as the primary key. If you select a UUID or Number column, you’ll have the option to apply the same default value settings that Mathesar uses for generated primary key columns. |
| 39 | + |
| 40 | +#### Improvements to creating tables |
| 41 | + |
| 42 | +When creating new tables in Mathesar, you'll now have the option to set the name and type of your primary key column: |
| 43 | + |
| 44 | + |
| 45 | + |
| 46 | +As when importing data, you can choose between an auto-incrementing integer _or_ a UUID column with a default value of a random UUIDv4. |
22 | 47 |
|
23 |
| -### PK improvements |
| 48 | +#### Improvements to tables without primary keys |
| 49 | + |
| 50 | +Previously, Mathesar would display all kinds of errors when viewing and attempting to edit records in tables without primary keys. Now, we've made the limitations of working with tables without primary keys in Mathesar much clearer: |
| 51 | + |
| 52 | +- Cell editing is disabled |
| 53 | +- The placeholder row and 'Add new record' button is hidden. |
| 54 | +- We display an attention indicator with a tooltip that mentions that row level operations are not supported. |
24 | 55 |
|
25 | 56 | [#4337](https://github.com/mathesar-foundation/mathesar/pull/4337 "Refactor records store to improve readability") [#4331](https://github.com/mathesar-foundation/mathesar/pull/4331 "Backend functions to modify table primary keys") [#4353](https://github.com/mathesar-foundation/mathesar/pull/4353 "Implement PK config for CSV imports") [#4348](https://github.com/mathesar-foundation/mathesar/pull/4348 "Allow editing PK cell when inserting rows, when PK column does not have a dynamic default set") [#4358](https://github.com/mathesar-foundation/mathesar/pull/4358 "Fix no-header import bug") [#4349](https://github.com/mathesar-foundation/mathesar/pull/4349 "Improve experience for tables without primary keys") [#4366](https://github.com/mathesar-foundation/mathesar/pull/4366 "Make identity setting declarative in `data_modeling.set_primary_key_column`") [#4316](https://github.com/mathesar-foundation/mathesar/pull/4316 "Simplify CSV wrangling logic when importing data") [#4320](https://github.com/mathesar-foundation/mathesar/pull/4320 "Implement UUID type on front end") [#4329](https://github.com/mathesar-foundation/mathesar/pull/4329 "support uuid casts and inference") [#4321](https://github.com/mathesar-foundation/mathesar/pull/4321 "Skip PK column in records.patch from record page") [#4359](https://github.com/mathesar-foundation/mathesar/pull/4359 "Make recovery easier during failed import, show proper errors during header change failure")
|
26 | 57 |
|
| 58 | + |
| 59 | +### Smart pasting to and from cells |
| 60 | + |
| 61 | +Mathesar now supports smart pasting, making it easy to update multiple cells across rows in one go. Mathesar automatically handles type conversions, so you can paste data from different formats without hassle. Linked column references work just like any other value. |
| 62 | + |
| 63 | +After selecting and copying cells, highlight the cells to paste into and press your system's keyboard shortcut (`Command+V`/`⌘+V` on macOS, and `Ctrl+V` on Windows and Linux). |
| 64 | + |
| 65 | +You'll see a conformation dialog: |
| 66 | + |
| 67 | + |
| 68 | + |
| 69 | +After choosing "paste", your selected rows will be updated with the new values. |
| 70 | + |
| 71 | + |
| 72 | + |
| 73 | +[#4258](https://github.com/mathesar-foundation/mathesar/pull/4258 "Support pasting data into cells from system clipboard") [#4322](https://github.com/mathesar-foundation/mathesar/pull/4322 "Allow pasting empty strings in NOT NULL columns") [#4327](https://github.com/mathesar-foundation/mathesar/pull/4327 "Add PK control to New Table form") [#4326](https://github.com/mathesar-foundation/mathesar/pull/4326 "Define pkey during table.add") |
| 74 | +[#4345](https://github.com/mathesar-foundation/mathesar/pull/4345 "Fix bug when pasting into cell n edit mode") |
| 75 | + |
| 76 | + |
27 | 77 | ### Additional improvements
|
28 | 78 |
|
29 | 79 | - Nickname searching in database search [#4354](https://github.com/mathesar-foundation/mathesar/pull/4354 "Adding nickname searching in database search")
|
|
0 commit comments