-
-
Notifications
You must be signed in to change notification settings - Fork 532
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
Add support for citation file format #3580
Comments
hey @pombredanne , I want to work on this. |
@subhajit20 Thanks!
|
Okay, can you give some sample pr @pombredanne would be much better to understand then ? |
@pombredanne Hii, I would love to contribute on this issue. Can you assign and help me out to know about this issue more and how to resolve it ? |
@subhajit20 I'm not sure I understand you here, if you want to contribute here you'll have to start a PR on your own implementing the solution, and then we can guide you on what you can do better. I can give you am example PR adding parsers for a different package format here: #3607 which is similar broadly, but would differ a lot on actual details.
@krishna9358 we don't assign issues to contributors, if you don't see any open PRs for an issue you can go ahead and take a shot at implementing it, worst case if there person working on it, you can collaborate with them too. We already have plenty details on the issue above at #3580 (comment) |
@AyanSinhaMahapatra Okay, I am going to try resolving this issue. Thank you for the details. |
Parses citation files containing information about citing software/dataset. Added tests to validate the parser. fixes nexB#3580 Check comments for mapping of keys between citation.cff and models.py Signed-off-by: Sumit Pagar <sumitpagar123@gmail.com>
Adding citation.cff to list of supported package parsers. fixes nexB#3580 Signed-off-by: Sumit Pagar <sumitpagar123@gmail.com>
Parses citation files containing information about citing software/dataset. Added tests to validate the parser. Added documentation for citation.cff in list of supported package parsers. fixes nexB#3580 Check comments for mapping of keys between citation.cff and models.py Signed-off-by: Sumit Pagar <sumitpagar123@gmail.com>
Parses citation files containing information about citing software/dataset. Added tests to validate the parser. Added documentation for citation.cff in list of supported package parsers. Signed-off-by: Sumit Pagar <sumitpt of supported package parsers. fixes nexB#3580 Check comments for mapping of keys between citation.cff and models.py Signed-off-by: Sumit Pagar <sumitpagar123@gmail.com>
Hi @AyanSinhaMahapatra and @pombredanne , I have started working on this issue and have also raised a PR #3625 . I have made the following progress so far - 1) Reviewing Citation file format.I went over the citation file specification in detail. Question 1) To check if a citation file is valid, we can either validate the filename and if it is a YAML file, or we can use a Python command cffconvert that they expose. 2) Mapping CFF keys/fields to available keys/fields in models.py.I reviewed available parsers and their tests and also checked Pull Request #3607.
3) Coding and testing.Added file citation.py with class:
Documentation: Question 2) Do we need to add methods like assign_package_to_resources and get_cff_root? I was not sure about its usage hence I did not add them. General questions:Question 5) Can you tell me which scancode command exposed in the CLI internally invokes the file parsing methods (say conda.CondaMetaYamlHandler.parse)? Please do let me know about my questions. Also, do let me know if you require any more info from me. |
Parses citation files containing information about citing software/dataset. Added tests to validate the parser. Added documentation for citation.cff in list of supported package parsers. fixes nexB#3580 Check comments for mapping of keys between citation.cff and models.py Signed-off-by: Zumitify <sumitpagar123@gmail.com>
@Zumitify Thanks+++ for the very very detailed comment and questions! Love this!
I would be inclined to not have the additional dependency here, the filename and potentially another checker like the one here should be enough for this, but based on https://github.com/search?q=path%3A*.cff&type=Code&ref=advsearch&l=&l=&p=3 it seems like
Yeah, we have to make use of whatever is available and can be mapped. There could be some extra important fields too which don't fit out model, we can store this in extra_data, (and consider adding to the package model if this is present in other ecosystems/package manifests too, here the
I'd be more comfortable with variations seen in the wild. See https://github.com/search?q=path%3A*.cff&type=Code&ref=advsearch&l=&l=&p=1 for examples.
This is kind of a supporting manifest present and not really a main ecosystem manifest which is used to assign resources to packages (and create package instances). So these functions are not required.
This should be fine if you've checked the output carefully for errors/inconsistencies, and is the recommended way to do this.
Yes! Mention the new package format support.
This is the
I'm not sure what you mean by adding another package, but I've added a comment in the PR about having dependency fields from the reference to hold additional reference data which can be dependencies. Other things like authors are list fields and can have multiple entries too. We can also place extra fields in extra_data if they are important. |
@AyanSinhaMahapatra Thanks for the detailed response, I'll keep these things in mind while making further code changes. |
https://citation-file-format.github.io/ would be a package data file-like data source
The text was updated successfully, but these errors were encountered: