Preface

DFdiscover Release 5.11.0

All rights reserved. No part of this publication may be re-transmitted in any form or by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written permission of DF/Net Research, Inc. Permission is granted for internal re-distribution of this publication by the license holder and their employees for internal use only, provided that the copyright notices and this permission notice appear in all copies.

The information in this document is furnished for informational use only and is subject to change without notice. DF/Net Research, Inc. assumes no responsibility or liability for any errors or inaccuracies in this document or for any omissions from it.

All products or services mentioned in this document are covered by the trademarks, service marks, or product names as designated by the companies who market those products.

Google Play and the Google Play logo are trademarks of Google LLC. Android is a trademark of Google LLC.

App Store is a trademark of Apple Inc.

June 01 2026


Copyright © DF/Net Research, Inc.

Getting Help

For software support, Please contact the DFdiscover team:

Conventions

A number of conventions have been used throughout this document.

Any freestanding sections of code are generally shown like this:

 # this is example code
 code = code + overhead;

If a line starts with # or %, this character denotes the system prompt and is not typed by the user.

Text may also have several styles:

Introduction

Overview

DFdiscover 2026 Version 5.11.0 adds new capabilities and improvements that make clinical data management more efficient, secure, and reliable. It builds on the strong foundation of recent updates while adding new capabilities for participant engagement and improving system security, stability, and usability.

Key features and enhancements in this release include:

See New Features and Enhancements for details about release highlights. The complete listing of all changes by product area and type of change, including bug fixes, is available under All Updates. The release notes also provide information about any Known Issues in the current release as well as any Advance Notices for planned changes in upcoming releases.

Version Numbering

DFdiscover 2026 Version 5.11.0 is a minor release in the DFdiscover 5.X family that started with DFdiscover 2018. DFdiscover version numbers have 3 components:

  1. The first number identifies a major release containing all software components.
  2. The second number identifies a minor release with bug fixes, backward compatible new features, and feature enhancements. It contains all software components. If there is no minor release for a major release, this number is 0.
  3. The third number identifies incremental patches to specific software components for the minor release identified by the first 2 digits of the version number. If there is no patch release, this number is 0.

For example, 5.0.2 is the second patch to the 5.0.0 major release. 5.2.1 is the first patch to the 5.2.0 minor release.

Software Components

Client Applications

DFdiscover 2026 Version 5.11.0 includes the following client applications:

Server Applications

DFdiscover 2026 Version 5.11.0 includes updates to the DFdiscover, DFws API, and DFweb server applications as well.

DFnet updates these components on its hosted DFdiscover instances as part of the release, including multiple instances of DFweb and the DFdiscover DFws API. These are located in the USA, South Africa, Canada, Australia, and Europe, each with their own server name, DFweb URL, and DFws API URI.

For organizations hosting their own DFdiscover servers, the server installation packages for DFdiscover, DFws API, and DFweb are available as RPM files. DFdiscover report updates are also available from cdn.dfdiscover.com. Information for system administrators is provided in Server Upgrade.

Supported Devices

Desktop and client-side tools

Desktop and client-side tools are supported on Windows 11 and newer and macOS 10.14 (Mojave) and newer. We recommend keeping your operating system up to date.

DFweb supported browsers and devices

DFweb Version 5.11.0 is supported on devices (desktops, laptops, tablets, smartphones) that run the following web browsers: - Chrome 71 and newer - Edge 79 and newer - Firefox 65 and newer - Opera 58 and newer - Safari 12.1 and newer

The minimum recommended screen width is 400 pixels, except for studies using CRFs with backgrounds, where the minimum recommended screen width is 800 pixels. To avoid horizontal scrolling with CRF backgrounds and eCRF tables in portrait orientation, the minimum recommended screen width is 1280 pixels.

DFcollect supported devices

DFcollect Version 5.11.0 requires a tablet device running Android™ 10 and newer or iOS®/iPadOS® 16 and newer. The application is designed and tested for use on tablet devices. Use on smartphones is not recommended, as some interface elements and functionality may not be fully accessible or may not display correctly on smaller displays.

DFdiscover, DFws API, and DFweb servers

For DFdiscover system administrators, refer to Server Upgrade, Supported Configurations.

Version Compatibility

We recommend all end users install version 5.11.0 of the client applications to take advantage of new features and fixes. However, after upgrading the DFdiscover server to 2026 Version 5.11.0, end users are not required to upgrade immediately as long as the study is configured in DFadmin to allow older versions to connect.

Both DFweb and DFcollect are designed for backwards compatibility with older DFdiscover server and API versions, however some new features are only available when connecting to a DFdiscover server and API Version 5.11.0 or later, as noted in the following chapter.

If any version of any client application will be used that does not match the DFdiscover server version, ensure that the master or study Version Strict setting is ‘All minor versions supported’ or ‘Minimum version supported’ in DFadmin. When ‘All minor versions’ is enabled, the following versions of client applications may be used with DFdiscover 2026 Version 5.11.0 server: 2019 5.2.1, 2020 5.3.2, 2021 5.4.0, 2022 5.5.1, 2023 5.6.0, 2023 5.7.0, 2024 5.8.0, 2024 5.9.0, and 2025 5.10.0.

DFsetup and DFadmin users should use the new desktop client versions after the DFdiscover server upgrade to take advantage of new features.

NOTE: Using older versions of DFsetup to make changes to a study that uses features added in later versions will result in losing that data. In DFsetup, users will be warned if setup is newer than the DFsetup version, and a notice appears if your DFsetup client app version is older or newer than the DFdiscover server version. Only study admins can save a newer setup to an older version.

Role Permission Considerations

When upgrading, review study role permissions to ensure new features are available users as intended. Permission requirements for API client applications are described in the respective user guides: DFweb User Guide, Permission Requirements and DFcollect User Guide, Permission Requirements.

New Features and Enhancements

This chapter describes the features and enhancements added to DFdiscover since the release of Version 5.10.0. See the next chapter, All Updates for a table listing all changes, including bug fixes.

General

ePRO Notifications Configuration in DFsetup

A new configuration is available in DFsetup to define ePRO participant reminders for push notification delivery in DFengage mobile with custom notification content and timing. This feature enhances participant engagement and protocol compliance with timely reminders that align with study requirements.

All DFengage push notifications are now defined in the new ePRO Notifications configuration in DFsetup. Notifications may be defined for all visits or for specific visits, with timing based on specific clock times or relative offsets in days, hours, or minutes before or after the visit due or overdue date and time. Notification titles and messages may be customized and support placeholders for the study name and participant name. Translation is also supported for multi-language studies. All notification configuration changes are tracked in DFsetup history.

Two default generic notification definitions are automatically pre-populated in DFsetup and must be manually saved before notifications become active for a study. For existing studies using DFengage, after DFdiscover server & API upgrade to version 5.11, you must manually save the ePRO Notifications configuration in DFsetup in order for participants to continue receiving push notification reminders in DFengage 2.5.

WARNING: For studies upgrading from DFdiscover 5.10 or earlier, existing participants may stop receiving new and overdue reminders from DFengage mobile until the ePRO Notifications configuration is saved in DFsetup.

See Study Setup User Guide, ePRO Notifications and DFengage Setup and Admin Guide, Notification Configuration for details about configuring ePRO notifications. See DFengage Release Notes, Custom ePRO Push Notifications for more details about the related changes in DFengage.

The ePRO Notifications configured in DFsetup are currently used only for push notifications delivered through DFengage mobile. Participant reminders sent by email continue to use the templates defined in the DFmsgtemplates file and are sent using the DFeproreminders program.

This feature requires DFdiscover server and API version 5.11 or later and DFengage version 2.5 or later.

Optional Region-Limited SMS Support for Two-Factor Authentication

DFdiscover now provides a region-limited option to send text messages via SMS using Azure Communication Services, when enabled for the server. SMS messaging may be configured at the server level, with all studies and users on that server using the same, region-specific Azure SMS service and sender.

When enabled for a server, SMS is an option for delivering two-factor authentication (2FA) codes by text message instead of email. This is enabled by an administrator through the user-specific Send code by Azure SMS setting in the DFadmin User Profile. Phone numbers are required to be within the region supported by the server’s configuration, and must contain both the country code and area code (e.g., 1-555-1234567). System administrators should ensure appropriate policies and controls are in place when enabling SMS-based authentication.

If SMS 2FA is enabled for users with phone numbers outside the supported region, those users will not receive authentication codes and will be unable to log in. When SMS is enabled for a server, by default DFdiscover supports SMS delivery to phone numbers in North America (United States, Puerto Rico, and Canada) only. Individual servers may be configured differently, including by organizations hosting their own DFdiscover environment and using their own Azure SMS service.

Azure SMS is disabled by default and can only be enabled and configured by a system administrator in the DFedcservice configuration file. See System Administrator User Guide, Azure SMS Messaging for more details.

This feature requires DFdiscover server and API version 5.11 or later.

A new global setting is available in DFsetup to control which DFengage access links are available for a study in DFweb’s ePRO Management page: web, mobile, or both. This feature supports organizations deploying their own DFengage web instance and helps enforce the use of one mode or another for studies that require it.

Based on the DFsetup global setting ‘DFengage app usage’ available under the ePRO tab, DFweb provides the appropriate invitation and login links and QR codes. See Enhanced DFengage Access Link Options for the details.

This feature requires DFdiscover server and API version 5.11 or later.

Server Restriction Controls for DFws API

Administrators can now use a new DFws API configuration to restrict which DFdiscover servers an API instance may connect to.

Configuring the DFWS_AUTHORIZED_SERVERS option in the dfws configuration file restricts API connections to the specified servers. Attempts to connect to any other server are rejected with the error message ‘Server name is not valid’. If this option is not set, the API maintains its previous behavior and permits connections to all DFdiscover servers.

This enhancement provides greater security and control for self-hosted environments.

This feature requires DFdiscover server and API version 5.11 or later.

NGINX Reverse Proxy Support

For system administrators, DFdiscover now supports deployment behind an NGINX reverse proxy, which enables hosting DFweb, DFengage, and DFws under a single FQDN and port 443. Refer to the Nginx Configuration Guide for details about how to configure the reverse proxy.

Improved PDF and Image Conversion Reliability

The Ghostscript-based PDF and image conversion process has been replaced with a new implementation using the DFfile2image utility and modern Qt libraries, improving reliability and consistency when processing PDF and TIFF files to PNG. This resolves issues where certain PDFs (e.g., generated by Microsoft Print to PDF) were not processed correctly or were not received.

High definition imaging must be enabled on the server to take full advantage of this update. Standard definition PDFs and images processed on the server continue to use the legacy Ghostscript-based implementation to maintain consistent ICR behavior for image-based CRFs.

DFweb

New User Setting to Disable Edit Checks in DFweb

DFweb now includes a user setting to disable edit checks, helping reduce interruptions for users who are being introduced to a study or workflow.

The option ‘Disable edit checks’ is available on the DFweb Settings page and is set off by default. Users can manually turn the setting on if they have the appropriate role permission (‘DFexplore Miscellaneous: May disable edit checks’), but otherwise the setting is disabled. The setting is reset to off when the user logs out or switches to another study.

This setting is designed to align with the behavior of DFexplore when ‘Enable edit checks’ is unchecked when selecting the mode and save level, where interactive edit checks are not triggered while some system-level edit checks continue to run if defined.

When a task has been defined to run with edit checks enabled, note that in DFweb the edit checks may still be disabled due to the Disable Edit Checks setting. Ensure the Disable Edit Checks setting is off while running tasks.

This feature requires DFdiscover server and API version 5.11 or later.

Improved Detection and Messaging for DFweb Connectivity Issues

DFweb has been enhanced to better detect and communicate connectivity issues when a user’s access to DFweb is impacted by their network blocking access to the DFws API, for example through firewall restrictions added by the IT department at a clinical site.

Previously, these users received a ‘No Study’ message after login, which created additional troubleshooting efforts to resolve. Now, users are notified immediately after login if the application cannot reach the API server, with clear messaging explaining the issue and guidance on how to resolve it. Users can copy & paste wording to share with their IT team directly, including a link providing more information in the DFweb User Guide.

This update improves the troubleshooting process for user issues connecting to DFweb. We recommend asking study team members to log in to DFweb as soon as their credentials are provided to test their DFweb access so that if site staff requires IT support to allow access, it can be completed before data entry begins.

DFweb now provides improved control over DFengage access links, ensuring invitation and login links consistently use the correct access links based on study requirements and supporting organizations deploying their own DFengage web instance.

Based on the new global setting in DFsetup (see DFsetup Global Setting for DFengage Access Link Types), DFweb provides access links for DFengage mobile, web, or both. Mobile access links use dfengage.dfdiscover.com, while web access links use the DFengage FQDN defined in the DFedcservice configuration file.

For studies using both, the “Get Link/QR Code” dialog in DFweb ePRO Management uses a tabbed interface to display mobile and web options separately. This update improves flexibility and usability for different study requirements and DFengage deployment scenarios.

This feature requires DFdiscover server and API version 5.11 or later.

PDF Handling for Enhanced XSS Protection

A new check of uploaded PDF documents has been added to DFweb to enhance protection against cross-site scripting (XSS) attacks. When a user uploads a PDF with potentially unsafe content (including Javascript), DFweb will prevent the PDF from being displayed. The user will see a warning message indicating that the file cannot be displayed due to unsafe content.

This update strengthens DFdiscover security by preventing malicious scripting from being introduced through user-submitted data.

DFcollect

New Minimum Operating System Versions for DFcollect

DFcollect on Android devices now requires Android 10 (API level 29) or higher, replacing the previous minimum of version 5. DFcollect on Apple devices now requires iPadOS or iOS 16 or later, replacing the previous minimum of version 11.

These updated device requirements provide alignment with modern platform security standards. Updates have been implemented to strengthen application security and protect app data, with no changes to user workflows.

All Updates

General

Includes updates to the DFdiscover server, API, and desktop client tools.

Order ID App Type Description
1 12409 DFsetup, Server & API New A new ePRO Notifications configuration is available in DFsetup to define reminders for participants using DFengage mobile. See details.
2 12776 DFadmin, Server New DFdiscover now supports limited, region-specific SMS support for sending two-factor authentication codes to specified users via text message instead of email. See details.
3 12451 DFsetup New A new option is available in DFsetup Global Settings to control whether DFengage links available in DFweb’s ePRO Management page are to DFengage web, mobile, or both. See details.
4 10075 Server & API New Administrators can now use a new DFws API configuration to restrict which DFdiscover servers an API instance may connect to. See details.
5 12827 API New DFws now supports deployment behind an NGINX reverse proxy, enabling hosted DFweb, DFengage, and DFws instances to run under a single FQDN and port 443. See details.
6 13016 DFexplore, DFsetup, DFpdfpkg Change The Ghostscript-based PDF and image conversion process has been replaced with a new implementation using the DFfile2image utility and modern Qt libraries to improve reliability and consistency when processing PDF and TIFF files to PNG. See details.
7 11389 Desktop apps Change DFdiscover’s core application framework (Qt) has been upgraded from version 5.15 to 6.8, improving long-term maintainability and positioning the software for ongoing performance and compatibility enhancements. As part of this upgrade, some interface elements may appear slightly different across applications and operating systems, including updates to the appearance of controls such as checkboxes and buttons.
8 12646 DFsetup Change The modular and legacy XML setup formats have been removed from DFsetup. These have been fully replaced by the JSON setup definition format.
9 12831 ATK Change The Acceptance Test Kit (ATK) has been updated to incorporate new features and enhancements available with the DFdiscover 5.11 and DFengage 2.5 releases, along with various fixes and improvements.
10 12708 Documentation Fix Various fixes and improvements have been applied to the documentation.
11 12802 DFadmin Change DFadmin now displays the user creation history to the study administrator who created the user account. Other study administrators, who did not create the user account, do not see the user creation event in the user’s history.
12 13503 Desktop & server Change SQLite was updated from version 3.50.4 to 3.53.0.
13 12773 DFadmin Fix The study permissions summary available in the DFadmin Studies tab is updated to include ePRO Admin permissions.
14 13136 DFadmin, Server Fix An issue was fixed where users with the ePROdata role created prior to version 5.10 were not recognized as ePRO users and did not appear on DFweb’s ePRO Management page. This was caused by a case-sensitive role name change (ePROData → ePROdata) that prevented existing users from being properly registered. The system now correctly updates ePRO user status when role names change, ensuring all applicable users are accurately recognized without requiring manual account updates.
15 12848 Server/API New The DFws API report requests now support custom installed DFdiscover and study reports, providing access to custom reports from API client tools. These requests enforce the existing report permissions defined in the role.
16 12898 Server/API New The DFws API subject binder request now supports the combined visit feature in the visit map, enabling API client tools to display combine visit ranges into one folder in the subject binder based on the visit map property added in version 5.10.
17 13238 Reports New Standard DFdiscover reports now include embedded version and build date information for the report assets, allowing users to identify the exact report build they are running. The report assets version and build date is accessible from the report output by clicking on the report title.
18 13457 DFexplore Fix A bug has been fixed in DFexplore on macOS where using a keyboard shortcut to paste text after adding a query using the metadata editor panel could paste text into the data field on the CRF instead of into the query details field, even if the user did not have permissions to create or modify data on that record.
19 12703 DFexplore Fix A bug was fixed in DFexplore where a report’s pagination controls did not work as expected when the report was open in a floating window and a different report was open in the main DFexplore window. The pagination controls in the floating window now correctly update the current window.
20 12702 DFexplore Fix A bug was fixed in DFexplore Reports View when opening a tabular listing report with pagination from the History. Previously, a missing parameter error was displayed and the report could not be downloaded. This issue has been resolved.
21 13594 DFexplore Fix An issue was fixed in DFexplore where the Save as PDF function could omit pages from combined visits. When visits were configured as a combined range in DFsetup, pages belonging to visits after the first visit in the range were not always included in the generated PDF. With this fix, all pages within combined visits are now correctly included.
22 7572 DFexplore, DFsetup Fix DFexplore and DFsetup have been updated to wrap long choice and check labels that don’t fit into one line on eCRFs. The labels are now wrapped to display the full label on additional lines instead of being truncated at the end of the first line.
23 12808 DFexplore, DFsetup Fix An issue has been fixed with eCRFs saved to PDF where text or labels could be split across pages, making them difficult to read. PDFs saved from DFsetup and DFexplore now keep lines on the same page by detecting the white space between lines of text for adding page breaks. Note that when using background colors on eCRFs, lines may still be split across pages due to the software not being able to detect any white space between lines.
24 13054 DFsetup Fix An issue was fixed in DFsetup where where development-to-production study linking could fail due to file permission errors (e.g., inaccessible files in the ecbin directory), leaving the target study in a partially linked, inconsistent state that was not visible or recoverable through DFsetup. The linking process has been improved to ensure studies are fully linked even if some configuration files or subdirectories cannot be copied. Users will still receive warnings about any failures and will need to review and republish configurations as needed.
25 8557 DFsetup Fix The DFsetup Edit Coding table has been updated so that when pasting a table of data for check, choice, and numeric fields, the sub label is now included. The previous issue of ignoring the sub label when pasting has been resolved.
26 12912 Server Fix A server-side issue was resolved where page map labels using field substitution could incorrectly display the plate label when the referenced field was blank. Page labels now display correctly for user-defined fields, with clear handling for blank, hidden, or invalid fields. Substitutions for system fields (fields 1-7) are not supported at this time.
27 12774 Server Fix An issue was fixed with the API where the subject alias map was not loaded as expected in some scenarios.
28 12736 Server Fix An issue was fixed on the server where the default datafax user account was not visible in DFadmin after a fresh installation unless a manual DFadmindb reload was performed. The system now automatically initializes the required data during initial startup, ensuring the default user is available without additional steps.
29 13300 Server & API Fix Issues were fixed in the DFws API where the ‘featuremetrics’ request could return incorrect values and the licensemetrics/licensefeatures responses did not clearly reflect the totals shown in DFadmin. The API now returns complete, correctly calculated license and feature usage values that align with the License Usage information presented in DFadmin, improving consistency across applications.
30 13053 Server Fix An issue was fixed where a certain set of API requests could result in crashing the server session.
31 12504 Server Fix A bug was fixed on the server side where converting a plate with a CRF background to an eCRF could cause save failures during data entry. After adding new choices to a choice field on a plate converted to eCRF, saving a data record with that field caused an error because the server was validating the data value against the original choice field widget instead of the defined choice codes. Data records with affected choice fields are now correctly validated and saved.
32 12688 Server Fix Security has been improved to ensure a user with ePRO Admin permissions for multiple sites has no means of accessing the ePRO account log for participants at sites where they have Viewer permissions. This fix helps ensure the restriction of access to personally identifying information (PII) for study participants.
33 13640 Server Fix A server-side issue was fixed where trailing spaces in field descriptions could cause data save failures in DFweb. This update ensures queries and reasons for change are processed correctly, preventing save errors.
34 13638 Server Fix DFdiscover has been updated to correct an issue with the AWK environment variable that caused compatibility warnings with certain legacy reports on RHEL systems.

DFweb

Order ID App Type Description
1 9024 DFweb New DFweb includes a new user setting to disable edit checks. See details.
2 12751 DFweb New DFweb has been enhanced to better detect and communicate connectivity issues in DFweb when a user’s network blocks access to the DFws API. See details.
3 12716 DFweb Change DFweb now provides improved control over DFengage access links for the mobile and web apps. See details.
4 12764 DFweb Change DFweb checks PDFs uploaded through the Manage Documents dialog in CRF view to enhance protection against cross-site scripting (XSS) attacks. PDFs that contain Javascript cannot be viewed in DFweb, and a user attempting to view the document is shown a warning. See details.
5 12999 DFweb Fix DFweb now supports deployment behind a reverse proxy for self-hosted environments.
6 13011 DFweb Fix An important issue was fixed in DFweb that could impact field exit and entry events. In rare cases, a DFweb user could select a field without the app detecting it. This occurred when a user began a mouse click inside a field but released the mouse outside the field. When this happened, it could result in reasons for change not being prompted, field-level edit checks not running, and query statuses not updating as expected. To address this issue, DFweb now tracks interactions more robustly so that it can reliably detect when the user enters a field regardless of the method.
7 13178 DFweb Fix An issue was resolved in DFweb where saving a page in Validate mode could fail if the user did not have permission to modify queries. DFweb now respects user permissions during save operations, preventing errors and ensuring that reasons for change are properly recorded.
8 13030 DFweb Fix A bug was fixed where new subjects could not be added in DFweb when the subject alias setting was enabled.
9 13087 DFweb Fix An issue was fixed in DFweb where cancelling a “Reason for Change” dialog on the last required field and then attempting to save could trigger an infinite loop of repeated dialogs. The fix prevents duplicate dialogs from appearing, restoring normal save behavior.
10 13112 DFweb Fix An issue was resolved in DFweb where navigating to a CRF without view permissions (using a deep link or dftrigger edit check function) could cause the application to crash when attempting to leave the page. The fix allows users to navigate away normally from the page.
11 11597 DFweb Fix A bug was fixed in DFweb CRF view where the Save button was not enabled as expected after data values are modified on plate entry due to changes to the setup definition.
12 12741 DFweb Fix A bug was fixed in DFweb that prevented users from selecting disabled dropdown fields in eCRF tables without using keyboard navigation.
13 13402 DFweb Fix DFweb’s two-factor authentication dialog no longer indicates that the code will be sent by email, since the verification code may now be sent by email or text/SMS.
14 13379 DFweb Fix DFweb dependencies have been updated to address reported security vulnerabilities and ensure build integrity. These changes improve overall stability and reduce exposure to potential risks, with no impact on system functionality.

DFcollect

Order ID App Type Description
1 12469 DFcollect Change DFcollect now requires Android 10 (API level 29) or higher or iPadOS/iOS 16 or higher, to align with modern platform security standards. See details.
2 12406 DFcollect Change DFcollect has been upgraded to Qt 6.8.6 to support Android’s 16 KB memory page size requirement and ensure continued publishing through Google Play. This update modernizes the application framework, aligns DFcollect with current Android platform requirements, and maintains compatibility with supported Android devices.
3 12826 DFcollect Fix An issue has been fixed in DFcollect on iOS/iPadOS where some screens were not readable when the Dark display setting was enabled on the device. DFcollect’s display remains the same in both Light and Dark mode.
4 12806 DFcollect Fix Fixed an issue in DFcollect where trailing newline characters in values returned from the dfexecute function could cause edit checks to fail or produce incorrect results. The system now removes only the final trailing newline (if present) before performing validations, while preserving internal line breaks, ensuring consistent behavior with DFexplore.

Known Issues

This section provides information about low-severity, low-priority issues that exist in the current release, with details about available workarounds. Where possible, known issues are planned to be addressed in a future release.

ID App Description
12095 DFsetup If the setup definition contains non-printable characters, for example pasted into field help from another application, the exported setup Excel file may not open and instead show an error message indicating there is a problem with the content. To address this issue, ask your system administrator or software support to help identify and remove the non-printable character.
10128 DFsetup In DFsetup, multi-line translation text cannot be imported into the Translations table. As a workaround, enter any multi-line translations directly in the table rather than using the import feature.
8970 DFsetup In DFsetup, when replacing an existing field with a new layout on a CRF background, the Replace Layout dialog appears twice.
10131 DFadmin In DFadmin, if another user modifies the Version Strict setting in the Master tab while a study administrator is logged in to DFadmin, those changes aren’t available to the study administrator until they next log in to DFadmin.
10432 DFweb When an edit check is used to calculate a number and then assign it to a data field, if the number does not fit in the data field, the number is truncated. DFweb shows the user a warning that the calculated value will be truncated, while DFexplore does not. To avoid this warning in DFweb, modify the edit check to truncate the value to the appropriate length before assigning it to the data field.
11355 DFweb When saving a CRF with a hidden field that is illegal (blank required or with a value outside the legal range), in DFweb the record is saved as incomplete, unlike in DFexplore where these records are saved as final. If the CRF needs to be saved as final, adjust your field properties or edit checks to avoid hidden illegal fields in DFweb.
9906 DFweb When logged into DFweb in one browser tab and working in another tab or browser window, you may be auto logged out of your DFweb session earlier than the auto-logout time window.
9914 DFweb In the DFweb CRF view, the Unsaved Changes dialog does not appear in some cases when clicking the back button on iOS and iPadOS devices. Users must save the CRF before using the back button to leave the page to avoid loss of unsaved data.
8041 DFweb When using browser settings to increase the font size, DFweb does not handle the increased text size consistently across the app. As a workaround, use the normal font size setting and instead use zoom settings to improve visibility.
8542 DFweb In DFweb Reports, when resizing the browser window between desktop and tablet size while a report filter popup is open, the popup may remain open after closing the report.
7434 DFweb On Windows, for some reports, scrolling quickly up and down can result in the options in the filter list dropdown disappearing. As a workaround, close and re-open the dropdown to view the options again.
8324 DFweb In DFweb Reports, if a report filter dropdown is open when the user is auto logged out after inactivity, the user is successfully logged out but the report will remain open until it is closed manually.
7594 DFweb When trying to view a PDF document in the Manage Documents dialog on Android mobile browsers, the PDF document may not be shown. As a workaround, use the download option provided in the dialog beside the expand button.
10410 DFweb In DFweb, if the dfpageinfo edit check function references a record not in the current subject binder, for instance for a plate in a visit where the visit number range doesn’t reach that visit yet, it may show the default plate label instead of the defined page label.
8053 DFweb DFweb may stop working if an edit check using the dftrigger function with ” ” in the edit check list is triggered. As a workaround, remove the space from the edit check list in the dftrigger function parameters.
7596 DFweb In the unlikely case an unexpected record is added to the subject binder in DFweb using the dfaddmpqc edit check function and then deleted with dfdelmpqc, the record status is not updated to blank. As a workaround, close and reopen the subject binder to see the correct status.
7570 DFweb In the unlikely case that the dftrigger edit check function is used to open an unexpected record for a different subject in DFweb, the subject binder will not load properly. As a workaround, add the unexpected record to the visit map and use the dfneed edit check function in the DFopen_patient_binder edit check to exclude the record from the subject binder when you don’t want it to be displayed.
10592 DFweb In the unlikely case that a page in DFweb requiring an eSignature includes a hidden field that is illegal (blank required or with a value outside the legal range), the eSignature, provided by a user without permission to show hidden fields or where fields have been hidden with edit checks, is removed when the page is saved to the server. This behavior does not match DFexplore, where the eSignature remains applied even if there a hidden illegal value or blank required field on the page.
7607 DFweb In the unlikely case that a user saves a record to a workflow level they do not have view access to, the record status shows as missed instead of blank. As a workaround, close and reopen the subject binder to see the correct record status.
10690 DFweb When DFweb displays links in the login banner text defined in the DFadmin Master tab, links are displayed with a white font color. As a workaround, use the HTML style attribute to display links in the desired color. For example: <a href="mailto:help@dfnetresearch.com" style="color:black">help@dfnetresearch.com</a>
12684 DFweb In DFweb Reports, after sorting a table in a tabular listing report using the icons in the column headers, the regular cursor may be displayed instead of the hand cursor when hovering over rows in the listing, even though the row is linked to a data record. Actual interactivity is not affected and reports are still clickable as intended.
12707 DFcollect In DFcollect, the field prompt on a CRF is restricted to a single line for string, date, time, and number type fields, which translates to approximately 92 characters on large tablets and 45 characters on smartphones. Multi-line prompts up to 1500 characters are supported for choice, check, and VAS type fields only. As a workaround, use field instructions above prompt or above field where longer prompts are required for the affected data types.
11360 DFcollect DFcollect only supports lookup tables with a file size below 40 MB. Lookup tables larger than 40 MB in size cannot be loaded or used in DFcollect.
8965 DFcollect Edit check dialogs in DFcollect do not render HTML code. Instead use plain text messages. If required, use the dftool() function to separate plain text messages for DFcollect from HTML formatted messages for DFexplore and DFweb.
12587 DFcollect On Android 16 devices, the menu and attachment buttons in DFcollect may appear partially hidden due to changes in edge-to-edge user interface behavior, however the buttons continue to function as expected.
13625 DFcollect DFcollect is designed for use on tablets and is not recommended for use on smartphones. On smaller displays, some interface elements, dialogs, and application functions may not be fully accessible or may not display correctly. Tablet devices with a 8.7” or larger display are recommended.
13650 DFcollect When entering data into number fields without a defined numeric format, DFcollect may automatically apply zero padding to the entered value based on the Display field property. This behavior is inconsistent with DFweb and DFexplore, which do not apply zero padding under the same configuration conditions. This issue is limited to number fields without an explicit format definition.
13584 DFadmin, Server For ePRO user accounts created prior to version 5.11, changes to the two-factor authentication (2FA) method in DFadmin (email/SMS) may not persist when modified independently and may be silently ignored without an error message. This issue may result in inconsistent 2FA configuration or potential user access issues. As a workaround, ensure the Email field is populated in DFweb ePRO Management by an ePRO admin before changing the 2FA method, or modify at least one additional user setting (for example, Preferences) at the same time as the 2FA change in DFadmin to force the update to persist.
13609 Server When a page map label defined in DFsetup includes more than one field value substitution (%n or %n:d), the page label initially displays the default plate label in the subject binder before the CRF is loaded and before all field values are available. Once the CRF is opened by the user and all field values are entered, the page label is displayed as defined in the page map, but otherwise only the default plate label is shown.

Advance Notices

This section provides information about changes planned in a future release that may impact ongoing projects, in particular any features that will be deprecated. These notices are intended to support planning for future upgrades.

  1. Internal Queries Behavior: Internal queries permission implementation will be updated in a future release. The implementation of the Show Internal Queries “none” and “resolved” options in the DFadmin role permissions will be updated in DFexplore, DFweb, and DFcollect to ensure consistency across apps. The following behavior will be implemented:

    1. If internal queries permission is “none” and the role includes full permissions to modify queries, internal queries are view only.

      Current behavior: In DFexplore, internal queries are treated the same as external queries. In DFweb and DFcollect, internal queries are hidden.

    2. If internal queries permission is “none” and the role includes partial or no permissions to modify queries, internal queries are hidden. Internal queries can be created or modified by an edit check with partial query permissions, but the queries will remain hidden.

      No change from current behavior.

    3. If internal queries permission is “resolved” and the role includes full permissions to modify queries, outstanding internal queries are view only; resolved and pending internal queries are treated the same as external queries.

      Current behavior: In DFexplore, DFweb, and DFcollect, all internal queries are treated the same as external queries.

    4. If internal queries permission is “resolved” and the role includes partial or no permissions to modify queries, outstanding internal queries are hidden; resolved and pending internal queries are treated the same as external queries. Internal queries can be created or modified by an edit check with partial query permissions, but the queries will remain hidden when outstanding.

      Current behavior: In DFexplore, all internal queries are shown and view only. In DFweb and DFcollect, all internal queries are hidden.

  2. Edit Checks in View Only Mode: The behavior of edit checks on view-only data will be updated for consistency in a future release. Currently, when the ‘Run edit checks in view mode’ global setting in DFsetup is disabled, DFexplore/DFcollect and DFweb behave slightly differently:

    • DFexplore: Edit checks don’t run only when user is in ‘view mode’, which is enabled automatically for users who have only view-only permissions to all data but is not always enabled when the current page is view-only.

    • DFweb: Edit checks don’t run on a record any time the user has view-only/read only access to the data record for any reason (view mode, locked record, permissions).

    • DFcollect: Same as DFexplore.

    This discrepancy will be addressed by updating DFexplore and DFcollect to match DFweb, so that if the ‘run edit checks in view mode’ setting is disabled, edit checks will not run whenever a plate is view-only (not just when user is in view mode).

  3. Protus Fax Support: The Protus fax service is no longer supported in DFdiscover after MyFax sunsetted their API in 2021. The Protus functionality will be removed from DFadmin in a future release.

Server Upgrade

This section is applicable only to DFdiscover administrators hosting their own DFdiscover installation. This section outlines requirements and considerations for upgrading DFdiscover, DFws API, and DFweb to Version 5.11.0.

This release of DFdiscover is a complete release. It can be installed as a new install or as an upgrade of any previous release. Existing studies will continue to work in the updated installation.

See the Software Installation Guide for full details on upgrading your DFdiscover server as well as your DFws API, DFweb, and DFengage web server instances.

Software Components

DFdiscover 2026 Version 5.11.0 includes updates to the DFdiscover server, DFws API, and DFweb server installation packages, as well as the DFengage web server installation package. These are available as RPM files from the DFnet website under My Account > Software Release (account required). DFdiscover reports are available from cdn.dfdiscover.com (see Update CDN_URL). The build dates for all software components are:

Supported Configurations

DFdiscover 2026 Version 5.11.0 is supported on Novell openSUSE version Leap 42.1 and newer, SUSE Tumbleweed and Redhat Enterprise Linux (CentOS) versions 8.X and 9.X. DFdiscover is a 64-bit server application and will not run on 32-bit systems. Other Linux distributions may work but are unsupported. Debian distributions such as Ubuntu will not work at this time. The same configurations are required for the DFws API and DFweb servers.

Version Compatibility

For clients managing their own DFdiscover server and API and/or DFweb instance, we recommend upgrading all three components at the same time to ensure all new features, enhancements, and bug fixes are available.

It is possible to upgrade the DFws API & DFweb without also upgrading the DFdiscover server, however please note that not all updates in Version 5.11.0 will be supported with an older DFdiscover server. See All Changes for notes about the features and changes that require DFdiscover server and/or API Version 5.11.0 or later.

If using mismatched DFdiscover versions, key considerations include:

Upgrade Considerations

The following section outlines potential upgrade steps required for DFdiscover administrators (and study administrators, as appropriate) when upgrading an existing DFdiscover release to Version 5.11.0. Refer to the Software Installation Guide for complete details on new and upgrade installations.

Update CDN_URL

Required

To get the latest updates to the DFdiscover standard reports, the CDN_URL must be updated in DFadmin. The resources used to display the DFdiscover standard reports are specified in the value of CDN_URL in the system master configuration. To inspect and update the value:

  1. Log in to DFadmin. Click the Master tab to display the master configuration panel.

  2. Inspect the value specified for CDN_URL. If the value reads ‘https://cdn.dfdiscover.com/v5.11’, it is already up to date and no change is needed. Otherwise, update the value to read ‘https://cdn.dfdiscover.com/v5.11’.

  3. Click Save to apply the change.

Run DFauditdb

Required if upgrading from 5.4 or earlier

If upgrading from a DFdiscover version earlier than 5.5.0, existing journal files must be loaded into the new audit database for each study. DFauditdb is provided for this purpose. Until study journal files are loaded, it is not possible to view page or field history or run DF_SBhistory.

Load the new audit trail database for all ongoing studies using this command as either user datafax or root:

/opt/dfdiscover/utils/DFauditdb -reload -s all

Run DFadmindb

Required if upgrading from 5.9 or earlier

Existing user and role history must be loaded (or reloaded, if loaded with a previous upgrade) into the admin history database. DFadmindb is provided for this purpose. Until the admin history is loaded, it is not possible to view User, Role, or Study History in DFadmin. If previously loaded in an upgrade prior to 5.10, reloading is required to fix a bug with incorrect study access details.

Load the new audit trail database for all ongoing studies using this command as either user datafax or root:

/opt/dfdiscover/utils/DFadmindb -reload  

Run DFsetupdb

Required if upgrading from 5.9 or earlier

Existing study schema history must be loaded (or reloaded, if loaded with a previous upgrade) into the new setup database. DFsetupdb is provided for this purpose. Until the setup database is loaded, it is not possible to view History in DFsetup. If previously loaded in an upgrade prior to 5.10, reloading is required to fix a bug with incorrect timestamps.

Load the new audit trail database for all ongoing studies using this command as either user datafax or root:

/opt/dfdiscover/utils/DFsetupdb -reload -s all  

Obtain updated software license

Required if upgrading from 5.8 or earlier and using DFcollect and/or DFengage

Starting with Version 5.9.0, DFengage and DFcollect are licensed features per server. If you are using DFengage and/or DFcollect, you will need a new license that includes the appropriate feature(s) when upgrading your server.

Save ePRO notifications configuration in DFsetup

Required if upgrading from 5.10 or earlier and using DFengage mobile

For studies using DFengage mobile, a new notification configuration now handles DFengage push notifications and needs to be saved in DFsetup to activate notifications for the study. Studies requiring push notifications in French or Spanish must define the translations in DFsetup. See ePRO Notifications Configuration in DFsetup for details.

WARNING: For studies upgrading from DFdiscover 5.10 or earlier, existing participants may stop receiving new and overdue reminders from DFengage mobile until the ePRO Notifications configuration is saved in DFsetup.

Verify study role permissions

Required

For users of API client tools (DFweb, DFcollect, DFengage, and DFsources), verify that the study roles are set up with the required permissions See Role Permission Considerations for details. Any DFweb, DFcollect, DFengage, or DFsources users may lose their access after upgrading if their roles are not updated to enable access.

Verify version compatibility settings

Required

The Version Strict setting in DFadmin allows you to control version compatibility. If users will be connecting to DFdiscover 2026 Version 5.11.0 using older versions of DFexplore, or if users will be connecting to an older version of DFdiscover through the latest DFweb, DFcollect, or API version, the Version Strict setting must be updated to allow this.

If any version of any client application will be used that does not match the DFdiscover server version, ensure that the master or study Version Strict setting is ‘All minor versions supported’ or ‘Minimum version supported’ in DFadmin.

When ‘All minor versions’ is enabled, the following versions of client applications may be used with DFdiscover 2026 Version 5.11.0 server: 2019 5.2.1, 2020 5.3.2, 2021 5.4.0, 2022 5.5.1, 2023 5.6.0, 2023 5.7.0, 2024 5.8.0, 2024 5.9.0, and 2025 5.10.0.

Ensure all DFcollect users upgrade to 5.11

Required

DFdiscover 2026 Version 5.11 is not compatible with DFcollect version 5.9.X or earlier. This is due to DFws API version 5.10 and later requiring TLS version 1.3 or later. Ensure all DFcollect users upgrade to version 5.10 or later on their devices. DFcollect 5.11 is recommended.

Copyrights

External Software Copyrights

DFdiscover software uses several third-party software components as part of its server side and/or client tools.

The copyright information for each is provided below. If you would like to receive source codes of these third-party components, please send us your request at help@dfnetresearch.com.

DCMTK software package

Copyright© 1994-2011, OFFIS e.V. All rights reserved.

This software and supporting documentation were developed by

OFFIS e.V. R&D Division Health Eschereg 2, 26121 Oldenburg, Germany

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Jansson

Copyright© 2009-2014 Petri Lehtinen <petri&digip.org>

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Mimencode

Copyright© 1991 Bell Communications Research, Inc. (Bellcore)

Permission to use, copy, modify, and distribute this material for any purpose and without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies, and that the name of Bellcore not be used in advertising or publicity pertaining to this material without the specific, prior written permission of an authorized representative of Bellcore. BELLCORE MAKES NO REPRESENTATIONS ABOUT THE ACCURACY OR SUITABILITY OF THIS MATERIAL FOR ANY PURPOSE. IT IS PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES.

RSA Data Security, Inc., MD5 message-digest algorithm

Copyright© 1991-2, RSA Data Security, Inc. Created 1991. All rights reserved. License to copy and use this software is granted provided that it is identified as the "RSA Data Security, Inc. MD5 Message-Digest Algorithm" in all material mentioning or referencing this software or this function. License is also granted to make and use derivative works provided that such works are identified as "derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm" in all material mentioning or referencing the derived work. RSA Data Security, Inc. makes no representations concerning either the merchantability of this software or the suitability of this software for any particular purpose. It is provided "as is" without express or implied warranty of any kind. These notices must be retained in any copies of any part of this documentation and/or software.

mpack/munpack

Copyright© 1993,1994 by Carnegie Mellon University All Rights Reserved.

Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of Carnegie Mellon University not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. Carnegie Mellon University makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.

CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

TIFF

Copyright© 1988-1997 Sam Leffler Copyright© 1991-1997 Silicon Graphics, Inc.

Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that (i) the above copyright notices and this permission notice appear in all copies of the software and related documentation, and (ii) the names of Sam Leffler and Silicon Graphics may not be used in any advertising or publicity relating to the software without the specific, prior written permission of Sam Leffler and Silicon Graphics.

THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

PostgreSQL

Portions© 1996-2019, PostgreSQL Global Development Group Portions© 1994, The Regents of the University of California

Permission to use, copy, modify, and distribute this software and its documentation for any purpose, without fee, and without a written agreement is hereby granted, provided that the above copyright notice and this paragraph and the following two paragraphs appear in all copies.

IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

OpenSSL License

Copyright© 1998-2019 The OpenSSL Project. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  3. All advertising materials mentioning features or use of this software must display the following acknowledgment: "This product includes software developed by the OpenSSL Project for use in .the OpenSSL Toolkit." (https://www.openssl.org/)

  4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to endorse or promote products derived from this software without prior written permission. For written permission, please contact openssl-core@openssl.org.

  5. Products derived from this software may not be called "OpenSSL" nor may "OpenSSL" appear in their names without prior written permission of the OpenSSL Project.

  6. Redistributions of any form whatsoever must retain the following acknowledgment: "This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit. (https://www.openssl.org)

THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT "AS IS" AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). This product includes software written by Tim Hudson (tjh@cryptsoft.com).

Original SSLeay License

Copyright© 1995-1998 Eric Young (eay@cryptsoft.com) All rights reserved.

This package is an SSL implementation written by Eric Young (eay@cryptsoft.com). The implementation was written so as to conform with Netscapes SSL.

This library is free for commercial and non-commercial use as long as the following conditions are aheared to. The following conditions apply to all code found in this distribution, be it the RC4, RSA, lhash, DES, etc., code; not just the SSL code. The SSL documentation included with this distribution is covered by the same copyright terms except that the holder is Tim Hudson (tjh@cryptsoft.com).

Copyright remains Eric Young's, and as such any Copyright notices in the code are not to be removed. If this package is used in a product, Eric Young should be given attribution as the author of the parts of the library used. This can be in the form of a textual message at program startup or in documentation (online or textual) provided with the package.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  3. All advertising materials mentioning features or use of this software must display the following acknowledgement: "This product includes cryptographic software written by Eric Young (eay@cryptsoft.com)" The word "cryptographic" can be left out if the routines from the library being used are not cryptographic related :-).

  4. If you include any Windows specific code (or a derivative thereof) from the apps directory (application code) you must include an acknowledgement: "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"

THIS SOFTWARE IS PROVIDED BY ERIC YOUNG "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

The licence and distribution terms for any publically available version or derivative of this code cannot be changed. i.e. this code cannot simply be copied and put under another distribution licence [including the GNU Public Licence.]

gawk

GNU GENERAL PUBLIC LICENSE Version 2, June 1991

https://www.gnu.org/licenses/gpl-2.0.html

Copyright© 1989, 1991 Free Software Foundation, Inc.

        51 Franklin Street, Fifth Floor, 
        Boston, MA  02110-1301, USA

Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too.

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.

Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification follow.

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  1. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".

    Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does.

  2. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.

    You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

  3. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

    1. You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change.

    2. You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.

    3. If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

      Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.

      In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

  4. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:

    1. Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

    2. Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,

    3. Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

      If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

  5. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

  6. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.

  7. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.

  8. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.

    If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances.

    It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

    This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

  9. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

  10. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

    Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

  11. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY

  12. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

  13. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

Ghostscript

The files in the base, psi, lib, toolbin, examples, doc and man directories (folders) and any subdirectories (sub-folders) thereof are part of GPL Ghostscript.

The files in the Resource directory and any subdirectories thereof are also part of GPL Ghostscript, with the explicit exception of the files in the CMap subdirectory (except "Identity-UTF16-H", which is part of GPL Ghostscript). The CMap files are copyright Adobe Systems Incorporated and covered by a separate, GPL compatible license.

The files under the jpegxr directory and any subdirectories thereof are distributed under a no cost, open source license granted by the ITU/ISO/IEC but it is not GPL compatible - see jpegxr/COPYRIGHT.txt for details.

GPL Ghostscript is free software; you can redistribute it and/or modify it under the terms the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

GPL Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program so you can know your rights and responsibilities. It should be in a file named doc/COPYING. If not, write to the

    Free Software Foundation, Inc.,
59 Temple Place Suite 330, 
Boston, MA, 02111-1307, USA.

GPL Ghostscript contains an implementation of techniques covered by US Patents 5,055,942 and 5,917,614, and corresponding international patents. These patents are licensed for use with GPL Ghostscript under the following grant:

Whereas, Raph Levien (hereinafter "Inventor") has obtained patent protection for related technology (hereinafter "Patented Technology"), Inventor wishes to aid the the GNU free software project in achieving its goals, and Inventor also wishes to increase public awareness of Patented Technology, Inventor hereby grants a fully paid up, nonexclusive, royalty free license to practice the patents listed below ("the Patents") if and only if practiced in conjunction with software distributed under the terms of any version of the GNU General Public License as published by the

Free Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111. 

Inventor reserves all other rights, including without limitation, licensing for software not distributed under the GNU General Public License.

5055942 Photographic image reproduction device using digital halftoning to para images allowing adjustable coarseness 5917614 Method and apparatus for error diffusion paraing of images with improved smoothness in highlight and shadow regions

MariaDB and FreeTDS

GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 https://www.gnu.org/licenses/lgpl-2.1.html

Copyright© 1991, 1999

    Free Software Foundation, Inc.
    51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA

Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.

[This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.]

Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users.

This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below.

When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things.

To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it.

For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights.

We protect your rights with a two-step method:

  1. we copyright the library, and

  2. we offer you this license, which gives you legal permission to copy, distribute and/or modify the library.

To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others.

Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license.

Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs.

When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library.

We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances.

For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License.

In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system.

Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library.

The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run.

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

  1. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you".

    A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables.

    The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".)

    "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library.

    Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does.

  2. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library.

    You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

  3. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

    1. The modified work must itself be a software library.

    2. You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change.

    3. You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License.

    4. If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.)

      These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

      Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library.

      In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.

  4. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices.

    Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy.

    This option is useful when you wish to copy part of the code of the Library into a program that is not a library.

  5. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange.

    If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code.

  6. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.

    However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables.

    When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law.

    If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.)

    Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself.

  7. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications.

    You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License.

    Also, you must do one of these things:

    1. Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.)

    2. Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that

      1. uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and

      2. will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with.

    3. Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution.

    4. If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place.

    5. Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

      It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute.

    6. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things:

      1. Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above.

      2. Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work.

    7. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

    8. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it.

    9. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License.

    10. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library.

      If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances.

      It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

      This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

    11. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

    12. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

      Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation.

    13. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.

      NO WARRANTY

    14. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

    15. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

QtAV

© Wang Bin wbsecg1@gmail.com Shanghai University->S3 Graphics->Deepin, Shanghai, China 2013-01-21

QtAV is free software licensed under the term of LGPL v2.1. The player example is licensed under GPL v3. If you use QtAV or its constituent libraries, you must adhere to the terms of the license in question.

Rather than repeating the text of the LGPL v2.1, the original text can be found in GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1.

FFmpeg

Most files in FFmpeg are under the GNU Lesser General Public License version 2.1 or later (LGPL v2.1+). Read the file `COPYING.LGPLv2.1` for details. Some other files have MIT/X11/BSD-style licenses. In combination the LGPL v2.1+ applies to FFmpeg.

Rather than repeating the text of the LGPL v2.1, the original text can be found in GNU LESSER GENERAL PUBLIC LICENSE, Version 2.1.

c3.js

The MIT License (MIT) © 2013 Masayuki Tanaka

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

d3.js

Copyright© 2010-2017 Mike Bostock All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the author nor the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

jwt-cpp

MIT License

Copyright © 2018 Dominik Thalhammer

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

QXlsx

The MIT License

Copyright © 2017-, https://github.com/j2doll/QXlsx

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.