[Fedora-infrastructure-list] Extras Package Database
by Elliot Lee
Hi all,
http://fedoraproject.org/wiki/Infrastructure/PackageDatabase has been
out there for a bit...
I've put together a strawman schema (as a TurboGears model.py) to
help move things along - apologies if someone else has beaten me to
it. I think at this point the right questions to be asking are long
the lines of "will this schema support feature X or use case Y?".
From a quick glance at the web page, I *think* it mostly will. There
are some problems with this still, but open source is all about
fixing those problems :)
class Collection(SQLObject):
name = StringCol(length=128, notNone=True) # "Core", "Extras", or
whatever names-for-grouping you want
class Package(SQLObject):
name = StringCol(length=128, notNone=True) # "Core", "Extras", or
whatever names-for-grouping you want
created = DateTimeCol(default=sqlbuilder.func.NOW(), notNone=True)
status = EnumCol(enumValues=('awaitingreview', 'approved',
'denied'), default='awaitingreview', notNone=True)
class PackageHistory(SQLObject): # Records changes to packages
package = ForeignKey('Package', notNone=True)
by_user_id = IntCol(notNone=True) # Foreign key into account
database - user who made the change
action = EnumCol(enumValues=('added', 'removed', 'statuschanged'),
notNone=True)
status = StringCol(length=128, notNone=True) # Not EnumCol, but
could be changed to be one.
when = DateTimeCol(default=sqlbuilder.func.NOW(), notNone=True)
class PackageListing(SQLObject):
package = ForeignKey('Package', notNone=True)
collection = ForeignKey('Collection', notNone=True)
created = DateTimeCol(default=sqlbuilder.func.NOW(), notNone=True)
status = EnumCol(enumValues=('awaitingreview', 'awaitingbranch',
'approved', 'denied'), default='awaitingreview', notNone=True)
class PackageListingHistory(SQLObject): # Records changes to packages
package_listing = ForeignKey('PackageListing', notNone=True)
by_user_id = IntCol(notNone=True) # Foreign key into account
database - user who made the change
action = EnumCol(enumValues=('added', 'removed', 'statuschanged'),
notNone=True)
status = StringCol(length=128, notNone=True) # Not EnumCol, but
could be changed to be one.
when = DateTimeCol(default=sqlbuilder.func.NOW(), notNone=True)
class PackageVersion(SQLObject): # A specific version on a specific
branch
package_listing = ForeignKey('PackageListing', notNone=True)
version = StringCol(length=128, notNone=True)
status = EnumCol(enumValues=('awaitingdevel', 'awaitingreview',
'awaitingqa', 'awaitingpublish', 'approved', 'denied', 'obsolete'),
default='awaitingdevel', notNone=True)
created = DateTimeCol(default=sqlbuilder.func.NOW(), notNone=True)
class PackageVersionHistory(SQLObject): # Records changes to packages
package_version = ForeignKey('PackageVersion', notNone=True)
by_user_id = IntCol(notNone=True) # Foreign key into account
database - user who made the change
action = EnumCol(enumValues=('added', 'statuschanged'), notNone=True)
status = StringCol(length=128, notNone=True) # Not EnumCol, but
could be changed to be one.
when = DateTimeCol(default=sqlbuilder.func.NOW(), notNone=True)
class PackageInterest(SQLObject):
# Note: PackageInterestHistory table assumes that records will never
be removed from here.
# Instead, set the status to 'obsolete'
user_id = IntCol(notNone=True)
package_listing = ForeignKey('PackageListing', notNone=True)
status = EnumCol(enumValues=('awaitingreview', 'approved', 'denied',
'obsolete'), default='awaitingreview', notNone=True)
role = EnumCol(enumValues=('watcher', 'owner'), default='watcher',
notNone=True) # Used for authorization
class PackageInterestHistory(SQLObject):
package_interest = ForeignKey('PackageInterest', notNone=True)
action = EnumCol(enumValues=('added', 'statuschanged'), notNone=True)
status = StringCol(length=128, notNone=True) # Not EnumCol, but
could be changed to be one.
when = DateTimeCol(default=sqlbuilder.func.NOW(), notNone=True)
Best,
-- Elliot
16 years, 11 months
Re: [Fedora-infrastructure-list] New package version control
by Toshio Kuratomi
On Thu, 2006-06-29 at 22:55 -0500, David Eisenstein wrote:
> Hi Toshio!
>
> Is there any interest in including Fedora Legacy in this process? We,
> too, are moving to using CVS or some kind of package versioning system
> in our maintenance work with Fedora Legacy packages.
Greetings David,
Warren was the initial person pulling together ideas for this and is
probably still the man in the know for policy decisions.
Jesse has been listening in from time to time as well, though, so he
might already have had a say on how Legacy works in with this.
One of the questions I had was whether this VCS would just be for Extras
or would include Core as well. It is definitely for Core + Extras (One
of the reasons that enhanced ACLs are important here). So I think it's
sensible for Legacy to be a part of this as well.
> Are you planning on having the main discussion about these VC Systems
> in the Fedora-Maintainers list?
I was planning on having the discussion on infrastructure list as it
seemed to be a project already underway and handed over to
infrastructure to write a few prototypes and get a feel for how the
different version control systems mapped to our requirements. If
there's more requirements to be defined then I suppose it should be
discussed with a broader audience. warren would be a better person to
discuss that portion, though.
It's also possible to write the prototypes based on the present
requirements and then ask for additional feedback as to what more is
needed.
-Toshio
Note: I'm about to go MIA for half a week because we've bought a house
and are moving between tonight and July Fifth.
16 years, 11 months
[Fedora-infrastructure-list] Making RPMS for TurboGears
by TomLy
Here's a few things I found out while making the rpms for TurboGears,
and a few questions that have now resulted.
I've attached an irc log of a chat I had in #turbogears. They say that
packaging a python module as a .egg file isn't necessary. This means
that the python-Testgears spec can be, and probably should be, modified
to use the --single-version-externally-managed flag.
TurboGears will work just fine without python-TestGears. It's just a
testing suite. Should the dependency be taken out of the TurboGears
package? Also, the people in #turbogears (specifically evelind) say
that they don't even use python-TestGears and instead have moved on to
nose (http://python.org/pypi/nose). Should I package nose or
python-TestGears or both?
There is also a like to the Debian guidelines on python packages.
http://wiki.debian.org/DebianPython/NewPolicy . I don't know if
anything in there applies, but it might.
~tom
16 years, 11 months
[Fedora-infrastructure-list] New package version control
by Toshio Kuratomi
Greetings all,
A few of us, warren, mmcgrath, and I are designing a new system of
version control for the packages in Core and Extras. The main page of
requirements and some pros and cons of various VCS's are listed on:
http://www.fedoraproject.org/wiki/Infrastructure/VersionControl/
If you have some dispassionate features or reviews to add about any VCS
you think could address the requirements, go ahead and add it to the
page.
A draft of one possible prototype is here:
http://www.fedoraproject.org/wiki/Infrastructure/VersionControl/Architect...
The ArchitectureDraft attempts to address the list of requirements. An
actual implementation is in the works to see how well it actually meets
our needs.
mmcgrath is working on a separate prototype using subversion that sounds
like it is close to being ready for an initial review.
Comments specific to the drafts or with ideas for doing things
differently are entirely welcome :-) Let's get some discussion going!
-Toshio
16 years, 11 months
[Fedora-infrastructure-list] Meeting log for 2006-06-29
by Elliot Lee
Hey all,
Thanks for showing up, as always.
lyz, looks like I just missed you before the meeting, but if you get a chance, please let us know where you are with gathering account system requirements and such. (The TODO item that was on the list with your name beside it... :)
breune,
--
-- Elliot
16 years, 11 months
[Fedora-infrastructure-list] Meeting reminder
by Elliot Lee
Hi all,
Tomorrow, thursday, June 29, 20:00 GMT (4pm EDT, 1pm).
irc.freenode.net #fedora-admin - be there if you have stuff you want
to do, or have stuff you've done lately, or just to hang out :)
By the way, if this time just doesn't work for a lot of people, we
should talk every once in a while (starting now) about rescheduling
it. The constraints that I used to have that prevented me from doing
evenings are no longer there, so I hope I'm not a roadblack to anyone
else's participation.
Best,
-- Elliot
16 years, 11 months
[Fedora-infrastructure-list] Admin Meeting - Not looking good for tomorrow.
by Jason Hartley
The HPUX 10.20 build from last week is not going well. Go figure,
right! Every step forward is met with another issue. :( I am not
allowed to attach to freenode from work, so If I can find another site
nearby where I will working tomorrow I will attend the meeting. As
always, can some one please send out the meeting, so I can keep up with
what is going on?
Thanks,
Jason Hartley
16 years, 11 months