# Changelog for Oban v2.15
_🌟 Looking for changes to Web or Pro? Check the [Oban.Pro Changelog][opc] or
the [Oban.Web Changelog][owc]. 🌟_
## 🐑 Oban Instance Module
New facade modules allow you to call `Oban` functions on instances with custom names, e.g. not
`Oban`, without passing a `t:Oban.name/0` as the first argument.
For example, rather than calling `Oban.config/1` you'd call `MyOban.config/0`:
```elixir
MyOban.config()
```
It also makes piping into Oban functions far more convenient:
```elixir
%{some: :args}
|> MyWorker.new()
|> MyOban.insert()
```
## 🧩 Partial Matches in Testing Assertions
It's now possible to match a subset of fields on args or meta with `all_enqueued`,
`assert_enqueued`, and `refute_enqueued`. For example, the following assertion will now pass:
```elixir
# Given a job with these args: %{id: 123, mode: "active"}
assert_enqueued args: %{id: 123} #=> true
assert_enqueued args: %{mode: "active"} #=> true
assert_enqueued args: %{id: 321, mode: "active"} #=> false
```
The change applies to `args` and `meta` queries for `all_enqueued/2`, `assert_enqueued/2` and
`refute_enqueued/2` helpers.
## ⏲️ Unique Timestamp Option
Jobs are frequently scheduled for a time far in the future and it's often desirable for to
consider `scheduled` jobs for uniqueness, but unique jobs only checked the `:inserted_at`
timestamp.
Now `unique` has a `timestamp` option that allows checking the `:scheduled_at` timestamp instead:
```elixir
use Oban.Worker, unique: [period: 120, timestamp: :scheduled_at]
```
## v2.16.0 — 2023-09-22
### Bug Fixes
- [Reindexer] Correct relname match for reindexer plugin
We can safely assume all indexes start with `oban_jobs`. The previous pattern was based on an
outdated index format from older migrations.
- [Testing] Support `repo`, `prefix`, and `log` query options in `use Oban.Testing`
For changes prior to v2.16 see the [v2.15][prv] docs.
[opc]: https://getoban.pro/docs/pro/changelog.html
[owc]: https://getoban.pro/docs/web/changelog.html
[prv]: https://hexdocs.pm/oban/2.15.2/changelog.html