Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 0 additions & 5 deletions .github/workflows/ci_v26.0.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ jobs:
# - [actions skip]

test:
if: ${{ (github.event_name == 'push' || github.event_name == 'pull_request') && github.repository == 'jaeyson/open_api_typesense' }}
runs-on: ubuntu-latest
environment: review

Expand All @@ -46,10 +45,6 @@ jobs:
elixir: '1.19'
lint: false

services:
typesense:
image: typesense/typesense:${{ matrix.typesense }}

steps:
- name: Checkout repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
Expand Down
5 changes: 0 additions & 5 deletions .github/workflows/ci_v27.0.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ jobs:
# - [actions skip]

test:
if: ${{ (github.event_name == 'push' || github.event_name == 'pull_request') && github.repository == 'jaeyson/open_api_typesense' }}
runs-on: ubuntu-latest
environment: review

Expand All @@ -46,10 +45,6 @@ jobs:
elixir: '1.19'
lint: false

services:
typesense:
image: typesense/typesense:${{ matrix.typesense }}

steps:
- name: Checkout repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
Expand Down
5 changes: 0 additions & 5 deletions .github/workflows/ci_v27.1.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ jobs:
# - [actions skip]

test:
if: ${{ (github.event_name == 'push' || github.event_name == 'pull_request') && github.repository == 'jaeyson/open_api_typesense' }}
runs-on: ubuntu-latest
environment: review

Expand All @@ -46,10 +45,6 @@ jobs:
elixir: '1.19'
lint: false

services:
typesense:
image: typesense/typesense:${{ matrix.typesense }}

steps:
- name: Checkout repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
Expand Down
5 changes: 0 additions & 5 deletions .github/workflows/ci_v28.0.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@ jobs:
# - [actions skip]

test:
if: ${{ (github.event_name == 'push' || github.event_name == 'pull_request') && github.repository == 'jaeyson/open_api_typesense' }}
runs-on: ubuntu-latest
environment: review

Expand All @@ -42,10 +41,6 @@ jobs:
elixir: '1.18'
lint: false

services:
typesense:
image: typesense/typesense:${{ matrix.typesense }}

steps:
- name: Checkout repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
Expand Down
6 changes: 0 additions & 6 deletions .github/workflows/ci_v29.0.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
name: CI v29.0

on:
workflow_call:
pull_request:
branches: ["main"]

Expand All @@ -22,7 +21,6 @@ jobs:
# - [actions skip]

test:
if: ${{ (github.event_name == 'push' || github.event_name == 'pull_request') && github.repository == 'jaeyson/open_api_typesense' }}
runs-on: ubuntu-latest
environment: review

Expand All @@ -43,10 +41,6 @@ jobs:
elixir: '1.18'
lint: false

services:
typesense:
image: typesense/typesense:${{ matrix.typesense }}

steps:
- name: Checkout repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
Expand Down
27 changes: 3 additions & 24 deletions .github/workflows/ci_v30.0.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
name: CI v30.0

on:
workflow_call:
pull_request:
branches: ["main"]

Expand All @@ -22,7 +21,6 @@ jobs:
# - [actions skip]

test:
if: ${{ (github.event_name == 'push' || github.event_name == 'pull_request') && github.repository == 'jaeyson/open_api_typesense' }}
runs-on: ubuntu-latest
environment: review

Expand All @@ -41,11 +39,7 @@ jobs:
- typesense: '30.0'
otp: '28'
elixir: '1.18'
lint: true

services:
typesense:
image: typesense/typesense:${{ matrix.typesense }}
lint: false
Comment thread
jaeyson marked this conversation as resolved.

steps:
- name: Checkout repo
Expand Down Expand Up @@ -95,15 +89,12 @@ jobs:
otp-version: ${{matrix.otp}}
elixir-version: ${{matrix.elixir}}

- name: Restore cache
id: cache_restore
uses: actions/cache/restore@668228422ae6a00e4ad889ee87cd7109ec5666a7
if: ${{ matrix.lint }}
- name: Cache dependencies/builds
uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7
with:
path: |
deps
_build
priv/plts
key: ${{ runner.os }}-typesense-${{ matrix.typesense}}-${{ matrix.otp}}-${{ matrix.elixir}}-mix-${{ hashFiles('**/mix.lock') }}
restore-keys: |
${{ runner.os }}-typesense-${{ matrix.typesense}}-${{ matrix.otp }}-${{ matrix.elixir }}-mix-
Expand Down Expand Up @@ -151,15 +142,3 @@ jobs:
- name: Post test coverage to Coveralls
run: mix coveralls.github
if: ${{ matrix.lint && github.event_name == 'push' && github.ref == 'refs/heads/main' }}

- name: Save cache
id: cache_save
uses: actions/cache/save@668228422ae6a00e4ad889ee87cd7109ec5666a7
if: ${{ matrix.lint }}
with:
path: |
deps
_build
priv/plts
key: |
${{ runner.os }}-${{ steps.beam.outputs.otp-version }}-${{ steps.beam.outputs.elixir-version }}-${{ hashFiles('**/mix.lock') }}
158 changes: 158 additions & 0 deletions .github/workflows/ci_v30.1.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
name: CI v30.1

on:
workflow_call:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
# https://docs.github.com/en/actions/managing-workflow-runs/skipping-workflow-runs
# Workflows that would otherwise be triggered using `on: push` or
# `on: pull_request` won't be triggered if you add any of the
# following strings to the commit message in a push, or the HEAD
# commit of a pull request:
# - [skip ci]
# - [ci skip]
# - [no ci]
# - [skip actions]
# - [actions skip]

test:
runs-on: ubuntu-latest
environment: review

env:
MIX_ENV: test
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
LATEST_TYPESENSE: '30.1'

strategy:
matrix:
include:
- typesense: '30.1'
otp: '25'
elixir: '1.14'
lint: false
- typesense: '30.1'
otp: '28'
elixir: '1.18'
lint: true

steps:
- name: Checkout repo
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

- name: Check for misspellings
uses: codespell-project/actions-codespell@8f01853be192eb0f849a5c7d721450e7a467c579

- name: Start Typesense
run: |
docker run -id \
-p 8108:8108 \
--name typesense \
-v /tmp/typesense-data:/data \
-v /tmp/typesense-analytics-data:/analytics-data \
typesense/typesense:${{ matrix.typesense}} \
--api-key xyz \
--data-dir /data \
--enable-search-analytics=true \
--analytics-dir=/analytics-data \
--analytics-flush-interval=60 \
--analytics-minute-rate-limit=100 \
--enable-cors

- name: Wait for Typesense to be healthy
shell: bash
run: |
start_time=$(date +%s)
timeout=30
counter=0
until curl -s http://localhost:8108/health | grep -q '"ok":true'; do
if [ $counter -eq $timeout ]; then
echo "Timed out waiting for Typesense to be healthy"
exit 1
fi
echo "Waiting for Typesense to be healthy..."
sleep 1
counter=$((counter + 1))
done
end_time=$(date +%s)
elapsed=$((end_time - start_time))
echo "Typesense healthcheck elapsed: ${elapsed}s"

- name: Setup Elixir/OTP
uses: erlef/setup-beam@fc68ffb90438ef2936bbb3251622353b3dcb2f93
with:
otp-version: ${{matrix.otp}}
elixir-version: ${{matrix.elixir}}

- name: Restore cache
id: cache_restore
uses: actions/cache/restore@668228422ae6a00e4ad889ee87cd7109ec5666a7
if: ${{ matrix.lint }}
with:
path: |
deps
_build
priv/plts
key: ${{ runner.os }}-typesense-${{ matrix.typesense }}-${{ matrix.otp }}-${{ matrix.elixir }}-mix-${{ hashFiles('**/mix.lock') }}
restore-keys: |
${{ runner.os }}-typesense-${{ matrix.typesense}}-${{ matrix.otp }}-${{ matrix.elixir }}-mix-

- name: Install Dependencies
run: |
mix local.rebar --if-missing
mix local.hex --if-missing
mix deps.get

- name: Find unused dependencies
run: mix deps.unlock --check-unused
if: ${{ matrix.lint }}

- name: Check retired dependencies
run: mix hex.audit
if: ${{ matrix.lint }}

- name: Security audit of dependencies
run: mix deps.audit
if: ${{ matrix.lint }}

- name: Compile project
run: mix compile --all-warnings

- name: Run static analysis
run: mix credo --all --strict
if: ${{ matrix.lint }}

- name: Check format files
run: mix format --check-formatted
if: ${{ matrix.lint }}

- name: Create PLTs
if: ${{ steps.cache_restore.outputs.cache-hit != 'true' && matrix.lint }}
run: mix dialyzer --plt

- name: Dialyzer
run: mix dialyzer --format github --format dialyxir
if: ${{ matrix.lint }}

- name: Run tests
run: mix test --only ${{ matrix.typesense }}:true --only nls:true --trace

- name: Post test coverage to Coveralls
run: mix coveralls.github
if: ${{ matrix.lint && github.event_name == 'push' && github.ref == 'refs/heads/main' }}

- name: Save cache
id: cache_save
uses: actions/cache/save@668228422ae6a00e4ad889ee87cd7109ec5666a7
if: ${{ matrix.lint }}
with:
path: |
deps
_build
priv/plts
key: ${{ runner.os }}-typesense-${{ matrix.typesense }}-${{ matrix.otp }}-${{ matrix.elixir }}-mix-${{ hashFiles('**/mix.lock') }}

13 changes: 4 additions & 9 deletions .github/workflows/llm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,10 @@ concurrency:

jobs:
ci_workflow:
uses: ./.github/workflows/ci_v30.0.yml
uses: ./.github/workflows/ci_v30.1.yml
secrets: inherit

llm:
if: ${{ (github.event_name == 'push' || github.event_name == 'pull_request') && github.repository == 'jaeyson/open_api_typesense' }}
runs-on: ubuntu-latest
environment: review
needs: [ci_workflow]
Expand All @@ -31,23 +30,19 @@ jobs:
- typesense: '30.0'
otp: '25'
elixir: '1.14'
- typesense: '29.0'
otp: '25'
elixir: '1.14'
- typesense: '30.1'
otp: '28'
elixir: '1.18'
- typesense: '30.0'
otp: '28'
elixir: '1.18'
- typesense: '29.0'
otp: '25'
elixir: '1.14'
- typesense: '29.0'
otp: '28'
elixir: '1.18'

services:
typesense:
image: typesense/typesense:${{ matrix.typesense }}

steps:
- name: Start Typesense
run: |
Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## major.minor.patch (yyyy.mm.dd)

## 1.3.0 (2026.04.14)

### Chore

* Support for Typesense v30.1. See <https://typesense.org/docs/30.1/api>

## 1.2.0 (2026.04.13)

### Deprecated
Expand Down
Loading
Loading