Coverage for tsfpga/about.py: 0%

17 statements  

« prev     ^ index     » next       coverage.py v6.5.0, created at 2022-11-29 20:01 +0000

1# -------------------------------------------------------------------------------------------------- 

2# Copyright (c) Lukas Vik. All rights reserved. 

3# 

4# This file is part of the tsfpga project, a project platform for modern FPGA development. 

5# https://tsfpga.com 

6# https://gitlab.com/tsfpga/tsfpga 

7# -------------------------------------------------------------------------------------------------- 

8 

9 

10def get_slogan(): 

11 result = """\ 

12tsfpga is a development platform that aims to streamline the code structure and user experience in 

13your FPGA project.""" 

14 return result 

15 

16 

17def get_short_doc(): 

18 return f"""{get_slogan()} 

19With its python build/simulation flow it is perfect for CI/CD and test-driven development. 

20Focus has been placed on flexibility and modularization, achieving scalability even in very large 

21multi-vendor code bases. 

22""" 

23 

24 

25def get_doc(): 

26 """ 

27 Prepend get_short_doc() to this to get the complete doc. 

28 """ 

29 return """Key features 

30------------ 

31 

32* Source code centric project structure: Build projects, test configurations, constraints, IP cores, 

33 etc. are handled close to the source code. 

34* Automatically adds build/simulation sources if a recognized folder structure is used. 

35* Enables local VUnit configuration setup without multiple ``run.py``. 

36* Handling of IP cores and simlib for your simulation project, with automatic re-compile 

37 when necessary. 

38* Python-based parallel Vivado build system. 

39* Tightly integrated with `hdl_registers <https://hdl-registers.com>`__. 

40 Register code generation will be performed before each simulation and each build. 

41* Released under the very permissive BSD 3-Clause License. 

42 

43The maintainers place high focus on quality, with everything having good unit test coverage and a 

44thought-out structure. 

45The project is mature and used in many production environments. 

46""" 

47 

48 

49def get_readme_rst( 

50 include_extra_for_gitlab=False, 

51 include_extra_for_website=False, 

52 include_extra_for_pypi=False, 

53): 

54 """ 

55 Get the complete README.rst for tsfpga (to be used on website and in PyPI release). 

56 

57 The arguments control some extra text that is included. This is mainly links to the 

58 other places where you can find information on the project (website, gitlab, PyPI). 

59 

60 Arguments: 

61 include_extra_for_gitlab (bool): Include the extra text that shall be included in the 

62 gitlab README. 

63 include_extra_for_website (bool): Include the extra text that shall be included in the 

64 website main page. 

65 include_extra_for_pypi (bool): Include the extra text that shall be included in the 

66 PyPI release README. 

67 """ 

68 if include_extra_for_gitlab: 

69 extra_rst = """\ 

70**See documentation on the website**: https://tsfpga.com 

71 

72**See PyPI for installation details**: https://pypi.org/project/tsfpga/ 

73""" 

74 elif include_extra_for_website: 

75 extra_rst = """\ 

76This website contains readable documentation for the project. 

77To check out the source code go to the `gitlab page <https://gitlab.com/tsfpga/tsfpga>`__. 

78To install see the `PyPI page <https://pypi.org/project/tsfpga/>`__. 

79""" 

80 elif include_extra_for_pypi: 

81 extra_rst = """\ 

82**See documentation on the website**: https://tsfpga.com 

83 

84**Check out the source code on gitlab**: https://gitlab.com/tsfpga/tsfpga 

85""" 

86 else: 

87 extra_rst = "" 

88 

89 readme_rst = f"""\ 

90About tsfpga 

91============ 

92 

93|pic_website| |pic_gitlab| |pic_gitter| |pic_pip_install| |pic_license| |pic_python_line_coverage| 

94 

95.. |pic_website| image:: https://tsfpga.com/badges/website.svg 

96 :alt: Website 

97 :target: https://tsfpga.com 

98 

99.. |pic_gitlab| image:: https://tsfpga.com/badges/gitlab.svg 

100 :alt: Gitlab 

101 :target: https://gitlab.com/tsfpga/tsfpga 

102 

103.. |pic_gitter| image:: https://badges.gitter.im/owner/repo.png 

104 :alt: Gitter 

105 :target: https://gitter.im/tsfpga/tsfpga 

106 

107.. |pic_pip_install| image:: https://tsfpga.com/badges/pip_install.svg 

108 :alt: pypi 

109 :target: https://pypi.org/project/tsfpga/ 

110 

111.. |pic_license| image:: https://tsfpga.com/badges/license.svg 

112 :alt: License 

113 :target: https://tsfpga.com/license_information.html 

114 

115.. |pic_python_line_coverage| image:: https://tsfpga.com/badges/python_coverage.svg 

116 :alt: Python line coverage 

117 :target: https://tsfpga.com/python_coverage_html 

118 

119{get_short_doc()} 

120{extra_rst} 

121{get_doc()}""" 

122 

123 return readme_rst