diff --git a/add_curve_extra_objects/add_curve_torus_knots.py b/add_curve_extra_objects/add_curve_torus_knots.py
index a3c05ff63e2133132e19d5ba1aca14245a12ad3d..30d19b5836e3c5a25fbd4b270b1c0efef2bd26ed 100644
--- a/add_curve_extra_objects/add_curve_torus_knots.py
+++ b/add_curve_extra_objects/add_curve_torus_knots.py
@@ -325,10 +325,10 @@ def addLinkColors(self, curveData):
 
         # set material color
         if self.options_plus and self.random_colors:
-            mat.diffuse_color = random(), random(), random()
+            mat.diffuse_color = (random(), random(), random(), 1.0)
         else:
             cID = i % (len(colors))  # cycle through predefined colors
-            mat.diffuse_color = colors[cID]
+            mat.diffuse_color = (*colors[cID], 1.0)
 
         if self.options_plus:
             mat.diffuse_color.s = self.saturation
diff --git a/archimesh/achm_tools.py b/archimesh/achm_tools.py
index 8d44fe0cd353cc2db2186ed3950a624ab475b0f9..3a7755168e7aef1ee9abb67809dfd4743e368854 100644
--- a/archimesh/achm_tools.py
+++ b/archimesh/achm_tools.py
@@ -328,7 +328,7 @@ def create_diffuse_material(matname, replace, r, g, b, rv=0.8, gv=0.8, bv=0.8, m
                 return m
     # Create material
     mat = bpy.data.materials.new(matname)
-    mat.diffuse_color = (rv, gv, bv)  # viewport color
+    mat.diffuse_color = (rv, gv, bv, 1.0)  # viewport color
     mat.use_nodes = True
     nodes = mat.node_tree.nodes
 
@@ -412,7 +412,7 @@ def create_translucent_material(matname, replace, r, g, b, rv=0.8, gv=0.8, bv=0.
                 return m
     # Create material
     mat = bpy.data.materials.new(matname)
-    mat.diffuse_color = (rv, gv, bv)  # viewport color
+    mat.diffuse_color = (rv, gv, bv, 1.0)  # viewport color
     mat.use_nodes = True
     nodes = mat.node_tree.nodes
 
@@ -465,7 +465,7 @@ def create_glass_material(matname, replace, rv=0.333, gv=0.342, bv=0.9):
     # Create material
     mat = bpy.data.materials.new(matname)
     mat.use_nodes = True
-    mat.diffuse_color = (rv, gv, bv)
+    mat.diffuse_color = (rv, gv, bv, 1.0)
     nodes = mat.node_tree.nodes
 
     # support for multilanguage
@@ -544,7 +544,7 @@ def create_transparent_material(matname, replace, r=1, g=1, b=1, alpha=0):
     # Create material
     mat = bpy.data.materials.new(matname)
     mat.use_nodes = True
-    mat.diffuse_color = (r, g, b)
+    mat.diffuse_color = (r, g, b, 1.0)
     nodes = mat.node_tree.nodes
 
     # support for multilanguage
@@ -580,7 +580,7 @@ def create_glossy_material(matname, replace, r, g, b, rv=0.578, gv=0.555, bv=0.7
     # Create material
     mat = bpy.data.materials.new(matname)
     mat.use_nodes = True
-    mat.diffuse_color = (rv, gv, bv)
+    mat.diffuse_color = (rv, gv, bv, 1.0)
     nodes = mat.node_tree.nodes
 
     # support for multilanguage
@@ -653,7 +653,7 @@ def create_old_glass_material(matname, replace, rv=0.352716, gv=0.760852, bv=0.9
     # Create material
     mat = bpy.data.materials.new(matname)
     mat.use_nodes = True
-    mat.diffuse_color = (rv, gv, bv)
+    mat.diffuse_color = (rv, gv, bv, 1.0)
     nodes = mat.node_tree.nodes
 
     # support for multilanguage
@@ -726,7 +726,7 @@ def create_brick_material(matname, replace, r, g, b, rv=0.8, gv=0.636, bv=0.315)
     # Create material
     mat = bpy.data.materials.new(matname)
     mat.use_nodes = True
-    mat.diffuse_color = (rv, gv, bv)
+    mat.diffuse_color = (rv, gv, bv, 1.0)
     nodes = mat.node_tree.nodes
 
     # support for multilanguage
@@ -782,7 +782,7 @@ def create_fabric_material(matname, replace, r, g, b, rv=0.8, gv=0.636, bv=0.315
     # Create material
     mat = bpy.data.materials.new(matname)
     mat.use_nodes = True
-    mat.diffuse_color = (rv, gv, bv)
+    mat.diffuse_color = (rv, gv, bv, 1.0)
     nodes = mat.node_tree.nodes
 
     # support for multilanguage
diff --git a/io_curve_svg/import_svg.py b/io_curve_svg/import_svg.py
index c730271117fcdb7e1aebde479e837180a45c046e..072bbc19d5d9c0b8f2d582e000e9b870df3027c7 100644
--- a/io_curve_svg/import_svg.py
+++ b/io_curve_svg/import_svg.py
@@ -52,7 +52,7 @@ def srgb_to_linearrgb(c):
         return pow((c + 0.055) * (1.0 / 1.055), 2.4)
 
 def check_points_equal(point_a, point_b):
-    return (abs(point_a[0] - point_b[0]) < 1e-6 and 
+    return (abs(point_a[0] - point_b[0]) < 1e-6 and
             abs(point_a[1] - point_b[1]) < 1e-6)
 
 
@@ -308,7 +308,7 @@ def SVGGetMaterial(color, context):
         diffuse_color[2] = srgb_to_linearrgb(diffuse_color[2])
 
     mat = bpy.data.materials.new(name='SVGMat')
-    mat.diffuse_color = diffuse_color
+    mat.diffuse_color = (*diffuse_color, 1.0)
 
     materials[color] = mat
 
diff --git a/io_scene_obj/import_obj.py b/io_scene_obj/import_obj.py
index f58ca0836e0c03aa643b2ee642ef34a5d399c928..ddb2658f8e4e87b73c116c371c8f7139d137c6d7 100644
--- a/io_scene_obj/import_obj.py
+++ b/io_scene_obj/import_obj.py
@@ -205,7 +205,7 @@ def create_materials(filepath, relpath,
             if emit_value > 1e-6:
                 print("WARNING, emit value unsupported by Principled BSDF shader, skipped.")
                 # We have to adapt it to diffuse color too...
-                emit_value /= sum(context_material.diffuse_color) / 3.0
+                emit_value /= sum(tuple(context_material.diffuse_color)[:3]) / 3.0
             # ~ context_material.emit = emit_value
 
             # FIXME, how else to use this?