@ignore and 'generate api'

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

@ignore and 'generate api'

Peter Schneider
Hi List,

it seems, that the 'api' job does not take @ignore() hints into account.

I've made a separate namespace ('qxp') for patches that I need to apply to the
framework, so I can apply the patches at my Application.js like this:

---------------------------------------------------
<code>
/**
 * This is the main application class ...
 *
 * @require(qxp.ui.core.Widget)
 * @require(qxp.ui.tooltip.Manager)
 * @require(qxp.io.remote.RequestQueue)
 */
qx.Class.define("app.Application",
{
  extend : qx.application.Standalone,

  construct : function ()
  {
    this.base(arguments);
    this.__patchFramework();
  },

  members :
  {
    /**
     * Applies necessary patches to the expected qooxdoo framework.
     *
     * @ignore(qxp.ui.core.Widget)
     * @ignore(qxp.ui.tooltip.Manager)
     * @ignore(qxp.io.remote.RequestQueue)
     *
     * @throws {Error} an error if the framework version does not fit
     */
    __patchFramework : function ()
    {
      // Check whether we patch the correct framework version
      if (qx.core.Environment.get("qx.version") !== "3.0.2") {
        throw new Error("Can't patch the framework! (version mismatch)");
      }

      qx.Class.patch(qx.ui.core.Widget        , qxp.ui.core.Widget);
      qx.Class.patch(qx.ui.tooltip.Manager    , qxp.ui.tooltip.Manager);
      qx.Class.patch(qx.io.remote.RequestQueue, qxp.io.remote.RequestQueue);
    }
  }
});
</code>
---------------------------------------------------

It works fine for most jobs (source,build,lint,...), but complains when I run
the 'api' job:

----------------------------------------------------
>>> Scanning libraries

>>> Collecting classes
   - Processing explicitly configured includes/excludes...
  - Warning: app.Application (25): Unknown global symbol used:
qxp.io.remote.RequestQueue
  - Warning: app.Application (25): Unknown global symbol used: qxp.ui.core.Widget
  - Warning: app.Application (25): Unknown global symbol used:
qxp.ui.tooltip.Manager
  - Sorting 1122 classes
 >>> Generating API data...
----------------------------------------------------

The config.json has been modified at the 'common' job like this:

----------------------------------------------------
  "jobs" : {
    "common" : {
      "use" : {
        "app.Application" : [
          "qxp.ui.core.Widget",
          "qxp.ui.tooltip.Manager",
          "qxp.io.remote.RequestQueue"
        ]
      },
      // ...
    }
  }
----------------------------------------------------

Adding the "use" section to the "api" job did not change anything, by the way
:( ...


Anything I can do about it?

Thanks in advance for any hint/tip,
  Peter


--

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: @ignore and 'generate api'

MartinWittemann
Administrator
Hello Peter,
did you try to add your qxp namespace to the API_INCLUDE let key? This could resolve your problem.
Regards,
Martin


Am 14.01.2014 um 13:22 schrieb Peter Schneider <[hidden email]>:

> Hi List,
>
> it seems, that the 'api' job does not take @ignore() hints into account.
>
> I've made a separate namespace ('qxp') for patches that I need to apply to the
> framework, so I can apply the patches at my Application.js like this:
>
> ---------------------------------------------------
> <code>
> /**
> * This is the main application class ...
> *
> * @require(qxp.ui.core.Widget)
> * @require(qxp.ui.tooltip.Manager)
> * @require(qxp.io.remote.RequestQueue)
> */
> qx.Class.define("app.Application",
> {
>  extend : qx.application.Standalone,
>
>  construct : function ()
>  {
>    this.base(arguments);
>    this.__patchFramework();
>  },
>
>  members :
>  {
>    /**
>     * Applies necessary patches to the expected qooxdoo framework.
>     *
>     * @ignore(qxp.ui.core.Widget)
>     * @ignore(qxp.ui.tooltip.Manager)
>     * @ignore(qxp.io.remote.RequestQueue)
>     *
>     * @throws {Error} an error if the framework version does not fit
>     */
>    __patchFramework : function ()
>    {
>      // Check whether we patch the correct framework version
>      if (qx.core.Environment.get("qx.version") !== "3.0.2") {
>        throw new Error("Can't patch the framework! (version mismatch)");
>      }
>
>      qx.Class.patch(qx.ui.core.Widget        , qxp.ui.core.Widget);
>      qx.Class.patch(qx.ui.tooltip.Manager    , qxp.ui.tooltip.Manager);
>      qx.Class.patch(qx.io.remote.RequestQueue, qxp.io.remote.RequestQueue);
>    }
>  }
> });
> </code>
> ---------------------------------------------------
>
> It works fine for most jobs (source,build,lint,...), but complains when I run
> the 'api' job:
>
> ----------------------------------------------------
>>>> Scanning libraries
>
>>>> Collecting classes
>   - Processing explicitly configured includes/excludes...
>  - Warning: app.Application (25): Unknown global symbol used:
> qxp.io.remote.RequestQueue
>  - Warning: app.Application (25): Unknown global symbol used: qxp.ui.core.Widget
>  - Warning: app.Application (25): Unknown global symbol used:
> qxp.ui.tooltip.Manager
>  - Sorting 1122 classes
>>>> Generating API data...
> ----------------------------------------------------
>
> The config.json has been modified at the 'common' job like this:
>
> ----------------------------------------------------
>  "jobs" : {
>    "common" : {
>      "use" : {
>        "app.Application" : [
>          "qxp.ui.core.Widget",
>          "qxp.ui.tooltip.Manager",
>          "qxp.io.remote.RequestQueue"
>        ]
>      },
>      // ...
>    }
>  }
> ----------------------------------------------------
>
> Adding the "use" section to the "api" job did not change anything, by the way
> :( ...
>
>
> Anything I can do about it?
>
> Thanks in advance for any hint/tip,
>  Peter
>
>
> --
>
> ------------------------------------------------------------------------------
> CenturyLink Cloud: The Leader in Enterprise Cloud Services.
> Learn Why More Businesses Are Choosing CenturyLink Cloud For
> Critical Workloads, Development Environments & Everything In Between.
> Get a Quote or Start a Free Trial Today.
> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel


------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: @ignore and 'generate api'

Peter Schneider
Good morning  Martin,

I did try that, just forgot to mention it in the initial report, sorry

The result with that try is even worse:

---------------------------------------------------
Error: Invalid include block: [u'qxp.*']
<type 'exceptions.RuntimeError'> : Expression gives no results. Malformed
entry: qxp.*
[Finished in 1.5s with exit code 1]
---------------------------------------------------

The API_INCLUDE seems to *only* accept "qx.*" or "${APPLICATION}.*" values :(
Independent whether I give namespace wildcard values[1] or individual class
names[2]

Regards,
  Peter

---
[1] "API_INCLUDE" : [ "qxp.*" ],

[2] "API_INCLUDE" : [ "qxp.ui.core.Widget", "qxp.ui.tooltip.Manager",
                      "qxp.io.remote.RequestQueue" ],



On 1/15/2014 8:45 AM Martin Wittemann wrote:

> Hello Peter,
> did you try to add your qxp namespace to the API_INCLUDE let key? This could resolve your problem.
> Regards,
> Martin
>
>
> Am 14.01.2014 um 13:22 schrieb Peter Schneider <[hidden email]>:
>
>> Hi List,
>>
>> it seems, that the 'api' job does not take @ignore() hints into account.
>>
>> I've made a separate namespace ('qxp') for patches that I need to apply to the
>> framework, so I can apply the patches at my Application.js like this:
>>
>> ---------------------------------------------------
>> <code>
>> /**
>> * This is the main application class ...
>> *
>> * @require(qxp.ui.core.Widget)
>> * @require(qxp.ui.tooltip.Manager)
>> * @require(qxp.io.remote.RequestQueue)
>> */
>> qx.Class.define("app.Application",
>> {
>>  extend : qx.application.Standalone,
>>
>>  construct : function ()
>>  {
>>    this.base(arguments);
>>    this.__patchFramework();
>>  },
>>
>>  members :
>>  {
>>    /**
>>     * Applies necessary patches to the expected qooxdoo framework.
>>     *
>>     * @ignore(qxp.ui.core.Widget)
>>     * @ignore(qxp.ui.tooltip.Manager)
>>     * @ignore(qxp.io.remote.RequestQueue)
>>     *
>>     * @throws {Error} an error if the framework version does not fit
>>     */
>>    __patchFramework : function ()
>>    {
>>      // Check whether we patch the correct framework version
>>      if (qx.core.Environment.get("qx.version") !== "3.0.2") {
>>        throw new Error("Can't patch the framework! (version mismatch)");
>>      }
>>
>>      qx.Class.patch(qx.ui.core.Widget        , qxp.ui.core.Widget);
>>      qx.Class.patch(qx.ui.tooltip.Manager    , qxp.ui.tooltip.Manager);
>>      qx.Class.patch(qx.io.remote.RequestQueue, qxp.io.remote.RequestQueue);
>>    }
>>  }
>> });
>> </code>
>> ---------------------------------------------------
>>
>> It works fine for most jobs (source,build,lint,...), but complains when I run
>> the 'api' job:
>>
>> ----------------------------------------------------
>>>>> Scanning libraries
>>
>>>>> Collecting classes
>>   - Processing explicitly configured includes/excludes...
>>  - Warning: app.Application (25): Unknown global symbol used:
>> qxp.io.remote.RequestQueue
>>  - Warning: app.Application (25): Unknown global symbol used: qxp.ui.core.Widget
>>  - Warning: app.Application (25): Unknown global symbol used:
>> qxp.ui.tooltip.Manager
>>  - Sorting 1122 classes
>>>>> Generating API data...
>> ----------------------------------------------------
>>
>> The config.json has been modified at the 'common' job like this:
>>
>> ----------------------------------------------------
>>  "jobs" : {
>>    "common" : {
>>      "use" : {
>>        "app.Application" : [
>>          "qxp.ui.core.Widget",
>>          "qxp.ui.tooltip.Manager",
>>          "qxp.io.remote.RequestQueue"
>>        ]
>>      },
>>      // ...
>>    }
>>  }
>> ----------------------------------------------------
>>
>> Adding the "use" section to the "api" job did not change anything, by the way
>> :( ...
>>
>>
>> Anything I can do about it?
>>
>> Thanks in advance for any hint/tip,
>>  Peter

--

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: @ignore and 'generate api'

MartinWittemann
Administrator
Hey,
just did a quick check on my system with a basic skeleton and the setup you described. But the API jobs seems to work fine on my setup so something which causes the error seems to be missing. Are the qxp classes in a separate library? I did not have to add the use part to the config. I guess you have tried it without the config change?
Regards,
Martin


Am 15.01.2014 um 09:30 schrieb Peter Schneider <[hidden email]>:

> Good morning  Martin,
>
> I did try that, just forgot to mention it in the initial report, sorry
>
> The result with that try is even worse:
>
> ---------------------------------------------------
> Error: Invalid include block: [u'qxp.*']
> <type 'exceptions.RuntimeError'> : Expression gives no results. Malformed
> entry: qxp.*
> [Finished in 1.5s with exit code 1]
> ---------------------------------------------------
>
> The API_INCLUDE seems to *only* accept "qx.*" or "${APPLICATION}.*" values :(
> Independent whether I give namespace wildcard values[1] or individual class
> names[2]
>
> Regards,
>  Peter
>
> ---
> [1] "API_INCLUDE" : [ "qxp.*" ],
>
> [2] "API_INCLUDE" : [ "qxp.ui.core.Widget", "qxp.ui.tooltip.Manager",
>                      "qxp.io.remote.RequestQueue" ],
>
>
>
> On 1/15/2014 8:45 AM Martin Wittemann wrote:
>> Hello Peter,
>> did you try to add your qxp namespace to the API_INCLUDE let key? This could resolve your problem.
>> Regards,
>> Martin
>>
>>
>> Am 14.01.2014 um 13:22 schrieb Peter Schneider <[hidden email]>:
>>
>>> Hi List,
>>>
>>> it seems, that the 'api' job does not take @ignore() hints into account.
>>>
>>> I've made a separate namespace ('qxp') for patches that I need to apply to the
>>> framework, so I can apply the patches at my Application.js like this:
>>>
>>> ---------------------------------------------------
>>> <code>
>>> /**
>>> * This is the main application class ...
>>> *
>>> * @require(qxp.ui.core.Widget)
>>> * @require(qxp.ui.tooltip.Manager)
>>> * @require(qxp.io.remote.RequestQueue)
>>> */
>>> qx.Class.define("app.Application",
>>> {
>>> extend : qx.application.Standalone,
>>>
>>> construct : function ()
>>> {
>>>   this.base(arguments);
>>>   this.__patchFramework();
>>> },
>>>
>>> members :
>>> {
>>>   /**
>>>    * Applies necessary patches to the expected qooxdoo framework.
>>>    *
>>>    * @ignore(qxp.ui.core.Widget)
>>>    * @ignore(qxp.ui.tooltip.Manager)
>>>    * @ignore(qxp.io.remote.RequestQueue)
>>>    *
>>>    * @throws {Error} an error if the framework version does not fit
>>>    */
>>>   __patchFramework : function ()
>>>   {
>>>     // Check whether we patch the correct framework version
>>>     if (qx.core.Environment.get("qx.version") !== "3.0.2") {
>>>       throw new Error("Can't patch the framework! (version mismatch)");
>>>     }
>>>
>>>     qx.Class.patch(qx.ui.core.Widget        , qxp.ui.core.Widget);
>>>     qx.Class.patch(qx.ui.tooltip.Manager    , qxp.ui.tooltip.Manager);
>>>     qx.Class.patch(qx.io.remote.RequestQueue, qxp.io.remote.RequestQueue);
>>>   }
>>> }
>>> });
>>> </code>
>>> ---------------------------------------------------
>>>
>>> It works fine for most jobs (source,build,lint,...), but complains when I run
>>> the 'api' job:
>>>
>>> ----------------------------------------------------
>>>>>> Scanning libraries
>>>
>>>>>> Collecting classes
>>>  - Processing explicitly configured includes/excludes...
>>> - Warning: app.Application (25): Unknown global symbol used:
>>> qxp.io.remote.RequestQueue
>>> - Warning: app.Application (25): Unknown global symbol used: qxp.ui.core.Widget
>>> - Warning: app.Application (25): Unknown global symbol used:
>>> qxp.ui.tooltip.Manager
>>> - Sorting 1122 classes
>>>>>> Generating API data...
>>> ----------------------------------------------------
>>>
>>> The config.json has been modified at the 'common' job like this:
>>>
>>> ----------------------------------------------------
>>> "jobs" : {
>>>   "common" : {
>>>     "use" : {
>>>       "app.Application" : [
>>>         "qxp.ui.core.Widget",
>>>         "qxp.ui.tooltip.Manager",
>>>         "qxp.io.remote.RequestQueue"
>>>       ]
>>>     },
>>>     // ...
>>>   }
>>> }
>>> ----------------------------------------------------
>>>
>>> Adding the "use" section to the "api" job did not change anything, by the way
>>> :( ...
>>>
>>>
>>> Anything I can do about it?
>>>
>>> Thanks in advance for any hint/tip,
>>> Peter
>
> --
>
> ------------------------------------------------------------------------------
> CenturyLink Cloud: The Leader in Enterprise Cloud Services.
> Learn Why More Businesses Are Choosing CenturyLink Cloud For
> Critical Workloads, Development Environments & Everything In Between.
> Get a Quote or Start a Free Trial Today.
> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel


------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: @ignore and 'generate api'

Peter Schneider
Hey,

I think, I had to put the patches ("qxp.*") into a separate library to make it
work at all...but I possibly 'over-worked' the problem ;)

Could you send me a ZIP of your skeleton application? It might be easiest for
me to detect the differences.
My application is a little to big/crowded (800+ classes) to be informative.

Thanks again for the effort so far,
  Peter


On 1/15/2014 10:43 AM Martin Wittemann wrote:

> Hey,
> just did a quick check on my system with a basic skeleton and the setup you described. But the API jobs seems to work fine on my setup so something which causes the error seems to be missing. Are the qxp classes in a separate library? I did not have to add the use part to the config. I guess you have tried it without the config change?
> Regards,
> Martin
>
>
> Am 15.01.2014 um 09:30 schrieb Peter Schneider <[hidden email]>:
>
>> Good morning  Martin,
>>
>> I did try that, just forgot to mention it in the initial report, sorry
>>
>> The result with that try is even worse:
>>
>> ---------------------------------------------------
>> Error: Invalid include block: [u'qxp.*']
>> <type 'exceptions.RuntimeError'> : Expression gives no results. Malformed
>> entry: qxp.*
>> [Finished in 1.5s with exit code 1]
>> ---------------------------------------------------
>>
>> The API_INCLUDE seems to *only* accept "qx.*" or "${APPLICATION}.*" values :(
>> Independent whether I give namespace wildcard values[1] or individual class
>> names[2]
>>
>> Regards,
>>  Peter
>>
>> ---
>> [1] "API_INCLUDE" : [ "qxp.*" ],
>>
>> [2] "API_INCLUDE" : [ "qxp.ui.core.Widget", "qxp.ui.tooltip.Manager",
>>                      "qxp.io.remote.RequestQueue" ],
>>
>>
>>
>> On 1/15/2014 8:45 AM Martin Wittemann wrote:
>>> Hello Peter,
>>> did you try to add your qxp namespace to the API_INCLUDE let key? This could resolve your problem.
>>> Regards,
>>> Martin
>>>
>>>
>>> Am 14.01.2014 um 13:22 schrieb Peter Schneider <[hidden email]>:
>>>
>>>> Hi List,
>>>>
>>>> it seems, that the 'api' job does not take @ignore() hints into account.
>>>>
>>>> I've made a separate namespace ('qxp') for patches that I need to apply to the
>>>> framework, so I can apply the patches at my Application.js like this:
>>>>
>>>> ---------------------------------------------------
>>>> <code>
>>>> /**
>>>> * This is the main application class ...
>>>> *
>>>> * @require(qxp.ui.core.Widget)
>>>> * @require(qxp.ui.tooltip.Manager)
>>>> * @require(qxp.io.remote.RequestQueue)
>>>> */
>>>> qx.Class.define("app.Application",
>>>> {
>>>> extend : qx.application.Standalone,
>>>>
>>>> construct : function ()
>>>> {
>>>>   this.base(arguments);
>>>>   this.__patchFramework();
>>>> },
>>>>
>>>> members :
>>>> {
>>>>   /**
>>>>    * Applies necessary patches to the expected qooxdoo framework.
>>>>    *
>>>>    * @ignore(qxp.ui.core.Widget)
>>>>    * @ignore(qxp.ui.tooltip.Manager)
>>>>    * @ignore(qxp.io.remote.RequestQueue)
>>>>    *
>>>>    * @throws {Error} an error if the framework version does not fit
>>>>    */
>>>>   __patchFramework : function ()
>>>>   {
>>>>     // Check whether we patch the correct framework version
>>>>     if (qx.core.Environment.get("qx.version") !== "3.0.2") {
>>>>       throw new Error("Can't patch the framework! (version mismatch)");
>>>>     }
>>>>
>>>>     qx.Class.patch(qx.ui.core.Widget        , qxp.ui.core.Widget);
>>>>     qx.Class.patch(qx.ui.tooltip.Manager    , qxp.ui.tooltip.Manager);
>>>>     qx.Class.patch(qx.io.remote.RequestQueue, qxp.io.remote.RequestQueue);
>>>>   }
>>>> }
>>>> });
>>>> </code>
>>>> ---------------------------------------------------
>>>>
>>>> It works fine for most jobs (source,build,lint,...), but complains when I run
>>>> the 'api' job:
>>>>
>>>> ----------------------------------------------------
>>>>>>> Scanning libraries
>>>>
>>>>>>> Collecting classes
>>>>  - Processing explicitly configured includes/excludes...
>>>> - Warning: app.Application (25): Unknown global symbol used:
>>>> qxp.io.remote.RequestQueue
>>>> - Warning: app.Application (25): Unknown global symbol used: qxp.ui.core.Widget
>>>> - Warning: app.Application (25): Unknown global symbol used:
>>>> qxp.ui.tooltip.Manager
>>>> - Sorting 1122 classes
>>>>>>> Generating API data...
>>>> ----------------------------------------------------
>>>>
>>>> The config.json has been modified at the 'common' job like this:
>>>>
>>>> ----------------------------------------------------
>>>> "jobs" : {
>>>>   "common" : {
>>>>     "use" : {
>>>>       "app.Application" : [
>>>>         "qxp.ui.core.Widget",
>>>>         "qxp.ui.tooltip.Manager",
>>>>         "qxp.io.remote.RequestQueue"
>>>>       ]
>>>>     },
>>>>     // ...
>>>>   }
>>>> }
>>>> ----------------------------------------------------
>>>>
>>>> Adding the "use" section to the "api" job did not change anything, by the way
>>>> :( ...
>>>>
>>>>
>>>> Anything I can do about it?
>>>>
>>>> Thanks in advance for any hint/tip,
>>>> Peter
>>

--

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: @ignore and 'generate api'

MartinWittemann
Administrator
Sure, I’ll send it to your mail address without the list so that not everyone needs to download the whole app.


Am 15.01.2014 um 12:03 schrieb Peter Schneider <[hidden email]>:

> Hey,
>
> I think, I had to put the patches ("qxp.*") into a separate library to make it
> work at all...but I possibly 'over-worked' the problem ;)
>
> Could you send me a ZIP of your skeleton application? It might be easiest for
> me to detect the differences.
> My application is a little to big/crowded (800+ classes) to be informative.
>
> Thanks again for the effort so far,
>  Peter
>
>
> On 1/15/2014 10:43 AM Martin Wittemann wrote:
>> Hey,
>> just did a quick check on my system with a basic skeleton and the setup you described. But the API jobs seems to work fine on my setup so something which causes the error seems to be missing. Are the qxp classes in a separate library? I did not have to add the use part to the config. I guess you have tried it without the config change?
>> Regards,
>> Martin
>>
>>
>> Am 15.01.2014 um 09:30 schrieb Peter Schneider <[hidden email]>:
>>
>>> Good morning  Martin,
>>>
>>> I did try that, just forgot to mention it in the initial report, sorry
>>>
>>> The result with that try is even worse:
>>>
>>> ---------------------------------------------------
>>> Error: Invalid include block: [u'qxp.*']
>>> <type 'exceptions.RuntimeError'> : Expression gives no results. Malformed
>>> entry: qxp.*
>>> [Finished in 1.5s with exit code 1]
>>> ---------------------------------------------------
>>>
>>> The API_INCLUDE seems to *only* accept "qx.*" or "${APPLICATION}.*" values :(
>>> Independent whether I give namespace wildcard values[1] or individual class
>>> names[2]
>>>
>>> Regards,
>>> Peter
>>>
>>> ---
>>> [1] "API_INCLUDE" : [ "qxp.*" ],
>>>
>>> [2] "API_INCLUDE" : [ "qxp.ui.core.Widget", "qxp.ui.tooltip.Manager",
>>>                     "qxp.io.remote.RequestQueue" ],
>>>
>>>
>>>
>>> On 1/15/2014 8:45 AM Martin Wittemann wrote:
>>>> Hello Peter,
>>>> did you try to add your qxp namespace to the API_INCLUDE let key? This could resolve your problem.
>>>> Regards,
>>>> Martin
>>>>
>>>>
>>>> Am 14.01.2014 um 13:22 schrieb Peter Schneider <[hidden email]>:
>>>>
>>>>> Hi List,
>>>>>
>>>>> it seems, that the 'api' job does not take @ignore() hints into account.
>>>>>
>>>>> I've made a separate namespace ('qxp') for patches that I need to apply to the
>>>>> framework, so I can apply the patches at my Application.js like this:
>>>>>
>>>>> ---------------------------------------------------
>>>>> <code>
>>>>> /**
>>>>> * This is the main application class ...
>>>>> *
>>>>> * @require(qxp.ui.core.Widget)
>>>>> * @require(qxp.ui.tooltip.Manager)
>>>>> * @require(qxp.io.remote.RequestQueue)
>>>>> */
>>>>> qx.Class.define("app.Application",
>>>>> {
>>>>> extend : qx.application.Standalone,
>>>>>
>>>>> construct : function ()
>>>>> {
>>>>>  this.base(arguments);
>>>>>  this.__patchFramework();
>>>>> },
>>>>>
>>>>> members :
>>>>> {
>>>>>  /**
>>>>>   * Applies necessary patches to the expected qooxdoo framework.
>>>>>   *
>>>>>   * @ignore(qxp.ui.core.Widget)
>>>>>   * @ignore(qxp.ui.tooltip.Manager)
>>>>>   * @ignore(qxp.io.remote.RequestQueue)
>>>>>   *
>>>>>   * @throws {Error} an error if the framework version does not fit
>>>>>   */
>>>>>  __patchFramework : function ()
>>>>>  {
>>>>>    // Check whether we patch the correct framework version
>>>>>    if (qx.core.Environment.get("qx.version") !== "3.0.2") {
>>>>>      throw new Error("Can't patch the framework! (version mismatch)");
>>>>>    }
>>>>>
>>>>>    qx.Class.patch(qx.ui.core.Widget        , qxp.ui.core.Widget);
>>>>>    qx.Class.patch(qx.ui.tooltip.Manager    , qxp.ui.tooltip.Manager);
>>>>>    qx.Class.patch(qx.io.remote.RequestQueue, qxp.io.remote.RequestQueue);
>>>>>  }
>>>>> }
>>>>> });
>>>>> </code>
>>>>> ---------------------------------------------------
>>>>>
>>>>> It works fine for most jobs (source,build,lint,...), but complains when I run
>>>>> the 'api' job:
>>>>>
>>>>> ----------------------------------------------------
>>>>>>>> Scanning libraries
>>>>>
>>>>>>>> Collecting classes
>>>>> - Processing explicitly configured includes/excludes...
>>>>> - Warning: app.Application (25): Unknown global symbol used:
>>>>> qxp.io.remote.RequestQueue
>>>>> - Warning: app.Application (25): Unknown global symbol used: qxp.ui.core.Widget
>>>>> - Warning: app.Application (25): Unknown global symbol used:
>>>>> qxp.ui.tooltip.Manager
>>>>> - Sorting 1122 classes
>>>>>>>> Generating API data...
>>>>> ----------------------------------------------------
>>>>>
>>>>> The config.json has been modified at the 'common' job like this:
>>>>>
>>>>> ----------------------------------------------------
>>>>> "jobs" : {
>>>>>  "common" : {
>>>>>    "use" : {
>>>>>      "app.Application" : [
>>>>>        "qxp.ui.core.Widget",
>>>>>        "qxp.ui.tooltip.Manager",
>>>>>        "qxp.io.remote.RequestQueue"
>>>>>      ]
>>>>>    },
>>>>>    // ...
>>>>>  }
>>>>> }
>>>>> ----------------------------------------------------
>>>>>
>>>>> Adding the "use" section to the "api" job did not change anything, by the way
>>>>> :( ...
>>>>>
>>>>>
>>>>> Anything I can do about it?
>>>>>
>>>>> Thanks in advance for any hint/tip,
>>>>> Peter
>>>
>
> --
>
> ------------------------------------------------------------------------------
> CenturyLink Cloud: The Leader in Enterprise Cloud Services.
> Learn Why More Businesses Are Choosing CenturyLink Cloud For
> Critical Workloads, Development Environments & Everything In Between.
> Get a Quote or Start a Free Trial Today.
> http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
> _______________________________________________
> qooxdoo-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel


------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
Reply | Threaded
Open this post in threaded view
|

Re: @ignore and 'generate api'

Peter Schneider
Hello Martin,

thanks for your ZIP. I've looked at the structure and this are my findings:

The (filesystem-)layout is exactly the same as my first approach was ;)

But I decided against it, 'cause of the warning I got / get:

==============================================================================
==============================================================================

----------------------------------------------------------------------------
    Initializing: frontend
----------------------------------------------------------------------------
>>> Processing configuration

----------------------------------------------------------------------------
    Executing: source::source-script
----------------------------------------------------------------------------
>>> Scanning libraries      - Warning: The class path should contain exactly
one namespace: 'D:\projects\infoDesk\web\frontend\source/class'

...
==============================================================================
==============================================================================

If I didn't miss anything, it seems like I currently only can choose what
warning will be generated ;)

Don't you get this warning, too?

If that's the case I would like to file an enhancement, to be able to...
- either add a (2nd) namespace in generator config
or
- silence the warning (not so good, I think).

Anyway, thanks a lot for your effort,
  Peter

P.S.: I'll post my (and your) approach to this problem as soon as there is
      some 'solution' to the warning problem. SO others can find hints in
      this forum.


On 1/15/2014 1:00 PM Martin Wittemann wrote:

> Sure, I’ll send it to your mail address without the list so that not everyone needs to download the whole app.
>
>
> Am 15.01.2014 um 12:03 schrieb Peter Schneider <[hidden email]>:
>
>> Hey,
>>
>> I think, I had to put the patches ("qxp.*") into a separate library to make it
>> work at all...but I possibly 'over-worked' the problem ;)
>>
>> Could you send me a ZIP of your skeleton application? It might be easiest for
>> me to detect the differences.
>> My application is a little to big/crowded (800+ classes) to be informative.
>>
>> Thanks again for the effort so far,
>>  Peter
>>
>>
>> On 1/15/2014 10:43 AM Martin Wittemann wrote:
>>> Hey,
>>> just did a quick check on my system with a basic skeleton and the setup you described. But the API jobs seems to work fine on my setup so something which causes the error seems to be missing. Are the qxp classes in a separate library? I did not have to add the use part to the config. I guess you have tried it without the config change?
>>> Regards,
>>> Martin
>>>
>>>
>>> Am 15.01.2014 um 09:30 schrieb Peter Schneider <[hidden email]>:
>>>
>>>> Good morning  Martin,
>>>>
>>>> I did try that, just forgot to mention it in the initial report, sorry
>>>>
>>>> The result with that try is even worse:
>>>>
>>>> ---------------------------------------------------
>>>> Error: Invalid include block: [u'qxp.*']
>>>> <type 'exceptions.RuntimeError'> : Expression gives no results. Malformed
>>>> entry: qxp.*
>>>> [Finished in 1.5s with exit code 1]
>>>> ---------------------------------------------------
>>>>
>>>> The API_INCLUDE seems to *only* accept "qx.*" or "${APPLICATION}.*" values :(
>>>> Independent whether I give namespace wildcard values[1] or individual class
>>>> names[2]
>>>>
>>>> Regards,
>>>> Peter
>>>>
>>>> ---
>>>> [1] "API_INCLUDE" : [ "qxp.*" ],
>>>>
>>>> [2] "API_INCLUDE" : [ "qxp.ui.core.Widget", "qxp.ui.tooltip.Manager",
>>>>                     "qxp.io.remote.RequestQueue" ],
>>>>
>>>>
>>>>
>>>> On 1/15/2014 8:45 AM Martin Wittemann wrote:
>>>>> Hello Peter,
>>>>> did you try to add your qxp namespace to the API_INCLUDE let key? This could resolve your problem.
>>>>> Regards,
>>>>> Martin
>>>>>
>>>>>
>>>>> Am 14.01.2014 um 13:22 schrieb Peter Schneider <[hidden email]>:
>>>>>
>>>>>> Hi List,
>>>>>>
>>>>>> it seems, that the 'api' job does not take @ignore() hints into account.
>>>>>>
>>>>>> I've made a separate namespace ('qxp') for patches that I need to apply to the
>>>>>> framework, so I can apply the patches at my Application.js like this:
>>>>>>
>>>>>> ---------------------------------------------------
>>>>>> <code>
>>>>>> /**
>>>>>> * This is the main application class ...
>>>>>> *
>>>>>> * @require(qxp.ui.core.Widget)
>>>>>> * @require(qxp.ui.tooltip.Manager)
>>>>>> * @require(qxp.io.remote.RequestQueue)
>>>>>> */
>>>>>> qx.Class.define("app.Application",
>>>>>> {
>>>>>> extend : qx.application.Standalone,
>>>>>>
>>>>>> construct : function ()
>>>>>> {
>>>>>>  this.base(arguments);
>>>>>>  this.__patchFramework();
>>>>>> },
>>>>>>
>>>>>> members :
>>>>>> {
>>>>>>  /**
>>>>>>   * Applies necessary patches to the expected qooxdoo framework.
>>>>>>   *
>>>>>>   * @ignore(qxp.ui.core.Widget)
>>>>>>   * @ignore(qxp.ui.tooltip.Manager)
>>>>>>   * @ignore(qxp.io.remote.RequestQueue)
>>>>>>   *
>>>>>>   * @throws {Error} an error if the framework version does not fit
>>>>>>   */
>>>>>>  __patchFramework : function ()
>>>>>>  {
>>>>>>    // Check whether we patch the correct framework version
>>>>>>    if (qx.core.Environment.get("qx.version") !== "3.0.2") {
>>>>>>      throw new Error("Can't patch the framework! (version mismatch)");
>>>>>>    }
>>>>>>
>>>>>>    qx.Class.patch(qx.ui.core.Widget        , qxp.ui.core.Widget);
>>>>>>    qx.Class.patch(qx.ui.tooltip.Manager    , qxp.ui.tooltip.Manager);
>>>>>>    qx.Class.patch(qx.io.remote.RequestQueue, qxp.io.remote.RequestQueue);
>>>>>>  }
>>>>>> }
>>>>>> });
>>>>>> </code>
>>>>>> ---------------------------------------------------
>>>>>>
>>>>>> It works fine for most jobs (source,build,lint,...), but complains when I run
>>>>>> the 'api' job:
>>>>>>
>>>>>> ----------------------------------------------------
>>>>>>>>> Scanning libraries
>>>>>>
>>>>>>>>> Collecting classes
>>>>>> - Processing explicitly configured includes/excludes...
>>>>>> - Warning: app.Application (25): Unknown global symbol used:
>>>>>> qxp.io.remote.RequestQueue
>>>>>> - Warning: app.Application (25): Unknown global symbol used: qxp.ui.core.Widget
>>>>>> - Warning: app.Application (25): Unknown global symbol used:
>>>>>> qxp.ui.tooltip.Manager
>>>>>> - Sorting 1122 classes
>>>>>>>>> Generating API data...
>>>>>> ----------------------------------------------------
>>>>>>
>>>>>> The config.json has been modified at the 'common' job like this:
>>>>>>
>>>>>> ----------------------------------------------------
>>>>>> "jobs" : {
>>>>>>  "common" : {
>>>>>>    "use" : {
>>>>>>      "app.Application" : [
>>>>>>        "qxp.ui.core.Widget",
>>>>>>        "qxp.ui.tooltip.Manager",
>>>>>>        "qxp.io.remote.RequestQueue"
>>>>>>      ]
>>>>>>    },
>>>>>>    // ...
>>>>>>  }
>>>>>> }
>>>>>> ----------------------------------------------------
>>>>>>
>>>>>> Adding the "use" section to the "api" job did not change anything, by the way
>>>>>> :( ...
>>>>>>
>>>>>>
>>>>>> Anything I can do about it?
>>>>>>
>>>>>> Thanks in advance for any hint/tip,
>>>>>> Peter
>>>>
>>
>

--

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
qooxdoo-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel