Skip to content

Commit

Permalink
Merge pull request #1254 from ApexAI/iox-#743-set-links-to-v2-0-0
Browse files Browse the repository at this point in the history
iox-#743 Set all documentation links to `v2.0.0`
  • Loading branch information
FerdinandSpitzschnueffler authored Mar 11, 2022
2 parents f030ed9 + 91dd909 commit e759b4d
Show file tree
Hide file tree
Showing 37 changed files with 126 additions and 124 deletions.
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ Please make sure you have:
7. You open your pull request towards the base branch `master`
8. Link the pull request to the according GitHub issue and set the label accordingly

**NOTE:** For support while developing you can use little helper scripts, see [git-hooks](https://github.com/eclipse-iceoryx/iceoryx/blob/master/tools/git-hooks/Readme.md).
**NOTE:** For support while developing you can use little helper scripts, see [git-hooks](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/tools/git-hooks/Readme.md).

## Branching strategy

Expand Down Expand Up @@ -115,7 +115,7 @@ codebase follows these rules, things are work in progress.
shall not be propagated via an `iox::cxx::expected`
9) **Not more than two-level nested namespaces**, three-level nested namespace can be used sparsely

See [error-handling.md](https://github.com/eclipse-iceoryx/iceoryx/blob/master/doc/design/error-handling.md) for additional
See [error-handling.md](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/doc/design/error-handling.md) for additional
information about logging and error handling.

### Naming conventions
Expand Down
2 changes: 1 addition & 1 deletion NOTICE.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ The project maintains the following source code repositories:
## Third-party Dependencies

This project leverages the following third party content.
The corresponding license files can be found at <https://github.com/eclipse-iceoryx/iceoryx/tree/master/doc/3rd_party_licenses> or in the folder `share/doc/iceoryx/3rd_party_licenses` of your local iceoryx installation.
The corresponding license files can be found at <https://github.com/eclipse-iceoryx/iceoryx/tree/v2.0.0/doc/3rd_party_licenses> or in the folder `share/doc/iceoryx/3rd_party_licenses` of your local iceoryx installation.

### System Libraries

Expand Down
42 changes: 21 additions & 21 deletions QUALITY_DECLARATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ The packages `iceoryx_hoofs`, `iceoryx_posh` and `iceoryx_binding_c` claim to be

Below are the rationales, notes, and caveats for this claim, organized by each requirement listed in the [Package Requirements for Quality Level 2 in REP-2004](https://www.ros.org/reps/rep-2004.html).

See the [Readme](https://github.com/eclipse-iceoryx/iceoryx#quality-levels--platforms) for a full list of the quality levels of iceoryx components and [Contributing Guide](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#quality-levels) for a description of the quality levels.
See the [Readme](https://github.com/eclipse-iceoryx/iceoryx#quality-levels--platforms) for a full list of the quality levels of iceoryx components and [Contributing Guide](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#quality-levels) for a description of the quality levels.

## Version Policy [1]

Expand All @@ -17,13 +17,13 @@ Changes for MINOR releases are API compatible and ideally ABI stable if not clea

A similar format is prescribed by the Eclipse Foundation in the [Release Handbook](https://www.eclipse.org/projects/handbook/#release).

On Git, the tags have a `v` prefix before the version numbers. A [release script](https://github.com/eclipse-iceoryx/iceoryx/blob/master/tools/scripts/iceoryx_release.sh) shall ensure that version numbers are kept consistent for all packages.
On Git, the tags have a `v` prefix before the version numbers. A [release script](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/tools/scripts/iceoryx_release.sh) shall ensure that version numbers are kept consistent for all packages.

### Version Stability [1.ii]

Since release `1.0.0` iceoryx is at a stable version, i.e. `>= 1.0.0`. The latest valid release can be found on the [release page](https://github.com/eclipse-iceoryx/iceoryx/releases) of iceoryx.

The change history can be found in the [release notes section](https://iceoryx.io/latest/release-notes).
The change history can be found in the [release notes section](https://iceoryx.io/v2.0.0/release-notes).

### Public API Declaration [1.iii]

Expand Down Expand Up @@ -55,8 +55,8 @@ It is planned to build and test the changes on the ROS CI for early detection of

### Change Requests [2.i]

All changes in the codebase require a Pull-Request. It is mandatory to link the Pull-Request to a corresponding [issue ticket](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#feature-request-and-bugs) on GitHub to ensure traceability.
The contributor and reviewer are required to fill out a [Pull-Request Template](https://github.com/eclipse-iceoryx/iceoryx/blob/master/.github/PULL_REQUEST_TEMPLATE.md) before merging.
All changes in the codebase require a Pull-Request. It is mandatory to link the Pull-Request to a corresponding [issue ticket](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#feature-request-and-bugs) on GitHub to ensure traceability.
The contributor and reviewer are required to fill out a [Pull-Request Template](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/.github/PULL_REQUEST_TEMPLATE.md) before merging.

### Contributor Origin [2.ii]

Expand Down Expand Up @@ -89,13 +89,13 @@ It is required to create/modify the Doxygen/design and user documentation within

### Feature Documentation [3.i]

The documentation of the main iceoryx features (sending, receiving data) can be found in the [overview](https://iceoryx.io/latest/getting-started/overview/) and [iceoryx examples](https://iceoryx.io/latest/getting-started/examples/) including a user-friendly description on how to use the iceoryx API.
The [configuration guide](https://iceoryx.io/latest/advanced/configuration-guide/) completes the documentation on how to use iceoryx.
The documentation of the main iceoryx features (sending, receiving data) can be found in the [overview](https://iceoryx.io/v2.0.0/getting-started/overview/) and [iceoryx examples](https://iceoryx.io/v2.0.0/getting-started/examples/) including a user-friendly description on how to use the iceoryx API.
The [configuration guide](https://iceoryx.io/v2.0.0/advanced/configuration-guide/) completes the documentation on how to use iceoryx.

Detailed technical documentation about iceoryx features can be found in the [design document](https://github.com/eclipse-iceoryx/iceoryx/tree/master/doc/design) section with descriptions and diagrams about internal mechanisms of iceoryx.
Detailed technical documentation about iceoryx features can be found in the [design document](https://github.com/eclipse-iceoryx/iceoryx/tree/v2.0.0/doc/design) section with descriptions and diagrams about internal mechanisms of iceoryx.

For new features, it is recommended to first create a design document, see the [Contribution Guidelines](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#feature-request-and-bugs) for more information.
Diagrams in feature descriptions need to be consistently generated with [PlantUML](https://github.com/eclipse-iceoryx/iceoryx/tree/master/doc/design#design-documents).
For new features, it is recommended to first create a design document, see the [Contribution Guidelines](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#feature-request-and-bugs) for more information.
Diagrams in feature descriptions need to be consistently generated with [PlantUML](https://github.com/eclipse-iceoryx/iceoryx/tree/v2.0.0/doc/design#design-documents).

Currently there is ongoing work to complete the documentation of existing features to reach quality level 1.

Expand All @@ -106,32 +106,32 @@ The public API is documented in form of Doxygen comments and available as API re
### License [3.iii]

The license for Eclipse iceoryx is the Apache License 2.0, and each code file includes a license statement.
The full license text is available in the [`LICENSE`](https://github.com/eclipse-iceoryx/iceoryx/blob/master/LICENSE) file.
The project includes a [`NOTICE`](https://github.com/eclipse-iceoryx/iceoryx/blob/master/NOTICE.md) with links to more information about these licenses.
The full license text is available in the [`LICENSE`](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/LICENSE) file.
The project includes a [`NOTICE`](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/NOTICE.md) with links to more information about these licenses.

There is some third-party content included with Eclipse iceoryx which is licensed as MIT or New BSD.
Details can also be found in the included [`NOTICE`](https://github.com/eclipse-iceoryx/iceoryx/blob/master/NOTICE.md#third-party-dependencies) document.
Details can also be found in the included [`NOTICE`](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/NOTICE.md#third-party-dependencies) document.

### Copyright Statement [3.iv]

Each source code file in Eclipse iceoryx has a copyright header that needs to follow this [style](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#header).
Each source code file in Eclipse iceoryx has a copyright header that needs to follow this [style](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#header).

A CI job ensures by checking with `ament_copyright` that all files comply with this rule.

## Testing [4]

Every iceoryx package has a `test` folder that contains subfolders for [module- and/or integrationtests](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#testing) written based on the Google test framework. All tests are running on the CI for every Pull-Request for all supported platforms and are contained in the master branch.
Every iceoryx package has a `test` folder that contains subfolders for [module- and/or integrationtests](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#testing) written based on the Google test framework. All tests are running on the CI for every Pull-Request for all supported platforms and are contained in the master branch.
Currently, due to limited support on Windows, there are some exclusions for testing on the CI.

### Feature Testing [4.i]

The features of iceoryx are tested in the [iceoryx_integrationtest](https://github.com/eclipse-iceoryx/iceoryx/tree/master/iceoryx_integrationtest) package. Using `launch_test`, tests are executed on system-level to ensure that the iceoryx packages are functional and the Public API works according to specification.
The features of iceoryx are tested in the [iceoryx_integrationtest](https://github.com/eclipse-iceoryx/iceoryx/tree/v2.0.0/iceoryx_integrationtest) package. Using `launch_test`, tests are executed on system-level to ensure that the iceoryx packages are functional and the Public API works according to specification.
There is continuous effort to cover the corner cases in the usage of iceoryx in test-cases.

### Public API Testing [4.ii]

All tests are executed for every major feature. New features must provide unit and integration tests that cover the code changes in the Pull-Request. The tests reside in separated folders for every package following a defined structure and naming convention.
The features are tested at module(unit) -integration and system test level. The [guidelines](https://iceoryx.io/latest/advanced/best-practice-for-testing/) for Contributors ensure a high quality of test development.
The features are tested at module(unit) -integration and system test level. The [guidelines](https://iceoryx.io/v2.0.0/advanced/best-practice-for-testing/) for Contributors ensure a high quality of test development.

### Coverage [4.iii]

Expand All @@ -142,14 +142,14 @@ The Eclipse iceoryx project use [gcov](https://gcc.gnu.org/onlinedocs/gcc/Gcov.h
- Branch Coverage

The coverage results of every Pull-Request and master branch are publicly available on [codecov.io](https://app.codecov.io/gh/eclipse-iceoryx/iceoryx).
A detailed report (e.g. the coverage in different packages) can be obtained by following [this](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#coverage-scan) guide.
A detailed report (e.g. the coverage in different packages) can be obtained by following [this](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#coverage-scan) guide.

### Performance [4.iv]

The most important measurement units for performance testing on iceoryx are the data transfer latency and the CPU load incurred by passing data.
They can be obtained in two ways:

1. [iceperf](https://github.com/eclipse-iceoryx/iceoryx/tree/master/iceoryx_examples/iceperf#iceperf)
1. [iceperf](https://github.com/eclipse-iceoryx/iceoryx/tree/v2.0.0/iceoryx_examples/iceperf#iceperf)
This performance test uses the iceoryx API directly without any indirections to compare different IPC mechanisms on increasing payload sizes.
The output is a table showing various payload sizes with their corresponding latency in microseconds.

Expand All @@ -162,10 +162,10 @@ Currently, there are no automatic regression tests in the CI running. The work t

### Linters and Static Analysis [4.v]

The code formatting is enforced through the CI using `clang-format` and can be used by following this [guide](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#coding-style)
The code formatting is enforced through the CI using `clang-format` and can be used by following this [guide](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#coding-style)

The codebase is checked with `clang-tidy` to enforce naming conventions and basic coding rules and checked in the Pull-Requests by review.
A [static code analysis](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#static-code-analysis) is done regularly with the Axivion Suite, but the results are not publicly accessible due to licensing.
A [static code analysis](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#static-code-analysis) is done regularly with the Axivion Suite, but the results are not publicly accessible due to licensing.

## Dependencies [5]

Expand Down
2 changes: 1 addition & 1 deletion doc/aspice_swe3_4/swe_docu_guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ Generally, you will not find any Doxygen file in our repo because we let CMake g
In [Cmake](CMakeLists.txt) is the command `doxygen_add_docs` which does the job.
There, we are also setting some parameters and the aliases for the custom tags. Aliases with an `xrefitem` create a page where all occurrences of the corresponding tag are collected.
### file header
Please see [Header](https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md#header).
Please see [Header](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/CONTRIBUTING.md#header).

### Include guards
Every header and inl file needs to have an include guard. Pragma once is not allowed.
Expand Down
2 changes: 1 addition & 1 deletion doc/design/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ A good online-editor with cheat-sheet can be found at [https://plantuml-editor.k
Alternatively you can use extensions in your IDE.

The integration of the generated PlantUML into your design documents is done via *.svg files.
You need to create a .puml file and export it to .svg afterwards for linking it with the markdown. In the `tools` folder is a [helper script](https://github.com/eclipse-iceoryx/iceoryx/blob/master/tools/scripts/generate_plantuml_svg.sh) provided which downloads a defined version of PlantUML to export the vector graphics.
You need to create a .puml file and export it to .svg afterwards for linking it with the markdown. In the `tools` folder is a [helper script](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/tools/scripts/generate_plantuml_svg.sh) provided which downloads a defined version of PlantUML to export the vector graphics.
These steps are necessary due to the current support of PlantUML in [Github](https://github.community/t/support-uml-diagrams-in-markdown-with-plantuml-syntax/626).

**NOTE:** Don't set parameter for theming (like background color) directly in individual puml files but use the central `doc/iceoryx-plantuml-config.puml` which is shared with all diagrams.
Expand Down
2 changes: 1 addition & 1 deletion doc/shared-memory-communication.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ The number of segments used by an iceoryx system, along with the configuration o
provided to the system via configuration.

The configuration can be provided at compile time (as a header) or at runtime (as a toml-formatted text file).
See the [configuration guide](https://github.com/eclipse-iceoryx/iceoryx/blob/master/doc/website/advanced/configuration-guide.md#configuring-mempools-for-roudi) for more details.
See the [configuration guide](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/doc/website/advanced/configuration-guide.md#configuring-mempools-for-roudi) for more details.

## Zero-copy communication

Expand Down
1 change: 0 additions & 1 deletion doc/website/.pages
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,3 @@ nav:
- FAQ.md
- advanced
- release-notes
- API-reference
4 changes: 2 additions & 2 deletions doc/website/FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ In this document are tips and hints documented which can help for troubleshootin

## Does iceoryx run in a docker environment

Yes. Take a look at the [icedocker example](https://github.com/eclipse-iceoryx/iceoryx/blob/master/iceoryx_examples/icedelivery)
Yes. Take a look at the [icedocker example](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/iceoryx_examples/icedocker)

## iox-roudi fails on startup

Expand Down Expand Up @@ -99,4 +99,4 @@ docker run -it --shm-size="2g" ubuntu
To avoid undefined behavior of iceoryx posh it is recommended to terminate RouDi and the corresponding middleware
processes with SIGINT or SIGTERM. In RouDi, we have integrated a sighandler that catches the signals and gives RouDi
the chance to exit and clean-up everything. This also applies for processes. Therefore, we recommend adding a signalhandler
to your process (see [this example](https://github.com/eclipse-iceoryx/iceoryx/blob/master/iceoryx_examples/icedelivery/iox_publisher_untyped.cpp)).
to your process (see [this example](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/iceoryx_examples/icedelivery/iox_publisher_untyped.cpp)).
6 changes: 3 additions & 3 deletions doc/website/advanced/configuration-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ These options adjust the limits of Publisher and Subscriber Ports for resource m
| `IOX_MAX_CHUNKS_HELD_PER_SUBSCRIBER_SIMULTANEOUSLY` | Maximum number of chunks a subscriber can hold at a given time (subscriber history size)|
| `IOX_MAX_INTERFACE_NUMBER` | Maximum number of interface ports which are used for gateways |

Have a look at [iceoryx_posh_deployment.cmake](https://github.com/eclipse-iceoryx/iceoryx/blob/master/iceoryx_posh/cmake/iceoryx_posh_deployment.cmake) for the default values of the constants.
Have a look at [IceoryxPoshDeployment.cmake](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/iceoryx_posh/cmake/IceoryxPoshDeployment.cmake) for the default values of the constants.

!!! hint
With the default values set, the size of `iceoryx_mgmt` is ~64.5 MByte. You can reduce the size by decreasing the values from the table via the CMake options. The current values are printed in the CMake stage when building iceoryx.
Expand Down Expand Up @@ -142,12 +142,12 @@ size = 1024
count = 100
```

When no config file is specified, a hard-coded version similar to the [default config](https://github.com/eclipse-iceoryx/iceoryx/blob/master/iceoryx_posh/etc/iceoryx/roudi_config_example.toml) will be used.
When no config file is specified, a hard-coded version similar to the [default config](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/iceoryx_posh/etc/iceoryx/roudi_config_example.toml) will be used.

### Static configuration

Another way is to have a static config that is compile-time dependent, this means that you have to recompile your RouDi application if you want to change your config (not the iceoryx_posh_roudi lib).
You can have your source file with `main()` method where you can create your custom configuration and pass it to a RouDi instantiation.
In your CMake file for your custom RouDi you need to ensure that it is **not** linking against `iceoryx_posh_config` to have a static config.

A good example of a static config can be found [here](https://github.com/eclipse-iceoryx/iceoryx/blob/master/iceoryx_examples/iceperf/roudi_main_static_config.cpp).
A good example of a static config can be found [here](https://github.com/eclipse-iceoryx/iceoryx/blob/v2.0.0/iceoryx_examples/iceperf/roudi_main_static_config.cpp).
Loading

0 comments on commit e759b4d

Please sign in to comment.