-
Notifications
You must be signed in to change notification settings - Fork 0
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
Phase two design updates #12
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…to remove potential confusion in naming with planned analysis class.
…s(es) for performing analyses that process/distill our collected data.
…ass(es) for logging runs of Reposcanner and the lineage of any data that gets generated and/or consumed.
…tionality will be moved into analyses.
…hanged name of ReposcannerRoutineManager to ReposcannerManager, to reflect the fact that it'll (eventually) be used to orchestrate runs of both routines and data analyses.
…taEntity exists, and provided a way to compute an MD5 checksum of the file.
…onseModel now keeps a list to store attachments. If the caller doesn't provide any attachments, then this list remains empty. There is also now an addAttachment method so callers can add attachments after construction of the response model.
…expected to return anything, but instead can append attachments to the response object as needed after its construction in the execute() method.
…ror in failing test
…n problem with datetime objects.
…nnerDataEntity objects; added CLI argument for YAML config file to specify which routines and analysises should be activated; initializeRoutines is now called in run() rather than in the constructor, and expects the config data file.
…and analyses. Elevated ManagerTask to an abstract base class so we can have tasks for routines and tasks for analyses
…ow log both associated routines and analyses
… new class above it called BaseRequestModel. Making room for analysis requests.
…annerManger public to allow for unit testing, and added several tests.
…riting files has been moved out of routines/analyses and into the data layer, I'm removing the export() method from both routines and analyses. Now all the implementation logic can go in the execute() method.
…Store, which in turn can be passed to ReposcannerLabNotebook.onTaskStart() to log which files an analysis will grab from the store.
…ing in data is the responsibility of the AnalysisRequestModel, which can now fetch data from the data store based on the criteriaFunction(). The files grabbed by the request are logged in the notebook during a call to onTaskStart()
…ommented out the obsolete routines in reposcanner.contrib for the time being
…utine/analysis classes, canHandleRequest() is no longer considered an abstract method, but instead has a default implementation that checks the incoming request's class against abstract method getRequestType(). This should cut down on the amount of unnecessary boilerplate code. As an aside, it seems like pytest-mock is leaking mock implementations across unit tests, because this change caused test_ContributorAccountListRoutine_willRejectInAppropriateRequest to break. This is happening because another test mocks an implementation of the routine's parent's canHandleRequest(). I will need to look into this.
… be written to (e.g. the root directory) is now considered an error and will be flagged as such.
…enance logging purposes. Right now we use the hash of the latest revision/commit.
…etReposcannerVersion()
…rather than on publication. This allows us to check whether the output directory is valid at the start, rather than at the very end of execution when it is far too late.
…partially-filled notebook template.
…ter when constructed.
…s argument which directs the entity to look in the first row of the records for a header rather than calling getColumnNames(), which only applies for CSV files that feature W3C-compliant metadata.
…tests. Still need to make sure the real input data matches the expectations of the analysis, which we'll know for sure once we run it live.
…tine, and ContributorFileInteractionAnalysisRequest.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I'm merging in these changes so I can start work on quality of life features described in #11 .