Skip to content

Update to Static.jl v0.8 #115

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

Merged
merged 6 commits into from
May 30, 2023
Merged

Update to Static.jl v0.8 #115

merged 6 commits into from
May 30, 2023

Conversation

oschulz
Copy link
Collaborator

@oschulz oschulz commented May 30, 2023

Closes #99 and #111 .

Since StaticInt is no longer an Integer in Static v0.8, we need to jump through a few hoops.

Drops support for older versions of Static.jl.

@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@codecov
Copy link

codecov bot commented May 30, 2023

Codecov Report

Patch coverage: 63.63% and project coverage change: +0.48 🎉

Comparison is base (99a603b) 53.32% compared to head (6b8d8bb) 53.80%.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #115      +/-   ##
==========================================
+ Coverage   53.32%   53.80%   +0.48%     
==========================================
  Files          42       43       +1     
  Lines        1189     1221      +32     
==========================================
+ Hits          634      657      +23     
- Misses        555      564       +9     
Impacted Files Coverage Δ
src/MeasureBase.jl 77.77% <ø> (+2.77%) ⬆️
src/combinators/smart-constructors.jl 29.06% <0.00%> (ø)
src/domains.jl 10.20% <0.00%> (+5.85%) ⬆️
src/static.jl 60.00% <60.00%> (ø)
src/combinators/power.jl 82.25% <69.23%> (-2.23%) ⬇️
src/standard/stdmeasure.jl 91.30% <100.00%> (ø)

... and 2 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@oschulz oschulz requested a review from cscherrer May 30, 2023 12:36
@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@oschulz oschulz requested a review from theogf May 30, 2023 12:38
@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@oschulz oschulz changed the title Static v0.8 compatibility Update to Static.jl v0.8 May 30, 2023
@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

Co-authored-by: Chad Scherrer <[email protected]>
@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@github-actions
Copy link

Package name latest stable
MeasureTheory.jl

@cscherrer
Copy link
Collaborator

Just to be sure I understand, it seems like static floats are working again with our interface, but ints are not, so you added special cases and dispatch patterns to handle this. Is that right?

@oschulz
Copy link
Collaborator Author

oschulz commented May 30, 2023

Just to be sure I understand, it seems like static floats are working again with our interface, but ints are not, so you added special cases and dispatch patterns to handle this. Is that right?

Yes, that's right - Static.jl v0.8 has static floats are Reals again, but the static ints are not Integers again. I have been working on that (SciML/Static.jl#92), but it's tricky and I don't know if I can do it with a number of invalidations the Static maintainers will accept - and on what timeline.

But the approach in this PR seems to work.

@oschulz
Copy link
Collaborator Author

oschulz commented May 30, 2023

Ok now @theogf and @cscherrer ?

@cscherrer
Copy link
Collaborator

We should still check MeasureTheory tests locally. Latest MT has

Static = "0.5, 0.6"

Does that mean this PR is technically a breaking change?

@oschulz
Copy link
Collaborator Author

oschulz commented May 30, 2023

Does that mean this PR is technically a breaking change?

No, AFAIK this is not considered breaking - none of the interfaces in MeasureBase.jl change. The fact the MeasureBase.jl depends on Static directly is a separate thing. It doesn't lead to code breaking, it only restricts which package versions are compatible.

(It would be breaking if code that worked before, coupled with a Project.toml that specifies it's requirements, wouldn't work after a package update, but that won't happen. People might just not get the new version of MeasureBase.).

@oschulz
Copy link
Collaborator Author

oschulz commented May 30, 2023

We should still check MeasureTheory tests locally.

But MeasureTheory doesn't even support MeasureBase v0.14 yet.

@cscherrer
Copy link
Collaborator

Oh, I didn't realize it was so behind. Ok in that case let's go with this and then MT can catch up

@oschulz
Copy link
Collaborator Author

oschulz commented May 30, 2023

Ok in that case let's go with this and then MT can catch up

I'll see if I can do the Distributions extension soon, then MT can be updated in one go, maybe.

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.

3 participants