---
title: "Release highlights: 1.16"
description:  Release highlights provide a concise overview of the most important new features, improvements, and fixes in a software update, helping users quickly understand what's changed and how it impacts their workflow.
keywords: [dlt, data-pipelines, etl, release-notes, data-engineering]
---

# Release highlights: 1.16

## dlt Education now in docs

Our free **[education courses](../tutorial/education)** are now part of the official documentation and can be launched directly in **Google Colab**.

Try them [here](../tutorial/education)!

---

## Smarter timestamp handling

This release brings a major cleanup and unification of how dlt handles timestamps and timezones. Both **tz-aware** and **naive** timestamps are now processed consistently across normalizers and destinations. dlt now also preserves **the exact timestamp type** when using incremental cursors, preventing subtle mismatches during reloads.

It also fixes several tricky edge cases — such as **nanosecond precision** in MSSQL — and ensures that all `time` types behave as documented (always naive, in UTC). Destinations now explicitly declare which timestamp formats they support, so dlt adjusts automatically.

Example:

```py
@dlt.resource(
   name='my_table',
   columns={
      "my_column": {
          "data_type": "timestamp",
          "timezone": True}}
)
def my_resource():
    ...

# Output:
# naive timestamp → UTC tz-aware
# "2024-05-01 12:00:00" → "2024-05-01 12:00:00+00:00"

# tz-aware timestamp with timezone=False → UTC converted, then naive
# "2024-05-01 12:00:00+02:00" → "2024-05-01 10:00:00"
```

The result: predictable, precise timestamp behavior across all sources, transformations, and destinations.

[Read more →](../general-usage/schema#handling-of-timestamp-and-time-zones)

---

## Visualization updates

- New beta dashboard

    The Streamlit app is now replaced by the **dlt Dashboard**. Run `dlt dashboard` to explore your pipelines with an improved interface and real-time insights. Learn more [here](../general-usage/dashboard).

    ![dashboard-overview.png](https://storage.googleapis.com/dlt-blog-images/release-highlights/dashboard-overview.png)

- Export schema graphs with `dlt.Schema.to_dot()`. More about schema export [here](../general-usage/dataset-access/view-dlt-schema#export-to-graphviz).

    ![477615341-202f1937-8697-4bc9-acf1-e7b6ac7e9970.png](https://storage.googleapis.com/dlt-blog-images/release-highlights/477615341-202f1937-8697-4bc9-acf1-e7b6ac7e9970.png)

---

## Shout-out to new contributors

Big thanks to our newest contributors:

* [@Jinso-o](https://github.com/Jinso-o) — [#2986](https://github.com/dlt-hub/dlt/pull/2986)
* [@tpulmano](https://github.com/tpulmano) — [#2978](https://github.com/dlt-hub/dlt/pull/2978)

---

**Full release notes**

[View the complete list of changes →](https://github.com/dlt-hub/dlt/releases)

