{"action":"created","issue":{"url":"https://api.github.com/repos/github/gitignore/issues/1582","repository_url":"https://api.github.com/repos/github/gitignore","labels_url":"https://api.github.com/repos/github/gitignore/issues/1582/labels{/name}","comments_url":"https://api.github.com/repos/github/gitignore/issues/1582/comments","events_url":"https://api.github.com/repos/github/gitignore/issues/1582/events","html_url":"https://github.com/github/gitignore/pull/1582","id":92957831,"number":1582,"title":"[PROPOSAL] annotated gitignore files","user":{"login":"shiftkey","id":359239,"avatar_url":"https://avatars.githubusercontent.com/u/359239?v=3","gravatar_id":"","url":"https://api.github.com/users/shiftkey","html_url":"https://github.com/shiftkey","followers_url":"https://api.github.com/users/shiftkey/followers","following_url":"https://api.github.com/users/shiftkey/following{/other_user}","gists_url":"https://api.github.com/users/shiftkey/gists{/gist_id}","starred_url":"https://api.github.com/users/shiftkey/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/shiftkey/subscriptions","organizations_url":"https://api.github.com/users/shiftkey/orgs","repos_url":"https://api.github.com/users/shiftkey/repos","events_url":"https://api.github.com/users/shiftkey/events{/privacy}","received_events_url":"https://api.github.com/users/shiftkey/received_events","type":"User","site_admin":true},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":18,"created_at":"2015-07-04T01:28:48Z","updated_at":"2016-02-12T06:45:29Z","closed_at":"2016-02-12T03:20:40Z","pull_request":{"url":"https://api.github.com/repos/github/gitignore/pulls/1582","html_url":"https://github.com/github/gitignore/pull/1582","diff_url":"https://github.com/github/gitignore/pull/1582.diff","patch_url":"https://github.com/github/gitignore/pull/1582.patch"},"body":"This is a work-in-progress, based off the discussions in [this gist](https://gist.github.com/shiftkey/bf37c810b726f046bd22) around tackling some of the issues with maintaining a large suite of gitignore templates.\r\n\r\n### The Problem\r\n\r\nOver time, the context provided in gitignore templates is lost into the aether. By providing some structure to these files, hopefully we can improve this situation.\r\n\r\nThere's other parties who depend on this repository, so I'm happy to work through this in a methodical and collaborative way, being the guinea pig while we experiment with this.\r\n\r\n### The Goals\r\n\r\nFirst off, thanks to everyone who participated in that gist, in particular @joeblau and @arcresu - who have much more context on this issue than myself. I've taken that feedback and turned that into a first step down this path.\r\n\r\nI want to enrich our existing templates with metadata and add some simple structure, without breaking compatibility (that is, it should remain consumable as a gitignore template) or introducing any new tooling.\r\n\r\nI believe this will help on a few fronts:\r\n\r\n - **maintainers:** will have extra context available to them, when reviewing proposed changes\r\n - **contributors:** will be able to view context alongside template changes, without having to navigate a long history of PR discussions. Hopefully contributors will also be able to discuss and clarify this context over time as well, but this depends on things like adoption.\r\n - **users:** will have the context around a template available at consumption time, so they can understand why a template is configured as such a way, and be empowered to make changes because they understand _why_ a rule exists \r\n\r\n### The Proposal\r\n\r\nThis PR makes some changes to the `VisualStudio` template as a testbed for what data we need to capture. As I've been doing this, a bunch of concepts have crystalized for me, which I'll formalize in the `CONTRIBUTING` document alongside this (it also feels very much like a grammar syntax is the end result, but let's see how the discussion evolves).\r\n\r\nI'm using the `VisualStudio` template as a starting point for a couple of reasons:\r\n\r\n1. It's one that I'm very familiar with, so taking on the challenge to provide more context is more achievable than choosing a template (or stack) I'm not as familiar with.\r\n2. I've had various discussions with people in the community about recent template changes (like #1505), so it'll be a good test case for how feasible this idea is.\r\n\r\nI'll write up some further comments about this format in this PR."},"comment":{"url":"https://api.github.com/repos/github/gitignore/issues/comments/183201493","html_url":"https://github.com/github/gitignore/pull/1582#issuecomment-183201493","issue_url":"https://api.github.com/repos/github/gitignore/issues/1582","id":183201493,"user":{"login":"adamralph","id":677704,"avatar_url":"https://avatars.githubusercontent.com/u/677704?v=3","gravatar_id":"","url":"https://api.github.com/users/adamralph","html_url":"https://github.com/adamralph","followers_url":"https://api.github.com/users/adamralph/followers","following_url":"https://api.github.com/users/adamralph/following{/other_user}","gists_url":"https://api.github.com/users/adamralph/gists{/gist_id}","starred_url":"https://api.github.com/users/adamralph/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adamralph/subscriptions","organizations_url":"https://api.github.com/users/adamralph/orgs","repos_url":"https://api.github.com/users/adamralph/repos","events_url":"https://api.github.com/users/adamralph/events{/privacy}","received_events_url":"https://api.github.com/users/adamralph/received_events","type":"User","site_admin":false},"created_at":"2016-02-12T06:45:29Z","updated_at":"2016-02-12T06:45:29Z","body":"@shiftkey this raises an argument for enabling issues, since then you could open one and mark it up for grabs. Very few people are ever going to search closed pull requests for way to help out."}}