summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Changed `.commit-row-title` `line-height` to `1.35` from `1`18851-commit-text-in-activity-commits-page-etc-has-the-wrong-line-heightLuke Bennett2016-09-061-3/+3
| | | | | | | | Removed `margin-bottom` Corrected commit-actions margin Reverted action margin for a more logical approach
* Merge branch 'remove-transition-prefix' into 'master' Annabel Dunstone Gray2016-09-014-11/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove prefixes from transition CSS property ## What does this MR do? Removes vendor prefixes from the CSS transition property ## Are there points in the code the reviewer needs to double check? None ## Why was this MR needed? Reduces unnecessary CSS ## Screenshots (if relevant) None ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? Closes #21614 See merge request !6093
| * Remove prefixes from transition CSS propertyClement Ho2016-08-314-11/+4
| |
* | Merge branch 'generic-commit-status-curve' into 'master' Fatih Acet2016-09-011-0/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add curve to generic commit status pipeline #### What does this MR do? Add curve to generic commit status pipeline #### Screenshots (if relevant) Before: ![Screen_Shot_2016-09-01_at_1.35.29_PM](/uploads/e4585462d50d426bcad66ae571387ddc/Screen_Shot_2016-09-01_at_1.35.29_PM.png) After: ![Screen_Shot_2016-09-01_at_1.35.21_PM](/uploads/fe62a7e5fc27c9c1bb3553fdc63c5cc6/Screen_Shot_2016-09-01_at_1.35.21_PM.png) See merge request !6156
| * | Add curve to generic commit status pipelineAnnabel Dunstone2016-09-011-0/+1
| | |
* | | Merge branch 'zj-rubocop-ruby-2-3-syntax' into 'master' Douwe Maan2016-09-011-2/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Enable Ruby 2.3 for rubocop too See merge request !6153
| * | | Rubocop syntax 2.3Z.J. van de Weg2016-09-011-2/+5
| | | |
* | | | Merge branch 'sh-reload-find-branch' into 'master' Yorick Peterse2016-09-015-5/+39
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Optimize branch lookups and force a repository reload for Repository#find_branch See merge request !6087
| * | | | Optimize branch lookups and force a repository reload for Repository#find_branchsh-reload-find-branchStan Hu2016-09-015-5/+39
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If `git gc` runs and `Repository` has an instance to `Rugged::Repository`, a bug in libgit2 may cause the instance to return a stale value or a missing branch. This change not only optimizes the branch lookup so we don't have to iterate through every branch, but it also works around the `git gc` issue by forcing a repository reload every time `Repository#find_branch` is called. See: https://github.com/libgit2/libgit2/issues/1534 Closes #15392, #21470
* | | | Merge branch '8-12-guide-updates' into 'master' Robert Speicher2016-09-012-3/+3
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Some minor updates to upgrade guides for 8.12. See merge request !6154
| * | | | Some minor updates for upgrade guides for 8.12.Ruben Davila2016-09-012-3/+3
| | | | |
* | | | | Merge branch '21506-fix-title-dropdown-chevron' into 'master' Annabel Dunstone Gray2016-09-013-6/+19
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolve "Inconsistency: Repo Title "down caret" cropped on smaller viewports" ## What does this MR do? Fixes an issue where the dropdown chevron for a project list was not visible on smaller viewports. This MR also changes the dropdown trigger into a `button` element for better accessibility (it can now be tabbed to like any link). ## Are there points in the code the reviewer needs to double check? None that I can think of. ## Why was this MR needed? Better accessibility and support for smaller viewports. ## Screenshots (if relevant) Dropdown toggle now targetable by pressing tab to select. ![Screen_Shot_2016-08-31_at_9.12.15_PM](/uploads/8b2038a8ae259efd32da2e94a309ce88/Screen_Shot_2016-08-31_at_9.12.15_PM.png) Chevron no longer hidden when project title length triggers `overflow: ellipsis`. ![Screen_Shot_2016-08-31_at_9.13.38_PM](/uploads/382e76c06e54bc307106a84ec21ab892/Screen_Shot_2016-08-31_at_9.13.38_PM.png) ## Does this MR meet the acceptance criteria? - [x] CHANGELOG entry added - Tests - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? Closes #21506 See merge request !6140
| * | | | add extra viewport breakpoint for project name width21506-fix-title-dropdown-chevronMike Greiling2016-08-311-1/+5
| | | | |
| * | | | prevent project dropdown chevron from disappearing in small viewportsMike Greiling2016-08-312-4/+7
| | | | |
| * | | | make projects dropdown accessibleMike Greiling2016-08-312-1/+7
| | |/ / | |/| |
* | | | Merge branch 'replace-play-icon' into 'master' Annabel Dunstone Gray2016-09-018-8/+26
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace play icon font with svg ## What does this MR do? Replaces the `play` font awesome icon with svg ## Are there points in the code the reviewer needs to double check? Make sure that the svg is looking great on all the changed pages ## Why was this MR needed? SVG is better than fonts :smile: ## What are the relevant issue numbers? #21455 ## Screenshots (if relevant) Before (Pipeline): ![Screen_Shot_2016-08-26_at_4.16.16_PM](/uploads/90a75b91b516e643f2134e053b0d7590/Screen_Shot_2016-08-26_at_4.16.16_PM.png) After (Pipeline): ![Screen_Shot_2016-08-26_at_4.15.49_PM](/uploads/44e44a3d4c14066b8b7ec8c3da36e012/Screen_Shot_2016-08-26_at_4.15.49_PM.png) Before (Environments): ![Screen_Shot_2016-08-31_at_3.03.35_PM](/uploads/bd4087a9f01c1a4d3c373d2662df4fe5/Screen_Shot_2016-08-31_at_3.03.35_PM.png) After (Environments): ![Screen_Shot_2016-08-31_at_3.00.23_PM](/uploads/0ec45031bedb271f16bea3544cbfe52b/Screen_Shot_2016-08-31_at_3.00.23_PM.png) ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !6038
| * | | Replace play icon font with svgClement Ho2016-09-018-8/+26
| |/ /
* | | Merge branch 'center-pipeline-stage-columns' into 'master' Annabel Dunstone Gray2016-09-012-4/+3
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Center build stage columns in pipeline overview ## What does this MR do? Centers the build stage table content and headers in the [pipeline view](https://gitlab.com/gitlab-org/gitlab-ce/pipelines) ## Are there points in the code the reviewer needs to double check? Need to check whether it is okay to remove the following ([commit that added this property](https://gitlab.com/gitlab-org/gitlab-ce/commit/6130376ad6673facb729b78878f9156a29948a5b)) ``` .light { width: 3px; } ``` ## Why was this MR needed? Improve UI ## Screenshots (if relevant) Before: ![Screen_Shot_2016-08-31_at_12.46.43_PM](/uploads/cc4973d2155b59b32ec6fde714fbc26d/Screen_Shot_2016-08-31_at_12.46.43_PM.png) After: ![Screen_Shot_2016-08-31_at_12.46.28_PM](/uploads/561d7b3973398c827d88870b38136c7d/Screen_Shot_2016-08-31_at_12.46.28_PM.png) ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? Closes #21708 See merge request !6135
| * | | Center build stage columns in pipeline overviewClement Ho2016-08-312-4/+3
| | | |
* | | | Merge branch 'issue_19734' into 'master' Douwe Maan2016-09-0160-143/+713
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Project tools visibility level ## part of #19734 ![project_features_access_level](/uploads/81ec7185d4e61d7578652020209af925/project_features_access_level.png) ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - [x] API support added - Tests - [x] Added for this feature/bug - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5606
| * | | | Project tools visibility levelFelipe Artur2016-09-0160-143/+713
| | | | |
* | | | | Merge branch 'merge-request-sha-info' into 'master' Douwe Maan2016-09-014-3/+33
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge request sha info ## What does this MR do? Exposes `sha` and `merge_commit_sha` items in `MergeRequest` API endpoint data. ## Are there points in the code the reviewer needs to double check? No. ## Why was this MR needed? It's useful information. ## What are the relevant issue numbers? Closes #20456. ## Screenshots (if relevant) N/A ## Does this MR meet the acceptance criteria? - [x] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md) - [x] API support added - Tests - [x] Added for this feature/bug - [x] All builds are passing - [x] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [x] Branch has no merge conflicts with `master` (if you do - rebase it please) - [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) See merge request !5966
| * | | | | entities: expose {,merge_commit_}sha in MergeRequestBen Boeckel2016-08-314-3/+33
| | | | | | | | | | | | | | | | | | | | | | | | Fixes #20456.
* | | | | | Merge branch 'js-tooltips-for-mentions' into 'master' Robert Speicher2016-09-0119-56/+28
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use JavaScript tooltips for mentions ## What does this MR do? - use JavaScript tooltips instead of plain title for mentions (issue, merge request, snippet, user, group, commit, commit range, milestone) ## Why was this MR needed? JavaScript tooltips look nicer and can wrap. ## What are the relevant issue numbers? https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5261#note_13106713, fixes #21500 See merge request !5301
| * | | | | | Use JavaScript tooltips for mentions (!5301)winniehell2016-09-0119-56/+28
| | | | | | |
* | | | | | | Merge branch '20601-emoji-tooltip-in-chronological-order' into 'master' Robert Speicher2016-09-013-1/+12
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Order award tooltips by their created_at date ## What are the relevant issue numbers? Closes #20601 See merge request !6086
| * | | | | | | Order award tooltips by their created_at dateAndrew Smith2016-09-013-1/+12
| | | | | | | |
* | | | | | | | Merge branch 'fix-suggested-colors-options-for-new-labels-in-the-admin-area' ↵Fatih Acet2016-09-012-0/+2
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | into 'master' Fix suggested colors options for new labels in the admin area ## What does this MR do? Execute the JS related to the suggested colors options when user access the new label in the admin area. ## Are there points in the code the reviewer needs to double check? No. ## Why was this MR needed? Clicking in a suggested color when creating a new label in the admin area don't change the background color. ## Screenshots (if relevant) * Before ![2016-08-31_19.56.14](/uploads/3d50236dac578910c5062aa1e83da350/2016-08-31_19.56.14.gif) * After ![2016-08-31_19.58.59](/uploads/376ffdcbb5b80ef51ab1d642fe9486d0/2016-08-31_19.58.59.gif) ## Does this MR meet the acceptance criteria? - [X] [CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added - Tests - [ ] Added for this feature/bug - [ ] All builds are passing - [X] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides) - [ ] Branch has no merge conflicts with `master` (if you do - rebase it please) - [X] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits) ## What are the relevant issue numbers? Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/21726 See merge request !6138
| * | | | | | | | Update CHANGELOGfix-suggested-colors-options-for-new-labels-in-the-admin-areaDouglas Barbosa Alexandre2016-08-311-0/+1
| | | | | | | | |
| * | | | | | | | Fix suggested colors options for new labels in the admin areaDouglas Barbosa Alexandre2016-08-311-0/+1
| | |_|_|/ / / / | |/| | | | | |
* | | | | | | | Merge branch 'expire-commit-info-partials-sooner' into 'master' Yorick Peterse2016-09-012-1/+2
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Expire commit view partial after a day See merge request !6128
| * | | | | | | | Expire commit view partial after a dayexpire-commit-info-partials-soonerSean McGivern2016-08-312-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We rarely use Russian-doll caching in views, and when we do, it's typically with a naturally-invalidating key. In the case of the commit partial, though, the author lookup isn't part of the cache key - because we're not going to use the state of the users table - and so a new email address can take up to two weeks to show against the commits list. Limiting this to a day still caches the partial for a healthy amount of time, without as bad a worst case scenario.
* | | | | | | | | Merge branch 'meta/add-doc-mr-template' into 'master' Achilleas Pipinellis2016-09-011-0/+14
|\ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add MR Documentation description template Add an MR Documentation template for `gitlab-ce`. See merge request !6145
| * | | | | | | | Add MR Documentation description templateAchilleas Pipinellis2016-09-011-0/+14
| | |/ / / / / / | |/| | | | | |
* | | | | | | | Merge branch 'control-dropdown-permissions' into 'master' Robert Speicher2016-08-312-18/+22
|\ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hide group control nav if no options present ## What does this MR do? Hides the group nav controls if no options present in the dropdown. Also fixed the alignment of the dropdown to match the project page. ## What are the relevant issue numbers? Closes #19120 See merge request !5155
| * | | | | | | Updated variable namecontrol-dropdown-permissionsPhil Hughes2016-08-301-3/+3
| | | | | | | |
| * | | | | | | Hide group control nav if no options presentPhil Hughes2016-08-302-18/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Closes #19120
* | | | | | | | Merge branch ↵Robert Speicher2016-08-313-15/+42
|\ \ \ \ \ \ \ \ | |_|/ / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'gh-importer-use-default-project-visibility-for-non-private-projects' into 'master' GitHub importer use default project visibility for non-private projects ## What does this MR do? GitHub importer use the `Default Project Visibility` setting for all non-private projects. ## Why was this MR needed? This allow users to import projects when `Public` visibility is restricted. ## What are the relevant issue numbers? Fixes #21437 See merge request !6023
| * | | | | | | Update CHANGELOGDouglas Barbosa Alexandre2016-08-311-0/+1
| | | | | | | |
| * | | | | | | GitHub importer use default project visibility for non-private projectsDouglas Barbosa Alexandre2016-08-312-15/+41
|/ / / / / / /
* | | | | | | Merge branch 'refactor/add-policies' into 'master' Robert Speicher2016-08-3145-824/+690
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor ability.rb into Policies ## What does this MR do? Factors out `ability.rb` into a new abstraction - the "policy" (stored in `app/policies`). A policy is a class named `#{class_name}Policy` (looked up automatically as needed) that implements `rules` as follows: ``` ruby class ThingPolicy < BasePolicy def rules @user # this is a user to determine abilities for, optionally nil in the anonymous case @subject # this is the subject of the ability, guaranteed to be an instance of `Thing` can! :some_ability # grant the :some_ability permission cannot! :some_ability # ensure that :some_ability is not allowed. this overrides any `can!` that is called before or after delegate! @subject.other_thing # merge the abilities (can!) and prohibitions (cannot!) from `@subject.other_thing` can? :some_ability # test whether, so far, :some_ability is allowed end def anonymous_rules # optional. if not implemented `rules` is called where `@user` is nil. otherwise this method is called when `@user` is nil. end end ``` See merge request !5796
| * | | | | | newline before default returnrefactor/add-policieshttp://jneen.net/2016-08-301-0/+1
| | | | | | |
| * | | | | | s/NB:/NOTE:/http://jneen.net/2016-08-302-2/+2
| | | | | | |
| * | | | | | don't use a deprecated api in ability_spechttp://jneen.net/2016-08-301-2/+2
| | | | | | |
| * | | | | | implement RuleSet#size for testshttp://jneen.net/2016-08-301-0/+4
| | | | | | |
| * | | | | | line break after guard clausehttp://jneen.net/2016-08-301-0/+1
| | | | | | |
| * | | | | | use || in place of `or`http://jneen.net/2016-08-301-1/+1
| | | | | | |
| * | | | | | use a more compact style for access policieshttp://jneen.net/2016-08-301-11/+4
| | | | | | |
| * | | | | | move the rules method to the top #cosmetichttp://jneen.net/2016-08-301-27/+27
| | | | | | |
| * | | | | | factor out a RuleSet so that `delegate!` retains @cannothttp://jneen.net/2016-08-302-9/+51
| | | | | | |