-
Notifications
You must be signed in to change notification settings - Fork 120
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
Rework Job Retrieval/Submission API #224
Comments
Hi @giovtorres , I think I'm making some good progress with the job class(es) (job-submission, retrieval, etc..). Would it be possible to maybe create a seperate branch for this refactoring process? Maybe something like dev-refactor or just dev branch , where I could push the progress? (I think I'm not able to create branches here). I'd really like to bring the project forward in this regard. What do you think? |
Great to hear the progress! Go ahead and create a branch. You should be able to now. |
I will continue to work on this again now. Haven't done anything on this in a while, however last time I already got pretty far with the rework (except a few job-submission parameters that require a bit more extensive input-validation.) |
Made a new branch here with current progress. |
Pretty much 90% of the general functionality is now implemented/reworked, though it will still need some bug-fixing probably, polish and fixing some outstanding TODO's. And need to write tests for this. |
This change looks good (main...rework/jobs). This is the object oriented wrapper I was hoping The main thing I'm after is actually a wrapper around |
Hi @multimeric Good timing :) For the rework regarding this issue - its pretty much done. Was just going to check for some last possible changes and some missing documentation/examples. But I do definitely want to get it finally merged and available for people in the next few days, and improvements/missing features can be applied continuously. |
Wonderful, let me know when you need help! |
Functionality wise I consider this one here now done and would focus on getting this merged. Since I've used google docstring style exclusively here (which I find better than ReST), the docstrings in pyslurm.pyx will also need to be converted to this style. The plan is to have this sort of New API live side by side with the old stuff in pyslurm.pyx for some time, and declare any old class in pyslurm.pyx as deprecated if there is a replacement (e.g. the What needs to be done is laying out the documentation for this correctly, having one reference API for the new stuff, and the reference API for the "old" stuff in pyslurm.pyx (#271) |
Okay, sounds good. Let me know if you would like any help with anything. |
Sure, if you'd like to I would definitely appreciate help with the documentation stuff, somewhat in the direction like I described. (or of course if you have better ideas to properly structure both reference APIs, let me know :) ) I'd suggest that I merge #271 already as it is basically functioning and transitions the current documentation as is to mkdocs. Based on that you could then do the necessary steps in a clone of the branch regarding this issue to:
Would that be fine? |
Is this planned to be included in a new release? Which version(s) of Slurm will it be compatible with? |
yes, I will tag a new release soon. |
Branch is here
Classes
Job
class providing read-only access to all possible attributes of jobs (e.g. time of submission)Jobs
class, acting as a custom collection (dict) to retrieve actual job-information, and holds all theJob
instances which carry the information.JobStep
class providing read-only access to all possible attributes of a single Job-stepJobSteps
class, acting as custom collection (dict) to hold all the 'JobStep' instancesJobSubmission
class, acting as a interface to create a job-submission records and to submit them#SBATCH
directives from the specified submit-script- will be pretty easy once all attributes also have the logic to accept sbatch-like input for these (e.g. parsing something more complex like
--cpu-frequency
.General Functionality for a Job
General Functionality for a JobStep
Other
Related to #11
The text was updated successfully, but these errors were encountered: