Skip to content
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

Fixed issue #947 by editing type strings #982

Merged
merged 9 commits into from May 21, 2020
Merged

Fixed issue #947 by editing type strings #982

merged 9 commits into from May 21, 2020

Conversation

tuethan1999
Copy link
Contributor

@tuethan1999 tuethan1999 commented May 19, 2020

Pull Request Description

  • Edited the type strings of the Unknown, EmailAddress, FilePath, IPAddress, SubRegionCode

@CLAassistant
Copy link

CLAassistant commented May 19, 2020

CLA assistant check
All committers have signed the CLA.

@tuethan1999 tuethan1999 linked an issue May 19, 2020 that may be closed by this pull request
@codecov
Copy link

codecov bot commented May 20, 2020

Codecov Report

Merging #982 into master will increase coverage by 0.00%.
The diff coverage is 100.00%.

Impacted file tree graph

@@           Coverage Diff           @@
##           master     #982   +/-   ##
=======================================
  Coverage   98.22%   98.23%           
=======================================
  Files         119      119           
  Lines       10901    10905    +4     
=======================================
+ Hits        10708    10713    +5     
+ Misses        193      192    -1     
Impacted Files Coverage Δ
featuretools/entityset/deserialize.py 100.00% <100.00%> (ø)
featuretools/entityset/serialize.py 100.00% <100.00%> (ø)
featuretools/feature_base/features_serializer.py 100.00% <100.00%> (ø)
...etools/tests/entityset_tests/test_serialization.py 99.54% <100.00%> (+<0.01%) ⬆️
...ests/primitive_tests/test_feature_serialization.py 99.30% <100.00%> (ø)
.../tests/primitive_tests/test_features_serializer.py 100.00% <100.00%> (ø)
featuretools/variable_types/variable.py 98.87% <100.00%> (+0.56%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 88429bf...eb2fd6b. Read the comment docs.

@rwedge
Copy link
Contributor

rwedge commented May 21, 2020

After this change, the Variable class is appearing in the dictionary returnedfind_variable_types. Since the Variable class isn't a variable type we expect users to use as an actual variable, let's exclude it from the find_variable_types dictionary. Similar to how ft.primitives.get_aggregation_primitives and ft.primitives.get_transform_primitives do something to ensure TransformPrimitive and AggregationPrimitive don't get returned with their subclasses.

@rwedge
Copy link
Contributor

rwedge commented May 21, 2020

https://github.com/FeatureLabs/featuretools/blob/e9f12ed71799ccad9e842cd7cf170d362407f056/featuretools/entityset/deserialize.py#L30

Since we've changed the type string for Unknown, we should update this line.

I also think this edge case -- being unable to find a variable that matches the type string in a variable json -- is untested. We should add a test case.

@rwedge
Copy link
Contributor

rwedge commented May 21, 2020

Let's also add a line to the breaking changes section of the changelog, detailing which Variables had their type strings changed.

…ase where type_string was not found in the variable_types dict. Added a supporting test_case.
@tuethan1999 tuethan1999 requested a review from rwedge May 21, 2020 18:08
…ng change. Added the breaking change to the changelog
@@ -26,6 +28,10 @@ Changelog
no longer used to determine the time column. Now, both instance id columns and time columns in a cutoff time
dataframe can be in any order as long as they are named properly.

* The type_string attributes of all entity classes are now a snake case conversion of their class names. This
Copy link
Contributor

Choose a reason for hiding this comment

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

  • variable classes, not entity classes
  • let's use code formatting (``text``) around type_string and the formal class names (Unknown, IPAddress, etc)
  • Instead of talking about schema versions, in the last sentence let's say that old saved entitysets that used these variable may load incorrectly

Copy link
Contributor

@rwedge rwedge 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!

@tuethan1999 tuethan1999 merged commit d8843c0 into master May 21, 2020
@rwedge rwedge mentioned this pull request May 29, 2020
@rwedge rwedge deleted the iss947 branch June 17, 2020 18:54
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.

Unknown variable type should have type_string
3 participants