Find unused parts of your Robot Framework project
Project description
Robot Framework Find Unused
Find unused parts of your Robot Framework project.
Robocop is great at finding unused parts in a single file. Find unused finds unused parts across all your project files.
Allows you to find unused:
- Keywords
- Keyword arguments
- Keyword return statements
- Global variables
- Files
Installation
Install with pip
pip install robotframework-find-unused
How to use
This is a command-line tool.
-
Open a command line in your Robot Framework project
-
Run the following command to show available options:
robotunused --help
Find unused keywords
Walk through your .robot, .resource, and .py files. In those files, count how often each
keyword is used (called). Keywords with 0 uses are logged.
robotunused keywords
Please note that there are limitations. For an overview of current limitations, run the following command:
robotunused keywords --help
Available options
| flag | option | default | description |
|---|---|---|---|
-c, --show-count |
Output usage count for all keywords instead of only unused keywords | ||
-f, --filter |
Glob pattern | Only output keywords who's name match the glob pattern. Match without library prefix | |
-d, --deprecated |
include / exclude / only |
include |
How to output deprecated keywords |
-p, --private |
include / exclude / only |
include |
How to output private keywords |
-l, --library |
include / exclude / only |
exclude |
How to output keywords from downloaded libraries |
-u, --unused-library |
include / exclude |
exclude |
How to output unused keywords from downloaded libraries |
-v, --verbose |
Show more log output. When provided twice: Show even more log output |
Find unused keyword arguments
Walk through your .robot, .resource, and .py files. In those files, count how often each
argument is used during a keyword call. Arguments with 0 uses are logged.
By default, will ignore arguments from unused keywords.
robotunused arguments
Please note that there are limitations. For an overview of current limitations, run the following command:
robotunused arguments --help
Available options
| flag | option | default | description |
|---|---|---|---|
-c, --show-count |
Show usage count for all arguments instead of only unused arguments | ||
-f, --filter |
Glob pattern | Only output keywords who's name match the glob pattern. Match without library prefix | |
-d, --deprecated |
include / exclude / only |
include |
How to output deprecated keywords |
-p, --private |
include / exclude / only |
include |
How to output private keywords |
-l, --library |
include / exclude / only |
exclude |
How to output keywords from downloaded libraries |
-u, --unused |
include / exclude / only |
exclude |
How to output unused keywords |
-v, --verbose |
Show more log output. When provided twice: Show even more log output |
Find unused keyword return statements
Walk through your .robot, .resource, and .py files. In those files, count how often each
keyword return value is used (assigned to a variable). Keywords whose return value is never useds
are logged.
By default, will ignore arguments from unused keywords.
robotunused returns
Please note that there are limitations. For an overview of current limitations, run the following command:
robotunused returns --help
Available options
| flag | option | default | description |
|---|---|---|---|
-c, --show-count |
Output usage count for all keywords instead of only keywords with unused returns | ||
-f, --filter |
Glob pattern | Only output keywords who's name match the glob pattern. Match without library prefix | |
-d, --deprecated |
include / exclude / only |
include |
How to output deprecated keywords |
-p, --private |
include / exclude / only |
include |
How to output private keywords |
-l, --library |
include / exclude / only |
exclude |
How to output keywords from downloaded libraries |
-u, --unused |
include / exclude / only |
exclude |
How to output unused keywords |
-v, --verbose |
Show more log output. When provided twice: Show even more log output |
Find unused global variables
Walk through your .robot and .resource files. In those files, count how often each
variable is used. Variables defined in a variables section or variable file with 0 uses are logged.
robotunused variables
Please note that there are limitations. For an overview of current limitations, run the following command:
robotunused variables --help
Available options
| flag | option | default | description |
|---|---|---|---|
-c, --show-count |
Show usage count for all variables instead of only unused variables | ||
-f, --filter |
Glob pattern | Only show variables who's name match the glob pattern. Matching without {brackets} and $@&% prefixes | |
-v, --verbose |
Show more log output. When provided twice: Show even more log output |
Find unused files
For each of your .robot files, follow the full chain of imports. Files that are never (indirectly)
imported by a .robot file are logged.
robotunused files
Please note that there are limitations. For an overview of current limitations, run the following command:
robotunused files --help
Available options
| flag | option | default | description |
|---|---|---|---|
-c, --show-count |
Show usage count for all files instead of only unused variables | ||
-t, --show-tree |
Also show full import tree for every .robot file |
||
--tree-max-depth |
Positive integer | None |
Only when --show-tree: Limit import tree depth |
--tree-max-height |
Positive integer | None |
Only when --show-tree: Limit import tree height |
-f, --filter |
Glob pattern | Only show files who's path matches the glob pattern. When used with --show-tree: Only show trees for suite files that match the glob pattern. |
|
-r, --resource |
include / exclude / only |
include |
How to output resource file imports |
-l, --library |
include / exclude / only |
include |
How to output (custom) library file imports |
-V, --variable |
include / exclude / only |
include |
How to output variable file imports |
-u, --unused |
include / exclude / only |
include |
How to output unused file imports |
-v, --verbose |
Show more log output. When provided twice: Show even more log output |
Contributing
I'm open to contributions. Please contact me in the issues.
When contributing, you'll need uv to manage dependencies.
Linting
You can't merge with lint issues. This is enforced by the pipeline.
To run the linter, use the following command:
uv run ruff check
Testing
You can't merge with failing tests. This is enforced by the pipeline.
To run all tests, use the following command:
uv run pytest -n auto
Tasks
To manage various things, we use Invoke as a task runner.
To get a full list of available tasks, run:
uv run invoke --list
To run a task, run:
uv run invoke build
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file robotframework_find_unused-0.7.0.tar.gz.
File metadata
- Download URL: robotframework_find_unused-0.7.0.tar.gz
- Upload date:
- Size: 33.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e4032bb01c19d8401e91641a5e9c809853f81bff323884f41de88c0afd399fa
|
|
| MD5 |
fd0bd1dd389b3d0c8493f240008e8a36
|
|
| BLAKE2b-256 |
c7c33fb33f475e5f387bb270ec9e3ee8b0800c2d7814c401607944f3a7e238d9
|
File details
Details for the file robotframework_find_unused-0.7.0-py3-none-any.whl.
File metadata
- Download URL: robotframework_find_unused-0.7.0-py3-none-any.whl
- Upload date:
- Size: 57.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
71ba391b4b3068296f6fc62406f522ad184d4bc7573574cad33f8241f66c8b3a
|
|
| MD5 |
0c1278a04ca30e7ebdfe8a6d8d8d9f7b
|
|
| BLAKE2b-256 |
4b3e3acb6a55b3c446d0eaba3818d2f701a1ef21dd117e13707add94b507b003
|