# Changelog

{% hint style="warning" %}
**This is the manual for older MicroStream versions (Version < 5.0).**

**The new documentation (Version >= 5.0) is located at:**

[https://docs.microstream.one/](https://docs.microstream.one/manual)
{% endhint %}

## 2.1

### Features

* Android support\
  MicroStream is now Java-wise fully compatible with Android.
* Replaced all usages of `java.util.File` with `java.nio.file.Path` to allow using custom file implementations.
* Improved skipping functionality of Storers (see `EmbeddedStorageManager#createStorer` and `Storer#skip`).
* The class Lazy is now an interface to allow custom implementations. See Migration guide below.

### Bugfixes

* Fixed a few minor bugs in the skipping functionality of Storers.
* Fixed a bug where files remained locked after the storage was shut down.
* Fixed a bug where files remained locked after an exception in storage initialization.
* Enums defining an abstract method are now handled correctly.
* By default, all threads created by MicroStream now start with the prefix "MicroStream-". This can be customized by the new interface `StorageThreadNameProvider`.
* Fixed a NullPointerException in import.
* Fixed a bug that caused enums with a certain field layout to be loaded inconsistently.
* `java.util.Locale` is now persisted and created using Locale's `#toLanguageTag` and `#forLanguageTag`.

### Migration Guide

In the directory of an existing storage, in the TypeDictionary file (default name "PersistenceTypeDictionary.ptd"), all occurances of "one.microstream.persistence.lazy.Lazy" must be replaced with "one.microstream.persistence.lazy.Lazy$Default".


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://manual.docs.microstream.one/2.1/changelog.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
