Self-mending software builder

US2016239295A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016239295-A1
Application numberUS-201514624955-A
CountryUS
Kind codeA1
Filing dateFeb 18, 2015
Priority dateFeb 18, 2015
Publication dateAug 18, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Implementations of the disclosure provide for a self-amending software builder. A method of the disclosure includes performing at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detecting a failure of the application during the test; identifying, using a processing device, an offending code change of the plurality of code changes corresponding to the failure and at least one dependent code change of the plurality of code changes that depends on the offending code change; and updating, using the processing device, a master copy of the application in view of at least one of the offending code change or the dependent code change.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method, comprising: performing at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detecting a failure of the application during the test; identifying, using a processing device, an offending code change of the plurality of code changes that corresponds to the failure and at least one dependent code change of the plurality of code changes that depends on the offending code change; and updating, using the processing device, a master copy of the application in view of at least one of the offending code change or the dependent code change. 2 . The method of claim 1 , further comprising: revising the source code of the application in view of the offending code change to generate a first revised code; and initiating a code review process for the first revised code. 3 . The method of claim 2 , wherein the first revised code includes at least one code change that undoes changes to the application introduced by the offending code change. 4 . The method of claim 2 , wherein updating the master copy of the application further comprises: performing the test on the first revised code; and updating the master copy of the application in view of the first revised code in response to determining that the first revised code passes the test. 5 . The method of claim 1 , wherein updating the master copy of the application comprises: revising the source code of the application in view of the offending code change and the dependent code change to generate a second revised code; and updating the master copy of the application using the second revised code. 6 . The method of claim 5 , wherein the second revised code comprises at least one code change that undoes changes to the application introduced by the offending code change and the dependent code change. 7 . The method of claim 1 , wherein the offending code change is identified using a binary search algorithm. 8 . A system, comprising: a memory; and a processing device operatively coupled to the memory to: perform at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detect a failure of the application during the test; identify an offending code change of the plurality of code changes that corresponds to the failure and at least one dependent code change of the plurality of code changes that depends on the offending code change; and update a master copy of the application in view of at least one of the offending code change or the dependent code change. 9 . The system of claim 8 , wherein the processing device is further to: revise the source code of the application in view of the offending code change to generate a first revised code; and initiate a code review process for the first revised code. 10 . The system of claim 9 , wherein the first revised code includes at least one code change that undoes changes to the application introduced by the offending code change. 11 . The system of claim 9 , wherein the processing device is further to: perform the test on the first revised code; and update the master copy of the application in view of the first revised code in response to determining that the first revised code passes the test. 12 . The system of claim 8 , wherein the processing device is further to: revise the source code of the application in view of the offending code change and the dependent code change to generate a second revised code; and update the master copy of the application using the second revised code. 13 . The system of claim 12 , wherein the second revised code comprises at least one code change that undoes changes to the application introduced by the offending code change and the dependent code change. 14 . The system of claim 8 , wherein the offending code change is identified using a binary search algorithm. 15 . A non-transitory machine-readable storage medium including instructions that, when accessed by a processing device, cause the processing device to: perform at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detect a failure of the application during the test; identify, using the processing device, an offending code change of the plurality of code changes that corresponds to the failure and at least one dependent code change of the plurality of code changes that depends on the offending code change; and update, using the processing device, a master copy of the application in view of at least one of the offending code change or the dependent code change, wherein, to update the master copy of the application, the processing device is further to: revise the source code of the application in view of the offending code change to generate a first revised code. 16 . The non-transitory machine-readable storage medium of claim 15 , wherein the first revised code includes at least one code change that undoes changes to the application introduced by the offending code change. 17 . The non-transitory machine-readable storage medium of claim 15 , wherein the processing device is further to: perform the test on the first revised code; and update the master copy of the application in view of the first revised code in response to determining that the first revised code passes the test. 18 . The non-transitory machine-readable storage medium of claim 15 , wherein the processing device is further to: revise the source code of the application in view of the offending code change and the dependent code change to generate a second revised code; and update the master copy of the application using the second revised code. 19 . The non-transitory machine-readable storage medium of claim 18 , wherein the second revised code comprises at least one code change that undoes changes to the application introduced by the offending code change and the dependent code change. 20 . The non-transitory machine-readable storage medium of claim 15 , wherein the offending code change is identified using a binary search algorithm.

Assignees

Inventors

Classifications

  • Test management · CPC title

  • Creation or generation of source code · CPC title

  • G06F8/71Primary

    Version control (security arrangements therefor G06F21/57); Configuration management · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016239295A1 cover?
Implementations of the disclosure provide for a self-amending software builder. A method of the disclosure includes performing at least one test on an application having source code that is stored in a source code repository and has incurred a plurality of code changes by a plurality of users; detecting a failure of the application during the test; identifying, using a processing device, an off…
Who is the assignee on this patent?
Red Hat Israel Ltd
What technology area does this patent fall under?
Primary CPC classification G06F8/71. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Aug 18 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).