Software Maintenance at Commit-Time

Total Page:16

File Type:pdf, Size:1020Kb

Software Maintenance at Commit-Time Software Maintenance at Commit-Time Mathieu Louis Nayrolles A Thesis in The Department of Electrical & Computer Engineering Presented in Partial Fulfillment of the Requirements For the Degree of Doctor of Philosophy (Electrical and Computer Engineering) at Concordia University Montréal, Québec, Canada June 2018 © Mathieu Louis Nayrolles, 2018 Concordia University School of Graduate Studies This is to certify that the thesis prepared By: Mathieu Louis Nayrolles Entitled: Software Maintenance At Commit-Time and submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy (Electrical & Computer Engineering) complies with the regulations of this University and meets the accepted standards with respect to originality and quality. Signed by the final examining commitee: Chair Dr. Mohammad Mannan External Examiner Dr. Bram Adams External to Program Dr. Juergen Rilling Examiner Dr. Otmane Ait Mohamed Examiner Dr. Ferhat Khendek Thesis Supervisor Dr. Abdelwahab Hamou-Lhadj Approved by Dr. Mustafa K. Mehmet Ali, Graduate Program Director 26 June 2018 Date of Defense Dr. Amir Asif, Dean, Faculty of Engineering and Computer Science Abstract Software Maintenance At Commit-Time Mathieu Louis Nayrolles, Ph.D. Concordia University, 2018 Software maintenance activities such as debugging and feature enhancement are known to be challenging and costly, which explains an ever growing line of research in software maintenance areas including mining software repository, default prevention, clone detection, and bug reproduction. The main goal is to improve the productivity of software developers as they undertake maintenance tasks. Existing tools, however, operate in an offline fashion, i.e., after the changes to the systems have been made. Studies have shown that software developers tend to be reluctant to use these tools as part of a continuous development process. This is because they require installation and training, hindering their integration with developers’ workflow, which in turn limits their adoption. In this thesis, we propose novel approaches to support software developers at commit-time. As part of the developer’s workflow, a commit marks the end of a given task. We show how commits can be used to catch unwanted modifi- cations to the system, and prevent the introduction of clones and bugs, before these modifications reach the central code repository. We also propose a bug reproduction technique that is based on model checking and crash traces. Furthermore, we propose a new way for classifying bugs based on the location of fixes that can serve as the basis for future research in this field of study. The techniques proposed in this thesis have been tested on over 400 open and closed (industrial) systems, resulting in high levels of precision and recall. They are also scalable and non-intrusive. iii Acknowledgments My deepest gratitude goes to Dr. Abdelwahab Hamou-Lhadj for accepting to enrol me as a Ph.D student, believing in my ideas, and helping me grow as a person and a researcher. Your guidance and availability never failed me during these challenging years. Thanks to Yves Jacquier, Olivier Pomarez, Julien Kauffmann and Nicolas Fleury from Ubisoft that first saw value in my work and allowed me to study their systems. Also, I would like to thank all the employees at Ubisoft that supported me during this adventure, especially Florent Jousset, Luc Bouchard and, Chadi Lebbos. Thanks to the members of Intelligent System-Logging and Monitoring research lab (formerly known as the Software Behaviour Analysis research lab) at ENCS Con- cordia Ubiversity and La Forge research lab at Ubisoft Montr´eal for the brainstorming sessions and their feedbacks on my work. I am also grateful to the Concordia School of Graduate Studies, the Fonds de recherche du Qu´ebec Nature et technologies (FRQNT) and, the Natural Sciences and Engineering Research Concil of Canada (NSERC) for their continuous financial support during my graduate studies. I would also like to thank Ms. Sheryl Tablan, the Graduate Program Coordinator - Ph.D. Program, who allowed me to navigate various administrative ambushes. Finally, Lakm´eGremillet, for her unwavering support that carried me through ups and downs, successes and failures. There is no doubt in my mind that none of this will have been possible without her. iv Table of Contents 4.2.2 BUMPERMetadata ....................... 32 4.2.3 BumperQueryLanguageandAPI . 34 4.2.4 BumperDataRepository. 35 4.3 ExperimentalSetup............................ 36 4.4 EmpiricalValidation ........................... 38 4.5 ThreatstoValidity ............................ 39 4.6 ChapterSummary ............................ 39 Chapter 5. Preventing Code Clone Insertion At Commit-Time 41 5.1 Introduction................................ 41 5.2 Approach ................................. 42 5.2.1 Commit .............................. 43 5.2.2 Pre-CommitHook ........................ 44 5.2.3 ExtractandSaveBlocks . 44 5.2.4 CompareExtractedBlocks. 48 5.2.5 OutputandDecision ....................... 49 5.3 ExperimentalSetup............................ 50 5.4 EmpiricalValidation ........................... 53 5.5 ThreatstoValidity ............................ 56 5.6 ChapterSummary ............................ 57 Chapter 6. Preventing Bug Insertion Using Clone Detection At Commit-Time 59 6.1 Introduction................................ 59 6.2 Approach ................................. 61 6.2.1 ClusteringProjectRepositories . 62 6.2.2 Building a Database of Code Blocks of Defect-Commits and Fix-Commits ........................... 63 6.2.3 Analysing New Commits Using Pre-Commit Hooks . 64 6.3 ExperimentalSetup............................ 65 6.3.1 ProjectRepositorySelection . 66 6.3.2 ProjectDependencyAnalysis . 66 6.3.3 Building a Database of Defect-Commits and Fix-Commits for PerformancesEvaluation . 68 vi 6.3.4 ProcessofComparingNewCommits . 69 6.3.5 EvaluationMeasures . 70 6.4 EmpiricalValidation ........................... 71 6.4.1 BaselineClassifierComparison. 73 6.4.2 PerformanceofBIANCA. 74 6.4.3 Analysis of the Quality of the Fixes Proposed by BIANCA . 76 6.5 ThreatstoValidity ............................ 83 6.6 ChapterSummary ............................ 86 Chapter 7. Combining Code Metrics with Clone Detection for Just-In-Time Fault Prevention and Resolution 87 7.1 Introduction................................ 87 7.2 Approach ................................. 89 7.2.1 ClusteringProjects . 91 7.2.2 Building a Database of Code Blocks of Defect-Commits and Fix-Commits ........................... 91 7.2.3 BuildingaMetric-BasedModel . 93 7.2.4 ComparingCodeBlocks . 94 7.2.5 ClassifyingIncomingCommits. 94 7.2.6 ProposingFixes.......................... 94 7.3 ExperimentalSetup............................ 95 7.3.1 ProjectRepositorySelection . 95 7.3.2 ProjectDependencyAnalysis . 96 7.3.3 Building a Database of Defect-Commits and Fix-Commits . 96 7.3.4 ProcessofComparingNewCommits . 97 7.4 EmpiricalValidation ........................... 97 7.4.1 PerformanceofCLEVER. 97 7.4.2 Analysis of the Quality of the Fixes Proposed by CLEVER . 98 7.5 University-Industry Research Collaboration. 101 7.5.1 Deep understanding of the project requirements . 101 7.5.2 Understanding the benefits of the project to both parties . 101 7.5.3 Focusing in the Beginning on Low-Hanging Fruits . 102 7.5.4 Communicatingeffectively . 103 7.5.5 Managingchange ......................... 103 vii 7.6 ThreatstoValidity ............................ 103 7.7 ChapterSummary ............................ 104 Chapter 8. Bug Reproduction Using Crash Traces and Directed Model Checking 106 8.1 Introduction................................ 106 8.2 Preliminaries ............................... 108 8.3 Approach ................................. 111 8.3.1 CollectingCrashTraces . 111 8.3.2 Preprocessing ........................... 113 8.3.3 BuildingtheBackwardStaticSlice . 114 8.3.4 DirectedModelChecking. 119 8.3.5 Validation ............................. 121 8.3.6 Generating Test Cases for Bug Reproduction . 122 8.4 ExperimentalSetup............................ 124 8.4.1 TargetedSystems. 125 8.4.2 BugSelectionandCrashTraces . 126 8.5 EmpiricalValidation . 128 8.5.1 SuccessfullyReproduced . 129 8.5.2 PartiallyReproduced . 131 8.5.3 NotReproduced.......................... 134 8.6 ThreatstoValidity ............................ 136 8.7 ChapterSummary ............................ 137 Chapter 9. Towards a Classification of Bugs Based on the Location of the Corrections: An Empirical Study 138 9.1 Introduction................................ 138 9.2 ExperimentalSetup............................ 141 9.2.1 ContextSelection . 141 9.2.2 DatasetAnalysis ......................... 143 9.3 EmpiricalValidation . 150 9.3.1 AreT4bugpredictableatsubmissiontime? . 150 9.3.2 Whatarethebestpredictorsoftype4bugs?. 159 9.4 ThreatstoValidity ............................ 165 viii 9.5 ChapterSummary ............................ 165 Chapter 10. Conclusion and Future Work 167 10.1 SummaryoftheFindings. 167 10.2FutureWork................................ 169 10.2.1 CurrentLimitations . 169 10.2.2 Other Possible Opportunities for Future Research . 169 10.3ClosingRemarks ............................. 170 Bibliography 172 Appendices 191 ix List of Figures 1 Datastructureofacommit. ....................... 12 2 Datastructureoftwocommits. 12 3 Twobranchespointingononecommit. 13 4 Twobranchespointingontwocommits. 13 5 Lifecyleofareport ............................ 14 6 BumperArchitecture........................... 32 7 BUMPERMetamodel
Recommended publications
  • Orchestrating Big Data Analysis Workflows in the Cloud: Research Challenges, Survey, and Future Directions
    00 Orchestrating Big Data Analysis Workflows in the Cloud: Research Challenges, Survey, and Future Directions MUTAZ BARIKA, University of Tasmania SAURABH GARG, University of Tasmania ALBERT Y. ZOMAYA, University of Sydney LIZHE WANG, China University of Geoscience (Wuhan) AAD VAN MOORSEL, Newcastle University RAJIV RANJAN, Chinese University of Geoscienes and Newcastle University Interest in processing big data has increased rapidly to gain insights that can transform businesses, government policies and research outcomes. This has led to advancement in communication, programming and processing technologies, including Cloud computing services and technologies such as Hadoop, Spark and Storm. This trend also affects the needs of analytical applications, which are no longer monolithic but composed of several individual analytical steps running in the form of a workflow. These Big Data Workflows are vastly different in nature from traditional workflows. Researchers arecurrently facing the challenge of how to orchestrate and manage the execution of such workflows. In this paper, we discuss in detail orchestration requirements of these workflows as well as the challenges in achieving these requirements. We alsosurvey current trends and research that supports orchestration of big data workflows and identify open research challenges to guide future developments in this area. CCS Concepts: • General and reference → Surveys and overviews; • Information systems → Data analytics; • Computer systems organization → Cloud computing; Additional Key Words and Phrases: Big Data, Cloud Computing, Workflow Orchestration, Requirements, Approaches ACM Reference format: Mutaz Barika, Saurabh Garg, Albert Y. Zomaya, Lizhe Wang, Aad van Moorsel, and Rajiv Ranjan. 2018. Orchestrating Big Data Analysis Workflows in the Cloud: Research Challenges, Survey, and Future Directions.
    [Show full text]
  • An Enterprise Knowledge Network
    Fogbeam Labs Cut Through The Information Fog http://www.fogbeam.com An Enterprise Knowledge Network Knowledge exists in many forms inside your organization – ranging from tacit knowledge which exists only in the minds of the users who possess it, to codified knowledge stored in databases and document repositories. Unfortunately while knowledge exists throughout the organization, it is often not easy (if even possible) to locate, use, share, and reuse existing knowledge. This results in a situation often described as “the left hand doesn't know what the right hand is doing” and damages morale as employees spend their days frustrated and complaining that “nobody knows what is going on around here”. The obstacles that hinder access to existing knowledge can be cultural, geographical, social, and/or technological. And while no technological solution can guarantee perfect knowledge-sharing, tools drawn from big data, data mining / machine learning, deep learning, and artificial intelligence techniques can improve an organization's power to generate, capture, use, share and reuse knowledge. Using technologies developed as part of the semantic web initiative, and applying the principles of linked data within the enterprise, the Fogbeam Labs Enterprise Knowledge Network approach can help your firm integrate and aggregate knowledge which is spread across your existing enterprise applications, content repositories and Intranet. An Enterprise Knowledge Network enables your firm's capabilities to: • engage in high levels of knowledge transfer and
    [Show full text]
  • Sustainability Forecasting for Apache Incubator Projects
    Sustainability Forecasting for Apache Incubator Projects Likang Yin Zhuangzhi Chen DECAL and CS Department College of Information Engineering University of California, Davis Zhejiang University of Technology [email protected] [email protected] Qi Xuan Vladimir Filkov College of Information Engineering DECAL and CS Department Zhejiang University of Technology University of California, Davis [email protected] [email protected] ABSTRACT 80% of OSS projects become abandoned over time, especially the Although OSS development is very popular, ultimately more than smaller and younger projects [45]. Certainly not all OSS projects 80% of OSS projects fail. Identifying the factors associated with are meant to be widely used or even to persist beyond a college OSS success can help in devising interventions when a project semester. However, even the large, popular OSS software, widely takes a downturn. OSS success has been studied from a variety of used in our daily lives and by fortune 500 companies, started out angles, more recently in empirical studies of large numbers of di- as small projects. Thus, from a societal perspective it is important verse projects, using proxies for sustainability, e.g., internal metrics to ask: Why do some nascent OSS projects succeed and become related to productivity and external ones, related to community pop- self-sustaining while others do not [41]? And can the latter be ularity. The internal socio-technical structure of projects has also helped? been shown important, especially their dynamics. This points to To aid developer communities to build and maintain sustainable another angle on evaluating software success, from the perspective OSS projects, nonprofit organizations like the Apache Software of self-sustaining and self-governing communities.
    [Show full text]
  • Apachecon US 2008 with Apache Shindig
    ApacheCon US 2008 Empowering the social web with Apache Shindig Henning Schmiedehausen Sr. Software Engineer – Ning, Inc. November 3 - 7 • New Orleans Leading the Wave of Open Source The Official User Conference of The Apache Software Foundation Freitag, 7. November 2008 1 • How the web became social • Get out of the Silo – Google Gadgets • OpenSocial – A social API • Apache Shindig • Customizing Shindig • Summary November 3 - 7 • New Orleans ApacheCon US 2008 Leading the Wave of Open Source The Official User Conference of The Apache Software Foundation Freitag, 7. November 2008 2 ApacheCon US 2008 In the beginning... Freitag, 7. November 2008 3 ApacheCon US 2008 ...let there be web 2.0 Freitag, 7. November 2008 4 • Web x.0 is about participation • Users have personalized logins Relations between users are graphs • "small world phenomenon", "six degrees of separation", Erdös number, Bacon number November 3 - 7 • New Orleans ApacheCon US 2008 Leading the Wave of Open Source The Official User Conference of The Apache Software Foundation Freitag, 7. November 2008 5 ApacheCon US 2008 The Silo problem Freitag, 7. November 2008 6 • How the web became social • Get out of the Silo – Google Gadgets • OpenSocial – A social API • Apache Shindig • Customizing Shindig • Summary November 3 - 7 • New Orleans ApacheCon US 2008 Leading the Wave of Open Source The Official User Conference of The Apache Software Foundation Freitag, 7. November 2008 7 ApacheCon US 2008 iGoogle Freitag, 7. November 2008 8 • Users adds Gadgets to their homepages Gadgets share screen space • Google experiments with Canvas view Javascript, HTML, CSS • A gadget runs on the Browser! Predefined Gadgets API • Core APIs for IO, JSON, Prefs; optional APIs (e.g.
    [Show full text]
  • Open Source Used in Cisco Prime Access Registrar 7.3
    Open Source Used In Cisco Prime Access Registrar 7.3 Cisco Systems, Inc. www.cisco.com Cisco has more than 200 offices worldwide. Addresses, phone numbers, and fax numbers are listed on the Cisco website at www.cisco.com/go/offices. Text Part Number: 78EE117C99-148346687 Open Source Used In Cisco Prime Access Registrar 7.3 1 This document contains licenses and notices for open source software used in this product. With respect to the free/open source software listed in this document, if you have any questions or wish to receive a copy of any source code to which you may be entitled under the applicable free/open source license(s) (such as the GNU Lesser/General Public License), please contact us at [email protected]. In your requests please include the following reference number 78EE117C99-148346687 Contents 1.1 ace-5.5 5.5 1.1.1 Available under license 1.2 ajaxanywhere 1.2.1 1.2.1 Available under license 1.3 ant 1.7.1 1.3.1 Available under license 1.4 Apache Commons Logging 1.1.1 1.4.1 Available under license 1.5 Apache Tomcat 8.5.16 1.5.1 Available under license 1.6 axis 1.4 1.6.1 Available under license 1.7 Axis C++ 1.6b 1.7.1 Available under license 1.8 Bean Validation API 1.1.0.Final 1.8.1 Available under license 1.9 c-ares 1.10.0 1.9.1 Available under license 1.10 CGLIB 2.2 1.10.1 Available under license 1.11 cglib 2.2.0-b21 :repackaged as a module 1.11.1 Available under license 1.12 cglib 2.1.88 1.12.1 Available under license 1.13 ciscosafec-3.0.0 3.0.0 1.13.1 Available under license Open Source Used In Cisco
    [Show full text]
  • Tracking Known Security Vulnerabilities in Third-Party Components
    Tracking known security vulnerabilities in third-party components Master’s Thesis Mircea Cadariu Tracking known security vulnerabilities in third-party components THESIS submitted in partial fulfillment of the requirements for the degree of MASTER OF SCIENCE in COMPUTER SCIENCE by Mircea Cadariu born in Brasov, Romania Software Engineering Research Group Software Improvement Group Department of Software Technology Rembrandt Tower, 15th floor Faculty EEMCS, Delft University of Technology Amstelplein 1 - 1096HA Delft, the Netherlands Amsterdam, the Netherlands www.ewi.tudelft.nl www.sig.eu c 2014 Mircea Cadariu. All rights reserved. Tracking known security vulnerabilities in third-party components Author: Mircea Cadariu Student id: 4252373 Email: [email protected] Abstract Known security vulnerabilities are introduced in software systems as a result of de- pending on third-party components. These documented software weaknesses are hiding in plain sight and represent the lowest hanging fruit for attackers. Despite the risk they introduce for software systems, it has been shown that developers consistently download vulnerable components from public repositories. We show that these downloads indeed find their way in many industrial and open-source software systems. In order to improve the status quo, we introduce the Vulnerability Alert Service, a tool-based process to track known vulnerabilities in software projects throughout the development process. Its usefulness has been empirically validated in the context of the external software product quality monitoring service offered by the Software Improvement Group, a software consultancy company based in Amsterdam, the Netherlands. Thesis Committee: Chair: Prof. Dr. A. van Deursen, Faculty EEMCS, TU Delft University supervisor: Prof. Dr. A.
    [Show full text]
  • Unravel Data Systems Version 4.5
    UNRAVEL DATA SYSTEMS VERSION 4.5 Component name Component version name License names jQuery 1.8.2 MIT License Apache Tomcat 5.5.23 Apache License 2.0 Tachyon Project POM 0.8.2 Apache License 2.0 Apache Directory LDAP API Model 1.0.0-M20 Apache License 2.0 apache/incubator-heron 0.16.5.1 Apache License 2.0 Maven Plugin API 3.0.4 Apache License 2.0 ApacheDS Authentication Interceptor 2.0.0-M15 Apache License 2.0 Apache Directory LDAP API Extras ACI 1.0.0-M20 Apache License 2.0 Apache HttpComponents Core 4.3.3 Apache License 2.0 Spark Project Tags 2.0.0-preview Apache License 2.0 Curator Testing 3.3.0 Apache License 2.0 Apache HttpComponents Core 4.4.5 Apache License 2.0 Apache Commons Daemon 1.0.15 Apache License 2.0 classworlds 2.4 Apache License 2.0 abego TreeLayout Core 1.0.1 BSD 3-clause "New" or "Revised" License jackson-core 2.8.6 Apache License 2.0 Lucene Join 6.6.1 Apache License 2.0 Apache Commons CLI 1.3-cloudera-pre-r1439998 Apache License 2.0 hive-apache 0.5 Apache License 2.0 scala-parser-combinators 1.0.4 BSD 3-clause "New" or "Revised" License com.springsource.javax.xml.bind 2.1.7 Common Development and Distribution License 1.0 SnakeYAML 1.15 Apache License 2.0 JUnit 4.12 Common Public License 1.0 ApacheDS Protocol Kerberos 2.0.0-M12 Apache License 2.0 Apache Groovy 2.4.6 Apache License 2.0 JGraphT - Core 1.2.0 (GNU Lesser General Public License v2.1 or later AND Eclipse Public License 1.0) chill-java 0.5.0 Apache License 2.0 Apache Commons Logging 1.2 Apache License 2.0 OpenCensus 0.12.3 Apache License 2.0 ApacheDS Protocol
    [Show full text]
  • Talend Open Studio for Big Data Release Notes
    Talend Open Studio for Big Data Release Notes 6.0.0 Talend Open Studio for Big Data Adapted for v6.0.0. Supersedes previous releases. Publication date July 2, 2015 Copyleft This documentation is provided under the terms of the Creative Commons Public License (CCPL). For more information about what you can and cannot do with this documentation in accordance with the CCPL, please read: http://creativecommons.org/licenses/by-nc-sa/2.0/ Notices Talend is a trademark of Talend, Inc. All brands, product names, company names, trademarks and service marks are the properties of their respective owners. License Agreement The software described in this documentation is licensed under the Apache License, Version 2.0 (the "License"); you may not use this software except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.html. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. This product includes software developed at AOP Alliance (Java/J2EE AOP standards), ASM, Amazon, AntlR, Apache ActiveMQ, Apache Ant, Apache Avro, Apache Axiom, Apache Axis, Apache Axis 2, Apache Batik, Apache CXF, Apache Cassandra, Apache Chemistry, Apache Common Http Client, Apache Common Http Core, Apache Commons, Apache Commons Bcel, Apache Commons JxPath, Apache
    [Show full text]
  • Polycom Realpresence Cloudaxis Open Source Software OFFER
    Polycom® RealPresence® CloudAXIS™ Suite OFFER of Source for GPL and LGPL Software You may have received from Polycom®, certain products that contain—in part—some free software (software licensed in a way that allows you the freedom to run, copy, distribute, change, and improve the software). As a part of this product, Polycom may have distributed to you software, or made electronic downloads, that contain a version of several software packages, which are free software programs developed by the Free Software Foundation. With your purchase of the Polycom RealPresence® CloudAXIS™ Suite, Polycom has granted you a license to the above-mentioned software under the terms of the GNU General Public License (GPL), GNU Library General Public License (LGPLv2), GNU Lesser General Public License (LGPL), or BSD License. The text of these Licenses can be found at the internet address provided in Table A. For at least three years from the date of distribution of the applicable product or software, we will give to anyone who contacts us at the contact information provided below, for a charge of no more than our cost of physically distributing, the following items: • A copy of the complete corresponding machine-readable source code for programs listed below that are distributed under the GNU GPL • A copy of the corresponding machine-readable source code for the libraries listed below that are distributed under the GNU LGPL, as well as the executable object code of the Polycom work that the library links with The software included or distributed for the product, including any software that may be downloaded electronically via the internet or otherwise (the "Software") is licensed, not sold.
    [Show full text]
  • Third Party Library Attributions
    Third Party Library Attributions Table of Contents 1. Summary 2. PureWeb® Software Third Party Library Attributions 3. PureWeb iOS Client Libraries 3.1. Cocoa Lumberjack Framework 3.2. Sodium Crypto Library 4. ResolutionMD Server Libraries 4.1. Apache Commons 4.2. Apache PDFBox 4.3. Apache HttpComponents 4.4. Arial Unicode Font 4.5. Auto 4.6. Boost 4.7. Bootstrap 4.8. Cairo 4.9. CanJS 4.10. Curl 4.11. dcm4che2 4.12. dcm4che3 4.13. dcm4che5 4.14. DCMTK 4.15. Drools Expert 4.16. Eclipse Implementation of JAXB 4.17. Eclipse Metro 4.18. Eclipse ORB 4.19. Eclipse Project for JAX-WS 4.20. FFmpeg 4.21. FreeMarker 4.22. Freetype 4.23. FTGL 4.24. Glew 4.25. google-api-java-client 4.26. google-api-java-client-services 4.27. google-code-prettify 4.28. google-http-java-client 4.29. google-oauth-java-client 4.30. grcp-java 4.31. guava 4.32. html5shiv 4.33. HAPI 4.34. ICU 4.35. ITK 4.36. Java implementation of JSON Web Token (JWT) 4.37. Jersey 4.38. Joda-Time 4.39. jQuery 4.40. jQuery File Upload Plugin 4.41. jQuery Hashchange 4.42. jQuery UI 4.43. JSON Web Token support for the JVM 4.44. jsoup Java HTML Parser 4.45. Lo-Dash 4.46. libpng 4.47. llvm 4.48. logback 4.49. Mesa 3D Graphics Library 4.50. minizip 4.51. PixelMed 4.52. opencensus-java 4.53. requirejs 4.54. SLF4J 4.55. wysihtml5 4.56. zlib 5.
    [Show full text]
  • Migration Guide
    MIGRATION GUIDE DIGITAL EXPERIENCE MANAGER 7.2 1 MIGRATION GUIDE DIGITAL EXPERIENCE MANAGER 7.2 SUMMARY 1 INTRODUCTION ...................................................................................................................................................... 4 2 HOW TO UPGRADE FROM DIGITAL EXPERIENCE MANAGER 7.1 TO 7.2 ..................................... 5 2.1 Code base review and potential impacts .................................................................. 5 2.2 Deployment scripts/procedure review ....................................................................... 5 2.3 Test environment migration ............................................................................................ 5 3 RENDER FILTER CHANGE .................................................................................................................................... 6 3.1 Render Filters priority is now a Float instead of an Integer ............................. 6 3.1.1 Impact on the migration to Digital Experience 7.2............................................... 6 4 CUSTOM IMPLEMENTATIONS OF USERS AND GROUPS PROVIDERS ........................................... 7 5 CODE THAT NEEDS TO BE UPGRADED ........................................................................................................ 8 5.1 Overridden jmix:list’s hidden.header views need to be upgraded ................ 8 5.2 Apache PDFBox was upgraded to version 2.0.3 with API changes ............... 8 5.3 osgi:list interface needs to be changed ....................................................................
    [Show full text]
  • Open Source Licenses for Inspire R11
    Open Source Licenses for Inspire R11 An Overview Version 11.0 GMC Software AG © 2016 GMC Software AG. All rights reserved. http://www.gmc.net/documentation CLASSIFICATION: PUBLIC Open Source Licenses for Inspire An Overview Product version 11.0 Document version 11.0.0.1 Release date: November 2016 GMC Software AG www.gmc.net See also all GMC documentation online Should you have any queries, suggestions or comments concerning these materials, please do not hesitate to contact us at [email protected]. This document contains information classified as Public. Multiple sites of the GMC Software group of companies hold certificates to ISO 9001, ISO 27001 and ISO 14001. Copyright Information contained within this document may contain technical inaccuracies or typographical errors. Changes will be added periodically and modifications will be made thereto without prior notification. GMC Software AG does not enter into any obligations or responsibilities regarding the content of this document and does not assume any legal liability – neither expressed or implied – for its accuracy, completeness and/or usefulness. Copying of the software or manual on to any data storage medium or in any other way, except for explicit company internal use, is strictly forbidden without the prior written authorization of GMC Software AG. Failure to comply with these restrictions is liable to prosecution. Trademarks GMC Software Technology and its logo are trademarks and service marks of GMC Software AG registered in Switzerland, the US and numerous other countries. Adobe and Adobe ® PDF Library™ are trademarks or registered trademarks of Adobe Systems Inc. in the US and other countries.
    [Show full text]