I have developed a processing model in QGIS 2.18 where all my inputs are optional and I need them to be truly optional. However, the model will not run unless I have all inputs present.
I have tried this model in both 2.18 and 3.0. I would prefer to use 3.0, but cannot figure out how to edit the python script. I think my problem is that it is not registering outputs as optional, but I'm not sure. Below is a sample of my code from the 2.18 model. I have also attached a screen capture of the start of the model in 3.0. I have been successful at running the models if all inputs are entered. I've tried recreating the model on two different computers, tried using QGIS 2.14 and searched the stackexchange/google etc.
##lines to points=name
##accesspoint=optional vector
##cableburied=optional vector
##ugspan=optional vector
##equipment=optional vector
##attachment=optional vector
##buildingfootprint=optional vector
##spliceclosure=optional vector
##buriedugspan=output vector
##ugspanvaccesspoint=output vector
##cableburiedv=output vector
##splicecable=output vector
##ugspanv=output vector
##ugspanaccess=output vector
##buildingcable=output vector
outputs_SAGACONVERTPOLYGONLINEVERTICESTOPOINTS_1=processing.runalg
('saga:convertpolygonlineverticestopoints', cableburied,cableburiedv)
outputs_QGISJOINATTRIBUTESBYLOCATION_3=processing.runalg
('qgis:joinattributesbylocation',
spliceclosure,outputs_SAGACONVERTPOLYGONLINEVERTICESTOPOINTS_1['POINTS'],
['overlaps'],0.0,1,'sum,mean,min,max,median',0,splicecable)
outputs_SAGACONVERTPOLYGONLINEVERTICESTOPOINTS_2=processing.runalg
('saga:convertpolygonlineverticestopoints', ugspan,ugspanv)
outputs_QGISJOINATTRIBUTESBYLOCATION_4=processing.runalg
('qgis:joinattributesbylocation',
equipment,outputs_SAGACONVERTPOLYGONLINEVERTICESTOPOINTS_1['POINTS'],
['overlaps'],0.0,1,'sum,mean,min,max,median',0,None)
outputs_QGISJOINATTRIBUTESBYLOCATION_5=processing.runalg