<?xml version="1.0"?>
<puzzles xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.0pdd.com/puzzles.xsd" date="2026-04-02T03:03:41+00:00" version="BUILD">
  <puzzle alive="true">
    <issue href="https://github.com/llorllale/go-gitlint/issues/3">3</issue>
    <ticket>1</ticket>
    <estimate>0</estimate>
    <role>DEV</role>
    <id>1-919cdc44</id>
    <lines>53-56</lines>
    <body>Enable this configuration after this golangci-lint issue is fixed: https://github.com/golangci/golangci-lint/issues/397. According to the golangci-lint docs, this config is desirable since the CI build should not be required to update go.mod.</body>
    <file>.golangci.yml</file>
    <author>@llorllale</author>
    <email>george.aristy@gmail.com</email>
    <time>2019-02-16T14:02:25Z</time>
    <children/>
  </puzzle>
  <puzzle alive="false">
    <issue href="https://github.com/llorllale/go-gitlint/issues/9" closed="2019-03-02T00:38:47+00:00">9</issue>
    <ticket>4</ticket>
    <estimate>0</estimate>
    <role>DEV</role>
    <id>4-2f6700f4</id>
    <lines>10-12</lines>
    <body>The path should be passed in as a command line flag instead of being hard coded. All other configuration options should be passed in through CLI as well.</body>
    <file>cmd/go-gitlint/main.go</file>
    <author>@llorllale</author>
    <email>george.aristy@gmail.com</email>
    <time>2019-02-18T22:33:16Z</time>
    <children>
      <puzzle alive="false">
        <issue href="https://github.com/llorllale/go-gitlint/issues/23" closed="2026-04-02T03:03:41+00:00">23</issue>
        <ticket>9</ticket>
        <estimate>0</estimate>
        <role>DEV</role>
        <id>9-05e94b28</id>
        <lines>26-29</lines>
        <body>Global variables are a code smell (especially those in filterse.go). They promote coupling across different components inside the same package. Figure out a way to remove these global variables. Whatever command line parser we choose should be able to auto-generate usage.</body>
        <file>cmd/go-gitlint/main.go</file>
        <author>@llorllale</author>
        <email>george.aristy@gmail.com</email>
        <time>2019-03-02T00:38:43Z</time>
        <children/>
      </puzzle>
    </children>
  </puzzle>
  <puzzle alive="true">
    <issue href="https://github.com/llorllale/go-gitlint/issues/10">10</issue>
    <ticket>4</ticket>
    <estimate>0</estimate>
    <role>DEV</role>
    <id>4-dc893088</id>
    <lines>13-17</lines>
    <body>Figure out how to disable the golint check that forces us to write redundant comments of the form 'comment on exported type Commits should be of the form "Commits ..." (with optional leading article)' and rewrite all comments.</body>
    <file>internal/commits/commits.go</file>
    <author>@llorllale</author>
    <email>george.aristy@gmail.com</email>
    <time>2019-02-18T22:33:16Z</time>
    <children/>
  </puzzle>
  <puzzle alive="true">
    <issue href="https://github.com/llorllale/go-gitlint/issues/11">11</issue>
    <ticket>4</ticket>
    <estimate>0</estimate>
    <role>DEV</role>
    <id>4-faa799fb</id>
    <lines>28-30</lines>
    <body>These err checks are extremely annoying. Figure out how to handle them elegantly and reduce the cyclo complexity of this function (currently at 4).</body>
    <file>internal/commits/commits.go</file>
    <author>@llorllale</author>
    <email>george.aristy@gmail.com</email>
    <time>2019-02-18T22:33:16Z</time>
    <children/>
  </puzzle>
  <puzzle alive="false">
    <issue href="https://github.com/llorllale/go-gitlint/issues/12" closed="2019-02-19T01:36:00+00:00">12</issue>
    <ticket>4</ticket>
    <estimate>0</estimate>
    <role>DEV</role>
    <id>4-03485093</id>
    <lines>48-50</lines>
    <body>Figure out how to split the commit's message into a subject and a body. I believe the separator is the first instance of the CRLFCRLF sequence.</body>
    <file>internal/commits/commits.go</file>
    <author>@llorllale</author>
    <email>george.aristy@gmail.com</email>
    <time>2019-02-18T22:33:16Z</time>
    <children/>
  </puzzle>
  <puzzle alive="false">
    <issue href="https://github.com/llorllale/go-gitlint/issues/18" closed="2019-02-26T00:49:18+00:00">18</issue>
    <ticket>16</ticket>
    <estimate>0</estimate>
    <role>DEV</role>
    <id>16-e0d2cf8f</id>
    <lines>22-24</lines>
    <body>The coverage script is ignoring packages that are not tested at all (0% coverage). It should be fixed so that all packages are tested (except for main).</body>
    <file>check_coverage.sh</file>
    <author>@llorllale</author>
    <email>george.aristy@gmail.com</email>
    <time>2019-02-24T15:19:41Z</time>
    <children/>
  </puzzle>
  <puzzle alive="false">
    <issue href="https://github.com/llorllale/go-gitlint/issues/34" closed="2019-03-03T14:29:47+00:00">34</issue>
    <ticket>31</ticket>
    <estimate>0</estimate>
    <role>DEV</role>
    <id>31-07b6963e</id>
    <lines>37-40</lines>
    <body>Function issues.Filters() can be removed by providing default values for each filter that will effectively render them disabled. For example, OfSubjectRegex() can be effectively disabled by using ".*" as regex.</body>
    <file>internal/issues/filters.go</file>
    <author>@llorllale</author>
    <email>george.aristy@gmail.com</email>
    <time>2019-03-03T14:11:04Z</time>
    <children/>
  </puzzle>
  <puzzle alive="false">
    <issue href="https://github.com/llorllale/go-gitlint/issues/55" closed="2020-08-02T19:08:03+00:00">55</issue>
    <ticket>53</ticket>
    <estimate>0</estimate>
    <role>DEV</role>
    <id>53-2f5f2d13</id>
    <lines>3-5</lines>
    <body>upgrade golangci-lint-version to 1.18.x once their docker image is ready - see https://github.com/golangci/golangci-lint/issues/682. For now, linting on local is against 1.18.x vs their service on 1.17.x.</body>
    <file>.golangci.yml</file>
    <author>@llorllale</author>
    <email>george.aristy@gmail.com</email>
    <time>2019-09-14T13:55:06Z</time>
    <children/>
  </puzzle>
</puzzles>
