diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 4871791ad66734b31d0a46270d0d571aa0e3ae4b..4bb2302d87b36cbd38be675803b0ecaed4842f2f 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -13,6 +13,7 @@ stages:
 Tests:
   image: "registry.forgemia.inra.fr/cdos-pub/pycode-quality/python-venv:3.10"
   stage: Test
+  except: [main, tags]
   script:
     - pip install pip --upgrade
     - pip install .
diff --git a/stac_extension_genmeta/__init__.py b/stac_extension_genmeta/__init__.py
index 0affe20f6888bdc3894aa0bd6514549c7c50d422..eea0c5049013201c133820e4e634938c87bbdf37 100644
--- a/stac_extension_genmeta/__init__.py
+++ b/stac_extension_genmeta/__init__.py
@@ -1,2 +1,2 @@
 from .core import create_extension_cls
-__version__ = "0.1.1"
+__version__ = "0.1.2"
diff --git a/stac_extension_genmeta/core.py b/stac_extension_genmeta/core.py
index 862a0d0abbbc2e68248925b2ffb7a584bb416c5b..a63c9621400df5a9526d20ecac6a72315964f37d 100644
--- a/stac_extension_genmeta/core.py
+++ b/stac_extension_genmeta/core.py
@@ -78,8 +78,8 @@ def create_extension_cls(
                 raise TypeError(f"`md` must be an instance of {model_cls}")
 
             # Set properties
-            dic = md.model_dump(exclude_unset=True) if md else kwargs
-            for key, value in dic.items():
+            md = md or model_cls(**kwargs)
+            for key, value in md.model_dump(exclude_unset=True).items():
                 alias = model_cls.__fields__[key].alias or key
                 self._set_property(alias, value, pop_if_none=False)