Modify

Opened 9 years ago

Closed 9 years ago

#12395 closed task (fixed)

BSD license possible?

Reported by: Ryan J Ollos Owned by: Roberto Longobardi
Priority: normal Component: TestManagerForTracPlugin
Severity: normal Keywords: license
Cc: Trac Release:

Description

I'm considering using the TracGenericWorkflowPlugin in a plugin that I maintain, however the GPL license presents a problem. The GPL license of TracGenericWorkflowPlugin will require plugins utilizing TracGenericWorkflowPlugin to also be GPL licensed. However, the plugin I maintain uses the less-restrictive BSD license, same as Trac. Would you consider changing the license to 3-Clause BSD license? That would also open the possibility of eventually integrating this code into the Trac core.

Thank you in advance for your consideration of the issue.

Attachments (0)

Change History (9)

comment:1 Changed 9 years ago by Ryan J Ollos

Keywords: license added

comment:2 Changed 9 years ago by Roberto Longobardi

Hi, Sure, no problem switching the license to Bsd for this particular plugin.

I'll work on it asap, in the meantime feel free to start your developments.

Btw, I may have some spare time this summer, so if you think you may need help don't hesitate to ask.

Ciao, Roberto

comment:3 Changed 9 years ago by Ryan J Ollos

Thanks, so much! Haven't looked closely at the code, but from the description it seems like a generic workflow would make a good addition to the Trac core. What do you think?

comment:4 Changed 9 years ago by Roberto Longobardi

It would be nice.

Basically I took the code from the Trac workflow system and generalized it, making it based on the Resource instead of the Ticket class and providing an interface to let other plugins apply the engine to their resources. It also possible to define custom actions. See how it is used inside the TestManager plugin (see workflow.py).

I did a similar thing with the TracGenericClass, based on the Ticket class if I remember well, but going way much further. You may want to take a look at it, and how it is used inside the TestManager plugin (see model.py).

I think both may become part of something like a "Trac plugin SDK", making it easier for programmers to write plugins that have custom resources, persistence, change history, auto DB upgrade in subsequent versions, workflow capabilities, RPC, CLI interface and more.

I don't think I'm a good Python programmer (I've been mostly using Java for the last 15 years or so), so the code may need to come through a good review.

Let me know what you think.

Ciao, Roberto

comment:5 Changed 9 years ago by Cinc-th

I really would like to see the generic parts of the plugin (workflow, generic classes, ...) being released as BSD. I looked into them in the past but couldn't (and didn't want to) use them because of the license. These parts could be really helpful for other plugin developers.

Best regards Cinc

comment:6 Changed 9 years ago by Roberto Longobardi

I can definitely do that.

I think I'll be able to release a new version during the summer. Please consider the full stuff BSD licensed.

Ciao, Roberto.

comment:7 Changed 9 years ago by Cinc-th

Hi Roberto,

any time estimation regarding a new version?

Regards Cinc

comment:8 Changed 9 years ago by anonymous

Hi Cinc, I've been working on the 2.0 release, which is a major rewrite and completely different UI from the original one.

It also includes a new framework for Trac plugin developers that I think you may like :)

I didn't have much time to release a new 1.x version with a modified licence though...

I'll try to do it asap, let's say by the end of the month.

Thanks for your interest, ciao. Roberto

comment:9 Changed 9 years ago by Roberto Longobardi

Resolution: fixed
Status: newclosed

Released version 1.9.0 with the BSD license.

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Roberto Longobardi.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.