2222
2323logger = logging .getLogger (__name__ )
2424
25+
2526class Filter :
2627 """
2728 Base class for filtering records.
@@ -44,16 +45,21 @@ class FilterByRelease(Filter):
4445
4546 def __init__ (self , release_version : Optional [str ] = None ):
4647 self .release_version = release_version
48+ # TODO - check usage of release_version, as it is not used in the current implementation
49+ # it is also part of the MinedData class, so it might be redundant here
4750
48- def filter (self , data : MinedData ):
51+ def filter (self , data : MinedData ) -> MinedData :
4952 """
5053 Filters issues, pull requests, and commits based on the latest release date.
5154 If the release is not None, it filters out closed issues, merged pull requests, and commits
5255 that occurred before the release date.
53- @param data: The mined data containing issues, pull requests, commits, and release information.
54- @return: The filtered mined data.
55- """
5656
57+ @Parameters:
58+ - data (MinedData): The mined data containing issues, pull requests, commits, and release information.
59+
60+ @Returns:
61+ - MinedData: The filtered mined data with issues, pull requests, and commits reduced based on the release date.
62+ """
5763 issues_list = data .issues
5864 pulls_list = data .pull_requests
5965 commits_list = data .commits
@@ -76,3 +82,5 @@ def filter(self, data: MinedData):
7682 data .commits = list (filter (lambda commit : commit .commit .author .date > data .since , commits_list ))
7783 logger .debug ("Count of commits reduced from %d to %d" , len (commits_list ), len (data .commits ))
7884
85+ return data
86+
0 commit comments