# The form data below was edited by robert_cowham # Perforce Workshop Jobs # # Job: The job name. 'new' generates a sequenced job number. # # Status: Job status; required field. There is no enforced or # promoted workflow for transition of jobs from one # status to another, just a set of job status values # for users to apply as they see fit. Possible values: # # open - Issue is available to be worked on. # # inprogress - Active development is in progress. # # blocked - Issue cannot be implemented for some reason. # # fixed - Fixed, optional status to use before closed. # # closed - Issue has been dealt with definitively. # # punted - Decision made not to address the issue, # possibly not ever. # # suspended - Decision made not to address the issue # in the immediate future, but noting that it may # have some merit and may be revisited later. # # duplicate - Duplicate of another issue that. # # obsolete - The need behind the request has become # overcome by events. # # Project: The project this job is for. Required. # # Severity: [A/B/C] (A is highest) Required. # # ReportedBy The user who created the job. Can be changed. # # ReportedDate: The date the job was created. Automatic. # # ModifiedBy: The user who last modified this job. Automatic. # # ModifiedDate: The date this job was last modified. Automatic. # # OwnedBy: The owner, responsible for doing the job. Optional. # # Description: Description of the job. Required. # # DevNotes: Developer's comments. Optional. Can be used to # explain a status, e.g. for blocked, punted, # obsolete or duplicate jobs. May also provide # additional information such as the earliest release # in which a bug is known to exist. # # Component: Projects may use this optional field to indicate # which component of the project a givenjob is associated # with. # # For the SDP, the list of components is defined in: # //guest/perforce_software/sdp/tools/components.txt # # Type: Type of job [Bug/Feature]. Required. # # Release: Release in which job is intended to be fixed. Job: P4XFER-7 Status: closed Project: perforce-software-p4transfer Severity: C ReportedBy: ronprestenback ReportedDate: 2019/04/18 17:23:14 ModifiedBy: robert_cowham ModifiedDate: 2021/04/06 04:47:59 OwnedBy: ronprestenback Description: If you have both self.options.change_batch_size and self.options.maximum set, missingChanges does unnecessary work. It first creates a copy of the 'changes' list by indexing into it with self.options.change_batch_size. Then, if you also have maximum set, it repeats that step with self.options.change_batch_size.maximum. It appears that the intention is for self.options.maximum to act as an override; if so, we could avoid the second list copy by restructuring that code to be an else-if block, where it checks for self.options.maximum first, e.g. maxChanges = 0 if self.options.maximum: maxChanges = self.options.maximum elif self.options.change_batch_size: maxChanges = self.options.change_batch_size if maxChanges > 0: changes = changes[:maxChanges] Err, not sure why some parts of this are bolded... DevNotes: Implemented in github version Type: Bug