[Pulp-dev] python namespace proposal

Michael Hrivnak mhrivnak at redhat.com
Wed May 17 18:29:28 UTC 2017


Our python package names currently all have underscores. For example:

https://github.com/pulp/pulp_rpm/blob/2.13-release/plugins/setup.py#L6

Are we thinking of moving to hyphens for a particular reason? I could be
persuaded, but consistency is certainly nice between the python package
name and the python namespace.

On Wed, May 17, 2017 at 2:05 PM, Brian Bouterse <bbouters at redhat.com> wrote:

> I got some positive IRC feedback about the names in the doc, but nothing
> via e-mail. I've added the PyPI names to be registered from the Google doc
> to the ticket about registering them [0]. It needs to be groomed. I plan to
> nominate it at sprint planning tomorrow.
>
> [0]: https://pulp.plan.io/issues/2444
>
> -Brian
>
> On Mon, May 15, 2017 at 3:02 PM, Brian Bouterse <bbouters at redhat.com>
> wrote:
>
>> To make a concrete listing of what we would register, I wrote out a list
>> of all PyPI packages to be registered as column A here:
>>
>> https://docs.google.com/spreadsheets/d/1F6_eOefpHkwtxm1YXgjA
>> ypGHW826Ogt5Z3Us4elg-YY/edit?usp=sharing
>>
>> I've written these out with dashes not underscores. I *think* either
>> would work. Is this what others had in mind?
>>
>>
>> On Mon, May 15, 2017 at 1:11 PM, Michael Hrivnak <mhrivnak at redhat.com>
>> wrote:
>>
>>> I also imagine us getting to that point where the CLI does not require
>>> any code specific to a particular plugin, but I'm not sure we'll get there
>>> in 3.0.
>>>
>>> On Mon, May 15, 2017 at 10:25 AM, Brian Bouterse <bbouters at redhat.com>
>>> wrote:
>>>
>>>> +1 to all of the core stuff. Thank you for writing it up.
>>>>
>>>> For the pulp_rpm case +0 to what you had written. I had imagined it
>>>> with a slightly different example, but I think in practice it's almost the
>>>> same.
>>>>
>>>> pip install pulp_rpm
>>>> from pulp_rpm import anything
>>>>
>>>> As an aside, I'm hoping that plugins only have to provide a server
>>>> package and that by installing it on the server the CLI will know about the
>>>> additional command set somehow. If so this would avoid plugin writers
>>>> having to make additional pulp_rpm_common and pulp_rpm_cli pip packages. If
>>>> we can't do that then I would think the pip and import for a plugin like
>>>> RPM would be:
>>>>
>>>> pip install pulp_rpm
>>>> pip install pulp_rpm_common
>>>> pip install pulp_rpm_cli
>>>>
>>>> from pulp_rpm import anything
>>>> from pulp_rpm import cli
>>>> from pulp_rpm import common
>>>>
>>>> Does ^ make sense? Is that similar or different to how others imagined
>>>> it? It's slightly different than the example given by @mrhivnak, but in
>>>> practice I don't think it is different.
>>>>
>>>> On Fri, May 12, 2017 at 12:52 PM, Daniel Alley <dalley at redhat.com>
>>>> wrote:
>>>>
>>>>> +1
>>>>>
>>>>> On Fri, May 12, 2017 at 12:13 PM, Jeff Ortel <jortel at redhat.com>
>>>>> wrote:
>>>>>
>>>>>> +1, This sounds good to me.
>>>>>>
>>>>>> On 05/11/2017 10:59 AM, Michael Hrivnak wrote:
>>>>>> > We had a brainstorm session today to re-evaluate the
>>>>>> previously-identified options, and try to come up with
>>>>>> > some new ones. None of the previously-identified options had enough
>>>>>> support to be chosen. See the thread "PyPI
>>>>>> > names for Pulp3" for background.
>>>>>> >
>>>>>> > To re-cap, we are focused on two related questions:
>>>>>> >
>>>>>> > 1. What python namespace should Pulp use, since we cannot continue
>>>>>> to use "pulp"?
>>>>>> >
>>>>>> > 2. What PyPI package names should we use?
>>>>>> >
>>>>>> > I pitched an idea for 1 that everyone on the call liked, which is
>>>>>> "pulpcore". It could alternatively be
>>>>>> > "pulp_core", although my pinky finger prefers the former. The group
>>>>>> of roughly 10 people who participated in
>>>>>> > the discussion are recommending "pulpcore" for consideration as the
>>>>>> python namespace to replace "pulp". Please
>>>>>> > add your feedback to this thread.
>>>>>> >
>>>>>> > "core" is likable because it implies a plugin architecture. It's
>>>>>> similar to the word "platform" that we've
>>>>>> > used extensively, but shorter (which people liked), and perhaps
>>>>>> slightly more descriptive (which people also
>>>>>> > liked). Example:
>>>>>> >
>>>>>> > from pulpcore import streamer
>>>>>> >
>>>>>> > We discussed renaming what is currently "pulp.platform" to
>>>>>> something more descriptive. "platform" is a word
>>>>>> > that's been with us a long time, but it's worth re-considering,
>>>>>> especially if we shift to a similar word such
>>>>>> > as "core". "pulpcore.platform" seems awkward.
>>>>>> >
>>>>>> > A proposal is "pulpcore.apps", since that code is all directly
>>>>>> related to the celery app and django app.
>>>>>> >
>>>>>> > Python namespaces would include:
>>>>>> >
>>>>>> > pulpcore.apps
>>>>>> > pulpcore.cli
>>>>>> > pulpcore.common
>>>>>> > pulpcore.plugin
>>>>>> > pulpcore.streamer
>>>>>> >
>>>>>> > For python package names, they would look something like this:
>>>>>> >
>>>>>> > pip install pulpcore
>>>>>> > pip install pulpcore_cli
>>>>>> > pip install pulpcore_streamer
>>>>>> > pip install pulpcore_common
>>>>>> >
>>>>>> > Plugins would continue to use their existing namespace and package
>>>>>> names, with whatever variations are
>>>>>> > appropriate in Pulp 3. For example:
>>>>>> >
>>>>>> > import pulp_rpm.plugins
>>>>>> > pip install pulp_rpm_plugins
>>>>>> >
>>>>>> > Thoughts? Those of you who were part of the discussion, please
>>>>>> chime in with any additional points you'd like
>>>>>> > to highlight.
>>>>>> >
>>>>>> > --
>>>>>> >
>>>>>> > Michael Hrivnak
>>>>>> >
>>>>>> > Principal Software Engineer, RHCE
>>>>>> >
>>>>>> > Red Hat
>>>>>> >
>>>>>> >
>>>>>> >
>>>>>> > _______________________________________________
>>>>>> > Pulp-dev mailing list
>>>>>> > Pulp-dev at redhat.com
>>>>>> > https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>>> >
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Pulp-dev mailing list
>>>>>> Pulp-dev at redhat.com
>>>>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>>>
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Pulp-dev mailing list
>>>>> Pulp-dev at redhat.com
>>>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Pulp-dev mailing list
>>>> Pulp-dev at redhat.com
>>>> https://www.redhat.com/mailman/listinfo/pulp-dev
>>>>
>>>>
>>>
>>>
>>> --
>>>
>>> Michael Hrivnak
>>>
>>> Principal Software Engineer, RHCE
>>>
>>> Red Hat
>>>
>>
>>
>


-- 

Michael Hrivnak

Principal Software Engineer, RHCE

Red Hat
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/pulp-dev/attachments/20170517/2e4b85fa/attachment.htm>


More information about the Pulp-dev mailing list