Permitir remoção de nome usando SSO

Desculpe, mas discordo. Não vejo como isso pode ser um pedido de recurso e não um bug.

Entendo que existam outros endpoints de API que podem ser usados. Mas o ponto principal de /admin/users/sync_sso é exatamente manter esse tipo de dados, bem, sincronizado. Ele já permite definir o campo do nome da conta — isso funciona. No entanto, ele assume que o nome é sempre um campo obrigatório e não permite que seja definido como vazio. Portanto, não pode ser usado para manter os dados sincronizados.

O código abaixo parece funcionar conforme o esperado no meu sandbox, mas, novamente, não me sinto confiante o suficiente para enviar um PR neste momento. Sinta-se à vontade para usá-lo/adaptá-lo, etc.

-    if SiteSetting.sso_overrides_name && user.name != name && name.present?
-      user.name = name || User.suggest_name(username.blank? ? email : username)
+    if SiteSetting.sso_overrides_name && user.name != name
+      if SiteSetting.full_name_required && name.present?
+        user.name = name || User.suggest_name(username.blank? ? email : username)
+      else
+        user.name = name
+      end