Item9021: Foswiki doesn't verify if the web exist when create a subweb

pencil
Priority: Normal
Current State: Closed
Released In: 1.0.10, 1.1.0
Target Release: patch
Applies To: Engine
Component:
Branches:
Reported By: RogerioBastos
Waiting For:
Last Change By: KennethLavrsen
It's possible create a subweb SomeThing, even when the web AnyThing doesn't exist. So, Foswiki make a folder called AnyThing and create the subweb SomeThing into one.

-- RogerioBastos - 14 May 2010

According to the documentation, to create a nested web (or subweb), we should use the notation Existingweb.Newweb. This suggests that the parent web should exists. So, it's really a issue.

-- ItaloValcy - 15 May 2010

The bug was fixed in distro:3d95d4f2bd97, distro:9a0323534eea and distro:dde25e42f0d0 checkins and it'll be available in the next release.

Thank you for report the problem. If you have any more questions, feel free to update the task.

-- ItaloValcy - 15 May 2010

There is a problem with the fix. I've committed a change but please review. It was not testing that the parent web was provided, so after the changes I was unable to create a parent web.

Also note that the term "base web" is referring to the template web. So I suspect that the error about base web not existing should really refer to the parent web not existing.

-- GeorgeClark - 15 May 2010

You've fixed the web interface but as I dig a bit more into this, the problem is a bit deeper. I've got unit tests and changes to Store and Meta almost ready to check in. On 1.0.9, the Store createWeb function will still create an invalid web, as will the equivalent Meta populateNewWeb on 1.1.0. Func::createWeb doesn't validate this, and unit tests don't verify errors of invalid base web, and invalid parent web. I'll get the tests and fixes checked in later this weekend.

-- GeorgeClark - 15 May 2010
 
Topic revision: r19 - 08 Sep 2010, KennethLavrsen
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy