Hey Norman, I'll come with some solution in the next release. Probably will just ignore validation for paths containing symbols.
Regarding static analysis of tapestry's symbols - it won't be easy to do, because the values for them calculated at runtime using method invocations and string manipulations... Probably time for some configuration file where one can specify missing bits & pieces. I was thinking to store plugin configuration in the project's source code. Somewhere under 'src/main/tapestry/eclipse-plugin-config.json'. What do you think? On Wed, Feb 4, 2015 at 7:29 PM, Norman Franke <[email protected]> wrote: > Speaking of which, any chance the plugin could not warn about @Import > using "${tapestry.scriptaculous}/“ paths? Or is there a better way to > include things like effects.js and builder.js? > > Norman Franke > Answering Service for Directors, Inc. > www.myasd.com > > > > On Feb 4, 2015, at 2:15 AM, Dmitry Gusev <[email protected]> wrote: > > > Hi Martin, > > > > I'm sorry I was unclear, the symbol expansion support is not yet in the > > plugin. > > I was just saying that it shouldn't be hard to add the support for simple > > symbol contributions :) > > > > I'll try to add it in the next release. > > > > On Wed, Feb 4, 2015 at 7:15 AM, Martin Papy <[email protected]> > wrote: > > > >> Hi Dmitry, > >> > >> My code was slightly different, but I updated it to see if there was any > >> difference. So now I have this : > >> > >> public static void > >> contributeApplicationDefaults(MappedConfiguration<String, String> > >> configuration) { > >> configuration.add("layout.assets", "META-INF/assets"); > >> configuration.add("layout.scripts", "META-INF/assets/js"); > >> configuration.add("layout.styles", "META-INF/assets/css"); > >> configuration.add("layout.images", "META-INF/assets/images"); > >> } > >> > >> But the Tapestry Context is still unable to resolve the following : > >> > >> @Import(library={ > >> "${layout.scripts}/jquery.confirm.js" > >> }, module={ > >> "bootstrap/modal", > >> "bootstrap/transition", > >> }) > >> > >> None of the 3 assets can be properly resolved... Not the end of the > world > >> of course :) Just a heads up. > >> > >> Again I love this plugin ^^ > >> > >> -- Martin > >> > >> On Tue, Feb 3, 2015 at 4:16 PM, Dmitry Gusev <[email protected]> > >> wrote: > >> > >>> Hi Martin, > >>> > >>> My current goal is to avoid configuration files at this stage if > >> possible, > >>> but try to get all the data via static code analysis. > >>> > >>> In this sense capabilities of the plugin are somewhat limited, for > >> example, > >>> this may be implemented with a little effort if you define your symbols > >> via > >>> SymbolSource configuration add/override (simple case without > conditional > >>> statements), something like: > >>> > >>> public static void contributeApplicationDefaults( > >>> > >>> MappedConfiguration<String, Object> configuration) > >>> > >>> { > >>> > >>> configuration.add("layout.scripts", "foo"); > >>> > >>> configuration.add("layout.styles", Constants.BAR); > >>> > >>> } > >>> > >>> Is this your case? > >>> > >>> On Tue, Feb 3, 2015 at 7:45 AM, Martin Papy <[email protected]> > >> wrote: > >>> > >>>> That is indeed a GREAT work :) Awesome :) > >>>> > >>>> If I have 1 quick idea, it would be to be able to configure a symbol > >> list > >>>> so that we can open properly assets from the Import Annotation :). > Here > >>>> bellow I would like to defined what ${layout.scripts} points to. > >>>> > >>>> @Import(library={ > >>>> "${layout.scripts}/html5shiv-printshiv.js" > >>>> }, > >>>> stylesheet={ > >>>> "${layout.styles}/chronicles/bootstrap.css" > >>>> }) > >>>> > >>>> -- Martin > >>>> > >>>> On Tue, Feb 3, 2015 at 10:01 AM, Bob Harner <[email protected]> > >> wrote: > >>>> > >>>>> Awesome work, Dmitry! It just gets better and better... > >>>>> > >>>>> On Mon, Feb 2, 2015 at 1:51 AM, Dmitry Gusev <[email protected] > >>> > >>>>> wrote: > >>>>>> Hey Tapestry Users, > >>>>>> > >>>>>> I haven't updated release notes for the plugin for almost a year, > >>> lots > >>>> of > >>>>>> minor features & improvements were released since then. > >>>>>> > >>>>>> Release 2.8.0 is different, because it introduces basic support for > >>>>>> Tapestry 5.4. > >>>>>> > >>>>>> Some major changes: > >>>>>> > >>>>>> - Tapestry Context View > >>>>>> - Now shows JavaScript modules, both imported via > >>>>>> @Import(module="...") and required with > >>>>> JavaScriptSupport.require("...") > >>>>>> - Validation rules for assets updated to include new > >> location: > >>>>>> META-INF/assets > >>>>>> > >>>>>> > >>>>>> - Tapestry Project Outline View > >>>>>> - Added support for @ImportModule annotation > >>>>>> - You can now see a list of services, decorators, advisors, > >> and > >>>>>> contributors defined in each module. This is in addition to > >>>> Library > >>>>>> Mappings & JavaScript Stacks. All are clickable and > >> selectable > >>>>>> - Double click to jump to definition > >>>>>> - Selecting items in this view updates the JavaDoc view & > >>> source > >>>>>> range in Java editor if open (handy for learning the source > >>> code) > >>>>>> > >>>>>> As usual you can find updated README with screenshots and download > >>>>>> instructions on Github: > >>>>>> > >>>>>> https://github.com/anjlab/eclipse-tapestry5-plugin#readme > >>>>>> > >>>>>> > >>>>>> -- > >>>>>> Dmitry Gusev > >>>>>> > >>>>>> AnjLab Team > >>>>>> http://anjlab.com > >>>>> > >>>>> --------------------------------------------------------------------- > >>>>> To unsubscribe, e-mail: [email protected] > >>>>> For additional commands, e-mail: [email protected] > >>>>> > >>>>> > >>>> > >>> > >>> > >>> > >>> -- > >>> Dmitry Gusev > >>> > >>> AnjLab Team > >>> http://anjlab.com > >>> > >> > > > > > > > > -- > > Dmitry Gusev > > > > AnjLab Team > > http://anjlab.com > > -- Dmitry Gusev AnjLab Team http://anjlab.com
