Skip to content

Restore GeoInterfaceRecipes as empty stub package#213

Merged
evetion merged 6 commits into
JuliaGeo:mainfrom
repro-code:restore-geointerfacerecipes
Jan 19, 2026
Merged

Restore GeoInterfaceRecipes as empty stub package#213
evetion merged 6 commits into
JuliaGeo:mainfrom
repro-code:restore-geointerfacerecipes

Conversation

@repro-code
Copy link
Copy Markdown
Contributor

Summary

  • Restores the GeoInterfaceRecipes subpackage as an empty stub (v1.0.3)
  • Allows users with GeoInterfaceRecipes in their dependencies to upgrade smoothly
  • The package depends on GeoInterface >= 1.5 which has the built-in extensions

Fixes #200

Test plan

  • Verify the package loads without errors
  • Verify tests pass (trivial @test true)
  • Register v1.0.3 in the General registry after merge

🤖 Generated with Claude Code

Copy link
Copy Markdown
Member

@evetion evetion left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems correct. What do you think @asinghvi17? This is the old state https://github.com/JuliaGeo/GeoInterface.jl/blob/v1.4.1/GeoInterfaceRecipes/README.md, and the package was removed in 1.5 via #198.

name = "GeoInterfaceRecipes"
uuid = "0329782f-3d07-4b52-b9f6-d3137cf03c7a"
authors = ["JuliaGeo and contributors"]
version = "1.0.3"
Copy link
Copy Markdown
Member

@asinghvi17 asinghvi17 Jan 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it a breaking change to delete the macro? Maybe we should offer at least a stub macro that throws a deprecation warning?

Otherwise this should be v2.0 technically.

Other than that, this looks good.

This could also just forward the expression to the macro that is now in GeoInterface which would be a non breaking change

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm, I see now this is missing the RecipesBase = "1" dependency. The idea is, as soon as you load this package, the extension is guaranteed to trigger (which currently causes the compilation warning we're trying to prevent). So this should be non-breaking.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably need to update the compat to julia 1.10 so extensions are guaranteed.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What I mean by breaking change is that this macro will no longer exist

https://github.com/JuliaGeo/LibGEOS.jl/blob/09921624ba36eb53f470ae99758dd65324e742ab/src/geo_interface.jl#L290

So this package would have to at least load RecipesBase (via using) and provide a macro that doesn't error when used in this way to be non-breaking (what the macro does is then kind of immaterial although it would be great to forward it to GeoInterface.@enable_plots)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Btw you can invoke macros as functions so long as you provide the file and line information

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point, using RecipesBase + a stub macro it is. I don't think you can forward though without getting into overlap again, I rather keep it non-functional.

Copy link
Copy Markdown
Member

@asinghvi17 asinghvi17 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

@evetion evetion merged commit a56ee76 into JuliaGeo:main Jan 19, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

GeoInterfaceRecipes precompilation error with GeoInterface v1.5

3 participants