# Materialize v0.60
## v0.60.0

#### Sources and sinks

* **Private preview.** Support filter pushdown, which can substantially improve
    latency for queries using temporal filters. For an overview of this new
    optimization mechanism, check the [updated documentation](/transform-data/patterns/temporal-filters/#temporal-filter-pushdown).

[//]: # "NOTE(morsapaes) This feature was released in v0.53 behind a feature
flag. The flag was raised in v0.60 -— so mentioning it here."

* Support `FORMAT JSON` for [Kafka sources](/sql/create-source/kafka/).
  This format option automatically decodes messages as `jsonb`, which is a
  quality-of-life improvement over JSON handling using `FORMAT BYTES`.

  **New syntax**

  ```mzsql
  CREATE SOURCE json_source
  FROM KAFKA CONNECTION kafka_connection (TOPIC 'ch_anges')
  FORMAT JSON
  WITH (SIZE = '3xsmall');

  CREATE VIEW extract_json_source AS
  SELECT
    (data->>'field1')::boolean AS field_1,
    (data->>'field2')::int AS field_2,
    (data->>'field3')::float AS field_3
  -- Automatic conversion to jsonb
  FROM json_source;
  ```

  **Old syntax**

  ```mzsql
  CREATE SOURCE json_source
  FROM KAFKA CONNECTION kafka_connection (TOPIC 'ch_anges')
  FORMAT BYTES
  WITH (SIZE = '3xsmall');

  CREATE VIEW extract_json_source AS
  SELECT
    (data->>'field1')::boolean AS field_1,
    (data->>'field2')::int AS field_2,
    (data->>'field3')::float AS field_3
  -- Manual conversion to jsonb
  FROM (SELECT CONVERT_FROM(data, 'utf8')::jsonb AS data FROM json_source);
  ```


#### SQL

* Improve and extend the base implementation of **Role-based
  access control** (RBAC):

  * Restrict granting and revoking [system privileges](/security/access-control/manage-roles/)
    to _superuser_ users with admin privileges.

  It's important to note that role-based access control (RBAC) is **disabled by
  default**. You must [contact us](https://materialize.com/contact/) to enable
  this feature in your Materialize region.

#### Bug fixes and other improvements

* Fix timestamp generation for transactions with multiple statements that could
  lead to crashes ([#20267](https://github.com/MaterializeInc/materialize/issues/20267)).
