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

Implement shed_lint. #107

Open
10 of 11 tasks
jmchilton opened this issue Mar 24, 2015 · 7 comments
Open
10 of 11 tasks

Implement shed_lint. #107

jmchilton opened this issue Mar 24, 2015 · 7 comments

Comments

@jmchilton
Copy link
Member

jmchilton commented Mar 24, 2015

Lint a shed repository instead of just tools. This is a meta-issue to track 4 issues open by @peterjc.

@hexylena
Copy link
Member

How would you feel about checking for .shed.yml?
http://galaxy-iuc-standards.readthedocs.org/en/latest/best_practices/shed_yml.html

@jmchilton
Copy link
Member Author

Some initial work here #130 addressing linting tool_dependencies.xml, repository_dependencies.xml and .shed.yml but not the rest of this - but there is at least a spot for it now.

@peterjc
Copy link
Contributor

peterjc commented Apr 30, 2015

@erasche did you mean finding a .shed.yml means the folder is a Tool Shed repository? Or when checking a folder thought to be a Tool Shed repository, it ought to have a .shed.yml? This is important for recursion - how should planemo shed_list -r ... decide what to look at?

@hexylena
Copy link
Member

@peterjc nmo, I meant checking that a .shed.yml file was present in what looks like a tool folder/maybe validating the contents of it. See #130 and "Bare minimum to lint .shed.yml files."

@peterjc
Copy link
Contributor

peterjc commented Apr 30, 2015

Thanks for the clarification @erasche - basic linting of .shed.yml is happening now (ticked on the TODO list here), but I agree that can probably be more through.

See also #156 for dependency packages.

@hexylena
Copy link
Member

#96 would've caught galaxyproject/tools-iuc#148

@hexylena
Copy link
Member

hexylena commented Jul 4, 2017

planemo shed_lint --tools --ensure_metadata --urls --report_level warn --fail_level error tools/jq
Linting repository /home/hxr/work/tools-iuc/tools/jq
+Linting tool /home/hxr/work/tools-iuc/tools/jq/jq.xml
Applying linter citations... WARNING
.. WARNING: No citations found, consider adding citations to your tool.
Applying linter shed_metadata... WARNING
.. WARNING: Missing shed metadata field [description] for repository
.. WARNING: Missing shed metadata field [long_description] for repository
.. WARNING: Missing shed metadata field [remote_repository_url] for repository
.. WARNING: Missing shed metadata field [homepage_url] for repository
.. WARNING: Missing shed metadata field [categories] for repository

I think a missing .shed.yml file should be an error. Some of the metadata fields like homepage_url are nice-to-haves and thus are fine being warnings, but a missing .shed.yml is a problem, and we missed it during the JQ merge. Someone (i.e. myself, whenever I find five seconds amongst packing for my move) should PR this change.

xref galaxyproject/tools-iuc#1402

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants