Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
6039 commits
Select commit Hold shift + click to select a range
231856d
Merge branch 'develop' of https://github.com/nicolargo/glances into d…
drake7707 Dec 15, 2025
84056c3
Don't crash if any attribute fails to serialize
drake7707 Dec 15, 2025
e7dac4e
Merge pull request #3377 from okulev/amdgpu_gtt
nicolargo Dec 15, 2025
966d46c
Fix quicklook in case psutil.cpu_freq().max=0.0
okulev Dec 16, 2025
4be7008
Update license specification to SPDX format
ruben-arts Dec 19, 2025
823ab20
Remove LGPL-3.0 license from pyproject.toml
ruben-arts Dec 19, 2025
dfd9bbc
fix(security): resolve B701 and B113 bandit issues (#3353)
KerubinZero Dec 19, 2025
ff44501
Merge pull request #3383 from kelvinvelasquez-SDE/fix/security-bandit
nicolargo Dec 20, 2025
d5f241e
Merge pull request #3381 from ruben-arts/patch-1
nicolargo Dec 20, 2025
dc940cc
Merge pull request #3379 from okulev/cpu_freq_nomax
nicolargo Dec 20, 2025
2c3fe2f
Lint code
nicolargo Dec 20, 2025
c6b72c2
Lint the code and correct issue with List (replaced by list)
nicolargo Dec 20, 2025
a5bb286
Update deps
nicolargo Dec 20, 2025
5a203ad
Update webUI
nicolargo Dec 20, 2025
234c021
Lint quicklook
nicolargo Dec 20, 2025
812aba1
Change load method name
nicolargo Dec 20, 2025
10c9002
Bump to Python 3.10 as minimal version
nicolargo Dec 20, 2025
f678f58
Correct issue with test on Python 3.9
nicolargo Dec 20, 2025
00c7747
Add comment for Git action tests
nicolargo Dec 20, 2025
bf8263d
Catch error on ADM GPU plugin and Python 3.9
nicolargo Dec 20, 2025
7305236
Lint code for Python 3.10
nicolargo Dec 21, 2025
48175bf
Merge branch 'develop' of https://github.com/nicolargo/glances into d…
drake7707 Dec 22, 2025
ddb380e
Change proposed by @webdjoe (https://github.com/nicolargo/glances/pul…
drake7707 Dec 22, 2025
c636bbc
Use proper labels instead of attribute keys (if possible)
drake7707 Dec 22, 2025
79ff19a
Add a hide_attributes to well hide attributes
drake7707 Dec 22, 2025
f0f18bb
auto unit on curses output
drake7707 Dec 22, 2025
07b1419
update doc
drake7707 Dec 22, 2025
837ae6c
Some imporovement regarding Dockerfile - #3359
nicolargo Dec 22, 2025
55cd65f
Merge branch 'issue3359_Improve_DockerFile' into develop
nicolargo Dec 22, 2025
fcfecfe
Switch Docker Alpine based images to hardened
nicolargo Dec 23, 2025
c73644e
Merge branch 'issue3280' into develop
nicolargo Dec 23, 2025
21de49e
Revert "Switch Docker Alpine based images to hardened"
nicolargo Dec 23, 2025
6279498
Sort by time do not work anymore #3387
nicolargo Dec 26, 2025
a70651d
Merge branch 'issue3387' into develop
nicolargo Dec 26, 2025
ce2700b
Lint code
nicolargo Dec 26, 2025
0e5f4fb
Lint the code
nicolargo Dec 26, 2025
efea4dd
Read only container (with docker-compose) #3382
nicolargo Dec 30, 2025
83abbf3
First version ok. Log message should be removed. Code should be tested.
nicolargo Dec 30, 2025
0c293ab
Remove debug message
nicolargo Jan 2, 2026
c3d4116
Add test for NATS in the Makefile
nicolargo Jan 2, 2026
7269fea
Refactor NATS export to use async base class
nicolargo Jan 2, 2026
7589620
Merge branch 'issue3341-NATS' into develop
nicolargo Jan 2, 2026
9205691
Lint and format the code
nicolargo Jan 2, 2026
e918421
Update doc
nicolargo Jan 2, 2026
938f463
Format the smart data in the web ui the same way as curses output
drake7707 Jan 3, 2026
b10752c
Merge branch 'develop' of https://github.com/nicolargo/glances into d…
drake7707 Jan 3, 2026
3a802c4
Regenerate the WebUI and lint the code
nicolargo Jan 3, 2026
cc5b8b3
Reduced cyclomatic complexity - Each function now does one thing
nicolargo Jan 3, 2026
d012d5d
Merge branch 'drake7707-develop' into develop
nicolargo Jan 3, 2026
26e5096
Format/Lint code
nicolargo Jan 3, 2026
456530c
Option to revert to using arrows to switch sorting? #3385
nicolargo Jan 3, 2026
da865ae
Merge branch 'issue3385' into develop
nicolargo Jan 3, 2026
cb74853
Format and lint the code
nicolargo Jan 3, 2026
96a8863
Add Ruff formater in pre-hook
nicolargo Jan 3, 2026
3d858a8
Align conf file between default and the one used in Docker compose
nicolargo Jan 3, 2026
03b6cc5
Add system test for NATS exporter
nicolargo Jan 3, 2026
6e27c44
Remove Netifaces dependency and use a pure Python to get Default Gate…
nicolargo Jan 3, 2026
2aca02e
Merge branch 'issue3130' into develop
nicolargo Jan 3, 2026
44c25aa
Remove Netifaces2 from requirements file
nicolargo Jan 3, 2026
80a662f
Update README
nicolargo Jan 3, 2026
58b4348
Make public IP address retreiving call async
nicolargo Jan 3, 2026
cbfb045
Improve CPU name in Quicklook plugin for ARM prcessors #3127
nicolargo Jan 4, 2026
9cd9b92
Merge branch 'issue3127' into develop
nicolargo Jan 4, 2026
6a83c51
Add venv-uv to .gitignore
nicolargo Jan 10, 2026
4ec7c18
Process widget is broken in Homepage since a few dev release #3400
nicolargo Jan 10, 2026
37e3ca8
Merge branch 'issue3400' into develop
nicolargo Jan 10, 2026
c53437e
TIME+ in Web UI Shows Incorrect Large Values #3401
nicolargo Jan 17, 2026
6b342f7
Merge branch 'issue3401' into develop
nicolargo Jan 17, 2026
66364bc
Docker container health status and alerts #3402
nicolargo Jan 17, 2026
6ad4acd
Merge branch 'issue3402' into develop
nicolargo Jan 17, 2026
9ed23fe
Update dep
nicolargo Jan 17, 2026
e20c227
CPU Speed / Max Speed wrong in WebUI #3134
nicolargo Jan 17, 2026
fee88a4
Merge branch 'issue3134' into develop
nicolargo Jan 17, 2026
c1f7747
Reduce code complexity of ProcesslistPlugin._msg_curse_header()
nicolargo Jan 17, 2026
b28a8f0
Merge branch 'issue2801' into develop
nicolargo Jan 17, 2026
0bb38ea
Reduce code complexity of GPU plugin
nicolargo Jan 17, 2026
9a2e9c6
Reduce code complexity of pretty_date
nicolargo Jan 17, 2026
2047a72
Improve Github action unit test on BSD systems #2749
nicolargo Jan 17, 2026
131ef81
Improve Github action unit test on BSD systems #2749
nicolargo Jan 17, 2026
40d9c35
Improve Github action unit test on BSD systems #2749
nicolargo Jan 17, 2026
51ba6a6
Improve Github action unit test on BSD systems #2749
nicolargo Jan 17, 2026
d61d28f
Improve Github action unit test on BSD systems #2749
nicolargo Jan 17, 2026
fb40519
Improve Github action unit test on BSD systems #2749
nicolargo Jan 17, 2026
a6ed2e1
Improve Github action unit test on BSD systems #2749
nicolargo Jan 17, 2026
2ddcefc
Improve Github action unit test on BSD systems #2749
nicolargo Jan 18, 2026
b9e5e03
ERROR: Exception in ASGI application [KeyError: 'used'] #3409
nicolargo Jan 18, 2026
b2d1a7f
Merge branch 'issue3409' into develop
nicolargo Jan 18, 2026
0cd5dc9
Implementation of a JWT token thanks to Jose lib
nicolargo Jan 4, 2026
97842d4
Merge branch 'issue1995-Token-OAuth-JWT' into develop
nicolargo Jan 18, 2026
2a1b456
Update documentation and WebUI
nicolargo Jan 18, 2026
5bf5801
Update requirements
nicolargo Jan 18, 2026
1c30d9c
Add CPU core number field to processlist
Jan 22, 2026
03e6257
Add CPU core number field also to the WebUI
Jan 22, 2026
be0b99c
Add CPU core number sorting
Jan 22, 2026
aa32f21
Make the CPU_num option disable by default
nicolargo Jan 24, 2026
d789079
Merge branch 'ffleischer-feat-cpu_num' into develop
nicolargo Jan 24, 2026
a5716a0
NPU stats graber done for AMD, Intel and Rockchip
nicolargo Jan 18, 2026
fbd1072
Add freq information about NPU
nicolargo Jan 24, 2026
3cc987a
Add NPU display for TUI
nicolargo Jan 24, 2026
fd37f84
Update docs for NPU
nicolargo Jan 24, 2026
a17eed7
Add NPU plugin in the WebUI
nicolargo Jan 25, 2026
bff196a
Merge branch 'issue2694-NPU' into develop
nicolargo Jan 25, 2026
8d6634c
Ignore NPU test on Windows
nicolargo Jan 25, 2026
e15d87d
Rename test-data folder to make it compliant with this (fucking) Wind…
nicolargo Jan 25, 2026
7474c9b
Glances 4.5.0_dev1 - Release candidate
nicolargo Jan 25, 2026
3d73ea0
Update docs
nicolargo Jan 25, 2026
2b87b50
Avoid empty space when Quicklook plugin is displayed #3413
nicolargo Jan 29, 2026
69c8559
--enable-history not available? #3416
nicolargo Jan 31, 2026
2720adc
Update dep
nicolargo Jan 31, 2026
02c2395
Potential fix for code scanning alert no. 47: Clear-text logging of s…
nicolargo Jan 31, 2026
8efedc3
Merge pull request #3418 from nicolargo/alert-autofix-47
nicolargo Jan 31, 2026
57ed660
README: Syntax fix (missing space)
Antiz96 Feb 5, 2026
7d5f0ca
Added test cases for plugins
Ambika-Patidar Feb 6, 2026
fd1e62e
test: Fix linting issues and trailing whitespace
Ambika-Patidar Feb 6, 2026
bd0c38b
build: Use correct Python x64 paths for AppVeyor VS2022 image
Ambika-Patidar Feb 6, 2026
30a1038
build: Quote extras in pip install command
Ambika-Patidar Feb 6, 2026
a2bc134
test: Fix flaky tests on AppVeyor
Ambika-Patidar Feb 6, 2026
926f444
test: Fix flaky tests (allow empty dicts for list plugins)
Ambika-Patidar Feb 7, 2026
a23c184
InfluxDB Exports for AMPs can mismatch types for result field #3419
nicolargo Feb 7, 2026
bd60c9d
Merge branch 'issue3419' into develop
nicolargo Feb 7, 2026
2dd0fe3
Merge branch 'ambika-patidar/plugin_test_cases' of github.com:Ambika-…
nicolargo Feb 7, 2026
0c21fd8
Add target for new tests in the Makefile
nicolargo Feb 7, 2026
de051a0
Merge branch 'Ambika-Patidar-ambika-patidar/plugin_test_cases' into d…
nicolargo Feb 7, 2026
705141c
Merge pull request #3420 from Antiz96/README_syntax
nicolargo Feb 7, 2026
41fd4f4
Lint code
nicolargo Feb 7, 2026
7d70fab
Lint code
nicolargo Feb 7, 2026
9fbb0fe
Lint code
nicolargo Feb 7, 2026
bc27944
Change default bar char in the default configuration file
nicolargo Feb 8, 2026
baf135b
Ready to tag
nicolargo Feb 8, 2026
e9238ee
Merge branch 'master' into develop
nicolargo Feb 8, 2026
8b6be69
Merge branch 'develop'
nicolargo Feb 8, 2026
548ffde
version 4.5.0
nicolargo Feb 8, 2026
ba5fdbe
Merge branch 'master' into develop
nicolargo Feb 8, 2026
b90e7b9
On the road of Glances 4.5.1
nicolargo Feb 8, 2026
f10fe67
Docker image for Glances release 4.5.0 failed to start if no [putputs…
nicolargo Feb 8, 2026
4f43160
Change version before release
nicolargo Feb 8, 2026
23e3d11
Merge branch 'develop'
nicolargo Feb 8, 2026
0528f1a
version 4.5.0.1
nicolargo Feb 8, 2026
2e942d3
Merge branch 'master' into develop
nicolargo Feb 8, 2026
cfe4847
On the road again to 4.5.1
nicolargo Feb 8, 2026
9b999d1
Disable NPU plugin by default waiting more test - see #3425
nicolargo Feb 9, 2026
03cd785
Skip NPU test when plugin is disabled
nicolargo Feb 9, 2026
0c9c98b
Add 'healthy' status to active container statuses
nicolargo Feb 9, 2026
388dd81
Update podman.py
nicolargo Feb 9, 2026
fe7484a
Add libvirt client into docker.
lubomir-moric Feb 9, 2026
224e259
NPU plugin makes Glances 4.5.0.1 crashing on start #3425
nicolargo Feb 10, 2026
ec0b30d
Merge branch 'develop' of github.com:nicolargo/glances into develop
nicolargo Feb 10, 2026
566a7ad
Glances version 4.5.0.2
nicolargo Feb 10, 2026
c91b2f9
Merge branch 'develop'
nicolargo Feb 10, 2026
c2f86e6
version 4.5.0.2
nicolargo Feb 10, 2026
450a854
Merge branch 'master' into develop
nicolargo Feb 10, 2026
ba98a04
version 4.5.0.3
nicolargo Feb 10, 2026
075aa87
Merge branch 'master' into develop
nicolargo Feb 10, 2026
64522eb
version 4.5.0.4
nicolargo Feb 10, 2026
344088b
Merge branch 'master' into develop
nicolargo Feb 10, 2026
c739956
On the road again again of Glances 4.5.1
nicolargo Feb 10, 2026
5b28e1a
Add test file for issue #3434
nicolargo Feb 13, 2026
7f83f7b
Error fetching ip with urlopen_auth() - extra function argument #3438
nicolargo Feb 15, 2026
6e1584f
[Docker image] Basic Auth no longer works in browser after adding Bea…
nicolargo Feb 15, 2026
c6b2e29
Added test plugins into makefile
Ambika-Patidar Feb 17, 2026
b93c5de
Fix the flaky tests
Ambika-Patidar Feb 17, 2026
6177748
Fix the test
Ambika-Patidar Feb 17, 2026
1109e30
Merge branch 'develop' into makefile-new
Ambika-Patidar Feb 17, 2026
d71e47e
Fix code block formatting
mikemhenry Feb 17, 2026
5e04ba0
Regression in the process selection with Glances 4.5.0 #3444
nicolargo Feb 17, 2026
ca1d351
Merge branch 'develop'
nicolargo Feb 17, 2026
f5787b7
version 4.5.0.5
nicolargo Feb 17, 2026
5ea1b2a
Merge branch 'master' into develop
nicolargo Feb 17, 2026
406d219
Back to road
nicolargo Feb 17, 2026
5c297a8
Merge pull request #3447 from mikemhenry/patch-1
nicolargo Feb 17, 2026
d81df1a
Merge pull request #3446 from Ambika-Patidar/makefile-new
nicolargo Feb 17, 2026
73af160
Merge branch 'develop' of github.com:nicolargo/glances into develop
nicolargo Feb 17, 2026
975a74a
moved libvirt into full build
lubomir-moric Feb 18, 2026
360dc4c
Merge pull request #3427 from lubomir-moric/docker_libvirt
nicolargo Feb 18, 2026
a9f752b
First version for Intel GPU
nicolargo Feb 18, 2026
0d6997e
First version for Intel GPU
nicolargo Feb 18, 2026
a0c95dc
Improve Intel CPU name
nicolargo Feb 19, 2026
028b292
GPU monitoring (INTEL) #994
nicolargo Feb 20, 2026
c4297b0
Merge branch 'issue994-Intel_GPU-Arc' into develop
nicolargo Feb 20, 2026
1aa01c3
Update WebUI
nicolargo Feb 20, 2026
64e9b4f
Remove warning while building WebUI
nicolargo Feb 20, 2026
730aea8
Remove perf warning while building WebUI
nicolargo Feb 20, 2026
dd18e92
Update CI
nicolargo Feb 20, 2026
b117604
Tru to add cyber and webui workflows in the CI pipelines (develop only)
nicolargo Feb 20, 2026
f3ced0a
Update Trivy in CI
nicolargo Feb 20, 2026
b2ebac3
Non-uniform key types in smart plugin device stats causing TypeError …
nicolargo Feb 20, 2026
b7a96aa
Merge branch 'issue3449' into develop
nicolargo Feb 20, 2026
cea43d0
Show/hide sensors on alias name #3439
nicolargo Feb 20, 2026
101f53d
Second change for #3449 Cast key to str
nicolargo Feb 20, 2026
ea261e9
Merge branch 'issue3449' into develop
nicolargo Feb 20, 2026
f5b3e68
In WebUI Fahrenheit option showing incorrect value #3450
nicolargo Feb 21, 2026
72a817e
Merge branch 'issue3450' into develop
nicolargo Feb 21, 2026
485eb6d
Add MCP (Model Context Protocol) server support to the web server
nicolargo Feb 21, 2026
6fd8c8a
Add documentation for MCP server
nicolargo Feb 21, 2026
7173841
Update docs
nicolargo Feb 21, 2026
c0568b8
Merge branch 'issue3375-mcp-in-webserver' into develop
nicolargo Feb 21, 2026
022dcc0
Lint code
nicolargo Feb 21, 2026
c7b98a9
Update requirements to add MCP to Docker image
nicolargo Feb 22, 2026
a53360d
Correct issue on exit when MCP server is started
nicolargo Feb 22, 2026
d31a079
Diskio plugin make Glances 4.5.0.5 crash on OpenBSD #3452
nicolargo Feb 22, 2026
7f7a487
Update README with MCP server version info
nicolargo Feb 23, 2026
0211347
Improve JSON serializer and add comprehensive tests (28 passing)
Julietmgbole Feb 24, 2026
5bedcd3
fix: guard args access in msg_curse across 9 plugins
SudeepMalipeddi Feb 24, 2026
bcb23c3
Wire stdout JSON output to GlancesJSONSerializer
Julietmgbole Feb 25, 2026
32ab892
Merge pull request #3455 from SudeepMalipeddi/fix/msg-curse-args-none…
nicolargo Feb 25, 2026
dbeab4a
Merge pull request #3454 from Julietmgbole/json-improvement-b
nicolargo Feb 25, 2026
295e9d0
add top-level key property to smart data
mark-rahal Feb 24, 2026
199e1ef
Merge pull request #3457 from mark-rahal/smart_data_per_device
nicolargo Feb 26, 2026
896c5e4
Format and lint
nicolargo Feb 26, 2026
a741cb4
Implement fix 1 — Python bug in glances/plugins/gpu/cards/amd.py (hig…
nicolargo Feb 27, 2026
6dc2321
Fix 2 — Snap configuration in snap/snapcraft.yaml #3456
nicolargo Feb 27, 2026
66cd5cc
Glances won't start - Permission denied: '/usr/share/libdrm/amdgpu.id…
nicolargo Feb 27, 2026
b195b8d
Add codegraphcontext ignore file
nicolargo Feb 27, 2026
d334f50
Update pre-commit
nicolargo Feb 27, 2026
285f664
Improve code quality by reducing complexity for network curses #3460
nicolargo Feb 27, 2026
76665ad
Make some correction in the Git commit pre-hook
nicolargo Feb 27, 2026
4360870
refactor(globals): reduce cyclomatic complexity of split_esc
AbdelhamidKhald Feb 27, 2026
d1e2733
Enhance the existing memory plugin to track runtime minimum and maxim…
sdoshi2061 Feb 28, 2026
b7ed0cc
Merge pull request #3461 from AbdelhamidKhald/fix/issue-3460-reduce-c…
nicolargo Mar 1, 2026
9b256db
Update WebUI for vulns
nicolargo Mar 1, 2026
96f0569
Improve code quality by reducing complexity for glances_curses_browse…
nicolargo Mar 1, 2026
aed5e48
feat(plugin): add generic mmm (min/max/mean) support in base plugin m…
sdoshi2061 Mar 1, 2026
34b5a3e
Update README with UVx installation instructions
nicolargo Mar 4, 2026
93c6fab
Unauthenticated Configuration Secrets Exposure
nicolargo Mar 7, 2026
729edae
SQL Injection via Process Names in TimescaleDB Export
nicolargo Mar 7, 2026
9baf896
Merge branch 'mem-plugin_e8a559ce-ab5b-4674-91e2-9c4f42636da2' of git…
nicolargo Mar 7, 2026
9428791
Improve docs and also add min/max/mean for CPU and load
nicolargo Mar 7, 2026
ec36461
Merge branch 'sdoshi2061-mem-plugin_e8a559ce-ab5b-4674-91e2-9c4f42636…
nicolargo Mar 7, 2026
5698b0e
Update deps
nicolargo Mar 7, 2026
40fed4a
FS plugin - KeyError: '/etc/hostname' on get_view #3470
nicolargo Mar 7, 2026
5bbebe6
Merge branch 'issue3470' into develop
nicolargo Mar 7, 2026
c397a84
MCP server rejects external host connections due to DNS rebinding pro…
nicolargo Mar 7, 2026
7a5f4b8
Merge branch 'issue3467' into develop
nicolargo Mar 7, 2026
6af073e
Improve CPU plugin display on MacOS #3464
nicolargo Mar 7, 2026
3ab8099
Update req
nicolargo Mar 7, 2026
2f1cfbd
Update profiling
nicolargo Mar 7, 2026
d65aeed
Merge branch 'develop'
nicolargo Mar 7, 2026
f7be215
Update NEWS file
nicolargo Mar 7, 2026
01fe1e1
Merge commit from fork
nicolargo Mar 7, 2026
75c8a76
Merge commit from fork
nicolargo Mar 7, 2026
37e3273
Merge branch 'develop' of github.com:nicolargo/glances into develop
nicolargo Mar 7, 2026
0bd52ef
Merge branch 'develop'
nicolargo Mar 7, 2026
4e09d43
Update NEWS
nicolargo Mar 7, 2026
bd98ae5
Merge branch 'master' into develop
nicolargo Mar 7, 2026
3076d79
CI - Avoid error on master branch when building Docker image
nicolargo Mar 7, 2026
b2989c5
On the road of Glances 4.5.2
nicolargo Mar 7, 2026
c3835d5
Correct CVE identifiers for security patches
nicolargo Mar 11, 2026
6213013
refactor(glances_curses): add space between system info and IP when n…
psyberck Mar 11, 2026
68931c0
Merge branch 'ZihaoXue1995-fix/issue#3469' into develop
nicolargo Mar 11, 2026
bd913e9
Refactor load_additional_plugins to reduce cyclomatic complexity
wavebyrd Mar 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
9 changes: 9 additions & 0 deletions .cgcignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/.git/
/.venv/
/.venv-uv/
/docker-compose/
/docker-files/
/docs/
/snap/
/tests/
/tests-data/
29 changes: 29 additions & 0 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
[report]

include =
*glances*

omit =
glances/outputs/*
glances/exports/*
glances/compat.py
glances/autodiscover.py
glances/client_browser.py
glances/config.py
glances/history.py
glances/monitored_list.py
glances/outdated.py
glances/password*.py
glances/snmp.py
glances/static_list.py

exclude_lines =
pragma: no cover
if PY3:
if __name__ == .__main__.:
if sys.platform.startswith
except ImportError:
raise NotImplementedError
if WINDOWS
if MACOS
if BSD
22 changes: 22 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Ignore everything
*

# Include only code files
!/glances/**/*.py

# Include WebUI files (remove when webui moved to seperate package)
!/glances/outputs/static

# Include Requirements files
!/all-requirements.txt
!/docker-requirements.txt

# Include Config file
!/docker-compose/glances.conf
!/docker-files/docker-logger.json

# Include Binary file
!/docker-bin.sh

# Include TOML file
!/pyproject.toml
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
glances/outputs/static/public/* -diff linguist-vendored
3 changes: 3 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# These are supported funding model platforms

github: nicolargo
27 changes: 27 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
Before filling this issue, please read the manual (https://glances.readthedocs.io/en/latest/) and search if the bug do not already exists in the database (https://github.com/nicolargo/glances/issues).

For any questions concerning installation or use, please open a discussion (https://github.com/nicolargo/glances/discussions), not an issue.

#### Description

For a bug: Describe the bug and list the steps you used when the issue occurred.

For an enhancement or new feature: Describe your needs.

#### Versions

* Glances & psutil versions: `To be completed with result of: glances -V`
* Operating System: `To be completed with result of: lsb_release -a`
* How do you install Glances (Pypi package, script, package manager, source): `To be completed`
* Glances test (only available with Glances 3.1.7 or higher):

```
To be completed with result of: glances --issue
```

#### Configuration and log file

You can also [pastebin](https://pastebin.com/):

* the Glances configuration file (https://glances.readthedocs.io/en/latest/config.html#location)
* the Glances log file (https://glances.readthedocs.io/en/latest/config.html#logging)
40 changes: 40 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---
**Check the bug**
Before filling this bug report, please search if a similar issue already exists.
In this case, just add a comment on this existing issue.

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Start Glances with the following options '...'
2. Press the key '....'
3. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Environement (please complete the following information)**
- Operating System (lsb_release -a or OS name/version): `To be completed with result of: lsb_release -a`
- Glances & psutil versions: `To be completed with result of: glances -V`
- How do you install Glances (Pypi package, script, package manager, source): `To be completed`
- Glances test: ` To be completed with result of: glances --issue`

**Additional context**
Add any other context about the problem here.

You can also [pastebin](https://pastebin.com/):

* the Glances configuration file (https://glances.readthedocs.io/en/latest/config.html#location)
* the Glances log file (https://glances.readthedocs.io/en/latest/config.html#logging)
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
11 changes: 11 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#### Description

Please describe the goal of this pull request.

For any questions concerning installation or use, please open a discussion (https://github.com/nicolargo/glances/discussions), not an issue.

#### Resume

* Bug fix: yes/no
* New feature: yes/no
* Fixed tickets: comma-separated list of tickets fixed by the PR, if any
82 changes: 82 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
# This pipeline aims at building Glances Pypi packages

name: build

on:
workflow_call:

jobs:

build:
name: Build distribution 📦
if: github.event_name == 'push'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.14"
- name: Install pypa/build
run: >-
python3 -m
pip install
build
--user
- name: Build a binary wheel and a source tarball
run: python3 -m build
- name: Store the distribution packages
uses: actions/upload-artifact@v4
with:
name: python-package-distributions
path: dist/

pypi:
name: Publish Python 🐍 distribution 📦 to PyPI
if: startsWith(github.ref, 'refs/tags')
needs:
- build
runs-on: ubuntu-latest
environment:
name: pypi
url: https://pypi.org/p/glances
permissions:
attestations: write
id-token: write
steps:
- name: Download all the dists
uses: actions/download-artifact@v5
with:
name: python-package-distributions
path: dist/
- name: Publish distribution 📦 to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
skip-existing: true
attestations: false
print-hash: true

pypi_test:
name: Publish Python 🐍 distribution 📦 to TestPyPI
if: github.ref == 'refs/heads/develop'
needs:
- build
runs-on: ubuntu-latest
environment:
name: testpypi
url: https://pypi.org/p/glances
permissions:
attestations: write
id-token: write
steps:
- name: Download all the dists
uses: actions/download-artifact@v5
with:
name: python-package-distributions
path: dist/
- name: Publish distribution 📦 to TestPyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
repository-url: https://test.pypi.org/legacy/
skip-existing: true
attestations: false
106 changes: 106 additions & 0 deletions .github/workflows/build_docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
# This pipeline aims at building Glances Docker images

name: build_docker

env:
DEFAULT_DOCKER_IMAGE: nicolargo/glances
PUSH_BRANCH: ${{ 'refs/heads/develop' == github.ref || startsWith(github.ref, 'refs/tags/v') }}
# Alpine image platform: https://hub.docker.com/_/alpine
# linux/arm/v6,linux/arm/v7 do not work (timeout during the build)
DOCKER_PLATFORMS: linux/amd64,linux/arm64/v8
# Ubuntu image platforms list: https://hub.docker.com/_/ubuntu
# linux/arm/v7 do not work (Cargo/Rust not available)
DOCKER_PLATFORMS_UBUNTU: linux/amd64,linux/arm64/v8

on:
workflow_call:
secrets:
DOCKER_USERNAME:
description: 'Docker Hub username'
required: true
DOCKER_TOKEN:
description: 'Docker Hub token'
required: true

jobs:

create_docker_images_list:
runs-on: ubuntu-latest
outputs:
tags: ${{ steps.config.outputs.tags }}
steps:
- name: Determine image tags
id: config
shell: bash
run: |
if [[ $GITHUB_REF == refs/tags/* ]]; then
VERSION=${GITHUB_REF#refs/tags/v}
TAG_ARRAY="[{ \"target\": \"minimal\", \"tag\": \"${VERSION}\" },"
TAG_ARRAY="$TAG_ARRAY { \"target\": \"minimal\", \"tag\": \"latest\" },"
TAG_ARRAY="$TAG_ARRAY { \"target\": \"full\", \"tag\": \"${VERSION}-full\" },"
TAG_ARRAY="$TAG_ARRAY { \"target\": \"full\", \"tag\": \"latest-full\" }]"
elif [[ $GITHUB_REF == refs/heads/develop ]]; then
TAG_ARRAY="[{ \"target\": \"dev\", \"tag\": \"dev\" }]"
else
TAG_ARRAY="[]"
fi

echo "Tags to build: $TAG_ARRAY"
echo "tags=$TAG_ARRAY" >> $GITHUB_OUTPUT

build_docker_images:
runs-on: ubuntu-latest
needs:
- create_docker_images_list
if: needs.create_docker_images_list.outputs.tags != '[]'
strategy:
fail-fast: false
matrix:
os: ['alpine', 'ubuntu']
tag: ${{ fromJson(needs.create_docker_images_list.outputs.tags) }}
steps:
- name: Checkout
uses: actions/checkout@v5

- name: Retrieve Repository Docker metadata
id: docker_meta
uses: docker/metadata-action@v5
with:
images: ${{ env.DEFAULT_DOCKER_IMAGE }}
labels: |
org.opencontainers.image.url=https://nicolargo.github.io/glances/

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
with:
platforms: all

- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v3
with:
version: latest

- name: Login to DockerHub
uses: docker/login-action@v3
if: ${{ env.PUSH_BRANCH == 'true' }}
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}

- name: Build and push image
uses: docker/build-push-action@v6
with:
push: ${{ env.PUSH_BRANCH == 'true' }}
tags: "${{ env.DEFAULT_DOCKER_IMAGE }}:${{ matrix.os != 'alpine' && format('{0}-', matrix.os) || '' }}${{ matrix.tag.tag }}"
build-args: |
CHANGING_ARG=${{ github.sha }}
context: .
file: "docker-files/${{ matrix.os }}.Dockerfile"
platforms: ${{ matrix.os != 'ubuntu' && env.DOCKER_PLATFORMS || env.DOCKER_PLATFORMS_UBUNTU }}
target: ${{ matrix.tag.target }}
labels: ${{ steps.docker_meta.outputs.labels }}
# GHA default behaviour overwrites last build cache. Causes alpine and ubuntu cache to overwrite each other.
# Use `scope` with the os name to prevent that
cache-from: 'type=gha,scope=${{ matrix.os }}'
cache-to: 'type=gha,mode=max,scope=${{ matrix.os }}'
35 changes: 35 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: ci

on:
pull_request:
branches: [ develop ]
push:
branches: [ master, develop ]
tags:
- v*

jobs:
quality:
uses: ./.github/workflows/quality.yml
test:
uses: ./.github/workflows/test.yml
needs: [quality]
build:
if: github.event_name != 'pull_request'
uses: ./.github/workflows/build.yml
needs: [quality, test]
build_docker:
if: github.event_name != 'pull_request' && (github.ref == 'refs/heads/develop' || startsWith(github.ref, 'refs/tags/'))
uses: ./.github/workflows/build_docker.yml
secrets:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_TOKEN: ${{ secrets.DOCKER_TOKEN }}
needs: [quality, test]
cyber:
if: github.ref == 'refs/heads/develop'
uses: ./.github/workflows/cyber.yml
needs: [quality, test]
webui:
if: github.ref == 'refs/heads/develop'
uses: ./.github/workflows/webui.yml
needs: [quality, test]
Loading