-
Notifications
You must be signed in to change notification settings - Fork 2
Fix broken tests with latest version #24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
@ErickChacon any chance you can take a look at this? I've commented some tests that are failing and am not sure if they are failing because of an issue in our side or an issue in one of the backend packages (Shapefile.jl, GeoJSON.jl, ...). |
Given that our interface has changed, it is probably related to our side. I will check it. |
We replaced Chain by Rope + Ring. I modified the tochain and topolygon function in conversion.jl. Moving forward we have the "closedness" of a chain as part of the type. |
After some investigation. I noted that the error occurs when trying to write a There has been a change on April about those lines. It might be related to that, but I am not completely sure. I will try to make some time to check it in more detail. |
Thank you @ErickChacon for nailing down the issue. So apparently we discovered a bug in GeoJSON.jl? I am really enjoying our new Rope/Ring types. They are helping with the identification of bugs downstream already. |
@ErickChacon I replaced the check @eliascarv pointed out that this issue may be related to the fact that GeoJSON.jl saves as Float32 and then coordinates that used to be different in Float64 became equal in single precision. |
I do not think it is a problem related to the float type. I think is the design of saving multilinestrings as Polygons in |
I think I know what's happening:
For example, the previous implementation would show the following message: # ERROR: AssertionError: invalid outer chain
# Stacktrace:
# [1] PolyArea{2, Float32, Chain{2, Float32, Vector{Point2f}}}(outer::Chain{2, Float32, Vector{Point2f}}, inners::Vector{Any}, fix::Bool) I will create a MWE and start a issue in GeoJSON.jl. |
Continuing with the previous explanation. The error is clear now: ERROR: MethodError: no method matching PolyArea(::Rope{2, Float64, Vector{Point2}}) Meaning that |
Hi @ErickChacon any advance on the GeoJSON.jl side? |
We refactored the Chain interface and some of the tests are now breaking. We need to take a closer look and fix.
The text was updated successfully, but these errors were encountered: