PyRal 1.4.2 is what we're using but behavior is the same in 1.5.2
We're experiencing an issue like the following:
We query pyral for a UserStory by its formatted ID:
query_fetch = ['FormattedID', 'Name', 'c_MajorRelease', 'Owner', 'Project', 'ScheduleState', 'Feature', 'ObjectID', 'c_TestStrategy']
query_string = "FormattedID = {}".format(item_numeric_id)
results = self.rally.get('HierarchicalRequirement', project=project, fetch=query_fetch, query=query_string, projectScopeUp=True, projectScopeDown=True)
# assume we know we only get one result
story = results.next()
feature = story.Feature
milestones = feature.Milestones # this works correctly, milestones is appropriately populated
However, if we include Milestones in the fetch params, we get back an empty list for Milestones on the parent feature:
query_fetch = ['FormattedID', 'Name', 'c_MajorRelease', 'Owner', 'Project', 'ScheduleState', 'Feature', 'ObjectID', 'c_TestStrategy', 'Milestones']
query_string = "FormattedID = {}".format(item_numeric_id)
results = self.rally.get('HierarchicalRequirement', project=project, fetch=query_fetch, query=query_string, projectScopeUp=True, projectScopeDown=True)
# assume we know we only get one result
story = results.next()
feature = story.Feature
milestones = feature.Milestones # this returns an empty list
I would expect to get the correct list of Milestones back either way, as I am unsure why the query fetch params for the User Story would impact the retrieval of the Milestones for the Feature.