Where does Geo.Point come from? https://github.com/bryanjos/geo? Looking at that code, Geo.Point is not implementing Ecto.Type behaviour which would explain the issue. Maybe you have some custom code or you’re using another package that does that? Could you prepare a minimal repo that compiles on Ecto 2.2 and doesn’t on 3.0?
I guess that https://github.com/bryanjos/geo_postgis is the library presenting geo types as Ecto types.
I will work on a small example reproducing the issue, and let you know when ready
Gotcha. In your schemas do you have things like field :coords, Geo.Point or field :coords, Geo.PostGIS.Geometry? Looking at error message I’d guess you have the former but that shouldn’t work on ecto 2 either.
It was the former indeed! It’s compiling now using Geo.PostGis.Geometry (don’t know if it is really working, because I’m now having further compilation issues )
Thanks for your help, I’ll keep you posted when I’ll be able to run my tests.
Just finished my migration to Phoenix 1.4 / Ecto 3.0 (more painful than I expected, damn date_times …)
Everything related to my custom Geo types is working, thanks again!
Postgrex.Error) ERROR 58P01 (undefined_file) could not open extension control file “/usr/share/postgresq
l/11/extension/postgis.control”: No such file or directory
Cheers I have got the app compiling using Geo.PostGIS.Geometry, but it seems so different from Geo.Point. I would rather just use Geo.Point but that seems impossible on the later versions of Ecto. I store latitude, longitude in my database.