Michael, Maybe you should start this thread again with a link to the full thread but add all the projects into subject (e.g. [horizon]). Otherwise quite a few people may not see it.
You are right that the John Papa guidelines are definitely targeted at angular and not general style. They are community driven (and endorsed by the angular team). We discussed it quite a bit at the summit and we agreed that we wanted to spend less time arguing personal preferences for formatting in patches and his guidelines helped to do that for angular style. Thanks, Travis From: Michael Krotscheck <krotsch...@gmail.com<mailto:krotsch...@gmail.com>> Reply-To: OpenStack List <openstack-dev@lists.openstack.org<mailto:openstack-dev@lists.openstack.org>> Date: Wednesday, June 10, 2015 at 9:29 AM To: OpenStack List <openstack-dev@lists.openstack.org<mailto:openstack-dev@lists.openstack.org>> Subject: Re: [openstack-dev] [javascript] Linters On Tue, Jun 9, 2015 at 3:37 PM Robert Collins <robe...@robertcollins.net<mailto:robe...@robertcollins.net>> wrote: On 10 June 2015 at 04:01, Michael Krotscheck <krotsch...@gmail.com<mailto:krotsch...@gmail.com>> wrote: > Well, it looks like everyone has disqualified jslint and jshint, so let's > just make a decision there and remove them from the running. Unless I hear a > compelling reason to use something that has the infamous "do no evil" > license in it, let's dump it. ... > As for how this is synchronized, a brief discussion in the infra channel > proposed that we put global javascript requirements in the > global-requirements repo, and then update the update.py script in that repo > to also handle bower.json and package.json. Then, if we build an eslint/jscs > plugin similar to our hacking rules, we can just update that when we want to > modify the linting rules. Any objections? Yes, I think this should live in openstack/requirements. bower.json is clearly js specific; package.json isn't AFAICT - can you give me some sane pointers to go level up on that? There are two package managers in the JavaScript world right now, one that focuses on node.js/server dependencies (karma, lint, express, etc), and one that focuses on in-browser dependencies (angular, bootstrap, etc). They're both required for thick browser clients, but for server apps you only really need package.json https://docs.npmjs.com/files/package.json https://github.com/stackforge/refstack/blob/master/refstack-ui/package.json https://github.com/angular-ui/bootstrap/blob/master/package.json https://github.com/openstack/horizon/blob/master/package.json In the absence of information I'm assuming we should make a subdir 'js' and put bower.json and package.json in there (and do the same for the python things in a subdir called python for symmetry, though backwards compat and tooling considerations may mean that we have to prepare for that. The reason being that if package.json is js specific, its just confusing to have it live at the top level. Also we may want to call them global-$thing, since if we do have js in the requirements repo itself at some point, it would be good not to conflict on names. FYI, it looks like the monasca team may want to start doing similar things with Java. More information after I hunt them down this morning :) I'm not at all sure that update.py should handle the json files per se; will the policy for those files be the same as we use for python? Add linting rule sets to this list, contained either in .jscsrc or .eslintrc. Javascript does not have the privilege of pep8 being baked into the language tooling, so we have to sync it ourselves. If not it might be cleaner to have a new entry point. OTOH I'll need to look closely at a few real {bower,package}.json files to proffer an useful opinion. [Perhaps you covered this in IRC - it didn't come through in your summary]. It depends on what you think update.py is supposed to do. If I look at that repository, I would argue that the purpose is to "Synchronize common files and properties across registered openstack projects". In this case, a "requirement" is defined as something required to meet a minimum set of project "sanity" standards. Also, I'm in the middle of rearranging update.py to handle PEP 426 and so we should probably coordinate so we don't tromp on each other. Do you have a patch? Michael __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev