Skip to content

flare-capa is incompatible with flare-floss 3.1.0 #2053

@uckelman-sf

Description

@uckelman-sf

Description

flare-floss 3.1.0 requires pydantic 2.6.0. No released version of flare-capa permits using pydantic 2.6.0; therefore, the two current releases cannot be used together.

Steps to Reproduce

Minimal pyproject.toml:

[tool.poetry]
name = "test"
version = "1.0"
description = ""
authors = []

[tool.poetry.dependencies]
python = ">=3.11"
flare-capa = "*"
flare-floss = ">=3"

[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"

Then:

$ poetry lock

Expected behavior:

flare-capa and flare-floss are installed.

Actual behavior:


Because no versions of flare-capa match <1.0.0 || >1.0.0,<1.2.0 || >1.2.0,<1.3.0 || >1.3.0,<1.4.0 || >1.4.0,<1.5.1 || >1.5.1,<1.6.0 || >1.6.0,<1.6.1 || >1.6.1,<1.6.2 || >1.6.2,<1.6.3 || >1.6.3,<2.0.0 || >2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.0.3 || >3.0.3,<3.1.0 || >3.1.0,<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1
 and flare-capa (1.0.0) depends on networkx (2.2), flare-capa (<1.2.0 || >1.2.0,<1.3.0 || >1.3.0,<1.4.0 || >1.4.0,<1.5.1 || >1.5.1,<1.6.0 || >1.6.0,<1.6.1 || >1.6.1,<1.6.2 || >1.6.2,<1.6.3 || >1.6.3,<2.0.0 || >2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.0.3 || >3.0.3,<3.1.0 || >3.1.0,<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2).
And because flare-capa (1.2.0) depends on networkx (2.2)
 and flare-capa (1.3.0) depends on networkx (2.2), flare-capa (<1.4.0 || >1.4.0,<1.5.1 || >1.5.1,<1.6.0 || >1.6.0,<1.6.1 || >1.6.1,<1.6.2 || >1.6.2,<1.6.3 || >1.6.3,<2.0.0 || >2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.0.3 || >3.0.3,<3.1.0 || >3.1.0,<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2).
And because flare-capa (1.4.0) depends on networkx (2.2)
 and flare-capa (1.5.1) depends on networkx (2.2), flare-capa (<1.6.0 || >1.6.0,<1.6.1 || >1.6.1,<1.6.2 || >1.6.2,<1.6.3 || >1.6.3,<2.0.0 || >2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.0.3 || >3.0.3,<3.1.0 || >3.1.0,<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2).
And because flare-capa (1.6.0) depends on networkx (2.2)
 and flare-capa (1.6.1) depends on networkx (2.2), flare-capa (<1.6.2 || >1.6.2,<1.6.3 || >1.6.3,<2.0.0 || >2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.0.3 || >3.0.3,<3.1.0 || >3.1.0,<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2).
And because flare-capa (1.6.2) depends on networkx (2.2)
 and flare-capa (1.6.3) depends on networkx (2.2), flare-capa (<2.0.0 || >2.0.0,<3.0.0 || >3.0.0,<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.0.3 || >3.0.3,<3.1.0 || >3.1.0,<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2).
And because flare-capa (2.0.0) depends on pefile (2021.5.24)
 and flare-capa (3.0.0) depends on pefile (2021.9.3), flare-capa (<3.0.1 || >3.0.1,<3.0.2 || >3.0.2,<3.0.3 || >3.0.3,<3.1.0 || >3.1.0,<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2) or pefile (2021.5.24 || 2021.9.3).
And because flare-capa (3.0.1) depends on pefile (2021.9.3)
 and flare-capa (3.0.2) depends on pefile (2021.9.3), flare-capa (<3.0.3 || >3.0.3,<3.1.0 || >3.1.0,<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2) or pefile (2021.5.24 || 2021.9.3).
And because flare-capa (3.0.3) depends on pefile (2021.9.3)
 and flare-capa (3.1.0) depends on pefile (2021.9.3), flare-capa (<3.2.0 || >3.2.0,<3.2.1 || >3.2.1,<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2) or pefile (2021.5.24 || 2021.9.3).
And because flare-capa (3.2.0) depends on pefile (2021.9.3)
 and flare-capa (3.2.1) depends on pefile (2021.9.3), flare-capa (<4.0.0 || >4.0.0,<4.0.1 || >4.0.1,<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2) or pefile (2021.5.24 || 2021.9.3).
And because flare-capa (4.0.0) depends on pydantic (1.9.1)
 and flare-capa (4.0.1) depends on pydantic (1.9.1), flare-capa (<5.0.0 || >5.0.0,<5.1.0 || >5.1.0,<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2) or pefile (2021.5.24 || 2021.9.3) or pydantic (1.9.1).
And because flare-capa (5.0.0) depends on pydantic (1.10.4)
 and flare-capa (5.1.0) depends on pydantic (1.10.7), flare-capa (<6.0.0 || >6.0.0,<6.1.0 || >6.1.0,<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2) or pefile (2021.5.24 || 2021.9.3) or pydantic (1.9.1 || 1.10.4 || 1.10.7).
And because flare-capa (6.0.0) depends on pydantic (1.10.9)
 and flare-capa (6.1.0) depends on pydantic (2.1.1), flare-capa (<7.0.0 || >7.0.0,<7.0.1 || >7.0.1) requires networkx (2.2) or pefile (2021.5.24 || 2021.9.3) or pydantic (1.9.1 || 1.10.4 || 1.10.7 || 1.10.9 || 2.1.1).
And because flare-capa (7.0.0) depends on pydantic (2.4.0)
 and flare-capa (7.0.1) depends on pydantic (2.4.0), every version of flare-capa requires pydantic (1.9.1 || 1.10.4 || 1.10.7 || 1.10.9 || 2.1.1 || 2.4.0) or networkx (2.2) or pefile (2021.5.24 || 2021.9.3).
And because flare-floss (3.1.0) depends on both pydantic (2.6.0) and networkx (3.1), if flare-capa (*) and flare-floss (3.1.0) then pefile (2021.5.24 || 2021.9.3).
And because flare-floss (3.1.0) depends on pefile (>=2022.5.30)
 and no versions of flare-floss match >3.1, flare-capa is incompatible with flare-floss (>=3.1).
So, because test depends on both flare-capa (*) and flare-floss (>=3.1), version solving failed.

Versions

Every version of capa.

Additional Information

The immediate problem could be solved by a release of flare-capa which uses pydantic 2.6.0. However, problems of this sort could be avoided by setting constraints for dependencies which are looser.

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions