Comment 1 for bug 531261

Revision history for this message
Adi Roiban (adiroiban) wrote :

Here is the list of attributes found both in IProductSeries and IDistroSeries.

Is it ok if I move them in ISeriesMixin and their implementation in SeriesMixin ?

Otherwise, are you happy with the changes from the current attached branch?

    name = exported(
        DistroSeriesNameField(
            title=_("Name"), required=True,
            description=_("The name of this series."),
            constraint=name_validator))

    status = exported(
        Choice(
            title=_("Status"), required=True,
            vocabulary=SeriesStatus))

    date_created = exported(
        Datetime(title=_("The date this series was registered.")))

    owner = exported(
        PublicPersonChoice(title=_("Owner"), vocabulary='ValidOwner'))

    driver = exported(
        Choice(
            title=_("Driver"),
            description=_(
                "The person or team responsible for decisions about features "
                "and bugs that will be targeted to this series of the "
                "distribution."),
            required=False, vocabulary='ValidPersonOrTeam'))

    title = exported(
        Title(
            title=_("Title"), required=True,
            description=_(
                "The title of this series. It should be distinctive "
                "and designed to look good at the top of a page.")))

    displayname = exported(
        TextLine(
            title=_('Display Name'),
            description=_('Display name, in this case we have removed the '
                          'underlying database field, and this attribute '
                          'just returns the name.')),
        exported_as='display_name')

    summary = exported(
        Summary(title=_("Summary"), required=True,
            description=_(
                "A brief summary of the highlights of this release. "
                "It should be no longer than a single paragraph, up "
                "to 200 words.")))

-----------------------------------------------------------------------------------

The following attributes, have the same interface, but their implementation is different as they depend of product or distribution. Maybe we can move them in IHasBugs, IHasDrivers ... etc

    packagings = Attribute("All of the Packaging entries for this "
        "distroseries.")

    specifications = Attribute("The specifications targeted to this "
        "series.")

    drivers = Attribute(
        'A list of the people or teams who are drivers for this series. '
        'This list is made up of any drivers or owners from this '
        'DistroSeries, and the Distribution to which it belong.')

    bug_supervisor = Attribute(
        'Currently just a reference to the Distribution bug supervisor.')

    security_contact = Attribute(
        'Currently just a reference to the Distribution security contact.')