Source Code Version Patents (Class 717/122)
  • Patent number: 10318284
    Abstract: A method, computer program product, and system of managing computing tasks includes storing at least one build information element within at least one attribute of a configuration management tool A computing task is generated from within the configuration management tool based upon, at least in part, the at least one build information element. The computing task is initiated from within the configuration management tool. The computing task is deployed on a computing device.
    Type: Grant
    Filed: June 2, 2008
    Date of Patent: June 11, 2019
    Assignee: International Business Machines Corporation
    Inventors: Brandt William Onorato, Stephen Donald Seifert, Anthony T. Lee, Ray Kemmer Green
  • Patent number: 10303449
    Abstract: Techniques for compiling non-native constants are disclosed. While compiling source code instructions, a compiler determines that a particular source code expression is associated with a command to the compiler to resolve the particular source code expression as a constant during compilation. The compiler is not configured to recognize the particular source code expression as constant without the command signaling to the compiler that the particular source code expression is constant. Based on the command, the compiler executes the particular source code expression to obtain a constant value. The compiler generates compiled instructions based on the source code instructions, in which the constant value is substituted for at least one reference to the particular source code expression.
    Type: Grant
    Filed: February 28, 2018
    Date of Patent: May 28, 2019
    Assignee: Oracle International Corporation
    Inventors: Brian Goetz, Maurizio Cimadamore, Vicente A. Romero Zaldivar
  • Patent number: 10241809
    Abstract: A context-sensitive help system for obtaining insights from a target environment in an unobtrusive manner. The context-sensitive help system detects a search or opening of a help document containing a plurality of placeholders and product/component names by a user; crawls documents in the knowledgebase and extracts product and/or component names and corresponding configuration parameters or placeholders; stores the product and/or component names and placeholders in the placeholder dictionary along with links and an index to documents in the knowledgebase. The system extracts insights from the target environment in an unobtrusive manner; and replaces placeholders in the help document with values from the target environment based on the insights from the target environment; and then displays the help document to the user.
    Type: Grant
    Filed: April 15, 2016
    Date of Patent: March 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Bharath Gopalakrishnan, Albee Jhoney, Sundaravelu Shanmugam
  • Patent number: 10223658
    Abstract: Described are various embodiments of a continuous integration software development platform and system, and implementation method therefor. In one embodiment, the process comprises creating at least one regular changeset bundle from said submitted software changesets; executing a predefined automated pre-commit quality verification on said at least one regular changeset bundle; promoting at least some successfully verified software changesets in said at least one regular changeset bundle as confirmed low-risk changesets; creating a primary bundle from said confirmed low-risk changesets; executing said pre-commit quality verification on said primary bundle against a current software development version label; and committing at least some successfully verified low-risk changesets in said primary bundle to invoke a new software development version label to be set as said current software development version label in subsequent primary bundle verifications.
    Type: Grant
    Filed: December 12, 2016
    Date of Patent: March 5, 2019
    Assignee: APARTSW CONSULTING INC.
    Inventor: Dan Iulian Cornilescu
  • Patent number: 10180827
    Abstract: Optimizations are provided for sibling calls. A sibling caller is marked to indicate that it may call a sibling routine or that it may call an external sibling routine. Based on the marking, certain processing is performed to facilitate use of sibling calls, particularly when the sibling routine being called is external to the caller.
    Type: Grant
    Filed: December 14, 2016
    Date of Patent: January 15, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Michael K. Gschwind
  • Patent number: 10114628
    Abstract: A software package having one or more custom metadata types is installed. The software package has computer-executable code that causes one or more processors to perform at least accessing the one or more custom metadata types. One or more protected records are accessed within the one or more custom metadata types. For the protected records, code in the installed package can read the protected records and can return the records whether protected or not. If the custom metadata types are in a separate base package, code in the base package can also read the records. Returned information is stored in the one or more custom metadata records that has been accessed.
    Type: Grant
    Filed: May 25, 2016
    Date of Patent: October 30, 2018
    Assignee: salesforce.com, inc.
    Inventors: Avrom Irwin Roy-Faderman, Jean-Baptiste Pringuey, Haripriya Murthy, Sricharan Anand Ramanujapuram, Christopher A. Kohr, Aaron Slettehaugh
  • Patent number: 10095493
    Abstract: Optimizations are provided for sibling calls. A sibling caller is marked to indicate that it may call a sibling routine or that it may call an external sibling routine. Based on the marking, certain processing is performed to facilitate use of sibling calls, particularly when the sibling routine being called is external to the caller.
    Type: Grant
    Filed: December 14, 2016
    Date of Patent: October 9, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Michael K. Gschwind
  • Patent number: 10095672
    Abstract: A method and apparatus accurately synchronizes one or more items of financial information between a plurality of representations, or presentations, of marked up financial data stored in electronic form. The different representations may include balance sheets, income statements, and cash flow statements, among various other financial data, that may share common financial facts that are presented in a selected reporting format corresponding to the representations. Identifiers are assigned to the data so that instances of the facts may be automatically and simultaneously updated throughout the different representations each time a fact is updated in one representation.
    Type: Grant
    Filed: June 18, 2013
    Date of Patent: October 9, 2018
    Assignee: Novaworks, LLC
    Inventors: Scott A. Theis, David S. Theis, Erin M. Rybinski
  • Patent number: 10079720
    Abstract: A management portal receives an input indicating that a management operation is to be performed on a service. The management portal dynamically hosts a management interface for performing the management operation on different versions of the service.
    Type: Grant
    Filed: May 12, 2016
    Date of Patent: September 18, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Septimiu Turcu, Michael Riddersholm Petersen, Christian Heide Damm, Esteban Maximilian Ardaya Hecki
  • Patent number: 10073821
    Abstract: A method and apparatus for representing two or more related markup language source files in a single delta file is provided. The markup language source files are represented in such a way that the delta file is easily processed to produce one or more merged combinations of the source files. The method and apparatus ensure that any one of the original files can be extracted from the delta file and the delta file remains a valid delta file for any remaining source files. The method and apparatus is adapted to enable the sources files to be aligned with respect to structurally significant elements and textual content so as to reduce repetitions in the delta file of common content. The method and apparatus are suited for use, but not exclusively, with XML documents and files.
    Type: Grant
    Filed: September 2, 2014
    Date of Patent: September 11, 2018
    Assignee: DeltaXML, Ltd.
    Inventors: Semer Geoffrey Thomas La Fontaine, Tristan Mitchell
  • Patent number: 10048679
    Abstract: A manufacturing process management (MPM) computer device is provided. The MPM computer device is configured to store a first version of a product and a second version of the product. The second version includes the first plurality of parts, the second plurality of parts, and a third plurality of parts associated with the plug. The first location is between the first plurality of locations and the second plurality of locations. The MPM computer device is also configured to calculate a first numbering system, calculate a second numbering system for a third plurality of locations associated with the third plurality of parts, determine a first grid overlay for the first version of the product based on the first numbering system, determine a second grid overlay for the second version of the product based on the first numbering system and the second numbering system.
    Type: Grant
    Filed: January 8, 2016
    Date of Patent: August 14, 2018
    Assignee: The Boeing Company
    Inventors: Edward A. DiPippo, Kyle Kurtis Hagberg, Christopher Luis Carpenter, Max Neal Jensen, Anthony John Williams
  • Patent number: 10042740
    Abstract: Techniques to identify idiomatic code in a code base are described. Embodiments of such techniques are configured with idiom information corresponding to idiomatic code representations of computer code of which each idiomatic code representation comprises information corresponding to a control structure and variable usage. These techniques are operative to compare the idiomatic code representations to computer code fragments in the code base and identify one or more code fragments matching at least one of the idiomatic code representations. These techniques may identify functional operators for replacing the code fragments in the code base. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 4, 2015
    Date of Patent: August 7, 2018
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Christian Alma Bird, Mark Marron, Miltiadis Allamanis, Earl Theodore Barr
  • Patent number: 10001989
    Abstract: A computer program product for verifying source code in disparate source control systems. A processor configured to: obtain a first source code from a target repository; access a second source code from a source repository; and verify each file in the first source code matches each corresponding file in the second source code. Verifying causes the processor to: read contents of a file in the first source code in the target repository; access a corresponding file in the second source code in the source repository; replace contents of the corresponding file in the second source code in the source repository with the contents of the file in the first source code in the target repository; execute an editor in the source repository to display differences in the corresponding file that have been modified as a result of replacing contents; and log each file that does not match.
    Type: Grant
    Filed: November 30, 2017
    Date of Patent: June 19, 2018
    Assignee: International Business Machines Corporation
    Inventors: Lauren J. Hayward Schaefer, David G. Terry
  • Patent number: 9959113
    Abstract: Embodiments relate to systems and methods for managing versions of a software package in a development environment. A package distribution module can interface with a set of stages of the development environment to manage the development of multiple versions of software packages. The package distribution module can establish access rights of entities to advance appropriate versions of the software packages to appropriate stages of the development environment. One or more versions of the software packages can be advanced or moved to other stages of the development environment according to the access rights. The package distribution module can establish new access parameters of software packages in response to the one or more versions advancing or moving to other stages, such that appropriate entities have access to advance appropriate versions. The package distribution module can provide production versions of software packages to a package manager for distribution to target machines.
    Type: Grant
    Filed: March 1, 2011
    Date of Patent: May 1, 2018
    Assignee: Red Hat, Inc.
    Inventor: Daniel P Radez
  • Patent number: 9940108
    Abstract: A system and method for merging changed elements in a software development environment is provided, in which the software development environment is provided with a set of at least one defect, comprising at least one changed element, associated with a software project that comprises a plurality of elements, the software project comprising a plurality of elements. The environment first obtains a list of changed elements in a defect record, for example from a defect database, and for each changed element in the list, attempts an automated merge of the changed element with a corresponding target. If any attempt fails, the environment may re-attempt the merge for any failed attempt, and may invoke a user interface for resolving the merge manually.
    Type: Grant
    Filed: July 22, 2013
    Date of Patent: April 10, 2018
    Assignee: International Business Machines Corporation
    Inventor: David John Martineau
  • Patent number: 9898281
    Abstract: A computer program product for verifying source code in disparate source control systems. A processor configured to: obtain a first source code from a target repository; access a second source code from a source repository; and verify each file in the first source code matches each corresponding file in the second source code. Verifying causes the processor to: read contents of a file in the first source code in the target repository; access a corresponding file in the second source code in the source repository; replace contents of the corresponding file in the second source code in the source repository with the contents of the file in the first source code in the target repository; execute an editor in the source repository to display differences in the corresponding file that have been modified as a result of replacing contents; and log each file that does not match.
    Type: Grant
    Filed: July 12, 2017
    Date of Patent: February 20, 2018
    Assignee: International Business Machines Corporation
    Inventors: Lauren J. Hayward Schaefer, David G. Terry
  • Patent number: 9804829
    Abstract: An interface definition language compiler can be designed to generate different versions of stubs or library files from a same IDL source code. A developer can maintain a single IDL file with code for various versions by using version directives. As part of front end compiling, the IDL compiler will determine which sections of IDL code are compatible with a specified version and compile those determined sections of IDL code. When performing semantic analysis, the IDL compiler will determine whether changes across versions create semantic issues that can be resolved in the target program language by the backend of the compiler. For those changes that cannot be resolved in the target program language, the IDL compiler can generate error notifications.
    Type: Grant
    Filed: March 31, 2016
    Date of Patent: October 31, 2017
    Inventors: Josiah Daniel Haswell, James Andrew Perkins
  • Patent number: 9740476
    Abstract: A customer's Version Control System (VCS) is set up to store files associated with an application having application versions. The customer's VCS includes a set of branches defined correspondingly to a set of systems of a customer change management landscape. A first branch comprises files of a first version of the application. A second version of the application is populated into the first branch. Existing customizations, modifications, and created runtime authoring objects during design time and runtime of the first version of the application are applied over the second version. The changes are submitted into the customer's VCS and an updated version is generated in the first branch. The updated version is transported to a second branch through merging the first branch and the second branch. When a request for deployment is received, a reference to the second branch pointing to the updated version of the application is provided.
    Type: Grant
    Filed: December 14, 2015
    Date of Patent: August 22, 2017
    Assignee: SAP SE
    Inventors: Peter Eberlein, Volker Driesen
  • Patent number: 9696989
    Abstract: Method for generation of a live update including compiling original source code into a first intermediate representation (IR) code; compiling modified source code into second IR code; analyzing and comparing the first and second IR codes to identify variables and functions that were changed generating a part of final IR code with all the original variables and functions; generating an additional part of final IR code with new code for modified portions of the changed original functions, added functions and variables, and marking it for compilation into special code/data sections; and compiling a new object code and a final executable binary based on the final IR. The final executable object code includes the original code and data from original application binary, and a live update code and data from additional part of final IR generated. The live update code and data refer to original code and data where needed via standard object code relocation information.
    Type: Grant
    Filed: October 25, 2016
    Date of Patent: July 4, 2017
    Assignee: CLOUD LINUX ZUG GMBH
    Inventor: Kirill Korotaev
  • Patent number: 9652226
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a plurality of snapshots of a code base, including data representing a revision graph of the snapshots of the code base and data representing respective violations in each of the plurality of snapshots. A plurality of transitively matched violations in the code base are generated, wherein each transitively matched violation represents a respective sequence of matching violations from a first violation of a first snapshot to a second violation of a second snapshot, wherein each transitively matched violation identifies a respective first violation representing an initial occurrence of a coding defect in the code base and a respective second violation representing a last occurrence of the coding defect in the code base.
    Type: Grant
    Filed: December 29, 2015
    Date of Patent: May 16, 2017
    Assignee: Semmle Limited
    Inventors: Anders Starcke Henriksen, Ricardo Pescuma Domenecci
  • Patent number: 9639349
    Abstract: Techniques to facilitate software development are disclosed. In various embodiments, an indication is received that a software development project event has occurred. One or more rules are applied to determine one of more of a notification to be sent in response to the event, a recipient to receive the notification, and a communication channel to be used to send the communication. The notification is generated and sent to the recipient via the communication channel.
    Type: Grant
    Filed: June 9, 2015
    Date of Patent: May 2, 2017
    Assignee: EMC IP Holding Co., LLC
    Inventors: Bin Wang, Jiang Wu, Leng Han, Ning Fu, Lei Feng
  • Patent number: 9639331
    Abstract: A method includes establishing a hierarchy of related software object classes according to a service, receiving data from an external process to invoke the service, and organizing the data received from the external process according to the hierarchy. A system includes a graphical user interface on a computing device configured to allow a user to organize a plurality of related software object classes into a hierarchy according to a service, and a service interface on a computing device configured to organize data received from an external service according to the hierarchy to allow the external process to invoke the service.
    Type: Grant
    Filed: July 9, 2008
    Date of Patent: May 2, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Anamitra Bhattacharyya, Seenivasan Chandrasekararaja, Alfredo Cortes, Boris Dozortsev
  • Patent number: 9600395
    Abstract: A method for determining an extent of code changes upon implementation of a software modification has the steps of: registering the number of software code components and the respective number of lines of code of each software component of a software code before the implementation of the software modification, implementing the software modification by changing the software code, determining the number of software code components that have changed due to the implementation of the software modification, determining the number of lines of code of each software component that have changed due to the implementation of the software modification, and determining an invasiveness value on the basis of the determined number of software code components that have changed and determined number of lines of code that have changed, the invasiveness value being indicative of the extent of software code changes upon implementation of the software modification.
    Type: Grant
    Filed: December 7, 2011
    Date of Patent: March 21, 2017
    Assignee: SIEMENS AKTIENGESELLSCHAFT
    Inventors: Jürgen Salecker, Egon Wuchner
  • Patent number: 9600767
    Abstract: The present invention relates to a system, method, and computer program product for generating a single software code based on a description of a distributed architecture. The present invention introduces a BICA-SMART development framework that implements a distributed architecture in a flexible, parallel and scalable implementation that is embodied by a single software code. Thus, using the present invention, a user can input a description of the architecture into the system, with the system automatically generating the software code to implement the architectural description.
    Type: Grant
    Filed: December 30, 2008
    Date of Patent: March 21, 2017
    Assignee: HRL Laboratories, LLC
    Inventors: Aleksey Nogin, Deepak Khosla, Yang Chen
  • Patent number: 9575781
    Abstract: Disclosed are examples of observing and measuring virtual machine (VM) activity in a VM communication system environment. According to one example embodiment, an example operation may include transmitting a request from a physical host device to monitor at least one virtual machine among various virtual machines currently operating in a virtual communication system. Additional operations may include determining which of the virtual machines are actively accessing a predetermined virtual application, such as a virtual storage application. The operations may also include receiving present operating activity results regarding the virtual machines responsive to the transmitted request.
    Type: Grant
    Filed: May 23, 2012
    Date of Patent: February 21, 2017
    Assignee: Open Invention Network LLC
    Inventor: John Michael Suit
  • Patent number: 9547041
    Abstract: A testbench for testing a device under test (DUT), wherein the testbench has a verification environment including a reference model, a scoreboard and a customized agent for each interface that the DUT needs to receive input from and/or transmit output on. The testbench system is able to be generated by a testbench builder that automatically creates a scoreboard, a reference model, a dispatcher and generic agents including generic drivers, loopback ports, sequencers and/or generic monitors for each interface and then automatically customize the generic agents based on their corresponding interface such that the agents meet the requirements of the interface for the DUT.
    Type: Grant
    Filed: March 27, 2015
    Date of Patent: January 17, 2017
    Assignee: Cavium, Inc.
    Inventors: Nimalan Siva, Keqin Kenneth Han, Saurin Patel
  • Patent number: 9547685
    Abstract: Mitigating problems related to the Halloween problem including where update operations potentially allow the record to be visited more than once during the operation. A method includes accessing an instance of a data store operation statement. The instance of the data store operation statement is executed causing an update or delete to an old version of data store record or creation of a data store record resulting in a new version of the data store record in the case of an update or creation of a data store record and a deleted version of the data store record in the case of a delete in the data store. The instance of the data store operation statement is correlated with the new version of the data store record or the deleted version of the data store record.
    Type: Grant
    Filed: August 18, 2015
    Date of Patent: January 17, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Craig Steven Freedman, Conor John Cunningham
  • Patent number: 9535821
    Abstract: A device performs a verification analysis of source code, where the verification analysis includes a coding rules check of the source code based on coding standards, and run-time error check of the source code. The device provides, for display, results of the coding rules check of the source code, and provides, for display, results of the run-time error check of the source code. The device provides, for display, from the results of the coding rules check of the source code, at least one of a coding rule error violation associated with the source code, or a coding rule warning violation associated with the source code.
    Type: Grant
    Filed: June 30, 2015
    Date of Patent: January 3, 2017
    Assignee: The MathWorks, Inc.
    Inventors: David Delarue, Olga Voronina, Claire Treille
  • Patent number: 9507591
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Grant
    Filed: January 5, 2016
    Date of Patent: November 29, 2016
    Assignee: Semmle Limited
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Patent number: 9501458
    Abstract: A browser-executable software program for presenting a web page that provides the “look and feel” and functionality of a mobile application can be automatically generated from a mobile application specification. The mobile application specification identifies one or more predetermined content component types and one or more associated content sources. For each content component type, a copy of a corresponding code generation template is populated with a URL for each corresponding content source and executed to produce browser-executable program code. The browser-executable program code is then embedded into a populated copy of a navigation container code template to form a complete browser-executable software program, which is integrated into an HTML page. The HTML page can be returned in response to a request from a browser executing on a networked mobile wireless telecommunication computing device and the HTML page carries the browser-executable software program to the browser.
    Type: Grant
    Filed: December 18, 2013
    Date of Patent: November 22, 2016
    Assignee: Weever Apps Inc.
    Inventors: Robert Gerald Porter, Andrew John Holden
  • Patent number: 9454459
    Abstract: A method, and associated computer system and computer program product, of detecting source code merge conflicts and compilation errors. Uncommitted changes associated with a source code are received periodically at each time of a sequence of times. A temporary branch corresponding to each uncommitted change associated with the source code is created. The temporary branch corresponding to each uncommitted change is merged to corresponding portions of the source code. It is ascertained that no merge conflict resulted from the merging and in response, a compilation of a merged version of the source code is performed, wherein the merged version of the source code includes the temporary branch corresponding to each uncommitted change. It is determined that no compilation error occurred from the compilation and in response, a version of a product that includes the merged version of the source code is created.
    Type: Grant
    Filed: August 19, 2015
    Date of Patent: September 27, 2016
    Assignee: International Business Machines Corporation
    Inventors: George T. Bigwood, Jason T. McMann, Michael G. Nikitaides, Kaleb D. Walton
  • Patent number: 9448986
    Abstract: A computer-implemented system and method for processing a markup language document and its change history are provided. The method includes receiving first and second versions of the same target document into computer memory. One of the first and second versions of the target document is encapsulated within an encapsulating document. A change history corresponding to a difference between the first version and the second version of the target document is encoded. The change history is encapsulated within the encapsulating document. The encapsulated document can then be output. As each new version of the target document is created, the encapsulating document can be modified to reflect the changes, enabling prior versions of the target document which have been encapsulated to be extracted at any time.
    Type: Grant
    Filed: April 6, 2010
    Date of Patent: September 20, 2016
    Assignee: XEROX CORPORATION
    Inventor: Jean-Yves Vion-Dury
  • Patent number: 9448944
    Abstract: A system to automatically generate query language in software is described. The system receives a request for data that is persistently stored in a database. The system selects a predefined query template from a number of query templates based on the request. The system utilizes the query template to receive content from at least one different source, the first source being a prototype data object. The system generates a query statement based on the query template that includes the content. Finally the system queries the database using the query statement to retrieve the requested data.
    Type: Grant
    Filed: March 20, 2012
    Date of Patent: September 20, 2016
    Assignee: PayPal, Inc.
    Inventors: Greg Seitz, Christopher J. Kasten
  • Patent number: 9424544
    Abstract: A method for archival management of business processes in a cloud environment is provided. In one aspect, the method comprises archiving managed pool including one or more versions of a business process instance or business process execution in a cloud computing environment. The method further comprises a provisioning manager of the cloud computing environment that requests or tasks provisioning, deprovisioning, decommissioning or deleting the one or more versions of a business process instance or business process execution. For each of the requests or tasks, a restore manager of the cloud environment determines, if the managed pools of virtual instances contain a business process management environment or a business process archive manager environment. The restore manager further recreates a previous version of the one or more versions of the business process instance or business process execution based on the determination.
    Type: Grant
    Filed: June 5, 2013
    Date of Patent: August 23, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Vijayaganesh Subramanian, Ashish Mungi, Gandhi Sivakumar, Ram Viswanathan
  • Patent number: 9411578
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Grant
    Filed: July 8, 2015
    Date of Patent: August 9, 2016
    Assignee: Semmle Limited
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Patent number: 9411579
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for matching and attributing code violations. One of the methods includes receiving a snapshot S of a code base of source code and a different snapshot T of the code base. Data representing first violations in the snapshot S and second violations in the snapshot T is received. Pairs of matching violations are determined using performing two or more matching processes, including performing a first matching process, the first matching process determining first pairs of matching violations according to a first matching algorithm and performing a second matching process, the second matching process determining second pairs of matching violations according to a second matching algorithm from violations not matched by the first matching process. The first pairs of matching violations and the second pairs of matching violations are included in the determined pairs of matching violations.
    Type: Grant
    Filed: December 11, 2015
    Date of Patent: August 9, 2016
    Inventors: Anders Starcke Henriksen, Arthur Baars, Pavel Avgustinov, Julian Tibble, Max Schaefer, Oege de Moor
  • Patent number: 9405680
    Abstract: A system and method is described that accesses a network persistent memory unit (nPMU). One embodiment comprises a primary region corresponding to a predefined portion of a primary network persistent memory unit (nPMU) communicatively coupled to at least one client processor node via a communication system, wherein the primary region is assigned to a client process running on the client processor node and is configured to store information received from the client process; and a mirror region corresponding to a predefined portion of a mirror nPMU communicatively coupled to the client processor node via the communication system, wherein the mirror region is assigned to the client process and is configured to store the information received from the client process.
    Type: Grant
    Filed: December 10, 2010
    Date of Patent: August 2, 2016
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Samuel Fineberg, Pankaj Mehra, Roger Hansen
  • Patent number: 9400732
    Abstract: A method and system includes calculating a performance metric for each of a plurality of builds of a software application in view of a respective performance test result associated with each of the plurality of builds, calculating a respective difference in performance metrics for each pair of consecutive builds of the plurality of builds, determining a largest performance drop in view of respective differences in the performance metrics among the pairs of consecutive builds of the plurality of builds, wherein the largest performance drop is associated with a first pair of consecutive builds comprising a first build and a second build, determining, by a processing device, a confidence level associated with the largest performance drop in view of performance test results associated with the first build and the second build, in response to determining that the confidence level is greater than or equal to a threshold, identifying one of the first build or the second build as a problematic build of the software a
    Type: Grant
    Filed: May 20, 2014
    Date of Patent: July 26, 2016
    Assignee: Red Hat Israel, Ltd.
    Inventor: Ronen Hod
  • Patent number: 9383984
    Abstract: An approach is provided for managing a deployment of a software package. A retrieved quality assurance (QA) seal corresponding to a software package is verified. A target deployment environment (TDE) is obtained. The QA seal is read to obtain first and second profiles, and metadata, which specify a deployment environment, hardware and software dependencies required in the deployment, and an approval for a release of the software package to the specified deployment environment, respectively. Based on a determination that the TDE matches the specified deployment environment, the QA seal indicates the software package is compatible with the TDE. The dependencies are determined to be satisfied. Based on the software package being compatible with the TDE, the dependencies being satisfied, and the specified approval for the release of the software package, a notification of an authorization of the deployment of the software package to the TDE is generated.
    Type: Grant
    Filed: January 13, 2014
    Date of Patent: July 5, 2016
    Assignee: International Business Machines Corporation
    Inventors: Nagesh K. Mantripragada, Ashish Mungi, Manjit S. Sodhi, Ram Viswanathan
  • Patent number: 9329857
    Abstract: A system, method, and computer program product are provided for generating a configuration data tree associated with a plurality of source files. In use, a load of a configuration data tree associated with a plurality of source files is initiated. Further, different versions of the plurality of source files are identified. Additionally, the different versions of the plurality of source files are merged to produce a single configuration data tree, wherein one node in the single configuration data tree is capable of representing a plurality of nodes associated with the different versions of the plurality of source files. Moreover, displayable data associated with the single configuration data tree is generated.
    Type: Grant
    Filed: March 10, 2014
    Date of Patent: May 3, 2016
    Assignee: Amdocs Software Systems Limited
    Inventor: Alexander Troyanovsky
  • Patent number: 9311064
    Abstract: Embodiments of the invention monitor requests for a source code build of a program. The source code build is generated using the most recent applicable release of the dependencies. The source code build is dynamically merged into at least one subsequent release. Other embodiments may be described and claimed.
    Type: Grant
    Filed: August 22, 2013
    Date of Patent: April 12, 2016
    Assignee: United Services Automobile Association
    Inventors: Paula Whittington, Sean M. Hager, Carlos J. Chavez
  • Patent number: 9298449
    Abstract: A system and methods are disclosed for maintaining a composite history of changes to a program comprising two parallel histories. In accordance with one embodiment, a computer system identifies a first history of changes to a program, and generates a second history of changes to the program based on the first history, where the second history has a final version of the program that is identical to a final version of the program in the first history, and where the second history excludes changes to the program in the first history that introduce an error that is fixed in a subsequent change to the program in the first history, and where the second history includes all other changes to the program in the first history. The computer system then generates a third history of changes to the program that comprises the first history and the second history.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: March 29, 2016
    Assignee: Red Hat Israel, Ltd.
    Inventor: Michael Tsirkin
  • Patent number: 9280331
    Abstract: A request handler may receive a request for a make operation for generating executable code from a plurality of source files and associated dependences there between, the source files and associated dependences having been previously utilized to generate a previous version of the executable code. A hash comparator may then determine, for a selected source file, that a current hash value corresponding to current content of the selected source file is different from a previous hash value corresponding to previous content of the selected source file during the previous utilization, whereupon the hash comparator may proceed to initiate execution of the make operation using the current content of the selected source file, based on the difference between the current hash value and the previous hash value.
    Type: Grant
    Filed: May 9, 2014
    Date of Patent: March 8, 2016
    Assignee: SAP SE
    Inventors: Gerald Arnold, Henrik Hempelmann
  • Patent number: 9274924
    Abstract: A method is disclosed for the computer-assisted analysis of a software source code. According to at least one embodiment of the method, the software source code is analyzed in consideration of parameters comprising encoding rules and/or encoding metrics, wherein as the analysis result errors detected in the software source code are calculated. The errors detected are classified by way of associating them with at lest one error category from a plurality of error categories. To this end, a specification that can be output via a user interface is associated with each error category, which describes the errors of the respective error category. The error categories with which the detected errors are associated are then output via a user interface.
    Type: Grant
    Filed: September 26, 2007
    Date of Patent: March 1, 2016
    Assignee: SIEMENS AKTIENGESELLSCHAFT
    Inventors: Anja Hentschel, Christian Körner, Reinhold Plösch, Stefan Schiffer, Stephan Storck
  • Patent number: 9250979
    Abstract: A technique for implementing user-level read-copy update (RCU) with support for asynchronous grace periods. In an example embodiment, a user-level RCU subsystem is established that executes within threads of a user-level multithreaded application. The multithreaded application may comprise one or more reader threads that read RCU-protected data elements in a shared memory. The multithreaded application may further comprise one or more updater threads that perform updates to the RCU-protected data elements in the shared memory and register callbacks to be executed following a grace period in order to free stale data resulting from the updates. The RCU subsystem may implement two or more helper threads (helpers) that are created or selected as needed to track grace periods and execute the callbacks on behalf of the updaters instead of the updaters performing such work themselves.
    Type: Grant
    Filed: April 24, 2012
    Date of Patent: February 2, 2016
    Assignee: International Business Machines Corporation
    Inventor: Paul E. McKenney
  • Patent number: 9250864
    Abstract: A system and method of relationship management for data modeling in an integrated development environment is provided. A method of incorporating a program code file includes generating a relational schema of symbols in the program code file based on a framework for models in the integrated development environment, the schema comprising at least two related tables; determining a relationship between the at least two tables in the relational schema; adding definitions from the program code file for symbols in the relational schema to a definition set retaining definitions of symbols; and producing proxy definitions for use with the definition set for each symbol in the program code file without a definition in the definition set.
    Type: Grant
    Filed: October 27, 2008
    Date of Patent: February 2, 2016
    Assignee: International Business Machines Corporation
    Inventors: Gaetan Nadon, Dirk A. Steelemann, David A. Spriet
  • Patent number: 9250978
    Abstract: A technique for implementing user-level read-copy update (RCU) with support for asynchronous grace periods. In an example embodiment, a user-level RCU subsystem is established that executes within threads of a user-level multithreaded application. The multithreaded application may comprise one or more reader threads that read RCU-protected data elements in a shared memory. The multithreaded application may further comprise one or more updater threads that perform updates to the RCU-protected data elements in the shared memory and register callbacks to be executed following a grace period in order to free stale data resulting from the updates. The RCU subsystem may implement two or more helper threads (helpers) that are created or selected as needed to track grace periods and execute the callbacks on behalf of the updaters instead of the updaters performing such work themselves.
    Type: Grant
    Filed: June 27, 2011
    Date of Patent: February 2, 2016
    Inventor: Paul E. McKenney
  • Patent number: 9213541
    Abstract: Systems for creating, generating, distributing and applying self-contained modifications (i.e., changes) to source code are described herein. At least some embodiments include a system including a client computer with processing logic, a storage device (including source code files), and a communication interface. The interface receives a container file including a transformation including a search pattern that identifies source code segments, and transformation instructions that modify the source code based at least partially on identified code segments. Processing logic software searches a representation of the source code for search pattern occurrences, and identifies the source code segments that include elements with structure and relationships that are matched by the corresponding elements represented by the search pattern.
    Type: Grant
    Filed: April 17, 2009
    Date of Patent: December 15, 2015
    Assignee: ArtinSoft Corporation, S.A.
    Inventors: Carlos Araya, Federico Zoufaly, Rick Laplante, Oscar Calvo
  • Patent number: 9182979
    Abstract: In some example implementations, there is provided a method. The method may include generating a first page for presentation at a user interface, wherein the first page further comprises a first portion presenting one or more lines of code being developed and a toolbar portion, wherein the toolbar portion includes a comment element configured to generate a comment window and a propose change element configured to generate a change window; and receiving, in response to the generated first page, metadata including at least one of a comment and a proposed change associated with the one or more lines of code. Related systems, methods, and articles of manufacture are also provided.
    Type: Grant
    Filed: April 29, 2013
    Date of Patent: November 10, 2015
    Assignee: SAP SE
    Inventors: Jens Odenheimer, Peter Eberlein
  • Patent number: 9183037
    Abstract: Various techniques for automatically administering software systems using composites of atomic operations are disclosed. One method, which can be performed by an automation server, involves accessing information representing an activity that includes a first operation and a second operation. The information indicates that the second operation processes a value that is generated by the first operation. The method generates a sequence number as well as an output structure, which associates the sequence number with an output value generated by the first operation, and an input structure, which associates the sequence number with an input value consumed by the second operation. The method sends a message, via a network, to an automation agent implemented on a computing device. The computing device implements a software target of the first operation. The message includes information identifying the first operation as well as the output structure.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: November 10, 2015
    Assignee: Oracle International Corporation
    Inventor: Guido Patanella