Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs/about: update 'Credits and License' #761

Merged
merged 4 commits into from
Oct 23, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 13 additions & 5 deletions LICENSE.rst
Original file line number Diff line number Diff line change
@@ -1,11 +1,19 @@
**VUnit**, except for the projects below, is released under the terms of
`Mozilla Public License, v. 2.0`_. |copy| 2014-2021 Lars Asplund, lars.anders.asplund@gmail.com.
**VUnit**, except for the projects below, is released under the terms of `Mozilla Public License, v. 2.0`_.
|copy| 2014-2021 Lars Asplund, lars.anders.asplund@gmail.com.

The following libraries are `redistributed`_ with VUnit for your convenience:
The following libraries are `redistributed`_ with VUnit for convenience:

* **OSVVM** (``vunit/vhdl/osvvm``): these files are licensed under the terms of `Apache License, v 2.0`_, |copy| 2010 - 2021 by `SynthWorks Design Inc`_. All rights reserved.
* **OSVVM** (``vunit/vhdl/osvvm``): these files are licensed under the terms of `Apache License, v 2.0`_,
|copy| 2010 - 2021 by `SynthWorks Design Inc`_. All rights reserved.

* **JSON-for-VHDL** (``vunit/vhdl/JSON-for-VHDL``): these files are licensed under the terms of `Apache License,
v 2.0`_, |copy| 2015 - 2021 Patrick Lehmann.

The font used in VUnit's logo and illustrations is 'Tratex', the traffic sign typeface used on swedish road signs:

- `transportstyrelsen.se: Teckensnitt <https://transportstyrelsen.se/sv/vagtrafik/Trafikregler/Om-vagmarken/Teckensnitt/>`__
- `Wikipedia: Tratex <https://en.wikipedia.org/wiki/Tratex>`__

* **JSON-for-VHDL** (``vunit/vhdl/JSON-for-VHDL``): these files are licensed under the terms of `Apache License, v 2.0`_, |copy| 2015 - 2021 Patrick Lehmann.

.. |copy| unicode:: U+000A9 .. COPYRIGHT SIGN
.. _redistributed: https://github.com/VUnit/vunit/blob/master/.gitmodules
Expand Down
Binary file modified docs/_static/VUnit_logo_175x175.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/_static/VUnit_logo_420x420.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
76 changes: 67 additions & 9 deletions docs/_static/vunit.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
116 changes: 49 additions & 67 deletions docs/about.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,54 +3,42 @@
What is VUnit?
==============

VUnit is an open source unit testing framework for VHDL/SystemVerilog
released under the terms of `Mozilla Public License, v. 2.0`_. It
features the functionality needed to realize continuous and automated
testing of your HDL code. VUnit doesn't replace but rather complements
traditional testing methodologies by supporting a *"test early and
often"* approach through automation.

VUnit reduces the overhead of testing by supporting automatic
discovery of test benches and compilation order as well as including
libraries for common verification tasks. It improves the speed of
development by supporting incremental compilation and by enabling
large test benches to be split up into smaller independent tests. It
increases the quality of projects by enabling large regression suites
to be run on a continuous integration server.

VUnit does not impose any specific verification methodology on its
users. The benefits of VUnit can be enjoyed when writing tests first
or last, when writing long running top level tests or short running
unit tests, when using directed or constrained random testing. Often
projects adopt mix of approaches for different testing needs. VUnit
has been used in production environments where thousands of tests take
several hours to run on powerful multi-core machines as well as in
small open source projects where only a small package is tested in a
few seconds.
VUnit is an open source unit testing framework for VHDL/SystemVerilog released under the terms of `Mozilla Public
License, v. 2.0`_.
It features the functionality needed to realize continuous and automated testing of your HDL code.
VUnit doesn't replace but rather complements traditional testing methodologies by supporting a *"test early and often"*
approach through automation.

VUnit reduces the overhead of testing by supporting automatic discovery of test benches and compilation order as well
as including libraries for common verification tasks.
It improves the speed of development by supporting incremental compilation and by enabling large test benches to be
split up into smaller independent tests.
It increases the quality of projects by enabling large regression suites to be run on a continuous integration server.

VUnit does not impose any specific verification methodology on its users.
The benefits of VUnit can be enjoyed when writing tests first or last, when writing long running top level tests or
short running unit tests, when using directed or constrained random testing.
Often projects adopt mix of approaches for different testing needs.
VUnit has been used in production environments where thousands of tests take several hours to run on powerful multi-core
machines as well as in small open source projects where only a small package is tested in a few seconds.

Main Features
-------------

- Python test suite runner that enables powerful test administration,
can continue testing after fatal run-time errors (e.g. division by
zero), and ensures test case independence.
- Automatic scanning of files for tests, file dependencies, and file
changes enable automatic (re)compilation and execution of test
suites.
- Can run test cases in parallel to take advantage of multi-core
machines.
- Python test suite runner that enables powerful test administration, can continue testing after fatal run-time errors
(e.g. division by zero), and ensures test case independence.
- Automatic scanning of files for tests, file dependencies, and file changes enable automatic (re)compilation and
execution of test suites.
- Can run test cases in parallel to take advantage of multi-core machines.
- Support for running test benches with multiple generic/parameter settings.
- :ref:`Scriptable API <python_interface>` as well as :ref:`command line <cli>`
support.
- :ref:`Scriptable API <python_interface>` as well as :ref:`command line <cli>` support.
- Has ``--gui`` switch to launch test cases in the simulator GUI when debugging is necessary.
- :doc:`Assertion checker library <./check/user_guide>` that extends VHDL built-in support
(assert).
- :doc:`Logging framework <./logging/user_guide>` supporting display and file output, different log
levels, visibility settings of levels and design hierarchy, output formatting
and multiple loggers. Supports machine readable output formats that for example can be read by a spreadsheet.
- :doc:`Assertion checker library <./check/user_guide>` that extends VHDL built-in support (assert).
- :doc:`Logging framework <./logging/user_guide>` supporting display and file output, different log levels, visibility
settings of levels and design hierarchy, output formatting and multiple loggers.
Supports machine readable output formats that for example can be read by a spreadsheet.
- Requirements trace-ability through :ref:`JSON Export <json_export>` and :ref:`test attributes <attributes>`.
- Optional location preprocessor that traces log and check calls back to file
and line number.
- Optional location preprocessor that traces log and check calls back to file and line number.
- Outputs JUnit report files for better `Jenkins`_ :ref:`integration <continuous_integration>`.
- Builds on the commonly used `xUnit`_ architecture.

Expand All @@ -59,46 +47,40 @@ Getting Started

There are a number of ways to get started.

- :ref:`VUnit User Guide <user_guide>` will guide users on how to use start using
the basic features of VUnit but also provides information about more
specific and advanced usage.
- :ref:`VUnit User Guide <user_guide>` will guide users on how to use start using the basic features of VUnit but also
provides information about more specific and advanced usage.
- :ref:`Run Library User Guide <run_library>` presents the run packages.
- :ref:`Check Library User Guide <check_library>` presents the check packages.
- :ref:`Logging Library User Guide <logging_library>` presents the log packages.
- There are also various presentations of VUnit on `YouTube`_. For
example `an introduction to unit testing (6 min)`_ and a `short
introduction to VUnit (12 min)`_.
- There are also various presentations of VUnit on `YouTube`_.
For example `an introduction to unit testing (6 min)`_ and a `short introduction to VUnit (12 min)`_.

Support
-------

Any bug reports, feature requests or questions about the usage of VUnit
can be made by creating a `new issue`_.
Any bug reports, feature requests or questions about the usage of VUnit can be made by creating a `new issue`_.

Credits and License
-------------------

- Founders:
Substantial contributors are shown in the table below, but many others contributed with minor patches.
Find a list at `github.com/VUnit/vunit/graphs/contributors <https://github.com/VUnit/vunit/graphs/contributors>`__.

- `Lars Asplund <https://github.com/LarsAsplund>`_
With apologies to anyone who ought to be either on this table or in the GitHub contributor list, but isn't.
Thanks also to all those who have reported bugs and support issues, and often patches and testcases.

- `Olof Kraigher <https://github.com/kraigher>`_
================================================================================ ================================================================================================================================================================================================
Contributor [#f1]_ Role
================================================================================ ================================================================================================================================================================================================
Asplund, Lars [`@LarsAsplund <https://github.com/LarsAsplund>`__] [#f2]_ Founder and main author of VUnit as a whole
Kraigher, Olof [`@kraigher <https://github.com/kraigher>`__] Founder and main author of VUnit until v4
Marquardt, Colin [`@cmarqu <https://github.com/cmarqu>`__] Cadence Incisive support
Martinez-Corral, Unai [`@umarcor <https://github.com/umarcor>`__] [#f2]_ Continuous Integration (CI), Co-simulation with GHDL's VHPIDIRECT interface (`VUnit/cosim <https://github.com/VUnit/cosim>`_, based on `ghdl/ghdl-cosim <https://github.com/ghdl/ghdl-cosim>`_)
Siluk, Sławomir [`@slaweksiluk <https://github.com/slaweksiluk>`__] Verification Components (such as Avalon and Wishbone)
================================================================================ ================================================================================================================================================================================================

- Notable contributors:

- `Colin Marquardt <https://github.com/cmarqu>`_:

- Cadence Incisive support

- `Sławomir Siluk <https://github.com/slaweksiluk>`_:

- Verification Components (such as Avalon and Wishbone)

- `Unai Martinez-Corral <https://github.com/umarcor>`_:

- Co-simulation with GHDL's VHPIDIRECT interface (`VUnit/cosim <https://github.com/VUnit/cosim>`_, based on `ghdl/ghdl-cosim <https://github.com/ghdl/ghdl-cosim>`_)

- Continuous Integration (CI)
.. [#f1] In alphabetical order
.. [#f2] Maintainer

.. include:: license.rst

Expand Down
19 changes: 14 additions & 5 deletions vunit/about.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,23 @@ def license_text():
"""
Returns licence text
"""
return """**VUnit**, except for the projects below, is released under the terms of
`Mozilla Public License, v. 2.0`_. |copy| 2014-2021 Lars Asplund, lars.anders.asplund@gmail.com.
return """\
**VUnit**, except for the projects below, is released under the terms of `Mozilla Public License, v. 2.0`_.
|copy| 2014-2021 Lars Asplund, lars.anders.asplund@gmail.com.

The following libraries are `redistributed`_ with VUnit for your convenience:
The following libraries are `redistributed`_ with VUnit for convenience:

* **OSVVM** (``vunit/vhdl/osvvm``): these files are licensed under the terms of `Apache License, v 2.0`_, |copy| 2010 - 2021 by `SynthWorks Design Inc`_. All rights reserved.
* **OSVVM** (``vunit/vhdl/osvvm``): these files are licensed under the terms of `Apache License, v 2.0`_,
|copy| 2010 - 2021 by `SynthWorks Design Inc`_. All rights reserved.

* **JSON-for-VHDL** (``vunit/vhdl/JSON-for-VHDL``): these files are licensed under the terms of `Apache License,
v 2.0`_, |copy| 2015 - 2021 Patrick Lehmann.

The font used in VUnit's logo and illustrations is 'Tratex', the traffic sign typeface used on swedish road signs:

- `transportstyrelsen.se: Teckensnitt <https://transportstyrelsen.se/sv/vagtrafik/Trafikregler/Om-vagmarken/Teckensnitt/>`__
- `Wikipedia: Tratex <https://en.wikipedia.org/wiki/Tratex>`__

* **JSON-for-VHDL** (``vunit/vhdl/JSON-for-VHDL``): these files are licensed under the terms of `Apache License, v 2.0`_, |copy| 2015 - 2021 Patrick Lehmann.

.. |copy| unicode:: U+000A9 .. COPYRIGHT SIGN
.. _redistributed: https://github.com/VUnit/vunit/blob/master/.gitmodules
Expand Down