Hi Nathaniel,
We had some conversation around this a while back:
https://groups.google.com/forum/#!topic/eslint/hiX61KUWKcU
I'm afraid we didn't get to a final decision as other issues popped up. I
can share with you my current thinking, though.
Ideally we'd like to be able to have rules packaged and shared via npm like
any other package. The structure I'm thinking of is:
* lib/
* rules/
* (rules files)
* tests/
* lib/
* rules/
* (test files)
This maps to what we have in ESLint right now and I think provides a good
general structure should we want to add things other than rules (like
formatters) into these packages in the future.
Then, we could specify to load them in a config file as:
{
rulesets: [ "npm-package-name", "./path/to/package" ]
}
In which, ESLint would automatically looking
node_modules/npm-package-name/lib/rules and ./path/to/package/lib/rules to
find rules. You could then configure the rules as any other in the config
file.
In the short-term, you can still use the basic package format and just
manually specify the --rulesdir on the command line to point to the
installed location of the rules.
Hope this helps!
On Fri, Feb 7, 2014 at 8:35 AM, Nathaniel Burns <[email protected]>wrote:
> I'm interested in writing some custom rules for ESLint specifically to
> check for common issues with code using the ExtJS framework. As these rules
> would be library-specific, they're not suitable for the ESLint project
> itself, but I'd like to make them easy to use for other people to plug into
> ESLint. I see that "determining how we will handle packaged rulesets that
> are easily shared" is on the
> roadmap<https://github.com/eslint/eslint/wiki/Release-goals#wiki-v040>for
> ESLint 0.4.0, so I'm wondering if there has been any discussion yet
> regarding this? Even if nothing's set in stone yet, any guidance regarding
> repo structure, packaging, or how to run unit tests for external rules
> would be helpful so I don't start off on the wrong track.
>
> Thanks!
>
> --
> You received this message because you are subscribed to the Google Groups
> "ESLint" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/groups/opt_out.
>
--
______________________________
Nicholas C. Zakas
@slicknet
Author, Professional JavaScript for Web Developers
Buy it at Amazon.com:
http://www.amazon.com/Professional-JavaScript-Developers-Nicholas-Zakas/dp/1118026691/ref=sr_1_3
--
You received this message because you are subscribed to the Google Groups
"ESLint" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.