Skip to content

Update tests + CI, remove cruft, fix a bug #23

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 9 commits into from
Feb 1, 2024
Merged

Update tests + CI, remove cruft, fix a bug #23

merged 9 commits into from
Feb 1, 2024

Conversation

palday
Copy link
Collaborator

@palday palday commented Jan 24, 2024

  • updates tests to be a little bit more automatic and not require human visual checks
  • updates CI to use GitHub actions
  • add a CompatHelper workflow
  • fixes Failing tests throw error with Julia v1.10 #22
  • bump minimum Julia compat to current LTS (1.6)
  • adds in compat entries for stdlibs inline with current practice
  • adds in authors
  • drops the special include stuff -- I think there's enough support in the ecosystem for that now and this reduces maintenance overhead (can add it back in later, I guess)
  • breaking version bump

That's a lot of churn, but each commit should be more or less self-contained.

palday and others added 5 commits January 23, 2024 13:32
@palday palday requested a review from ssfrr January 24, 2024 01:39
Copy link
Owner

@ssfrr ssfrr left a comment

Choose a reason for hiding this comment

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

Overall looks great, thanks for all the improvements! In particular it's a huge win to have that testing automated.

a few questions in the review, but nothing blocking


[deps]
DeepDiffs = "ab62b9b5-e342-54a8-a765-a90f495de1a6"
Distributed = "8ba89e20-285c-5b6f-9357-94700520ee1b"
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"

[compat]
julia = "1"
Aqua = "0.8"
DeepDiffs = "1"
Copy link
Owner

Choose a reason for hiding this comment

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

I'm glad DeepDiffs is still up and running! I haven't touched it in years.

test/no_diff.jl Outdated
end
end
end
@test contains(output, "Diff:\nnothing")
Copy link
Owner

Choose a reason for hiding this comment

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

this one's weird. It's been a while since I've looked at this package so I don't remember what the expected behavior is here. It doesn't seem like Diff: nothing would be what you'd want though, given that there is a difference. If Matrices aren't supported by DeepDiffs, I'd think this just wouldn't include the Diff: at all.

probably worth a comment to explain.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Yeah. Maybe the better approach is

  1. disable diffing on matrices for now
  2. check out what DeepDiffs is up to
  3. update to include matrix functionality

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

okay, the issue was more interesting than I thought -- there is an implicit else branch that led to a nothing in the logic.

Logging = "56ddb016-857b-54e1-b83d-db4d58db5568"
MetaTesting = "9e32d19f-1e4f-477a-8631-b16c78aa0f56"
Copy link
Owner

Choose a reason for hiding this comment

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

How much do we gain from MetaTesting? It doesn't look like the EncasedTestSet type you're using here is documented. AFAICT it is supposed to isolate the wrapped tests, but we still end up wrapping them in try...catch blocks.

I'm not strongly opposed, if you think it makes things easier. I just want to make sure there's a good reason to add an additional dependency.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It made some of the testing easier -- without MetaTesting, the blocks were even more of an mess. It's "just" a test dep, so it doesn't hurt most users.

I can also set the compat entry for MetaTesting to exact equality, since we are reaching into internals a bit.

Copy link
Owner

Choose a reason for hiding this comment

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

sounds good. just wanted to make sure. re: making the compat entry exact, I'd say it's not necessary, but is good to keep in mind if things break in the future.

Copy link
Owner

Choose a reason for hiding this comment

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

whoops, didn't check the rest of the new commits before commenting. I'm good with it either way.

@palday
Copy link
Collaborator Author

palday commented Jan 31, 2024

@ssfrr can you enable the CodeCov integration/app/whatever GH calls it for this repo?

@palday palday merged commit 8c26aff into master Feb 1, 2024
@palday palday deleted the pa/upstream branch February 1, 2024 04:20
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.

Failing tests throw error with Julia v1.10
2 participants