This rule detects the presence of unused variables in unpacked assignments.
See: https://docs.astral.sh/ruff/rules/unused-unpacked-variable/
Fixed automatically with : 'ruff check --select RUF059 --unsafe-fixes --fix' + one
manual fix in tests/test_e3/anod/context_test.py
Ref: it/org/software-supply-chain/production-pipeline/issues#204
This rule requests to remove the use encode (utf-8) as it is the default
python encoding. See https://docs.astral.sh/ruff/rules/unnecessary-encode-utf8/
Automatically fixed using 'ruff check --select UP012 --fix'
Ref: it/org/software-supply-chain/production-pipeline/issues#204
Using the root logger causes the messages to have no source information,
making them less useful for debugging.
for details see: https://docs.astral.sh/ruff/rules/root-logger-call/
The fix was done manually
Ref: it/org/software-supply-chain/production-pipeline/issues#204
This rule detects for the presence of unused arguments in lambda expression definitions.
for details see: https://docs.astral.sh/ruff/rules/unused-lambda-argument/
The fix was done manually
Ref: it/org/software-supply-chain/production-pipeline/issues#204
This rule requests to consider {expression} instead of concatenation, for
details see https://docs.astral.sh/ruff/rules/collection-literal-concatenation/
These fix was automatically made by ruff with the command:
'ruff check --select RUF005 --unsafe-fixes --fix'
but a manual change on src/e3/anod/store/__init__.py was needed to fix C409
flake8 rules
Ref: it/org/software-supply-chain/production-pipeline/issues#204
The argnames argument of pytest.mark.parametrize takes a string or a sequence of strings.
This MR fix case when multiple parameters are not passed using a tuple. These
fixes was made automatically by ruff.
See: https://docs.astral.sh/ruff/rules/pytest-parametrize-names-wrong-type/
Ref: it/org/software-supply-chain/production-pipeline/issues#193
This commit fix the Ruff rule UP032: https://docs.astral.sh/ruff/rules/f-string/
This is done automatically through ruff check --select UP032 --fix
Ref: it/org/software-supply-chain/production-pipeline/issues#193
This commit fix the Ruff rule ANN204: https://docs.astral.sh/ruff/rules/missing-return-type-special-method/
This done automatically for all file but 2 files needs manual action : tests/tests_e3/conftest.py and tests/tests_e3/json_test.py
Ref: it/org/software-supply-chain/production-pipeline/issues#193
This check replace string format using % by format using {}, fixed automatically by ruff
Ref: it/org/software-supply-chain/production-pipeline/issues#193
This rules is to detect use of unnecessary start argument of range fonction, fixed automatically by ruff
Ref: it/org/software-supply-chain/production-pipeline/issues#193
This rules is to detect function without return annotation, most of
them was fixed automatically by ruff, 19 was done manually
Ref: it/org/software-supply-chain/production-pipeline/issues#193
With Python 3.14 and the new zstd support, the 'vary' header causes an
issue when looking at a response from our 'testing' cache (used only for
testing purposes).
Due to this new behavior, our
tests/tests_e3/cve/cve_test.py::test_nvd_cve_search was failing and tried
to make a real request instead of using the cache as expected
This commit removes `e3.weakref` and updates the other files accordingly.
On e3.npm, the `WeakSession` has been replaced by a regular session if not
provided by the user.
The `e3.npm.link.NPMLink.last_modified` property has been totally removed.
it/e3-core#69
This method has been replaced by `BuildInfo.as_dict`. The method still
exists, but will emit a deprecation warning if used and will be removed in
future versions of `e3-core`.
The renaming/deprecation is done for coherence purposes; other classes in
`e3.anod.store.*` uses `as_dict`.
it/e3-core#74
The `creation_date` field, used to retrieve the latest component, has a
precision of seconds.
When two consecutive component pushes are done too quickly, it may result
in two components with the same `creation_date` field.
To avoid this error and make a better fix, we will simply sleep for one
second between two pushes.
it/e3-core#62
The last modification date can come from two different places, depending
on the registry used:
- Directly from the registry metadata
- This method is not always supported; For example, the Gitlab NPM
registry will not provide this information.
- From the Last-Modified HTTP headers
- Retrieving the Last-Modified header generates a HEAD HTTP request.
This commit also adds a `session` parameter at several relevant places.
This is useful for multithreading purposes, but not mandatory: If no
session is provided, the code will create its own session instead.
Note: On multithreading, letting the code create a `session` instead of
providing a session may result in an `OSError`
'too many file descriptors open'.
it/package-registry#47