Mathesar 0.2.3¶
Help shape the future of Mathesar
We’re looking to speak with users to better understand how Mathesar can help you or your team. It’s only a 20 minute interview, and we’re happy to offer a $25 gift card in return.
If you’re interested in helping, you can use this link to schedule a chat with Zack on the Mathesar team. Thank you!
Summary¶
Mathesar 0.2.3 adds support for row duplication, enhanced paste behavior in newly saved rows, new ways to connect an internal database, and improved numeric inference.
This page provides a comprehensive list of all changes in the release.
Improvements¶
More options for internal database connections¶
Mathesar now supports connecting to internal PostgreSQL databases using any valid connection string, including configurations that:
- Use Unix sockets instead of TCP/IP.
- Omit the port or do not require a password.
Previously, Mathesar required both a port and password to be defined, which prevented these types of connections. This was a common pain point for users attempting to use custom Postgres installations.
Here’s an example of the docker-compose.yml
configuration to connect to Postgres running on the UNIX socket:
POSTGRES_HOST="%2Fvar%2Frun%2Fpostgresql"
POSTGRES_PORT=""
POSTGRES_USER="mathesar"
POSTGRES_PASSWORD=""
POSTGRES_DB="mathesar_django"
Tip
%2F
is the URL-encoded version of /
, which is required when specifying a Unix socket path in a PostgreSQL connection string.
“Duplicate row” functionality¶
It’s now easy to duplicate rows in Mathesar using the “right click” context menu. Right click any cell in the row you would like to duplicate and choose “Duplicate Record”.
Support for pasting into cells of newly-inserted rows¶
You may now paste data into the cells of newly-saved rows. Previously, you needed to hit the “refresh” button or reload the page before pasting into these rows.
It is still not possible to paste into new, unsaved rows. Attempting to do so will present an error:
Improved inference for numeric columns¶
In this release we have greatly improved the accuracy, safety, and performance of type inference for numeric columns. This means that Mathesar is much faster and reliable at detecting the type of numeric columns.
In the future, this will enable significant front end performance improvements when switching columns to and from numeric types.
Documentation¶
- Fix pencil “edit” icons to be clickable #4369
Maintenance¶
Removed redundant casting functions¶
Many of Mathesar’s existing casting functions included multiple versions that accepted different types of parameters. Where possible, we are making an effort to simplify and remove these redundant functions.
#4386 #4387 #4389 #4390 #4391 #4392 #4393 #4394 #4395 #4396 #4397 #4398 #4401 #4402 #4411
Type casting improvements¶
- Extract casting logic from inference function #4385
- Remove valid_target_types #4404
- Make cast_to_uuid sql immutable #4403
Other maintenance¶
- Add build tests to checkpoint v2 #4413
- Bump tj-actions/changed-files from 41 to 46 in /.github/workflows #4377
- Update Flake8 to 7.2.0, fix error in deprecated code #4383
Upgrading to 0.2.3¶
For installations using Docker Compose¶
If you have a Docker compose installation (including one from the guided script), run the command below:
Your installation directory may be different
You may need to change /etc/mathesar/
in the command above if you chose to install Mathesar to a different directory.
For installations done from scratch¶
If you installed Mathesar from scratch, then use these steps to upgrade your installation to 0.2.3.
-
Go to your Mathesar installation directory
Note
Your installation directory may be different from above if you used a different directory when installing Mathesar.
-
Pull version 0.2.3 from the repository
-
Update Python dependencies
-
Activate our virtual environment
-
Run Django migrations
-
Download and extract frontend assets
-
Compile Mathesar translation files
-
Update Mathesar functions on the database:
-
Restart the gunicorn server