#676: Relax constraints on ProductEnvironment callable contract
---------------------------+-----------------------------------
  Reporter:  olemis        |      Owner:  olemis
      Type:  enhancement   |     Status:  accepted
  Priority:  major         |  Milestone:  Release 8
 Component:  multiproduct  |    Version:  0.7.0
Resolution:                |   Keywords:  product env, bep-0003
---------------------------+-----------------------------------
Description changed by olemis:

Old description:

> When invoking `multiproduct.ProductEnvironment` the initial versions of
> bep:0003 limited the type of the first argument to
> `trac.env.Environment`. Eventually this led to a considerable number
> [http://goo.gl/dGZvcE failures] .
>
> In spite of uniformity and simplicity the following enhancements are
> needed :
>
>   - The meta-class `__call__` method has to be wrapped with logic
>     similar to `lookup_env` class method
>     * The initializer must still restrict argument type for cache
> consistency
>   - Both `ProductEnvironment.lookup_env` and `lookup_product_env`
>     should be phased out and replaced with direct calls to
>     `ProductEnvironment` class.
>   - Test cases

New description:

 When invoking `multiproduct.ProductEnvironment` the initial versions of
 bep:0003 limited the type of the first argument to `trac.env.Environment`.
 Eventually this led to a considerable number of [http://goo.gl/dGZvcE
 failures] .

 In spite of uniformity and simplicity the following enhancements are
 needed :

   - The first argument in a call to `multiproduct.ProductEnvironment`
 class
      may be an instance of either `multiproduct.ProductEnvironment` or
      `trac.env.Environment`
   - The meta-class `__call__` method has to be wrapped with logic
     similar to `lookup_env` class method
     * The initializer must still restrict argument type for cache
 consistency
   - Both `ProductEnvironment.lookup_env` and `lookup_product_env`
     should be phased out and replaced with direct calls to
     `ProductEnvironment` class.
   - Test cases

--

-- 
Ticket URL: <https://issues.apache.org/bloodhound/ticket/676#comment:3>
Apache Bloodhound <https://issues.apache.org/bloodhound/>
The Apache Bloodhound issue tracker

Reply via email to