Edgewall Software
Modify

Opened 8 years ago

Closed 7 years ago

Last modified 5 years ago

#10712 closed task (fixed)

move svn support to tracopt

Reported by: Christian Boos Owned by: Remy Blank
Priority: normal Milestone: 1.0
Component: version control Version: 0.13dev
Severity: major Keywords: svn
Cc: Branch:
Release Notes:

Subversion support code is now clearly identified as being optional.

API Changes:

Subversion specific code is now located in the tracopt.versioncontrol.svn package.

Description

We currently have our support for Subversion directly below trac.versioncontrol. Now that we have integrated Git support in trunk/tracopt/versioncontrol/git, it would be fair to also move svn_fs.py and svn_prop.py in trunk/tracopt/versioncontrol/svn.

OTOH, svn_authz.py doesn't have any Subversion specific dependency in it, and could theoretically be used to impose a Subversion-like fine-grained permission model on other kind of repositories, so there's no reason to move it.

Attachments (0)

Change History (7)

comment:1 by Remy Blank, 7 years ago

Owner: changed from Christian Boos to Remy Blank

Modules moved in [11082]. The stub modules left in the original location provide all the same content as the original module, so hopefully we're not breaking anything with this (except for requiring SVN support to be explicitly enabled in trac.ini, of course).

Strangely, this has increased the run time of the full test suite by about 10 seconds on my machine. My guess is that this is due to enabling all of tracopt.* in the test suite, but I wasn't able to confirm this hypothesis.

comment:2 by Remy Blank, 7 years ago

Resolution: fixed
Status: newclosed

Confirmed, enabling tracopt.* for all unit and functional tests (in test.py and testenv.py) adds 9 seconds to the test suite (and more importantly, it's independent of the move of svn_fs and svn_prop to tracopt, which is what I was interested in).

Enabling only tracopt.versioncontrol.svn.* leads to no increase at all. Committed in [11083].

comment:3 by buhrt@…, 7 years ago

Resolution: fixed
Status: closedreopened

Having spent 5-6+hr fighting the error: Warning: Can't synchronize with repository "(default)" (Unsupported version control system "svn": Can't find an appropriate component, maybe the corresponding plugin was not enabled? ). Look in the Trac log for more information.

and determining [11081] was the cause, with the help of 'osimons' we determined at least wiki:TracSubversion#Troubleshooting and wiki:TracUpgrade need to be changed and corrected.

The proper options are at tracopt.versioncontrol.svn.* (not trac.versioncontrol.svn_*) Also a hint that when upgrading from 0.13dev to 1.0 svn will not be available by default anymore and must be manually enabled otherwise a user will see the error above. (Even if upgrading from [11080] using a perfectly fine Trac).

My original notes I logged in the Google group are at: ​http://www.aftinc.net/misc/trac-bug.txt

in reply to:  3 comment:4 by Remy Blank, 7 years ago

Replying to buhrt@…:

Also a hint that when upgrading from 0.13dev to 1.0 svn will not be available by default anymore and must be manually enabled otherwise a user will see the error above. (Even if upgrading from [11080] using a perfectly fine Trac).

Yes, the release notes aren't done yet, mainly because… well, we haven't released yet :)

and determining [11081] was the cause, with the help of 'osimons' we determined at least wiki:TracSubversion#Troubleshooting and wiki:TracUpgrade need to be changed and corrected.

Would you mind making the necessary changes? This is a wiki open to everyone for editing, and it would greatly help us if you could add the notes that would have helped you for other users. Thanks!

comment:5 by buhrt@…, 7 years ago

Resolution: fixed
Status: reopenedclosed

I also put a reference in wiki:TracUpgrade, wiki:TracSubversion, I also think wiki:TracIni#components-section needs some explaination also about tracopt.* and possibly a section for tracopt.versioncontrol.svn.* possibly.

comment:6 by Remy Blank, 7 years ago

Thanks!

in reply to:  description comment:7 by Ryan J Ollos, 5 years ago

Replying to cboos:

OTOH, svn_authz.py doesn't have any Subversion specific dependency in it, and could theoretically be used to impose a Subversion-like fine-grained permission model on other kind of repositories, so there's no reason to move it.

Would it make sense to move the svn_authz.py permissions policy to tracopt.perm?

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Remy Blank.
The resolution will be deleted. Next status will be 'reopened'.
to as closed The owner will be changed from Remy Blank to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.