diff --git a/CODING_STANDARDS.md b/CODING_STANDARDS.md index 24bfdff..2f3763c 100644 --- a/CODING_STANDARDS.md +++ b/CODING_STANDARDS.md @@ -1,43 +1,50 @@ # Visual Studio Settings -* Identation of 3 -* Use spaces instead of tabs -* If using Resharper, a Resharper settings file is available to format your code + +* Use indentation of 3. +* Use spaces instead of tabs. +* If using Resharper, make sure a Resharper settings file is available to format your code. # Naming Convention -Use meaningful and understandable names. Code should read as a story and only some well known abbreviations such as DTO, PK etc. should be used + +Use meaningful and understandable names. Code should read as a story and only some well known abbreviations such as DTO, PK etc. should be used. ## Classes and Methods -* Use **Pascal Casing** for class name `public class SomeClass` -* Use **Pascal Casing** for public and protected method name `public void SomeMethod()` -* Use **Camel Casing** for private method name ` private int somePrivateMethod()` + +* Use **Pascal Casing** for class name `public class SomeClass`. +* Use **Pascal Casing** for public and protected method name `public void SomeMethod()`. +* Use **Camel Casing** for private method name ` private int somePrivateMethod()`. * Prefix interface with I `public interface IMyInterface`. -* Suffix exception classes with Exception `public class SBSuiteException: Exception` +* Suffix exception classes with Exception `public class SBSuiteException: Exception`. ## Variables -* Prefix private/protected member variable with _ (underscore). `private int _parentContainerId` -* Use **ALL_CAPS Casing** for constant variables `public const double DEFAULT_PERCENTILE = 0.5;` -* Use “Camel Casing” for local variable names and method arguments (int ingredientNode...). + +* Prefix private/protected member variable with `_` (underscore): `private int _parentContainerId`. +* Use **ALL_CAPS Casing** for constant variables: `public const double DEFAULT_PERCENTILE = 0.5;`. +* Use **Camel Casing** for local variable names and method arguments: `int ingredientNode`. * All members variable should be declared at one place of a class definition. -* Prefer variables initialization at the point of declaration. -* Do not use public members. Use properties instead -* Do not use Hungarian notation (e.g. b for boolean, s for strings etc...) -* Except for program constants, never use global variables +* Prefer variables initialization at the point of declaration . +* Do not use public members. Use properties instead. +* Do not use Hungarian notation (e.g. b for boolean, s for strings etc.). +* Except for program constants, never use global variables. ## Comments + * Do not comment the obvious * 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... +* Do not generate comments automatically +* Do comment algorithm specifics. For example, why your loop starts at index 1 and not at 0. * 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 # Coding Style -* No hard coded strings and magic number should be used. Declare a constant instead -* Method with return values should not have side effects unless absolutely required -* Exit early instead of having nested if statements - instead of +* No hard coded strings and magic number should be used. Declare a constant instead. +* Method with return values should not have side effects unless absolutely required. +* Exit early instead of having nested if statements. + + For example, instead of + ``` public void UpdateValue(bool isVisible, bool isEditable, double value) { @@ -51,6 +58,7 @@ Use meaningful and understandable names. Code should read as a story and only so } ``` use + ``` public void UpdateValue(bool isVisible, bool isEditable, double value) { @@ -60,13 +68,8 @@ Use meaningful and understandable names. Code should read as a story and only so _value = value; } ``` -* Do not write **if** statements in one line -* Do not write **for** and **forEach** statements in one line -* Always use block `{}` for **for** and **forEach** statements -* Always have a default case for switch statement, potentially throwing an exception if the default is unreachable - - - - - +* Do not write `if` statements in one line. +* Do not write `for` and `forEach` statements in one line. +* Always use block `{}` for `for` and `forEach` statements. +* Always have a default case for `switch` statement, potentially throwing an exception if the default is unreachable. diff --git a/CODING_STANDARDS_R.md b/CODING_STANDARDS_R.md index 6548522..fad3fdb 100644 --- a/CODING_STANDARDS_R.md +++ b/CODING_STANDARDS_R.md @@ -2,8 +2,8 @@ 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) +- [`{styler}`](http://styler.r-lib.org/) +- [`{lintr}`](https://github.com/jimhester/lintr) This coding standards will outline the more important aspects of the aforementioned style. @@ -35,10 +35,9 @@ This coding standards will outline the more important aspects of the aforementio drawing - # Naming Convention -Use meaningful and understandable names. Code should read as a story and only some well known abbreviations (such as pk) 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 @@ -83,11 +82,11 @@ 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 using `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 explicitly returning result, although you can rely on R to implicitly return the result of the last evaluated expression in a function. ## Comments @@ -102,27 +101,43 @@ Prefer using `return()` for returning result. You can rely on R to return the re ## Documentation -- Use 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`. +- Do not include empty lines between the function code and its documentation. -- Prefer to use `markdown` syntax to write roxygen documentation (e.g. use `**` instead of `\bold{}`). +```r +# Good +#' @export +weekend <- list("Saturday", "Sunday") + +# Bad +#' @export + +weekend <- list("Saturday", "Sunday") +``` + +- Internal functions, if documented, should use the tag `#' @keywords internal`. This makes sure that package websites don't include these internal functions. + +- Prefer using `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**) +- Function names as code with parentheses (good: `dplyr::mutate()`, `mutate()`; bad: *mutate*, **mutate**) +- Variable and (`R6`/`S3`/`S4`) object names as code (good: `x`; bad: x, *x*, **x**) - Package names as code with `{` (good: `{dplyr}`; bad: `dplyr`, *dplyr*, **dplyr**) - Programming language names as code (e.g. `markdown`, `C++`) +Note that these conventions are adopted to facilitate (auto-generated) cross-linking in `{pkgdown}` websites. + ### Documenting functions ### Documenting classes -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. +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 #' This is my Person class @@ -156,6 +171,10 @@ Person <- R6::R6Class("Person", ) ``` +When referring to the class property (`$name`) or method (`$set_hair()`) in package vignettes, use the `$` sign to highlight that they belong to an object. Note that the method always has parentheses to distinguish it from a property. + +If a class has a private method, its name should start with `.` to highlight this (e.g. `$.set_hair_color()`). + # Syntax ## Spacing @@ -172,7 +191,7 @@ Use the `styler` addin for RStudio. It will style the files for you. For more, s ### Long Lines -Strive to limit your code to 80 characters per line. +Strive to limit your code (including comments and roxygen documentation) to 80 characters per line. ### Assignments @@ -182,7 +201,7 @@ Use `<-`, not `=`, for assignment. 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 @@ -194,7 +213,7 @@ Don't put `;` at the end of a line, and don't use `;` to put multiple commands o - 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**. -``` +```r # Good y <- 10 x <- if (y < 20) "Too low" else "Too high" @@ -259,3 +278,21 @@ There is a line between text and chunk. # and the next section is separated by line as well ```` + +# File naming + +File names containing both source code (`/R`) and tests (`/tests`) should follow the kebab-case naming convention. + +```r +# bad +DataCombined.R +test-DataCombined.R + +# good +data-combined.R +test-data-combined.R +``` + +# See also + +A more comprehensive list of tools helpful for package development can be found in this [resource](https://github.com/IndrajeetPatil/awesome-r-pkgtools/blob/master/README.md). diff --git a/GIT_WORKFLOW.md b/GIT_WORKFLOW.md index 562e3c7..87f93ad 100644 --- a/GIT_WORKFLOW.md +++ b/GIT_WORKFLOW.md @@ -18,7 +18,7 @@ We will use `git rebase` for all other type of code integration (sub tasks of a # Use Case: Implementing Task "426 it should be possible to delete observed data" _Note:_ A task is a cohesive unit of work. This can be part of a bigger feature or a bug fix. We assume that a fork of the repository has already been created. -1. Create a `feature` branch with a **meaningful name** containing the id of the task. We will need to acquire the latest changes from the remote `develop` branch first and then create the feature branch +1. Create a `feature` branch with a **meaningful name**, **starting with the id of the task**. We will need to acquire the latest changes from the remote `develop` branch first and then create the feature branch * With option git pull -rebase = preserve ``` git checkout develop diff --git a/OSP software landscape.pptx b/OSP software landscape.pptx new file mode 100644 index 0000000..fd7bc17 Binary files /dev/null and b/OSP software landscape.pptx differ diff --git a/README.md b/README.md index 9d1f649..b106fd0 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,10 @@ This open source Systems Pharmacology project makes formerly commercial software Latest suite release can be found here: http://setup.open-systems-pharmacology.org -We invite everyone in the field of Systems Pharmacology, be it in academia, industry or regulatory bodies, to use the platform. Active participation of computer and modeling & simulation scientists in the further development of the modeling & simulation platform, the incorporated systems models, processes for their qualifaction and application etc. is encouraged and highly welcome! Please follow the community’s activities in this GitHub project. +We invite everyone in the field of Systems Pharmacology, be it in academia, industry or regulatory bodies, to use the platform. Active participation of computer and modeling & simulation scientists in the further development of the modeling & simulation platform, the incorporated systems models, processes for their qualification and application etc. is encouraged and highly welcome! Please follow the community’s activities in this GitHub project. # Discussion forum for the Open Systems Pharmacology Project + Visit and subscribe to the [Open Systems Pharmacology Project Forum](http://forum.open-systems-pharmacology.org) to stay up-to-date with the community and receive updates on new software releases, models as well as discussions. # Open Systems Pharmacology Suite with PK-Sim® and MoBi® for Quantitative Systems Pharmacology @@ -18,12 +19,14 @@ The central software tools PK-Sim® and MoBi® make use of building blocks as in 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. -PK-Sim® uses building blocks that are grouped into [**Individuals**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-creating-individuals), [**Populations**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-creating-populations), [**Compounds**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-compounds-definition-and-work-flow), [**Formulations**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-formulations), [**Administration Protocols**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-administration-protocols), [**Events**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-events), **Observers** and [**Observed Data**](https://docs.open-systems-pharmacology.org/shared-tools-and-example-workflows/import-edit-observed-data). Building blocks from these groups are combined to produce a [model](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-simulations). The advantage of building blocks is that they can be reused. For example, after having established a model for a drug after single dose intravenous administration to an animal species, just substitute the individual by a suitably parameterized virtual human population and obtain a first in man simulation model. Further substitute the formulation, to obtain a controlled-release per oral simulation model, substitute the protocol to obtain a multiple dose simulation model, or substitute the compound to obtain a simulation model for another drug. +[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. + +PK-Sim® uses building blocks that are grouped into [**Individuals**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-creating-individuals), [**Populations**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-creating-populations), [**Expression Profiles**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-expression-profile), [**Compounds**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-compounds-definition-and-work-flow), [**Formulations**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-formulations), [**Administration Protocols**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-administration-protocols), [**Events**](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-events), **Observers** and [**Observed Data**](https://docs.open-systems-pharmacology.org/shared-tools-and-example-workflows/import-edit-observed-data). Building blocks from these groups are combined to produce a [model](https://docs.open-systems-pharmacology.org/working-with-pk-sim/pk-sim-documentation/pk-sim-simulations). The advantage of building blocks is that they can be reused. For example, after having established a model for a drug after single dose intravenous administration to an animal species, just substitute the individual by a suitably parameterized virtual human population and obtain a first in man simulation model. Further substitute the formulation, to obtain a controlled-release per oral simulation model, substitute the protocol to obtain a multiple dose simulation model, or substitute the compound to obtain a simulation model for another drug. ### 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. + +[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, the 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 multiscale 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. Examples: @@ -47,10 +50,11 @@ The OSP software suite provides a set of packages for the R computing environmen - [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. +- [ospsuite.reportingengine](https://github.com/Open-Systems-Pharmacology/OSPSuite.ReportingEngine) for automated generation of model reports. +- [ospsuite.utils](https://github.com/open-systems-pharmacology/OSPSuite.RUtils) provides a collection of utility functions useful for R packages in the OSP ecosystem. +- [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 Qualification Framework and R packages are not included in 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 @@ -62,6 +66,7 @@ Apart from the communication and exchange via R, PK-Sim® and MoBi® have import 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) @@ -71,7 +76,7 @@ PK-Sim can also import and export *project snapshots* in [JSON format](https://e ## Software installation -How to install setups for the Open Systems Pharmacology Suite with PK-Sim® and MoBi® +Installing the Open Systems Pharmacology Suite with PK-Sim® and MoBi® involves following steps: 1. Download the [Software Setup](http://setup.open-systems-pharmacology.org) and install it on your computer. Make sure you are provided with administrator rights; these are required! 1. Download [PK-Sim Gene Expression Database(s)](http://setup.open-systems-pharmacology.org) and copy to a folder accessible for all users. @@ -82,7 +87,8 @@ How to install setups for the Open Systems Pharmacology Suite with PK-Sim® and ### Operating Systems (64 bit only) #### OSP Suite -Windows 7®, Windows 8®, Windows 10®, Windows Server 2008 R2®, Windows Server 2012 R2®, Windows Server 2016®, Windows Server 2019® + +Windows 7®, Windows 8®, Windows 10®, Windows 11®, Windows Server 2008 R2®, Windows Server 2012 R2®, Windows Server 2016®, Windows Server 2019® #### R packages @@ -101,9 +107,11 @@ Minimum: 2 GB * 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). + +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). ## Contribution -We encourage contribution to the Open Systems Pharmacology community. Before getting started please read the [contribution guidelines](https://github.com/Open-Systems-Pharmacology/Suite/blob/master/CONTRIBUTING.md). If you are contributing code, please be familiar with the [coding standards](https://github.com/Open-Systems-Pharmacology/Suite/blob/master/CODING_STANDARDS.md). + +We encourage contribution to the Open Systems Pharmacology community. Before getting started, please read the [contribution guidelines](https://github.com/Open-Systems-Pharmacology/Suite/blob/master/CONTRIBUTING.md). If you are contributing code, please be familiar with the [coding standards](https://github.com/Open-Systems-Pharmacology/Suite/blob/master/CODING_STANDARDS.md). All trademarks within this document belong to their legitimate owners. diff --git a/appveyor.yml b/appveyor.yml index a84bc6b..279196c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,4 +1,7 @@ -version: "10.0.{build}" +version: '{build}' + +init: +- ps: Update-AppveyorBuild -Version "$($env:ospsuite_version).$($env:appveyor_build_version)" install: - cmd: set PATH=C:\Ruby22\bin;%PATH% diff --git a/validation and qualification/BatchComparison/Open Systems Pharmacology Suite - 11-Installation Validation_05_20_22_14_22_13.pdf b/validation and qualification/BatchComparison/Open Systems Pharmacology Suite - 11-Installation Validation_05_20_22_14_22_13.pdf new file mode 100644 index 0000000..751c172 Binary files /dev/null and b/validation and qualification/BatchComparison/Open Systems Pharmacology Suite - 11-Installation Validation_05_20_22_14_22_13.pdf 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 deleted file mode 100644 index fce960b..0000000 Binary files a/validation and qualification/BatchComparison/Open Systems Pharmacology Suite 10 - Batch comparison_10_19_21_15_46_32.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 deleted file mode 100644 index bbce62e..0000000 Binary files a/validation and qualification/PlattformTest_Results/01_Win10_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_4_32_47.pdf and /dev/null differ diff --git a/validation and qualification/PlattformTest_Results/01_Win10_EN/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_11_22_27.pdf b/validation and qualification/PlattformTest_Results/01_Win10_EN/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_11_22_27.pdf new file mode 100644 index 0000000..50b78fd Binary files /dev/null and b/validation and qualification/PlattformTest_Results/01_Win10_EN/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_11_22_27.pdf differ diff --git a/validation and qualification/PlattformTest_Results/02_WinServer2016_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_13_30_29.pdf b/validation and qualification/PlattformTest_Results/02_WinServer2016_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_13_30_29.pdf deleted file mode 100644 index 1da8d76..0000000 Binary files a/validation and qualification/PlattformTest_Results/02_WinServer2016_EN/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_13_30_29.pdf and /dev/null differ diff --git a/validation and qualification/PlattformTest_Results/02_WinServer2016_EN_UpgradeFrom_V10/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_22_30_56.pdf b/validation and qualification/PlattformTest_Results/02_WinServer2016_EN_UpgradeFrom_V10/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_22_30_56.pdf new file mode 100644 index 0000000..ecfa1cb Binary files /dev/null and b/validation and qualification/PlattformTest_Results/02_WinServer2016_EN_UpgradeFrom_V10/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_22_30_56.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 deleted file mode 100644 index 938b6eb..0000000 Binary files a/validation and qualification/PlattformTest_Results/03_Win10_RU/Open Systems Pharmacology Suite - 10-Installation Validation_10_21_21_14_39_19.pdf and /dev/null differ diff --git a/validation and qualification/PlattformTest_Results/03_Win2019_Server/Open Systems Pharmacology Suite - 11-Installation Validation_05_20_22_11_02_45.pdf b/validation and qualification/PlattformTest_Results/03_Win2019_Server/Open Systems Pharmacology Suite - 11-Installation Validation_05_20_22_11_02_45.pdf new file mode 100644 index 0000000..b32cb12 Binary files /dev/null and b/validation and qualification/PlattformTest_Results/03_Win2019_Server/Open Systems Pharmacology Suite - 11-Installation Validation_05_20_22_11_02_45.pdf 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 deleted file mode 100644 index 8171133..0000000 Binary files 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 and /dev/null differ diff --git a/validation and qualification/PlattformTest_Results/05_Win11_Japanese/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_16_43_40.pdf b/validation and qualification/PlattformTest_Results/05_Win11_Japanese/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_16_43_40.pdf new file mode 100644 index 0000000..65efc2d Binary files /dev/null and b/validation and qualification/PlattformTest_Results/05_Win11_Japanese/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_16_43_40.pdf differ diff --git a/validation and qualification/PlattformTest_Results/07_Win11_EN/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_16_38_14.pdf b/validation and qualification/PlattformTest_Results/07_Win11_EN/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_16_38_14.pdf new file mode 100644 index 0000000..9e4528f Binary files /dev/null and b/validation and qualification/PlattformTest_Results/07_Win11_EN/Open Systems Pharmacology Suite - 11-Installation Validation_05_19_22_16_38_14.pdf differ diff --git a/validation and qualification/README.md b/validation and qualification/README.md index 52f9b01..aafded2 100644 --- a/validation and qualification/README.md +++ b/validation and qualification/README.md @@ -4,31 +4,24 @@ ### Unit and integration 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) +* [PK-Sim](https://ci.appveyor.com/project/open-systems-pharmacology-ci/pk-sim/builds/43593881/tests) +* [MoBi](https://ci.appveyor.com/project/open-systems-pharmacology-ci/mobi/builds/43593882/tests) +* [Installation Validator](https://ci.appveyor.com/project/open-systems-pharmacology-ci/installationvalidator/builds/43564003/tests) +* [OSPSuite.Core](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-core/builds/43424699/artifacts) * OSPSuite.SimModel - * [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) + * [Windows](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-simmodel/builds/43388528/job/d7b55q4exadqphe8/tests) + * [Linux (Ubuntu 18.04)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-simmodel/builds/43388528/job/40ygje78swtiu0ct/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/34267279/tests) + * [Windows](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-funcparser/builds/43088580/job/36g2ob933pbt42ch/tests) + * [Linux (Ubuntu 18.04)](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-funcparser/builds/43088580/job/sqt7xgowd96b4dkf/tests) +* [OSPSuite.DataBinding.DevExpress](https://ci.appveyor.com/project/open-systems-pharmacology-ci/ospsuite-databinding-devexpress/builds/42031208/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) -### [UI tests](Ranorex_Testcases) - -### [Project conversion tests](Ranorex_ProjectConversion) - ### [Platform tests](PlattformTest_Results) - diff --git a/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part1.pdf b/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part1.pdf deleted file mode 100644 index 040bc3c..0000000 Binary files a/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part1.pdf and /dev/null 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 deleted file mode 100644 index cff48c2..0000000 Binary files a/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part2.pdf and /dev/null differ diff --git a/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part3.pdf b/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part3.pdf deleted file mode 100644 index e7d586e..0000000 Binary files a/validation and qualification/Ranorex(UI)_IntegrationTests/Ranorex_IntegrationTests_Part3.pdf and /dev/null differ diff --git a/versions.json b/versions.json index 2cb4457..6e72184 100644 --- a/versions.json +++ b/versions.json @@ -1,10 +1,14 @@ [ { "name": "PK-Sim", - "version": "10.0" + "version": "11.0" }, { "name": "MoBi", - "version": "10.0" + "version": "11.0" + }, + { + "name": "BuildingBlockTemplates", + "version": "1.0" } ] diff --git a/versions.xml b/versions.xml index 5eb3662..2745919 100644 --- a/versions.xml +++ b/versions.xml @@ -1,9 +1,9 @@ - 10.0 + 11.0 - 10.0 + 11.0