I joined multiple meshes with batfingers script here
How to join objects with Python?
#get mesh copies of collection and join into single mesh
col = bpy.data.collections['export']
obs = [o for o in col.objects if o.type == 'MESH']
_obs = [o.copy() for o in obs]
#context override to join them into one obj,
with bpy.context.temp_override(active_object=_obs[0], selected_editable_objects=_obs):
bpy.ops.object.join()
bpy.context.scene.collection.objects.link(_obs[0])
_obs[0].name='single_mesh'
It works, but trying to apply all transformations to the new object,
I get the following warning 'Create new object-data users and apply transformations'.
Clicking 'Ok' will apply the transformation.
What am I doing wrong here and what does Blender do in the background?
.blend file is here, using Blender 3.2.

