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

Added extension sharing guidelines #2

Merged
merged 12 commits into from
Oct 19, 2019
Merged

Added extension sharing guidelines #2

merged 12 commits into from
Oct 19, 2019

Conversation

oruebel
Copy link
Contributor

@oruebel oruebel commented Jun 1, 2019

Add page with the general guidelines for sharing extensions

@oruebel oruebel requested review from rly, bendichter and ajtritt June 1, 2019 01:21
1. Namespaces for extensions SHOULD generally follow the following naming conventions:
1. Use only lower-case ASCII letters (no special characters)
1. Use “-” to separate different parts of the name (no spaces allowed)
1. Use the naming schema “ndx-myname”, e.g., “ndx-cortical-surface”
Copy link
Contributor

Choose a reason for hiding this comment

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

My preference for names would be:

  • the namespace name is e.g. "speech" (speech.namespace.yaml)
  • the repo name is e.g. "ndx-speech" (git clone ...ndx-speech.git)
  • the package name is e.g. "ndx_speech" (from ndx_speech import Transcription)

We know all non-core namespaces are going to be neurodata extensions, so there isn't much point in having the ndx prefix there. It only serves a purpose for the repo and package names, where this will be alongside other repos and packages.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think we need to clarify this text a bit, because I think it is not clear when we refer to the name of the namespace.yaml file and name key of the namespace that is in the namespace.yaml file. My current thinking is:

  • The 1) name key of the namespace, 2) the name of recipe repo in the NDX catalog, and 3) the name of package in python should all be ndx_speech
  • The name of 4) the yaml file of the namespace should be ndx_speech.namespace.yaml

If I understand it correctly, you are proposing to change (4) the name of YAML namespace file to just speech.namespace.yaml and leave (1 -3) as is with ndx_speech. I think that is probably fine.

I'll update the text to indicate _ instead of - as replacement for spaces to make sure we can have the same name for the python package and repos and namespace name.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@bendichter I updated the text for "Naming namespaces and repositories". Does this look better?

@rly
Copy link
Contributor

rly commented Oct 16, 2019

I updated the naming rules based on the discussion here: nwb-extensions/ndx-template#21

We can change it back, but my preference is:

  1. the name key of the namespace should be ndx-speech
  2. the name of the source repo and extension on PyPI is ndx-speech
  3. the name of the record repo in the NDX catalog should be ndx-speech-record
  4. the name of the package in python should be ndx_speech (hyphens not allowed)
  5. the name of the namespace yaml file should be ndx-speech.namespace.yaml

Please see my reasoning in the above link.

@oruebel
Copy link
Contributor Author

oruebel commented Oct 16, 2019

@rly I updated the terms to match and did some minor clean up. I think this one is good to go.

rly added 2 commits October 18, 2019 14:19
Require README file for release of extensions
Mention that registration within the NDX catalog requires the name key of the namespace to begin with "ndx-"
Do not say that the ndx-custom repository SHOULD include a URL (what would this URL point to?)
@rly
Copy link
Contributor

rly commented Oct 18, 2019

I made a few changes:

  • Require README file for release of extensions
  • Mention that registration within the NDX catalog requires the name key of the namespace to begin with "ndx-"
  • Do not say that the ndx-custom repository SHOULD include a URL (what would this URL point to?)
  • Minor cleanup

I think this is good to go. Feel free to merge.

@oruebel oruebel merged commit 180992b into master Oct 19, 2019
@oruebel oruebel deleted the add/sharingguide branch October 19, 2019 00:31
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

Successfully merging this pull request may close these issues.

3 participants