Skip to content

JSON-LD 1.1 support #12

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 42 commits into from
Apr 6, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
b3d901e
Add mix check alias
marcelotto Dec 17, 2024
dd11383
Drop support for Elixir versions < 1.13 and OTP < 24
marcelotto Dec 18, 2024
42a047f
Use ubuntu-latest runner
marcelotto Mar 6, 2025
254c3e4
Upgrade deprecated actions
marcelotto Mar 9, 2025
2ab2c42
Implementation of JSON-LD 1.1
marcelotto Mar 14, 2025
a3f569e
Mix format on Elixir v1.18
marcelotto Mar 15, 2025
15875f0
Add Elixir v1.18 to CI build matrix
marcelotto Mar 15, 2025
2246170
Add ordered test variants and fix
marcelotto Mar 16, 2025
ba6d837
Fix t0131 by applying candidate correction 3
marcelotto Mar 17, 2025
960d8c2
Remove no longer needed dialyzer ignore
marcelotto Mar 18, 2025
8d64740
Remove unnecessary JSON.LD.Encoder.encode!/2
marcelotto Mar 18, 2025
7d301c4
Ignore dialyzer warnings
marcelotto Mar 18, 2025
bbfe251
Use new IRI validation function of RDF.ex
marcelotto Mar 23, 2025
8f9b861
Use new assert_rdf_isomorphic/2 function of RDF.ex
marcelotto Mar 26, 2025
be354e6
Update document loader for JSON-LD 1.1
marcelotto Mar 26, 2025
935d2cd
Fix fromRdf#tli03 test case definition in manifest
marcelotto Mar 30, 2025
58de94a
Bump jcs to fix toRdf#tjs13
marcelotto Mar 31, 2025
41564ad
Fix nested list handling in encoder
marcelotto Apr 1, 2025
0051533
Move create term definition algorithm
marcelotto Apr 2, 2025
b0211c7
Various fixes of remote context handling
marcelotto Apr 3, 2025
7517060
Refactor default document loader for better reusability
marcelotto Apr 3, 2025
26af09b
Fix conditional logic issue in expansion
marcelotto Apr 3, 2025
58f3665
Complete expand API function according to spec
marcelotto Apr 3, 2025
e78228a
Move compact API function to top-level module
marcelotto Apr 3, 2025
5cef0d5
Handle failing HTTP requests
marcelotto Apr 3, 2025
4a5364e
Fix dialyzer warning
marcelotto Apr 4, 2025
1ee38db
Complete compact API function according to spec
marcelotto Apr 4, 2025
e9e3f39
Complete flatten API function according to spec
marcelotto Apr 4, 2025
91b7de5
Fix dialyzer warnings
marcelotto Apr 4, 2025
3282889
Enable working test
marcelotto Apr 4, 2025
c81e2d4
Complete toRdf and fromRdf API functions according to spec
marcelotto Apr 4, 2025
14141d4
Make tests relying on URI.merge/2 fixes conditional
marcelotto Apr 4, 2025
0483b79
Add ignore reason on compact#t0114
marcelotto Apr 4, 2025
ea5f451
Fix expand API function
marcelotto Apr 4, 2025
552a296
Add new test from W3C test suite
marcelotto Apr 4, 2025
4294e90
Fix compact#tm023
marcelotto Apr 5, 2025
bb11e5f
Ignore fromRdf#t0027
marcelotto Apr 5, 2025
e7e1a25
Support for running the W3C test suite remotely
marcelotto Apr 6, 2025
89c0910
Switch to RDF.ex from GitHub main branch (until release)
marcelotto Apr 6, 2025
4f9828e
Fix CI fail on Elixir v1.14
marcelotto Apr 6, 2025
fd197bd
Drop support for OTP < 25
marcelotto Apr 6, 2025
ff15447
Drop support for Elixir versions < 1.15
marcelotto Apr 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 3 additions & 1 deletion .credo.exs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@
{Credo.Check.Refactor.MatchInCondition, false},
{Credo.Check.Refactor.CyclomaticComplexity, false},
{Credo.Check.Refactor.UnlessWithElse, false},
{Credo.Check.Refactor.NegatedConditionsWithElse, false}
{Credo.Check.Refactor.NegatedConditionsWithElse, false},
{Credo.Check.Refactor.CondStatements, false},
{Credo.Check.Refactor.FunctionArity, max_arity: 10}
]
}
]
Expand Down
6 changes: 3 additions & 3 deletions .github/actions/elixir-setup/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,15 +64,15 @@ runs:
otp-version: ${{ inputs.otp-version }}

- name: Get deps cache
uses: actions/cache@v2
uses: actions/cache@v4
with:
path: deps/
key: deps-${{ inputs.cache-key }}-${{ runner.os }}-${{ hashFiles('**/mix.lock') }}
restore-keys: |
deps-${{ inputs.cache-key }}-${{ runner.os }}-

- name: Get build cache
uses: actions/cache@v2
uses: actions/cache@v4
id: build-cache
with:
path: _build/${{env.MIX_ENV}}/
Expand All @@ -81,7 +81,7 @@ runs:
build-${{ inputs.cache-key }}-${{ runner.os }}-${{ inputs.otp-version }}-${{ inputs.elixir-version }}-${{ env.MIX_ENV }}-

- name: Get Hex cache
uses: actions/cache@v2
uses: actions/cache@v4
id: hex-cache
with:
path: ~/.hex
Expand Down
22 changes: 8 additions & 14 deletions .github/workflows/elixir-build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,36 +11,30 @@ on:
jobs:
build:
name: Build and test
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
env:
MIX_ENV: test
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
strategy:
matrix:
include:
- pair:
elixir: 1.13.4
otp: 23.3
build-flags: --warnings-as-errors
- pair:
elixir: 1.14.5
otp: 24.3
build-flags: --warnings-as-errors
- pair:
elixir: 1.15.7
otp: 25.3
build-flags: --warnings-as-errors
build-flags:
- pair:
elixir: 1.16.2
otp: 26.2
build-flags: --warnings-as-errors
- pair:
elixir: 1.17.2
otp: 27.0
elixir: 1.17.3
otp: 27.3
- pair:
elixir: 1.18.3
otp: 27.3
build-flags: --warnings-as-errors
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup Elixir Project
uses: ./.github/actions/elixir-setup
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/elixir-dialyzer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@ jobs:
MIX_ENV: dev
strategy:
matrix:
elixir: ["1.17.2"]
otp: ["27.0.1"]
elixir: ["1.18.3"]
otp: ["27.3.0"]

steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup Elixir Project
uses: ./.github/actions/elixir-setup
Expand All @@ -34,7 +34,7 @@ jobs:
# Don't cache PLTs based on mix.lock hash, as Dialyzer can incrementally update even old ones
# Cache key based on Elixir & Erlang version (also useful when running in matrix)
- name: Restore PLT cache
uses: actions/cache@v3
uses: actions/cache@v4
id: plt_cache
with:
key: plt-${{ runner.os }}-${{ steps.beam.outputs.otp-version }}-${{ steps.beam.outputs.elixir-version }}-${{ hashFiles('**/mix.lock') }}-${{ hashFiles('**/*.ex') }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/elixir-quality-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
elixir: ["1.17.2"]
otp: ["27.0.1"]
elixir: ["1.18.3"]
otp: ["27.3.0"]

steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Setup Elixir Project
uses: ./.github/actions/elixir-setup
Expand Down
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,14 @@ This project adheres to [Semantic Versioning](http://semver.org/) and
[Keep a CHANGELOG](http://keepachangelog.com).


## Unreleased

Elixir versions < 1.15 and OTP version < 25 are no longer supported

[Compare v0.3.9...HEAD](https://github.com/rdf-elixir/jsonld-ex/compare/v0.3.9...HEAD)



## 0.3.9 - 2024-08-07

This version is just upgraded to RDF.ex 2.0.
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.3.9
0.4.0-pre
3 changes: 3 additions & 0 deletions config/config.exs
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import Config

import_config "#{Mix.env()}.exs"
1 change: 1 addition & 0 deletions config/dev.exs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
import Config
1 change: 1 addition & 0 deletions config/prod.exs
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
import Config
5 changes: 5 additions & 0 deletions config/test.exs
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
import Config

config :json_ld,
max_contexts_loaded: 5,
w3c_test_suite_run_mode: :local
Loading
Loading