diff --git a/.arclint b/.arclint --- a/.arclint +++ b/.arclint @@ -1,8 +1,7 @@ { "exclude": [ "(^externals/)", - "(^webroot/rsrc/externals/(?!javelin/))", - "(/__tests__/data/)" + "(^webroot/rsrc/externals/(?!javelin/))" ], "linters": { "chmod": { @@ -69,21 +68,7 @@ "type": "spelling" }, "text": { - "type": "text", - "exclude": [ - "(^\\.arclint$)", - "(^resources/sql/quickstart.sql$)" - ] - }, - "text-without-length": { - "type": "text", - "severity": { - "3": "disabled" - }, - "include": [ - "(^\\.arclint$)", - "(^resources/sql/quickstart.sql$)" - ] + "type": "text" }, "xhpast": { "type": "xhpast", diff --git a/.editorconfig b/.editorconfig --- a/.editorconfig +++ b/.editorconfig @@ -3,12 +3,31 @@ [*] indent_style = space indent_size = 2 +end_of_line = lf charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true +max_line_length = 80 + +[.arclint] +max_line_length = + +[resources/sql/**.sql] +max_line_length = + +[scripts/install/install_*.sh] +max_line_length = + +[src/applications/differential/parser/__tests__/data/*.diff] +trim_trailing_whitespace = false + +[src/applications/differential/parser/__tests__/messages/long-title.txt] +max_line_length = + +[src/applications/diffusion/ssh/__tests__/hgwiredata/*.txt] +max_line_length = [externals/**] -; Use editor default (possible autodetection). indent_style = indent_size = trim_trailing_whitespace = false diff --git a/LICENSE b/LICENSE --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,3 @@ - Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ diff --git a/src/applications/diffusion/data/__tests__/DiffusionGitBranchTestCase.php b/src/applications/diffusion/data/__tests__/DiffusionGitBranchTestCase.php --- a/src/applications/diffusion/data/__tests__/DiffusionGitBranchTestCase.php +++ b/src/applications/diffusion/data/__tests__/DiffusionGitBranchTestCase.php @@ -12,28 +12,28 @@ origin/master 713f1fc54f9cfc830acbf6bbdb46a2883f772896 Automat... alternate/stuff 4444444444444444444444444444444444444444 Hmm... origin/HEAD 713f1fc54f9cfc830acbf6bbdb46a2883f772896 -origin/weekend-refactoring 6e947ab0498b82075ca6195ac168385a11326c4b +origin/refactoring 6e947ab0498b82075ca6195ac168385a11326c4b alternate/release-1.0.0 9ddd5d67962dd89fa167f9989954468b6c517b87 EOTXT; $this->assertEqual( array( - 'origin/accent-folding' => 'bfaea2e72197506e028c604cd1a294b6e37aa17d', - 'origin/eventordering' => '185a90a3c1b0556015e5f318fb86ccf8f7a6f3e3', - 'origin/master' => '713f1fc54f9cfc830acbf6bbdb46a2883f772896', - 'alternate/stuff' => '4444444444444444444444444444444444444444', - 'origin/weekend-refactoring' => '6e947ab0498b82075ca6195ac168385a11326c4b', - 'alternate/release-1.0.0' => '9ddd5d67962dd89fa167f9989954468b6c517b87', + 'origin/accent-folding' => 'bfaea2e72197506e028c604cd1a294b6e37aa17d', + 'origin/eventordering' => '185a90a3c1b0556015e5f318fb86ccf8f7a6f3e3', + 'origin/master' => '713f1fc54f9cfc830acbf6bbdb46a2883f772896', + 'alternate/stuff' => '4444444444444444444444444444444444444444', + 'origin/refactoring' => '6e947ab0498b82075ca6195ac168385a11326c4b', + 'alternate/release-1.0.0' => '9ddd5d67962dd89fa167f9989954468b6c517b87', ), DiffusionGitBranch::parseRemoteBranchOutput($output)); $this->assertEqual( array( - 'accent-folding' => 'bfaea2e72197506e028c604cd1a294b6e37aa17d', - 'eventordering' => '185a90a3c1b0556015e5f318fb86ccf8f7a6f3e3', - 'master' => '713f1fc54f9cfc830acbf6bbdb46a2883f772896', - 'weekend-refactoring' => '6e947ab0498b82075ca6195ac168385a11326c4b', + 'accent-folding' => 'bfaea2e72197506e028c604cd1a294b6e37aa17d', + 'eventordering' => '185a90a3c1b0556015e5f318fb86ccf8f7a6f3e3', + 'master' => '713f1fc54f9cfc830acbf6bbdb46a2883f772896', + 'refactoring' => '6e947ab0498b82075ca6195ac168385a11326c4b', ), DiffusionGitBranch::parseRemoteBranchOutput($output, 'origin')); } diff --git a/src/docs/book/contributor.book b/src/docs/book/contributor.book --- a/src/docs/book/contributor.book +++ b/src/docs/book/contributor.book @@ -1,15 +1,15 @@ { - "name" : "phabcontrib", - "title" : "Phabricator Contributor Documentation", - "short" : "Phabricator Contributor Docs", - "preface" : "Information for Phabricator contributors.", - "root" : "../../../", - "uri.source" : + "name": "phabcontrib", + "title": "Phabricator Contributor Documentation", + "short": "Phabricator Contributor Docs", + "preface": "Information for Phabricator contributors.", + "root": "../../../", + "uri.source": "https://secure.phabricator.com/diffusion/P/browse/master/%f$%l", - "rules" : { - "(\\.diviner$)" : "DivinerArticleAtomizer" + "rules": { + "(\\.diviner$)": "DivinerArticleAtomizer" }, - "exclude" : [ + "exclude": [ "(^externals/)", "(^webroot/rsrc/externals/)", "(^scripts/)", @@ -19,18 +19,18 @@ "(^src/docs/tech/)", "(^src/docs/flavor/)" ], - "groups" : { - "contrib" : { - "name" : "Contributor Overview" + "groups": { + "contrib": { + "name": "Contributor Overview" }, "detail": { - "name" : "Contributing in Detail" + "name": "Contributing in Detail" }, - "standards" : { - "name" : "Coding Standards" + "standards": { + "name": "Coding Standards" }, - "developer" : { - "name" : "Developer Guides" + "developer": { + "name": "Developer Guides" } } } diff --git a/src/docs/book/flavor.book b/src/docs/book/flavor.book --- a/src/docs/book/flavor.book +++ b/src/docs/book/flavor.book @@ -1,15 +1,15 @@ { - "name" : "phabflavor", - "title" : "Phabricator Flavor Text", - "short" : "Flavor Text", - "preface" : "Recommendations, lore, and dark rituals.", - "root" : "../../../", - "uri.source" : + "name": "phabflavor", + "title": "Phabricator Flavor Text", + "short": "Flavor Text", + "preface": "Recommendations, lore, and dark rituals.", + "root": "../../../", + "uri.source": "https://secure.phabricator.com/diffusion/P/browse/master/%f$%l", - "rules" : { - "(\\.diviner$)" : "DivinerArticleAtomizer" + "rules": { + "(\\.diviner$)": "DivinerArticleAtomizer" }, - "exclude" : [ + "exclude": [ "(^externals/)", "(^webroot/rsrc/externals/)", "(^scripts/)", @@ -19,24 +19,24 @@ "(^src/docs/tech/)", "(^src/docs/contributor/)" ], - "groups" : { - "overview" : { - "name" : "Overview" + "groups": { + "overview": { + "name": "Overview" }, - "review" : { - "name" : "Revision Control and Code Review" + "review": { + "name": "Revision Control and Code Review" }, - "sundry" : { - "name" : "Sundries" + "sundry": { + "name": "Sundries" }, - "lore" : { - "name" : "Phabricator Lore" + "lore": { + "name": "Phabricator Lore" }, - "php" : { - "name" : "PHP" + "php": { + "name": "PHP" }, - "javascript" : { - "name" : "Javascript" + "javascript": { + "name": "Javascript" } } } diff --git a/src/docs/book/phabricator.book b/src/docs/book/phabricator.book --- a/src/docs/book/phabricator.book +++ b/src/docs/book/phabricator.book @@ -1,16 +1,16 @@ { - "name" : "phabdev", - "title" : "Phabricator Technical Documentation", - "short" : "Phabricator Tech Docs", - "preface" : "Technical documentation intended for Phabricator developers.", - "root" : "../../../", - "uri.source" : + "name": "phabdev", + "title": "Phabricator Technical Documentation", + "short": "Phabricator Tech Docs", + "preface": "Technical documentation intended for Phabricator developers.", + "root": "../../../", + "uri.source": "https://secure.phabricator.com/diffusion/P/browse/master/%f$%l", - "rules" : { - "(\\.php$)" : "DivinerPHPAtomizer", - "(\\.diviner$)" : "DivinerArticleAtomizer" + "rules": { + "(\\.php$)": "DivinerPHPAtomizer", + "(\\.diviner$)": "DivinerArticleAtomizer" }, - "exclude" : [ + "exclude": [ "(^externals/)", "(^webroot/rsrc/externals/)", "(^scripts/)", @@ -20,254 +20,254 @@ "(^src/docs/flavor/)", "(^src/docs/contributor/)" ], - "groups" : { - "arcanist" : { - "name" : "Arcanist Integration", - "include" : "(^src/applications/arcanist/)" + "groups": { + "arcanist": { + "name": "Arcanist Integration", + "include": "(^src/applications/arcanist/)" }, - "audit" : { - "name" : "Audit", - "include" : "(^src/applications/audit/)" + "audit": { + "name": "Audit", + "include": "(^src/applications/audit/)" }, - "auth" : { - "name" : "Auth", - "include" : "(^src/applications/auth/)" + "auth": { + "name": "Auth", + "include": "(^src/applications/auth/)" }, - "baseapp" : { - "name" : "Application Basics", - "include" : "(^src/applications/base/)" + "baseapp": { + "name": "Application Basics", + "include": "(^src/applications/base/)" }, - "cache" : { - "name" : "Cache", - "include" : "(^src/applications/cache/)" + "cache": { + "name": "Cache", + "include": "(^src/applications/cache/)" }, - "calendar" : { - "name" : "Calendar", - "include" : "(^src/applications/calendar/)" + "calendar": { + "name": "Calendar", + "include": "(^src/applications/calendar/)" }, - "chatlog" : { - "name" : "Chatlog", - "include" : "(^src/applications/chatlog/)" + "chatlog": { + "name": "Chatlog", + "include": "(^src/applications/chatlog/)" }, - "conduit" : { - "name" : "Conduit", - "include" : "(^src/applications/conduit/)" + "conduit": { + "name": "Conduit", + "include": "(^src/applications/conduit/)" }, - "config" : { - "name" : "Config", - "include" : "(^src/applications/config/)" + "config": { + "name": "Config", + "include": "(^src/applications/config/)" }, - "conpherence" : { - "name" : "Conpherence", - "include" : "(^src/applications/conpherence/)" + "conpherence": { + "name": "Conpherence", + "include": "(^src/applications/conpherence/)" }, - "countdown" : { - "name" : "Countdown", - "include" : "(^src/applications/countdown/)" + "countdown": { + "name": "Countdown", + "include": "(^src/applications/countdown/)" }, - "daemon" : { - "name" : "Daemons", - "include" : "(^src/applications/daemon/)" + "daemon": { + "name": "Daemons", + "include": "(^src/applications/daemon/)" }, - "differential" : { - "name" : "Differential", - "include" : "(^src/applications/differential/)" + "differential": { + "name": "Differential", + "include": "(^src/applications/differential/)" }, - "diffusion" : { - "name" : "Diffusion", - "include" : "(^src/applications/diffusion/)" + "diffusion": { + "name": "Diffusion", + "include": "(^src/applications/diffusion/)" }, - "directory" : { - "name" : "Directory", - "include" : "(^src/applications/directory/)" + "directory": { + "name": "Directory", + "include": "(^src/applications/directory/)" }, - "diviner" : { - "name" : "Diviner", - "include" : "(^src/applications/diviner/)" + "diviner": { + "name": "Diviner", + "include": "(^src/applications/diviner/)" }, - "doorkeeper" : { - "name" : "Doorkeeper", - "include" : "(^src/applications/doorkeeper/)" + "doorkeeper": { + "name": "Doorkeeper", + "include": "(^src/applications/doorkeeper/)" }, - "draft" : { - "name" : "Draft", - "include" : "(^src/applications/draft/)" + "draft": { + "name": "Draft", + "include": "(^src/applications/draft/)" }, - "drydock" : { - "name" : "Drydock", - "include" : "(^src/applications/drydock/)" + "drydock": { + "name": "Drydock", + "include": "(^src/applications/drydock/)" }, - "fact" : { - "name" : "Fact", - "include" : "(^src/applications/fact/)" + "fact": { + "name": "Fact", + "include": "(^src/applications/fact/)" }, - "feed" : { - "name" : "Feed", - "include" : "(^src/applications/feed/)" + "feed": { + "name": "Feed", + "include": "(^src/applications/feed/)" }, - "files" : { - "name" : "Files", - "include" : "(^src/applications/files/)" + "files": { + "name": "Files", + "include": "(^src/applications/files/)" }, - "flag" : { - "name" : "Flags", - "include" : "(^src/applications/flag/)" + "flag": { + "name": "Flags", + "include": "(^src/applications/flag/)" }, - "harbormaster" : { - "name" : "Harbormaster", - "include" : "(^src/applications/harbormaster/)" + "harbormaster": { + "name": "Harbormaster", + "include": "(^src/applications/harbormaster/)" }, - "help" : { - "name" : "Help", - "include" : "(^src/applications/help/)" + "help": { + "name": "Help", + "include": "(^src/applications/help/)" }, - "herald" : { - "name" : "Herald", - "include" : "(^src/applications/herald/)" + "herald": { + "name": "Herald", + "include": "(^src/applications/herald/)" }, - "legalpad" : { - "name" : "Legalpad", - "include" : "(^src/applications/legalpad/)" + "legalpad": { + "name": "Legalpad", + "include": "(^src/applications/legalpad/)" }, - "lipsum" : { - "name" : "Lipsum", - "include" : "(^src/applications/lipsum/)" + "lipsum": { + "name": "Lipsum", + "include": "(^src/applications/lipsum/)" }, - "macro" : { - "name" : "Macro", - "include" : "(^src/applications/macro/)" + "macro": { + "name": "Macro", + "include": "(^src/applications/macro/)" }, - "mailinglists" : { - "name" : "Mailing Lists", - "include" : "(^src/applications/mailinglists/)" + "mailinglists": { + "name": "Mailing Lists", + "include": "(^src/applications/mailinglists/)" }, - "maniphest" : { - "name" : "Maniphest", - "include" : "(^src/applications/maniphest/)" + "maniphest": { + "name": "Maniphest", + "include": "(^src/applications/maniphest/)" }, - "meta" : { - "name" : "Meta", - "include" : "(^src/applications/meta/)" + "meta": { + "name": "Meta", + "include": "(^src/applications/meta/)" }, - "metamta" : { - "name" : "MetaMTA", - "include" : "(^src/applications/metamta/)" + "metamta": { + "name": "MetaMTA", + "include": "(^src/applications/metamta/)" }, - "notification" : { - "name" : "Notifications", - "include" : "(^src/applications/notification/)" + "notification": { + "name": "Notifications", + "include": "(^src/applications/notification/)" }, - "oauthserver" : { - "name" : "OAuth Server", - "include" : "(^src/applications/oauthserver/)" + "oauthserver": { + "name": "OAuth Server", + "include": "(^src/applications/oauthserver/)" }, - "owners" : { - "name" : "Owners", - "include" : "(^src/applications/owners/)" + "owners": { + "name": "Owners", + "include": "(^src/applications/owners/)" }, - "paste" : { - "name" : "Paste", - "include" : "(^src/applications/paste/)" + "paste": { + "name": "Paste", + "include": "(^src/applications/paste/)" }, - "people" : { - "name" : "People", - "include" : "(^src/applications/people/)" + "people": { + "name": "People", + "include": "(^src/applications/people/)" }, - "phame" : { - "name" : "Phame", - "include" : "(^src/applications/phame/)" + "phame": { + "name": "Phame", + "include": "(^src/applications/phame/)" }, - "phid" : { - "name" : "PHIDs", - "include" : "(^src/applications/phid/)" + "phid": { + "name": "PHIDs", + "include": "(^src/applications/phid/)" }, - "phlux" : { - "name" : "Phlux", - "include" : "(^src/applications/phlux/)" + "phlux": { + "name": "Phlux", + "include": "(^src/applications/phlux/)" }, - "pholio" : { - "name" : "Pholio", - "include" : "(^src/applications/pholio/)" + "pholio": { + "name": "Pholio", + "include": "(^src/applications/pholio/)" }, - "phortune" : { - "name" : "Phortune", - "include" : "(^src/applications/phortune/)" + "phortune": { + "name": "Phortune", + "include": "(^src/applications/phortune/)" }, - "phpast" : { - "name" : "PHPAST", - "include" : "(^src/applications/phpast/)" + "phpast": { + "name": "PHPAST", + "include": "(^src/applications/phpast/)" }, - "phrequent" : { - "name" : "Phrequent", - "include" : "(^src/applications/phrequent/)" + "phrequent": { + "name": "Phrequent", + "include": "(^src/applications/phrequent/)" }, - "phriction" : { - "name" : "Phriction", - "include" : "(^src/applications/phriction/)" + "phriction": { + "name": "Phriction", + "include": "(^src/applications/phriction/)" }, - "policy" : { - "name" : "Policy", - "include" : "(^src/applications/policy/)" + "policy": { + "name": "Policy", + "include": "(^src/applications/policy/)" }, - "ponder" : { - "name" : "Ponder", - "include" : "(^src/applications/ponder/)" + "ponder": { + "name": "Ponder", + "include": "(^src/applications/ponder/)" }, - "project" : { - "name" : "Projects", - "include" : "(^src/applications/project/)" + "project": { + "name": "Projects", + "include": "(^src/applications/project/)" }, - "releeph" : { - "name" : "Releeph", - "include" : "(^src/applications/releeph/)" + "releeph": { + "name": "Releeph", + "include": "(^src/applications/releeph/)" }, - "remarkup" : { - "name" : "Remarkup", - "include" : "(^src/applications/remarkup/)" + "remarkup": { + "name": "Remarkup", + "include": "(^src/applications/remarkup/)" }, - "repository" : { - "name" : "Repositories", - "include" : "(^src/applications/repository/)" + "repository": { + "name": "Repositories", + "include": "(^src/applications/repository/)" }, - "search" : { - "name" : "Search", - "include" : "(^src/applications/search/)" + "search": { + "name": "Search", + "include": "(^src/applications/search/)" }, - "settings" : { - "name" : "Settings", - "include" : "(^src/applications/settings/)" + "settings": { + "name": "Settings", + "include": "(^src/applications/settings/)" }, - "slowvote" : { - "name" : "Slowvote", - "include" : "(^src/applications/slowvote/)" + "slowvote": { + "name": "Slowvote", + "include": "(^src/applications/slowvote/)" }, - "subscriptions" : { - "name" : "Subscriptions", - "include" : "(^src/applications/subscriptions/)" + "subscriptions": { + "name": "Subscriptions", + "include": "(^src/applications/subscriptions/)" }, - "system" : { - "name" : "System", - "include" : "(^src/applications/system/)" + "system": { + "name": "System", + "include": "(^src/applications/system/)" }, - "tokens" : { - "name" : "Tokens", - "include" : "(^src/applications/tokens/)" + "tokens": { + "name": "Tokens", + "include": "(^src/applications/tokens/)" }, - "transactions" : { - "name" : "Transactions", - "include" : "(^src/applications/transactions/)" + "transactions": { + "name": "Transactions", + "include": "(^src/applications/transactions/)" }, - "typeahead" : { - "name" : "Typeahead", - "include" : "(^src/applications/typeahead/)" + "typeahead": { + "name": "Typeahead", + "include": "(^src/applications/typeahead/)" }, - "uiexample" : { - "name" : "UI Examples", - "include" : "(^src/applications/uiexample/)" + "uiexample": { + "name": "UI Examples", + "include": "(^src/applications/uiexample/)" }, - "xhprof" : { - "name" : "XHProf", - "include" : "(^src/applications/xhprof/)" + "xhprof": { + "name": "XHProf", + "include": "(^src/applications/xhprof/)" } } } diff --git a/src/docs/book/user.book b/src/docs/book/user.book --- a/src/docs/book/user.book +++ b/src/docs/book/user.book @@ -1,15 +1,15 @@ { - "name" : "phabricator", - "title" : "Phabricator User Documentation", - "short" : "Phabricator User Docs", - "preface" : "Instructions for installing, configuring, and using Phabricator.", - "root" : "../../../", - "uri.source" : + "name": "phabricator", + "title": "Phabricator User Documentation", + "short": "Phabricator User Docs", + "preface": "Instructions for installing, configuring, and using Phabricator.", + "root": "../../../", + "uri.source": "https://secure.phabricator.com/diffusion/P/browse/master/%f$%l", - "rules" : { - "(\\.diviner$)" : "DivinerArticleAtomizer" + "rules": { + "(\\.diviner$)": "DivinerArticleAtomizer" }, - "exclude" : [ + "exclude": [ "(^externals/)", "(^webroot/rsrc/externals/)", "(^scripts/)", @@ -19,33 +19,33 @@ "(^src/docs/flavor/)", "(^src/docs/contributor/)" ], - "groups" : { - "intro" : { - "name" : "Introduction" + "groups": { + "intro": { + "name": "Introduction" }, - "config" : { - "name" : "Configuration" + "config": { + "name": "Configuration" }, - "userguide" : { - "name" : "Application User Guides" + "userguide": { + "name": "Application User Guides" }, - "differential" : { - "name" : "Differential (Code Review)" + "differential": { + "name": "Differential (Code Review)" }, - "diffusion" : { - "name" : "Diffusion (Repository Browser)" + "diffusion": { + "name": "Diffusion (Repository Browser)" }, - "maniphest" : { - "name" : "Maniphest (Task Tracking)" + "maniphest": { + "name": "Maniphest (Task Tracking)" }, - "slowvote" : { - "name" : "Slowvote (Polls)" + "slowvote": { + "name": "Slowvote (Polls)" }, - "herald" : { - "name" : "Herald (Notifications)" + "herald": { + "name": "Herald (Notifications)" }, - "phriction" : { - "name" : "Phriction (Wiki)" + "phriction": { + "name": "Phriction (Wiki)" } } } diff --git a/webroot/rsrc/externals/javelin/LICENSE b/webroot/rsrc/externals/javelin/LICENSE --- a/webroot/rsrc/externals/javelin/LICENSE +++ b/webroot/rsrc/externals/javelin/LICENSE @@ -12,11 +12,11 @@ may be used to endorse or promote products derived from this software without specific prior written permission. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND ANY -EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR +ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT