Skip to content

Fix ecto warnings

Alex Gleason requested to merge fix-ecto-warnings into develop

After the upgrade of Ecto in !193 (merged), it began spewing Ecto warnings in runtime.

For instance:

warning: attempting to validate embed_many field :url with validate_required/3 which has no effect. You can pass the :required option to Ecto.Changeset.cast_embed/3 to achieve this.
  (ecto 3.9.1) lib/ecto/changeset.ex:1825: anonymous fn/6 in Ecto.Changeset.validate_required/3
  (elixir 1.13.4) lib/enum.ex:2396: Enum."-reduce/3-lists^foldl/2-0-"/3
  (ecto 3.9.1) lib/ecto/changeset.ex:1824: Ecto.Changeset.validate_required/3
  (ecto 3.9.1) lib/ecto/changeset.ex:861: anonymous fn/4 in Ecto.Changeset.on_cast_default/2
  (ecto 3.9.1) lib/ecto/changeset/relation.ex:137: Ecto.Changeset.Relation.do_cast/6
  (ecto 3.9.1) lib/ecto/changeset/relation.ex:356: Ecto.Changeset.Relation.map_changes/9
  (ecto 3.9.1) lib/ecto/changeset/relation.ex:121: Ecto.Changeset.Relation.cast/5
  (ecto 3.9.1) lib/ecto/changeset.ex:832: Ecto.Changeset.cast_relation/4
  (pleroma 2.4.53-1423-g67783345.develop+soapbox.test) lib/pleroma/web/activity_pub/object_validators/question_validator.ex:76: Pleroma.Web.ActivityPub.ObjectValidators.QuestionValidator.changeset/2
  (pleroma 2.4.53-1423-g67783345.develop+soapbox.test) lib/pleroma/web/activity_pub/object_validators/question_validator.ex:46: Pleroma.Web.ActivityPub.ObjectValidators.QuestionValidator.cast_and_validate/1
  (pleroma 2.4.53-1423-g67783345.develop+soapbox.test) lib/pleroma/web/activity_pub/object_validator.ex:134: anonymous fn/2 in Pleroma.Web.ActivityPub.ObjectValidator.validate/2
  (pleroma 2.4.53-1423-g67783345.develop+soapbox.test) lib/pleroma/web/activity_pub/object_validator.ex:316: Pleroma.Web.ActivityPub.ObjectValidator.do_separate_with_history/2
  (pleroma 2.4.53-1423-g67783345.develop+soapbox.test) lib/pleroma/web/activity_pub/object_validator.ex:131: Pleroma.Web.ActivityPub.ObjectValidator.validate/2
  (pleroma 2.4.53-1423-g67783345.develop+soapbox.test) lib/pleroma/web/activity_pub/pipeline.ex:47: Pleroma.Web.ActivityPub.Pipeline.do_common_pipeline/2
  (ecto_sql 3.9.0) lib/ecto/adapters/sql.ex:1190: anonymous fn/3 in Ecto.Adapters.SQL.checkout_or_transaction/4
  (db_connection 2.4.2) lib/db_connection.ex:865: DBConnection.transaction/3
  (pleroma 2.4.53-1423-g67783345.develop+soapbox.test) lib/pleroma/web/activity_pub/pipeline.ex:28: Pleroma.Web.ActivityPub.Pipeline.common_pipeline/2
  (pleroma 2.4.53-1423-g67783345.develop+soapbox.test) lib/pleroma/web/activity_pub/side_effects.ex:518: Pleroma.Web.ActivityPub.SideEffects.handle_object_creation/3

Apparently we were improperly validating some objects. This fixes it.

Also fixes a few test warnings.

Merge request reports

Loading