-
Notifications
You must be signed in to change notification settings - Fork 10
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
v0.6.2 #822
Conversation
Codecov Report
@@ Coverage Diff @@
## master #822 +/- ##
==========================================
+ Coverage 96.80% 97.25% +0.44%
==========================================
Files 81 82 +1
Lines 5380 4913 -467
==========================================
- Hits 5208 4778 -430
+ Misses 172 135 -37
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
RTD nosedived into timeout from this build (working) to this one (timeout) no idea why, here is the diff the conda installs seem identical (also with the github action run)... 🤔 |
I have removed the internal links in I think this is ok for now |
@@ -259,6 +259,10 @@ def __eq__(self, other): | |||
return False | |||
return self.data_array.identical(other._obj) | |||
|
|||
def __hash__(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are there any performance implications for this change? This will trigger equality comparisons for set and dict operations.
I've seen deepsource complaining about this. But can't we redirect the hash function to XArray (if they offer one)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, mutable objects shouldn't be hashable at all. But there is a feature request for XArray to implement this any ways. pydata/xarray#4738
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the way I see it this should have been the implicit behavior anyway (because we implement __eq__
) but somehow deepsource didn't pick it up
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think if the equality operator is defined, and the hash method is just being derived, the object will still be hashable. So this is not just a cosmetic change to satisfy a linter.
Prior 0.6.2 this raised:
import weldx
x = weldx.core.MathematicalExpression("3*x")
gs = weldx.core.GenericSeries(x)
hash(gs)
TypeError: __hash__ method should return an integer
Changes
prepare
0.6.2
releasecreate release PR
vX.Y.Z
and add therelease
tag (example here)
CHANGELOG.rst
is up to date and enter current date to the release versionCITATION.cff
version number and datedeprecated
and remove deprecated codeMerge the Pull Request
add Git(hub) tag
doubt use vX.Y.Z everywhere)
(this website can be used to convert rST -> MD)
ReadTheDocs update
latest
,stable
andvX.Y.Z
get triggered on RTD (the tag build can gettriggered twice, resulting in a failed/duplicated build, no need to worry)
pypi release
build
action completes hereconda-forge release
pull-request here
meta.yaml
in the pull request, manually update all changes in the build and run dependencies