diff --git a/CODING_STANDARDS_R.md b/CODING_STANDARDS_R.md index 5a1fe87..6548522 100644 --- a/CODING_STANDARDS_R.md +++ b/CODING_STANDARDS_R.md @@ -1,6 +1,6 @@ # Coding Standards for R -We will follow the https://style.tidyverse.org/ style guide with very few changes to benefit from two R packages supporting this style guide: +We will follow the style guide with very few changes to benefit from two R packages supporting this style guide: - [styler](http://styler.r-lib.org/) - [lintr](https://github.com/jimhester/lintr) @@ -9,24 +9,42 @@ This coding standards will outline the more important aspects of the aforementio # Modifications from tidyverse Coding Standards -- Naming will use `camelCase` instead of `snack_case` +- Naming will use `camelCase` instead of `snake_case`. -- Favor usage of `return()` even when the return value does not need to be specified explicitely. +- Favor usage of `return()` even when the return value does not need to be specified explicitly. # RStudio IDE Settings -- Identation of 2 +- Indentation of 2 + - Use spaces instead of tabs +- Use UTF-8 text encoding (Ref: ) + +drawing + +- Use `{tinytex}` for `LaTeX` compilation (Ref: ) + +drawing + +- Use AGG graphics device (Ref: ) + +drawing + +- Use a blank slate (there should not be any residue from previous session when you start a new session to ensure long-term reproducibility of the software) + +drawing + + # Naming Convention -Use meaningful and understandable names. Code should read as a story and only some well known abbreviations such as pk etc. should be used +Use meaningful and understandable names. Code should read as a story and only some well known abbreviations (such as pk) should be used ## Files -- Underscores separated for multiple words +- Underscores separated multiple words - All lower case -- Ends in .R +- Ends in `.R` ``` # Good @@ -41,13 +59,13 @@ stuff.r ## Object names -- Variable and function names should use only lowercase letters, numbers. Use **camel case** to separate words within a name. +- Variable and function names should use only lowercase letters and numbers. Use **camelCase** to separate words within a name. -- Class names on the other hand should use **Pascal Casing** +- Class names on the other hand should use **Pascal Casing**. -- True constant variables should use **ALL_CAPS Casing** +- True constant variables should use **ALL_CAPS Casing**. -```R +```r # Class Parameter <- R6Class("Parameter", ....) @@ -65,36 +83,48 @@ performSimulation <- function (...) DEFAULT_PERCENTILE <- 0.5 ``` -- Do not use Hungarian notation (e.g. g for global, b for boolean, s for strings etc...) +- Do not use Hungarian notation (e.g., g for global, b for boolean, s for strings, etc.) ## Functions -Prefer use `return()` for returning result. You can rely on R to return the result of the last evaluated expression for simple functions. +Prefer using `return()` for returning result. You can rely on R to return the result of the last evaluated expression for simple functions. ## Comments -- Do not comment the obvious -- Use comments to explain the “why” not the “what” or “how”. -- Indent comment at the same level of indentation as the code you are documenting -- All comments must be written in English -- Do not generate commments automatically -- Do comment algorithm specifics. For example why would you start a loop at index 1 and not at 0 etc... -- If a lot of comments are required to make a method easier to understand, break down the method in smaller methods -- Really, do not comment the obvious +- Do not comment the obvious. +- Use comments to explain the **why**, and not the **what** or **how**. +- Indent comment at the same level of indentation as the code you are documenting. +- All comments must be written in English. +- Do not generate comments automatically. +- Do comment algorithm specifics. For example, why would you start a loop at index 1 and not at 0, etc. +- If a lot of comments are required to make a method easier to understand, break down the method in smaller methods. +- Really, do not comment the obvious. ## Documentation -Using roxygen comments as described [here](http://r-pkgs.had.co.nz/man.html#roxygen-comments) +- Use roxygen comments as described [here](http://r-pkgs.had.co.nz/man.html#roxygen-comments) + +- Internal functions, if documented, should use the tag `#' @keywords internal`. + +- Prefer to use `markdown` syntax to write roxygen documentation (e.g. use `**` instead of `\bold{}`). + +- To automate the conversion of existing documentation to use `markdown` syntax, install [roxygen2md](https://roxygen2md.r-lib.org/) package and run `roxygen2md::roxygen2md()` in the package root directory and carefully check the conversion. + +## Conventions + +- Function names as code (good: `dplyr::mutate`, `mutate`, `mutate()`; bad: *mutate*, **mutate**) +- Package names as code with `{` (good: `{dplyr}`; bad: `dplyr`, *dplyr*, **dplyr**) +- Programming language names as code (e.g. `markdown`, `C++`) ### Documenting functions -http://r-pkgs.had.co.nz/man.html#man-functions + ### Documenting classes -Reference classes are different to S3 and S4 because methods are associated with classes, not generics. RC also has a special convention for documenting methods: the docstring. The docstring is a string placed inside the definition of the method which briefly describes what it does. This makes documenting RC simpler than S4 because you only need one roxygen block per class. +Reference classes are different across S3 and S4 because methods are associated with classes, not generics. RC also has a special convention for documenting methods: the docstring. The docstring is a string placed inside the definition of the method which briefly describes what it does. This makes documenting RC simpler than S4 because you only need one roxygen block per class. -```R +```r #' This is my Person class #' @title Person Class #' @docType class @@ -130,19 +160,19 @@ Person <- R6::R6Class("Person", ## Spacing -Use the `styler` plugin. It will style the file for you. Otherwise see [here](https://style.tidyverse.org/syntax.html#spacing) +Use the `styler` addin for RStudio. It will style the files for you. For more, see [here](https://style.tidyverse.org/syntax.html#spacing) ## Global Variables -- Except for program constants or trully global states, never use global variables. If a global object is required, this should be absolutely discussed in team. +- Except for program constants or truly global states, never use global variables. If a global object is required, this should be absolutely discussed with the team. -- No hard coded strings and magic number should be used. Declare a constant instead +- No hard coded strings and magic number should be used. Declare a constant instead. ## Style ### Long Lines -Strive to limit your code to 80 characters per line +Strive to limit your code to 80 characters per line. ### Assignments @@ -150,19 +180,19 @@ Use `<-`, not `=`, for assignment. ### Semicolons -Don’t put `;` at the end of a line, and don’t use `;` to put multiple commands on one line. +Don't put `;` at the end of a line, and don't use `;` to put multiple commands on one line. -**Note:** All these styling issues, and much more, are corrected automatically with `styler` +**Note:** All these styling issues, and much more, are corrected automatically with `styler`. ### Code blocks -- `{` should be the last character on the line. Related code (e.g., an if clause, a function declaration, a trailing comma, …) must be on the same line as the opening brace. +- `{` should be the last character on the line. Related code (e.g., an `if` clause, a function declaration, a trailing comma, etc.) must be on the same line as the opening brace. -- The contents should be indented +- The contents should be indented. - `}` should be the first character on the line. -- It is s ok to drop the curly braces for very simple statements that fit on one line, **as long as they don’t have side-effects**. +- It is OK to drop the curly braces for very simple statements that fit on one line, **as long as they don't have side-effects**. ``` # Good @@ -188,3 +218,44 @@ Refer to chapter [Tests](https://style.tidyverse.org/tests.html) # Error messages Refer to chapter [Errors](https://style.tidyverse.org/error-messages.html) + +# Rmarkdown + +Package vignettes are written using `{rmarkdown}` package. Here are some good practices to follow while writing these documents: + +- It is strongly recommended that only alphanumeric characters (`a-z`, `A-Z` and `0-9`) and dashes (`-`) are used in chunk labels, because they are not special characters and will surely work for all output formats. Other characters, spaces and underscores in particular, may cause trouble in certain packages, such as `{bookdown}`, `{styler}`. +Ref: + +```` +# bad + +```{r load theme, echo=FALSE} +``` + +# good + +```{r load-theme, echo=FALSE} +``` +```` + +- Let your rmarkdown breathe. You should use blank lines to separate different elements to avoid ambiguity. +Ref: + + +```` +# bad ----------------- + +My line is right above my chunk. +```{r} +``` +# and the next section right below + +# good ----------------- + +There is a line between text and chunk. + +```{r} +``` + +# and the next section is separated by line as well +```` diff --git a/OSP_software_landscape.svg b/OSP_software_landscape.svg new file mode 100644 index 0000000..7f96182 --- /dev/null +++ b/OSP_software_landscape.svg @@ -0,0 +1 @@ +1PBPK modeling & simulation(PB)QSP modeling & simulationModeling Tools Excel® CSVNONMEM® Excel®PDFImport Export Qualification Framework OSP Model exchange format(PKML)Installation ValidatorCommand Line Interface (CLI)Validation/Automation Tools OSP Toolboxes / Interfaces R(statistical computing)Reporting EnginePlot-Library (TLF)PIR packagesPBPK: PB(QSP): TLF:PI:Physiologically based pharmacokinetic(Physiologically based) Quantitative systems pharmacology Tables, listings and figuresParameter identification CSVSBMLCSVJSON \ No newline at end of file diff --git a/README.md b/README.md index 803bd45..9d1f649 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -This open source Systems Pharmacology project makes formerly commercial software tools [PK-Sim®](http://www.open-systems-pharmacology.org/pk-sim) and [MoBi®](http://www.open-systems-pharmacology.org/mobi) available as freeware under the [GPLv2 License](LICENSE). All source code is public. +This open source Systems Pharmacology project makes formerly commercial software tools [PK-Sim®](#pk-sim) and [MoBi®](#mobi) available as freeware under the [GPLv2 License](LICENSE). All source code is public. Latest suite release can be found here: http://setup.open-systems-pharmacology.org @@ -11,16 +11,11 @@ Visit and subscribe to the [Open Systems Pharmacology Project Forum](http://foru # Open Systems Pharmacology Suite with PK-Sim® and MoBi® for Quantitative Systems Pharmacology ## Unmatched Flexibility - Unlimited Transparency -![platform concept](https://cloud.githubusercontent.com/assets/1041237/22481683/1df757ea-e7c4-11e6-8599-76428a7398ac.png) +![platform concept](OSP_software_landscape.svg) -The Open Systems Pharmacology Suite contains different software tools and has been designed -using a modular concept to allow efficient multi-scale modeling and simulation. -The overall platform with its various software tools is implemented in a modular way -as will be explained in more detail below. +The Open Systems Pharmacology Suite contains different software tools and has been designed using a modular concept to allow efficient multi-scale modeling and simulation. The overall platform with its various software tools is implemented in a modular way as will be explained in more detail below. The central software tools PK-Sim® and MoBi® make use of building blocks as introduced [here](https://docs.open-systems-pharmacology.org/open-systems-pharmacology-suite/modules-philsophy-building-blocks). -While PK-Sim® is based on a whole-body concept, -the focus of its counterpart, MoBi®, is at the molecular level. -However, both tools extend to additional physiological scales as illustrated. +While PK-Sim® is based on a whole-body concept, the focus of its counterpart, MoBi®, is at the molecular level. However, both tools extend to additional physiological scales as illustrated. ### PK-Sim [PK-Sim®](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation) is a comprehensive software tool for whole-body physiologically based pharmacokinetic modeling. It enables rapid access to all relevant anatomical and physiological parameters for humans and the most common laboratory animals (**mouse**, **rat**, **minipig**, **dog**, **monkey**, **beagle** and **rabbit**) that are contained in the integrated database. Moreover, access to different PBPK calculation methods to allow for fast and efficient model building and parameterization is provided. Relevant generic passive processes, such as distribution through blood flow as well as specific active processes such as metabolization by a certain enzyme are automatically taken into account by PK-Sim®. Like most PBPK modeling tools, PK-Sim® is designed for use by non-modeling experts and only allows for minor structural model modifications. Unlike most PBPK modeling tools though, PK-Sim® offers different model structures to choose from, e.g. to account for important differences between _small_ and _large_ molecules. More importantly, PK-Sim® is fully compatible with the expert modeling software tool MoBi®, thereby allowing full access to all model details including the option for extensive model modifications and extensions. This way customized systems pharmacology models may be set up to deal with the challenges of modern drug research and development. @@ -30,16 +25,47 @@ PK-Sim® uses building blocks that are grouped into [**Individuals**](https://do ### MoBi [MoBi®](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation) is a systems biology software tool for multiscale physiological modeling and simulation. Within the restrictions of ordinary differential equations, almost any kind of (biological) model can be imported or set up from scratch. Examples include biochemical reaction networks, compartmental disease progression models, or PBPK models. However, de novo development of a PBPK model, for example, is very cumbersome such that the preferred procedure is to import them from PK-Sim®. Importantly, MoBi® also allows for the combination of the described examples and thereby is a very powerful tool for modeling and simulation of multi-scale physiological systems covering molecular details on the one hand and whole-body architecture on the other hand. -De novo model establishment and simulation is supported by graphical tools and building blocks to support expert users. MoBi® uses building blocks that are grouped into [**Molecules**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#molecules), [**Reactions**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#reactions), [**Spatial Structures**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#spatial-structures), [**Passive Transports**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#transport-processes), [**Observers**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#observers), [**Events**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#events-and-applications), [**Molecule Start Values**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#molecule-start-values), [**Parameter Start Values**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#parameter-start-values) and [**Observed Data**](https://docs.open-systems-pharmacology.org/shared-tools-and-example-workflows/import-edit-observed-data). Building blocks out of the above-mentioned groups can be combined to [generate models](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/setting-up-simulation). The advantage of building blocks is that they can be reused. For example, a different set of starting values may define a new scenario, situation, or individual. Refine a Reaction(s) network and update it in all tissues where it should be considered. +De novo model establishment and simulation is supported by graphical tools and building blocks to support expert users. MoBi® uses building blocks that are grouped into [**Molecules**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#molecules), [**Reactions**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#reactions), [**Spatial Structures**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#spatial-structures), [**Passive Transports**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#transport-processes), [**Observers**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#observers), [**Events**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#events-and-applications), [**Molecule Start Values**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#molecule-start-values), [**Parameter Start Values**](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/model-building-components#parameter-start-values) and [**Observed Data**](https://docs.open-systems-pharmacology.org/shared-tools-and-example-workflows/import-edit-observed-data). Building blocks out of the above-mentioned groups can be combined to [generate models](https://docs.open-systems-pharmacology.org/working-with-mobi/mobi-documentation/setting-up-simulation). The advantage of building blocks is that they can be reused. Examples: -### Toolboxes for Matlab and R -The MoBi® toolboxes for [R](https://docs.open-systems-pharmacology.org/working-with-matlab-and-r/r-introduction) and [Matlab®](https://docs.open-systems-pharmacology.org/working-with-matlab-and-r/matlab-introduction) are interfaces to the common statistical and technical computing environments, respectively. Basically, the toolboxes can be used to access and modify model parameters as well as to execute simulations and retrieve results. That way, the toolboxes can be used to script or code batch simulations, analysis tasks, or customized workflows to any complexity. Results can be visualized using the options available in the respective environment. Apart from the communication and exchange via Matlab®, PK-Sim® and MoBi® have import and export functions that allow for the import of experimental data via MS Excel® and models based on SBML or the export of simulation results via MS Excel®, for example. +- a different set of starting values may define a new scenario, situation, or individual. +- refine a Reaction(s) network and update it in all tissues where it should be considered. + +### Qualification framework + +The qualification framework enables an automated validation of various scenarios (use-cases) supported by the OSP platform. This technical framework is used, for example, to release, in full confidence, a new version of the OSP Suite by verifying automatically that an ever-growing list of scenarios is performing as expected. Qualification framework is described in detail [here](https://docs.open-systems-pharmacology.org/shared-tools-and-example-workflows/qualification). + +### Validation and automation tools + +Validation and automation tools include for example: + +* **Installation Validator**: enables "1-Click" validation of the OSP Suite installation on a target computer. The validation is performed by execution of the predefined set of simulation scenarios and comparison of the simulated results with the (validated) reference values. +* **Command Line Interface** (*CLI*): allows batch processing of multiple projects in PK-Sim and is described in [Command Line Interface - CLI](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-command-line-interface). + +### R-packages + +The OSP software suite provides a set of packages for the R computing environment that allow scripted workflows with the models developed in PK-Sim® and MoBi®. + +- [ospsuite](https://github.com/Open-Systems-Pharmacology/OSPSuite-R) package provides the functionality of loading, manipulating, and simulating the simulations created in PK-Sim® and MoBi®. It also offers extended workflows such as parameter sensitivity or PK-parameter calculation. The package is described in detail in [R documentation](https://docs.open-systems-pharmacology.org/working-with-r/r-introduction). +- [tlf](https://github.com/Open-Systems-Pharmacology/TLF-Library) package offers a set of functions and methods for creating standardized reporting **T**ables, **L**istings, and **F**igures. +- [ospsuite.reportingengine](https://github.com/Open-Systems-Pharmacology/OSPSuite.ReportingEngine) for automated generating of model reports. +- [ospsuite.parameteridentification](https://github.com/Open-Systems-Pharmacology/OSPSuite.ParameterIdentification) provides the functionality of performing parameter identification (i.e., fitting the model to observed data) with simulations. The package is currently under development and everyone is encouraged to contribute. + +**OSP Qualification Framework and R packages are not included into the main OSP Suite setup and must be installed separately. Installation instructions are provided in the documentation of the tools or on the GitHub download site.** + +### OSP Model exchange format + +Models created in PK-Sim® or MoBi® can be exported in *PK Modeling Language* (***.pkml**) format and shared between the OSP tools. Internally, PKML file format is nothing more than XML with a predefined structure. + +### Import and Export + +Apart from the communication and exchange via R, PK-Sim® and MoBi® have import and export functions for MS Excel®, CSV and NONMEM® that allow for the import of experimental data or the export of simulation results, for example. MoBi® has SBML import functionalities. +PK-Sim can also import and export *project snapshots* in [JSON format](https://en.wikipedia.org/wiki/JSON) (s. [Exporting Project to Snapshot](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/importing-exporting-project-data-models#exporting-project-to-snapshot-loading-project-from-snapshot) for details). ## Code Status [![Setup status](https://ci.appveyor.com/api/projects/status/1p3m417amhra2gic/branch/develop?svg=true&passingText=Suite-Setup)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/suite/branch/develop) [![PK-Sim status](https://ci.appveyor.com/api/projects/status/65aa66s8aj2tcp45/branch/develop?svg=true&passingText=PK-Sim)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/pk-sim/branch/develop) [![MoBi status](https://ci.appveyor.com/api/projects/status/qgv5bpwys5snl7mk/branch/develop?svg=true&passingText=MoBi)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/mobi/branch/develop) -[![R status](https://ci.appveyor.com/api/projects/status/5ug50xlaot1x59jy/branch/develop?svg=true&passingText=R-Toolbox)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-r/branch/develop) +[![R status](https://ci.appveyor.com/api/projects/status/5ug50xlaot1x59jy/branch/develop?svg=true&passingText=ospsuite-r)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-r/branch/develop) [![Installation Validator status](https://ci.appveyor.com/api/projects/status/hffh219angc4svdh/branch/develop?svg=true&passingText=InstallationValidator)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/installationvalidator/branch/develop) @@ -58,7 +84,7 @@ How to install setups for the Open Systems Pharmacology Suite with PK-Sim® and #### OSP Suite Windows 7®, Windows 8®, Windows 10®, Windows Server 2008 R2®, Windows Server 2012 R2®, Windows Server 2016®, Windows Server 2019® -#### R-Toolbox +#### R packages All Windows operating systems listed above and Linux (_precompiled_ packages available for _Ubuntu 18.04_ and _CentOS 7_) @@ -72,8 +98,7 @@ Minimum: 2 GB RAM (3+ GB recommended) Minimum: 2 GB ### Optional Software - * Matlab® (version 2017b or later) - * R® (versions 3.5 / 3.6 - 64bit) + * R® (versions 3.x / 4.x - 64bit) ## Code of conduct Everyone interacting in the Open Systems Pharmacology community (codebases, issue trackers, chat rooms, mailing lists etc...) is expected to follow the Open Systems Pharmacology [code of conduct](https://github.com/Open-Systems-Pharmacology/Suite/blob/master/CODE_OF_CONDUCT.md). diff --git a/appveyor.yml b/appveyor.yml index 445c070..a84bc6b 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,4 +1,4 @@ -version: "9.1.{build}" +version: "10.0.{build}" install: - cmd: set PATH=C:\Ruby22\bin;%PATH% @@ -18,7 +18,7 @@ install: Copy-Item C:\MikTex.msi . -build_script: rake "create_setup[%APPVEYOR_BUILD_VERSION%, hotfix/v9.1]" +build_script: rake "create_setup[%APPVEYOR_BUILD_VERSION%]" artifacts: - path: "**/output/OSPSuite*.exe" diff --git a/figures/agg.jfif b/figures/agg.jfif new file mode 100644 index 0000000..795b22d Binary files /dev/null and b/figures/agg.jfif differ diff --git a/figures/blank.PNG b/figures/blank.PNG new file mode 100644 index 0000000..d08794d Binary files /dev/null and b/figures/blank.PNG differ diff --git a/figures/tinytex.jfif b/figures/tinytex.jfif new file mode 100644 index 0000000..d674bef Binary files /dev/null and b/figures/tinytex.jfif differ diff --git a/figures/utf8.jfif b/figures/utf8.jfif new file mode 100644 index 0000000..717827b Binary files /dev/null and b/figures/utf8.jfif differ diff --git a/validation and qualification/BatchComparison/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_13_02_18.pdf b/validation and qualification/BatchComparison/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_13_02_18.pdf deleted file mode 100644 index f413f1e..0000000 Binary files a/validation and qualification/BatchComparison/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_13_02_18.pdf and /dev/null differ diff --git a/validation and qualification/BatchComparison/Open Systems Pharmacology Suite 10 - Batch comparison_10_19_21_15_46_32.pdf b/validation and qualification/BatchComparison/Open Systems Pharmacology Suite 10 - Batch comparison_10_19_21_15_46_32.pdf new file mode 100644 index 0000000..fce960b Binary files /dev/null and b/validation and qualification/BatchComparison/Open Systems Pharmacology Suite 10 - Batch comparison_10_19_21_15_46_32.pdf differ diff --git a/validation and qualification/PlattformTest_Results/01_Win10_64bit_Eng_NoOffice/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_18_11_06.pdf b/validation and qualification/PlattformTest_Results/01_Win10_64bit_Eng_NoOffice/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_18_11_06.pdf deleted file mode 100644 index 957df35..0000000 Binary files a/validation and qualification/PlattformTest_Results/01_Win10_64bit_Eng_NoOffice/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_18_11_06.pdf and /dev/null differ diff --git a/validation and qualification/PlattformTest_Results/01_Win10_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_4_32_47.pdf b/validation and qualification/PlattformTest_Results/01_Win10_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_4_32_47.pdf new file mode 100644 index 0000000..bbce62e Binary files /dev/null and b/validation and qualification/PlattformTest_Results/01_Win10_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_4_32_47.pdf differ diff --git a/validation and qualification/PlattformTest_Results/02_Win7_64bit_Eng_Office2003_Full/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_13_15_31.pdf b/validation and qualification/PlattformTest_Results/02_Win7_64bit_Eng_Office2003_Full/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_13_15_31.pdf deleted file mode 100644 index 5b6a8d4..0000000 Binary files a/validation and qualification/PlattformTest_Results/02_Win7_64bit_Eng_Office2003_Full/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_13_15_31.pdf and /dev/null differ diff --git a/validation and qualification/PlattformTest_Results/04_Win2016-Server_64bit_Eng/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_0_05_45.pdf b/validation and qualification/PlattformTest_Results/02_WinServer2016_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_13_30_29.pdf similarity index 53% rename from validation and qualification/PlattformTest_Results/04_Win2016-Server_64bit_Eng/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_0_05_45.pdf rename to validation and qualification/PlattformTest_Results/02_WinServer2016_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_13_30_29.pdf index 65b7857..1da8d76 100644 Binary files a/validation and qualification/PlattformTest_Results/04_Win2016-Server_64bit_Eng/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_0_05_45.pdf and b/validation and qualification/PlattformTest_Results/02_WinServer2016_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_13_30_29.pdf differ diff --git a/validation and qualification/PlattformTest_Results/03_Win10_RU/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_14_39_19.pdf b/validation and qualification/PlattformTest_Results/03_Win10_RU/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_14_39_19.pdf new file mode 100644 index 0000000..938b6eb Binary files /dev/null and b/validation and qualification/PlattformTest_Results/03_Win10_RU/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_14_39_19.pdf differ diff --git a/validation and qualification/PlattformTest_Results/03_Win2012_Server_R2_64bit_Eng_No_Office/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_5_13_20.pdf b/validation and qualification/PlattformTest_Results/03_Win2012_Server_R2_64bit_Eng_No_Office/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_5_13_20.pdf deleted file mode 100644 index 61e7505..0000000 Binary files a/validation and qualification/PlattformTest_Results/03_Win2012_Server_R2_64bit_Eng_No_Office/Open Systems Pharmacology Suite - 9-Installation Validation_07_22_20_5_13_20.pdf and /dev/null differ diff --git a/validation and qualification/PlattformTest_Results/04_Win10_EN_OSPSuiteUpgradeFromV9.1/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_6_45_10.pdf b/validation and qualification/PlattformTest_Results/04_Win10_EN_OSPSuiteUpgradeFromV9.1/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_6_45_10.pdf new file mode 100644 index 0000000..8171133 Binary files /dev/null and b/validation and qualification/PlattformTest_Results/04_Win10_EN_OSPSuiteUpgradeFromV9.1/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_6_45_10.pdf differ diff --git a/validation and qualification/README.md b/validation and qualification/README.md index 4a4db7c..52f9b01 100644 --- a/validation and qualification/README.md +++ b/validation and qualification/README.md @@ -4,22 +4,24 @@ ### Unit and integration tests -* [PK-Sim](https://ci.appveyor.com/project/open-systems-pharmacology-ci/pk-sim/builds/34220842/tests) -* [MoBi](https://ci.appveyor.com/project/open-systems-pharmacology-ci/mobi/builds/33894172/tests) -* [Installation Validator](https://ci.appveyor.com/project/open-systems-pharmacology-ci/installationvalidator/builds/34225106/tests) -* [OSPSuite.Core](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-core/builds/33492251/tests) +* [PK-Sim](https://ci.appveyor.com/project/open-systems-pharmacology-ci/pk-sim/builds/41229114/tests) +* [MoBi](https://ci.appveyor.com/project/open-systems-pharmacology-ci/mobi/builds/41188331/tests) +* [Installation Validator](https://ci.appveyor.com/project/open-systems-pharmacology-ci/installationvalidator/builds/41188144/tests) +* [OSPSuite.Core]https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-core/builds/41187013/tests) * OSPSuite.SimModel - * [Windows](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-simmodel/builds/31428566/job/u044r6id42p0jwmg/tests) - * [Linux (Ubuntu 18.04)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-simmodel/builds/31428566/job/wyjatqic8i58g2cn/tests) + * [Windows](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-simmodel/builds/39797310/job/2lrvf7obk8bqincu/tests) + * [Linux (Ubuntu 18.04)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-simmodel/builds/39797310/job/vh9kuh3riquo9n0o/tests) * [OSPSuite.SimModel.Solver.CVODES](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-simmodel-solver-cvodes/builds/31394354/job/sijwuswr2abe3yk4/tests) * OSPSuite.FuncParser * [Windows](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-funcparser/builds/31401683/job/g74hurc205p70uo7/tests) * [Linux (Ubuntu 18.04)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-funcparser/builds/31401683/job/0u8h2vsjth3kr94h/tests) -* [OSPSuite.DataBinding.DevExpress](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-databinding-devexpress/builds/29420584/tests) +* [OSPSuite.DataBinding.DevExpress](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-databinding-devexpress/builds/34267279/tests) * [OSPSuite.DataBinding](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-databinding/builds/29419442/tests) * [OSPSuite.Utility](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-utility/builds/29194230/tests) * [OSPSuite.TeXReporting](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-texreporting/builds/28672332/tests) * [OSPSuite.Serializer](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-serializer/builds/25501936/tests) +* [Qualification Runner](https://ci.appveyor.com/project/open-systems-pharmacology-ci/qualificationrunner/builds/41188142/tests) +* [ospsuite R package](https://ci.appveyor.com/api/buildjobs/c7rdf26dvi6hw55c/artifacts/ospsuite.Rcheck%2Ftests%2Ftestthat.Rout) ### [Batch comparison tests](BatchComparison) diff --git a/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part1.pdf b/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part1.pdf new file mode 100644 index 0000000..040bc3c Binary files /dev/null and b/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part1.pdf differ diff --git a/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part2.pdf b/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part2.pdf new file mode 100644 index 0000000..cff48c2 Binary files /dev/null and b/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part2.pdf differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Populations.pdf b/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part3.pdf similarity index 50% rename from validation and qualification/Ranorex_Testcases/PKSim_9.0_Populations.pdf rename to validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part3.pdf index 90b5eaa..e7d586e 100644 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Populations.pdf and b/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part3.pdf differ diff --git a/validation and qualification/Ranorex_ProjectConversion/MoBi_9.0_ProjectConversionTests.pdf b/validation and qualification/Ranorex_ProjectConversion/MoBi_9.0_ProjectConversionTests.pdf deleted file mode 100644 index 1a348c7..0000000 Binary files a/validation and qualification/Ranorex_ProjectConversion/MoBi_9.0_ProjectConversionTests.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_ProjectConversion/PKSim_9.0_ProjectConversionTests.pdf b/validation and qualification/Ranorex_ProjectConversion/PKSim_9.0_ProjectConversionTests.pdf deleted file mode 100644 index 76e8ae8..0000000 Binary files a/validation and qualification/Ranorex_ProjectConversion/PKSim_9.0_ProjectConversionTests.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Create_Open_Save_Simulation.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Create_Open_Save_Simulation.pdf deleted file mode 100644 index caa60bf..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Create_Open_Save_Simulation.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Events.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Events.pdf deleted file mode 100644 index f6e5d15..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Events.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Favorites.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Favorites.pdf deleted file mode 100644 index 512092b..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Favorites.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Formulas.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Formulas.pdf deleted file mode 100644 index 4654874..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Formulas.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Molecules.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Molecules.pdf deleted file mode 100644 index 6b2176a..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Molecules.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Multiselect_of_ObservedData.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Multiselect_of_ObservedData.pdf deleted file mode 100644 index 68559d8..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Multiselect_of_ObservedData.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Observers.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Observers.pdf deleted file mode 100644 index 659569b..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Observers.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Parameters.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Parameters.pdf deleted file mode 100644 index 44498cd..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Parameters.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Passive_Transports.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Passive_Transports.pdf deleted file mode 100644 index 6578b06..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Passive_Transports.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Project_Menu.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Project_Menu.pdf deleted file mode 100644 index d5ba934..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Project_Menu.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Project_Settings.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Project_Settings.pdf deleted file mode 100644 index aef73a6..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Project_Settings.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Reactions.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Reactions.pdf deleted file mode 100644 index 3a019b9..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Reactions.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Simple_Kinetic_Model.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Simple_Kinetic_Model.pdf deleted file mode 100644 index 41c1432..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Simple_Kinetic_Model.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Spatial_Structure.pdf b/validation and qualification/Ranorex_Testcases/MoBi_9.0_Spatial_Structure.pdf deleted file mode 100644 index 77e45a1..0000000 Binary files a/validation and qualification/Ranorex_Testcases/MoBi_9.0_Spatial_Structure.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_AddSimulationInterval.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_AddSimulationInterval.pdf deleted file mode 100644 index d245efb..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_AddSimulationInterval.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ApplicationProtocols.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_ApplicationProtocols.pdf deleted file mode 100644 index 13fc65a..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ApplicationProtocols.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Building_Block_Comparison.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Building_Block_Comparison.pdf deleted file mode 100644 index 9b91553..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Building_Block_Comparison.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ComparisonCharts.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_ComparisonCharts.pdf deleted file mode 100644 index 1ad1e8d..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ComparisonCharts.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Compounds.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Compounds.pdf deleted file mode 100644 index 83f215e..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Compounds.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_DDI.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_DDI.pdf deleted file mode 100644 index 2178d8a..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_DDI.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Events_Formulations.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Events_Formulations.pdf deleted file mode 100644 index bfaeb3d..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Events_Formulations.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Individual_IndividualScaling.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Individual_IndividualScaling.pdf deleted file mode 100644 index d25caf4..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Individual_IndividualScaling.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Integration.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Integration.pdf deleted file mode 100644 index 53092dd..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Integration.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_LiverZonation.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_LiverZonation.pdf deleted file mode 100644 index 49872d7..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_LiverZonation.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ObservedData.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_ObservedData.pdf deleted file mode 100644 index 46a7733..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ObservedData.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Ontogeny_Import.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Ontogeny_Import.pdf deleted file mode 100644 index 0d1126b..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Ontogeny_Import.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_PKAnalysis.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_PKAnalysis.pdf deleted file mode 100644 index 3b02da3..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_PKAnalysis.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Parameters.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Parameters.pdf deleted file mode 100644 index f49c933..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Parameters.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Preterm.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Preterm.pdf deleted file mode 100644 index 7baa0e8..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Preterm.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Project.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Project.pdf deleted file mode 100644 index 9ea0137..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Project.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ProjectHistory.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_ProjectHistory.pdf deleted file mode 100644 index 197b724..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ProjectHistory.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ProteinExpression.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_ProteinExpression.pdf deleted file mode 100644 index 4ab3894..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_ProteinExpression.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Simulations.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_Simulations.pdf deleted file mode 100644 index c658ad2..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_Simulations.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex_Testcases/PKSim_9.0_TemplateDatabase.pdf b/validation and qualification/Ranorex_Testcases/PKSim_9.0_TemplateDatabase.pdf deleted file mode 100644 index 762aeb3..0000000 Binary files a/validation and qualification/Ranorex_Testcases/PKSim_9.0_TemplateDatabase.pdf and /dev/null differ diff --git a/versions.json b/versions.json new file mode 100644 index 0000000..2cb4457 --- /dev/null +++ b/versions.json @@ -0,0 +1,10 @@ +[ + { + "name": "PK-Sim", + "version": "10.0" + }, + { + "name": "MoBi", + "version": "10.0" + } +] diff --git a/versions.xml b/versions.xml index 353d5d1..5eb3662 100644 --- a/versions.xml +++ b/versions.xml @@ -1,9 +1,9 @@ - 9.1 + 10.0 - 9.1 + 10.0