Skip to content
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

feat: added cocoapods lockfile to the list of supported lockfiles #330

Merged
merged 1 commit into from
Dec 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions semgrep_output_v1.atd
Original file line number Diff line number Diff line change
Expand Up @@ -509,6 +509,7 @@ type ecosystem
| Nuget <json name="nuget">
| Pub <json name="pub">
| SwiftPM <json name="swiftpm">
| Cocoapods <json name="cocoapods">
Comment on lines 511 to +512
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your understanding is that SwiftPM and Cocoapods are entirely separate package namespaces, right? I did a bit of searching just now and that seems to be the case, but it also seems like they might both use git URLs as the primary identifier. I just want to ensure that this isn't an npm/yarn or pip/poetry situation

Copy link
Contributor Author

@aaronmichaelacosta aaronmichaelacosta Dec 17, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AFAIK npm/yarn and pip/poetry are cases in which two package managers use the same central repository. So, for example, a package with the same name/version in pip is guaranteed to be the exact same as the package with the same name/version in poetry.

While Cocoapods and SwiftPM have some coincidental overlap (e.g. they're used for iOS/macOS/tvOS development, their packages can live in github), but they are completely separate ecosystems with different registries. Cocoapods has a centralized repo at cocoapods.org and supports both obj-c and swift packages, while SwiftPM seems to be distributed with packages hosted anywhere and supports swift-only. There's no guarantee that a package in one will exist in the other, and it's entirely possible for two packages to exist in the PMs with the same name/version but be completely different.

(* Deprecated: Mix is a build system, should use Hex, which is the ecosystem *)
| Mix <json name="mix">
| Hex <json name="hex">
Expand Down Expand Up @@ -1674,6 +1675,7 @@ type sca_parser_name = [
| Composer_lock <json name="composer_lock">
| Pubspec_lock <json name="pubspec_lock">
| Package_swift <json name="package_swift">
| Podfile_lock <json name="podfile_lock">
| Package_resolved <json name="package_resolved">
| Mix_lock <json name="mix_lock">
]
Expand Down Expand Up @@ -2025,6 +2027,7 @@ type lockfile_kind
| NugetPackagesLockJson
| PubspecLock
| SwiftPackageResolved (* not a real lockfile *)
| PodfileLock
| MixLock
| ConanLock
] <ocaml repr="classic">
Expand Down Expand Up @@ -2067,6 +2070,8 @@ type manifest_kind
(* Package.swift
* https://docs.swift.org/package-manager/PackageDescription/PackageDescription.html *)
| PackageSwift
(* Podfile - https://guides.cocoapods.org/using/the-podfile.html *)
| Podfile
(* mix.exs
* https://hexdocs.pm/elixir/introduction-to-mix.html#project-compilation *)
| MixExs
Expand Down
4 changes: 4 additions & 0 deletions semgrep_output_v1.jsonschema

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion semgrep_output_v1.proto

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

84 changes: 80 additions & 4 deletions semgrep_output_v1.py

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 20 additions & 0 deletions semgrep_output_v1.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading