Skip to content
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
16 changes: 8 additions & 8 deletions docs/pages/benchmarking.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@ layout: default

# Benchmarking

| Name | Short description | 🚦 |
| ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-: |
| [pyinstrument](https://pyinstrument.readthedocs.io/en/stable) | Python profiler. Tells you how long individual lines of code take to run, so you can focus on the slowest part of your program to speed it up. | 🟢 |
| [snakeviz](https://jiffyclub.github.io/snakeviz/) | Browser based graphical viewer for the output of Python’s cProfile module. | 🟢 |
| [asv](https://asv.readthedocs.io/en/stable/) | A tool for benchmarking Python packages over their lifetime. Allows you to write benchmarks and then run them against every commit in the repository, to identify where performance increased or decreased. | 🟢 |
| [memray](https://bloomberg.github.io/memray/) | Memray tracks and reports memory allocations, both in Python code and in compiled extension modules. It also has a [plugin](https://pytest-memray.readthedocs.io/en/latest/) for easy integration with pytest. However, it only works on Linux and MacOS, and cannot be installed on other platforms. | 🟠 |
| [line_profiler](https://pypi.org/project/line-profiler/) | It is a module for doing line-by-line profiling of functions. | 🟠 |
| [memory_profiler](https://pypi.org/project/memory-profiler/) | This package is no longer actively maintained. It is a python module for monitoring memory consumption of a process as well as line-by-line analysis of memory consumption. | 🔴 |
| Name | Short description | 🚦 | Used by |
| ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --- | :-----: |
| [pyinstrument](https://pyinstrument.readthedocs.io/en/stable) | Python profiler. Tells you how long individual lines of code take to run, so you can focus on the slowest part of your program to speed it up. | 🟢 | |
| [snakeviz](https://jiffyclub.github.io/snakeviz/) | Browser based graphical viewer for the output of Python’s cProfile module. | 🟢 | |
| [asv](https://asv.readthedocs.io/en/stable/) | A tool for benchmarking Python packages over their lifetime. Allows you to write benchmarks and then run them against every commit in the repository, to identify where performance increased or decreased. | 🟢 | |
| [memray](https://bloomberg.github.io/memray/) | Memray tracks and reports memory allocations, both in Python code and in compiled extension modules. It also has a [plugin](https://pytest-memray.readthedocs.io/en/latest/) for easy integration with pytest. However, it only works on Linux and MacOS, and cannot be installed on other platforms. | 🟠 | |
| [line_profiler](https://pypi.org/project/line-profiler/) | It is a module for doing line-by-line profiling of functions. | 🟠 | |
| [memory_profiler](https://pypi.org/project/memory-profiler/) | This package is no longer actively maintained. It is a python module for monitoring memory consumption of a process as well as line-by-line analysis of memory consumption. | 🔴 | |
14 changes: 7 additions & 7 deletions docs/pages/bindings.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ layout: default

# Bindings

| Name | Short description | 🚦 |
| --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | :-: |
| [Cython](https://cython.readthedocs.io/en/latest/src/userguide/wrapping_CPlusPlus.html) | C/C++ binding library with numpy array integration | 🟢 |
| [ctypes](https://docs.python.org/3.8/library/ctypes.html) | Native python method for calling functions in shared C libraries | 🟠 |
| [pybind11](https://github.com/pybind/pybind11) | Bindings to C++ with a steep learning curve | 🟠 |
| [f2py](https://numpy.org/devdocs/f2py/f2py.getting-started.html) | Bindings to Fortran developed by numpy | 🟠 |
| [pyO3](https://github.com/PyO3/pyo3) | Straightforward bindings to rust with support for [packaging](https://github.com/PyO3/maturin) | 🟢 |
| Name | Short description | 🚦 | Used by |
| --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | --- | :-----: |
| [Cython](https://cython.readthedocs.io/en/latest/src/userguide/wrapping_CPlusPlus.html) | C/C++ binding library with numpy array integration | 🟢 | |
| [ctypes](https://docs.python.org/3.8/library/ctypes.html) | Native python method for calling functions in shared C libraries | 🟠 | |
| [pybind11](https://github.com/pybind/pybind11) | Bindings to C++ with a steep learning curve | 🟠 | |
| [f2py](https://numpy.org/devdocs/f2py/f2py.getting-started.html) | Bindings to Fortran developed by numpy | 🟠 | |
| [pyO3](https://github.com/PyO3/pyo3) | Straightforward bindings to rust with support for [packaging](https://github.com/PyO3/maturin) | 🟢 | |
20 changes: 10 additions & 10 deletions docs/pages/ci.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ layout: default

# Continuous integration

| Name | Short description | 🚦 |
| ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | :-: |
| [GitHub Actions](https://docs.github.com/en/actions) | Continuous integration and continuous delivery platform (integrated with GitHub). | 🟢 |
| [Travis CI](https://docs.travis-ci.com/) | Continuous integration and continuous delivery platform. | 🟠 |
| [AppVeyor](https://www.appveyor.com/docs/) | Continuous integration and continuous delivery platform. | 🟠 |
| [Bamboo](https://confluence.atlassian.com/bamboo/bamboo-documentation-289276551.html) | Atlassian continuous integration and continuous delivery platform. | 🟠 |
| Name | Short description | 🚦 | Used by |
| ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| [GitHub Actions](https://docs.github.com/en/actions) | Continuous integration and continuous delivery platform (integrated with GitHub). | 🟢 | [Crabs Exploration](https://github.com/SainsburyWellcomeCentre/crabs-exploration), [DiRAC](https://github.com/UCL-ARC/dirac-swift-api), [RRED](https://github.com/UCL-ARC/rred-reports) |
| [Travis CI](https://docs.travis-ci.com/) | Continuous integration and continuous delivery platform. | 🟠 | |
| [AppVeyor](https://www.appveyor.com/docs/) | Continuous integration and continuous delivery platform. | 🟠 | |
| [Bamboo](https://confluence.atlassian.com/bamboo/bamboo-documentation-289276551.html) | Atlassian continuous integration and continuous delivery platform. | 🟠 | |

<details>
<summary> 🟢 explanation</summary>
Expand All @@ -19,7 +19,7 @@ We have many projects using github CI, it's both convenient and works well. It's

# Coverage monitoring

| Name | Short description | 🚦 |
| ---------------------------------------- | ----------------------------------------------- | :-: |
| [Codecov](https://docs.codecov.com/docs) | Hosted service to report code coverage metrics. | 🟢 |
| [Coveralls](https://docs.coveralls.io/) | Hosted service to report code coverage metrics. | 🟠 |
| Name | Short description | 🚦 | Used by |
| ---------------------------------------- | ----------------------------------------------- | --- | :-----: |
| [Codecov](https://docs.codecov.com/docs) | Hosted service to report code coverage metrics. | 🟢 | |
| [Coveralls](https://docs.coveralls.io/) | Hosted service to report code coverage metrics. | 🟠 | |
36 changes: 18 additions & 18 deletions docs/pages/dev.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,27 +5,27 @@ layout: default

# Integrated Development Environments (IDEs)

| Name | Short description | 🚦 |
| -------------------------------------------------------- | ----------------------------------- | :-: |
| [Visual Studio Code](https://code.visualstudio.com/docs) | A light-weight general-purpose IDE. | 🟠 |
| [PyCharm](https://www.jetbrains.com/pycharm/) | A Python IDE by JetBrains. | 🟠 |
| Name | Short description | 🚦 | Used by |
| -------------------------------------------------------- | ----------------------------------- | --- | :-----: |
| [Visual Studio Code](https://code.visualstudio.com/docs) | A light-weight general-purpose IDE. | 🟠 | |
| [PyCharm](https://www.jetbrains.com/pycharm/) | A Python IDE by JetBrains. | 🟠 | |

# Virtual environments

| Name | Short description | 🚦 |
| --------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | :-: |
| [mamba](https://mamba.readthedocs.io/en/latest/user_guide/mamba.html) | A tool to manage conda environments. Faster than conda for installing dependencies. | 🟢 |
| [conda](https://conda.io/projects/conda/en/latest/) | Conda quickly installs, runs, and updates packages and their dependencies. | 🟠 |
| [pipenv](https://pipenv.pypa.io/en/latest/) | A tool that automatically creates and manages a virtualenv for your projects. | 🟠 |
| [venv](https://docs.python.org/3/library/venv.html) | A tool to create isolated Python environments. | 🔴 |
| [virtualenv](https://virtualenv.pypa.io/en/latest/) | A tool to create isolated Python environments which offers more features than venv. | 🟠 |
| [pyenv](https://github.com/pyenv/pyenv) | A tool that lets you easily switch between multiple versions of Python. | 🟠 |
| Name | Short description | 🚦 | Used by |
| --------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | --- | :-----: |
| [mamba](https://mamba.readthedocs.io/en/latest/user_guide/mamba.html) | A tool to manage conda environments. Faster than conda for installing dependencies. | 🟢 | |
| [conda](https://conda.io/projects/conda/en/latest/) | Conda quickly installs, runs, and updates packages and their dependencies. | 🟠 | |
| [pipenv](https://pipenv.pypa.io/en/latest/) | A tool that automatically creates and manages a virtualenv for your projects. | 🟠 | |
| [venv](https://docs.python.org/3/library/venv.html) | A tool to create isolated Python environments. | 🔴 | |
| [virtualenv](https://virtualenv.pypa.io/en/latest/) | A tool to create isolated Python environments which offers more features than venv. | 🟠 | |
| [pyenv](https://github.com/pyenv/pyenv) | A tool that lets you easily switch between multiple versions of Python. | 🟠 | |

# Other

| Name | Short description | 🚦 |
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | :-: |
| [jedi](https://jedi.readthedocs.io/en/latest/) | Refactoring and autocompletion used in IDEs. | |
| [rope](https://rope.readthedocs.io/en/latest/overview.html) | Refactoring library. | |
| [tqdm](https://pypi.org/project/tqdm/2.2.3/) | Progress bar for loops. | |
| [psutil](https://psutil.readthedocs.io/en/latest/) | System monitoring, profiling, limiting process resources and the management of running processes. | |
| Name | Short description | 🚦 | Used by |
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | --- | :-------------------------------------------------------------------------------------------------------------------: |
| [jedi](https://jedi.readthedocs.io/en/latest/) | Refactoring and autocompletion used in IDEs. | 🟢 | |
| [rope](https://rope.readthedocs.io/en/latest/overview.html) | Refactoring library. | | |
| [tqdm](https://pypi.org/project/tqdm/2.2.3/) | Progress bar for loops. | 🟢 | [RRED](https://github.com/UCL-ARC/rred-reports) |
| [psutil](https://psutil.readthedocs.io/en/latest/) | System monitoring, profiling, limiting process resources and the management of running processes. | 🟢 | [Puppet Submitty](https://github.com/UCL-ARC/puppet-submitty), [Quality Workflow tool](https://github.com/UCL-ARC/qw) |
Loading