Edgewall Software
Modify

Opened 6 years ago

Last modified 19 months ago

#12495 new defect

RuntimeError: maximum recursion depth exceeded if [inherit] file option refers itself or circularly refers

Reported by: Jun Omae Owned by:
Priority: normal Milestone: next-stable-1.4.x
Component: general Version:
Severity: minor Keywords:
Cc: Branch:
Release Notes:
API Changes:
Internal Changes:

Description

$ trac-admin /dev/shm/tracenv initenv --inherit=trac.ini 'My Project' sqlite:db/trac.db
...
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 68, in __init__
    self.parse_if_needed(force=True)
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 295, in parse_if_needed
    self.parents.append(Configuration(filename))
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 68, in __init__
    self.parse_if_needed(force=True)
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 295, in parse_if_needed
    self.parents.append(Configuration(filename))
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 68, in __init__
    self.parse_if_needed(force=True)
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 284, in parse_if_needed
    self._old_sections = deepcopy(self.parser._sections)
  File "/usr/lib/python2.5/copy.py", line 162, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python2.5/copy.py", line 254, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python2.5/copy.py", line 162, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python2.5/copy.py", line 254, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python2.5/copy.py", line 162, in deepcopy
    y = copier(x, memo)
RuntimeError: maximum recursion depth exceeded
$ cat /dev/shm/inherit1.ini
[inherit]
file = inherit2.ini
$ cat /dev/shm/inherit2.ini
[inherit]
file = inherit1.ini
$ trac-admin /dev/shm/tracenv initenv --inherit=/dev/shm/inherit1.ini 'My Project' sqlite:db/trac.db
...
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 68, in __init__
    self.parse_if_needed(force=True)
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 295, in parse_if_needed
    self.parents.append(Configuration(filename))
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 68, in __init__
    self.parse_if_needed(force=True)
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 295, in parse_if_needed
    self.parents.append(Configuration(filename))
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 68, in __init__
    self.parse_if_needed(force=True)
  File "/venv/trac/1.0.11/lib/python2.5/site-packages/trac/config.py", line 284, in parse_if_needed
    self._old_sections = deepcopy(self.parser._sections)
  File "/usr/lib/python2.5/copy.py", line 162, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python2.5/copy.py", line 254, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python2.5/copy.py", line 162, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python2.5/copy.py", line 254, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python2.5/copy.py", line 162, in deepcopy
    y = copier(x, memo)
RuntimeError: maximum recursion depth exceeded

Attachments (0)

Change History (2)

comment:1 by Ryan J Ollos, 5 years ago

Milestone: next-stable-1.0.xnext-stable-1.2.x

Moved ticket assigned to next-stable-1.0.x since maintenance of 1.0.x is coming to a close. Please move the ticket back if it's critical to fix on 1.0.x.

comment:2 by Ryan J Ollos, 19 months ago

Milestone: next-stable-1.2.xnext-stable-1.4.x

Modify Ticket

Change Properties
Set your email in Preferences
Action
as new The ticket will remain with no owner.
The ticket will be disowned.
as The resolution will be set. Next status will be 'closed'.
The owner will be changed from (none) to anonymous. Next status will be 'assigned'.

Add Comment


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