-
Notifications
You must be signed in to change notification settings - Fork 171
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ANE-610] Adds PDM Support #1214
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm only requesting changes to get a bit more clarity on how the strategies are organized here. Otherwise, this looks good to me.
src/Srclib/Converter.hs
Outdated
@@ -155,6 +158,7 @@ depTypeToFetcher = \case | |||
UserType -> "user" | |||
PubType -> "pub" | |||
SwiftType -> "swift" | |||
PathType -> "url" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the distinction here between URLType
and PathType
? I ask mainly because we'll do some work with path deps in the near-ish future and some of them probably won't map to a URL fetcher. I don't think this would be a problem because it's easy to add new types but I thought I'd ask.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good catch - I changed to path
now. These should be filtered out regardless.
I'm adding something like enrich :: (...) => Graphing Dependency -> m (Graphing Dependency)
in upcoming conan pr, which would handle path dependencies. So I left it here for now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm interested in hearing your thoughts about this as we have upcoming tickets (ANE-383/ANE-893) which are both focused on Go path deps. We were hoping to use them as a model for how to do it for other path deps. In particular a challenge we have to solve is how to present path deps in the UI in a way that isn't confusing or misleading.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wasn't aware re ANE-383/ANE-893. I will bring this up in our slack channel. If ANE-383 is already slotted, I will defer some of the conan work for later, so we can have consistent model.
src/Srclib/Converter.hs
Outdated
@@ -155,6 +158,7 @@ depTypeToFetcher = \case | |||
UserType -> "user" | |||
PubType -> "pub" | |||
SwiftType -> "swift" | |||
PathType -> "url" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm interested in hearing your thoughts about this as we have upcoming tickets (ANE-383/ANE-893) which are both focused on Go path deps. We were hoping to use them as a model for how to do it for other path deps. In particular a challenge we have to solve is how to present path deps in the UI in a way that isn't confusing or misleading.
Overview
This PR, adds initial PDM support.
It does not support,
Acceptance criteria
pyproject.toml
andpdm.lock
pyproject.toml
Testing plan
Prereq
PDM (with lockfile)
pdm lock
(to create lockfile)fossa-dev analyze
Or clone example pdm project: https://github.com/pdm-project/pdm
PDM (without lockfile)
fossa-dev analyze
Or clone example pdm project: https://github.com/pdm-project/pdm, and
rm pdm.lock
.Risks
N/A
Metrics
N/A
References
https://fossa.atlassian.net/browse/ANE-610
Checklist
docs/
.Changelog.md
. If this PR did not mark a release, I added my changes into an# Unreleased
section at the top..fossa.yml
orfossa-deps.{json.yml}
, I updateddocs/references/files/*.schema.json
. You may also need to update these if you have added/removed new dependency type (e.g.pip
) or analysis target type (e.g.poetry
).