DAI-Lab / cookiecutter-pypackage

DAI Lab's adaptation of cookiecutter-pypackage
BSD 3-Clause "New" or "Revised" License
1 stars 5 forks source link

Reconfigure docs and provide a partially populated README template #41

Closed csala closed 4 years ago

csala commented 4 years ago

Resolve #9 : reconfigure the automatic api reference generation with sphinx-apidoc. Resolve #26: Add the missing badges to README.md Resolve #28: cleanup and re-organize the sphinx configuration. Use the README.md as the source for for the main section in the docs and also add the DAI-Lab logo and favicon. Resolve #29: Add autodocsumm sphinx extension. Resolve #30: Add a partially populated README template.

micahjsmith commented 4 years ago

have you tested these changes locally? I get the following error on my first attempt to render the template.

$ cat ~/.cookiecutter_replay/cookiecutter-pypackage.json 
{"cookiecutter": {"full_name": "Micah Smith", "email": "micahs@mit.edu", "github_username": "micahjsmith", "github_owner": "HDI-Project", "project_name": "my project", "package_name": "my-project", "project_slug": "my_project", "repository_name": "micahs-project", "project_short_description": "My first project", "license_owner": "MIT Data To AI Lab", "license_owner_email": "dailabmit@gmail.com", "pypi_username": "mit_dai_lab", "version": "0.1.0", "support_py2": "n", "use_pypi_deployment_with_travis": "y", "use_ghpages_deployment_with_travis": "y", "use_codecov": "y", "command_line_interface": "Click", "create_author_file": "y", "open_source_license": "MIT license", "_template": "./cookiecutter-pypackage/"}}

$ cookiecutter --replay ./cookiecutter-pypackage
Traceback (most recent call last):
  File "/usr/local/miniconda3/bin/cookiecutter", line 11, in <module>
    sys.exit(main())
  File "/usr/local/miniconda3/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/cookiecutter/cli.py", line 120, in main
    password=os.environ.get('COOKIECUTTER_REPO_PASSWORD')
  File "/usr/local/miniconda3/lib/python3.7/site-packages/cookiecutter/main.py", line 94, in cookiecutter
    output_dir=output_dir
  File "/usr/local/miniconda3/lib/python3.7/site-packages/cookiecutter/generate.py", line 364, in generate_files
    generate_file(project_dir, infile, context, env)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/cookiecutter/generate.py", line 166, in generate_file
    tmpl = env.get_template(infile_fwd_slashes)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/environment.py", line 830, in get_template
    return self._load_template(name, self.make_globals(globals))
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/environment.py", line 804, in _load_template
    template = self.loader.load(self, name, globals)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/loaders.py", line 125, in load
    code = environment.compile(source, name, filename)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/environment.py", line 591, in compile
    self.handle_exception(exc_info, source_hint=source_hint)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/environment.py", line 780, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/_compat.py", line 37, in reraise
    raise value.with_traceback(tb)
  File "./README.md", line 17, in template
    There are a few other more minor extensions to JSON; see the above page for
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/environment.py", line 497, in _parse
    return Parser(self, source, name, encode_filename(filename)).parse()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 901, in parse
    result = nodes.Template(self.subparse(), lineno=1)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 883, in subparse
    rv = self.parse_statement()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 130, in parse_statement
    return getattr(self, 'parse_' + self.stream.current.value)()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 211, in parse_if
    node.test = self.parse_tuple(with_condexpr=False)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 620, in parse_tuple
    args.append(parse())
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 612, in <lambda>
    parse = lambda: self.parse_expression(with_condexpr=False)
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 433, in parse_expression
    return self.parse_or()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 450, in parse_or
    left = self.parse_and()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 459, in parse_and
    left = self.parse_not()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 470, in parse_not
    return self.parse_compare()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 474, in parse_compare
    expr = self.parse_math1()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 496, in parse_math1
    left = self.parse_concat()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 507, in parse_concat
    args = [self.parse_math2()]
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 517, in parse_math2
    left = self.parse_pow()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 528, in parse_pow
    left = self.parse_unary()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 546, in parse_unary
    node = self.parse_primary()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 581, in parse_primary
    node = self.parse_dict()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 661, in parse_dict
    key = self.parse_expression()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 432, in parse_expression
    return self.parse_condexpr()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 437, in parse_condexpr
    expr1 = self.parse_or()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 450, in parse_or
    left = self.parse_and()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 459, in parse_and
    left = self.parse_not()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 470, in parse_not
    return self.parse_compare()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 474, in parse_compare
    expr = self.parse_math1()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 496, in parse_math1
    left = self.parse_concat()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 507, in parse_concat
    args = [self.parse_math2()]
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 517, in parse_math2
    left = self.parse_pow()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 528, in parse_pow
    left = self.parse_unary()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 546, in parse_unary
    node = self.parse_primary()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 581, in parse_primary
    node = self.parse_dict()
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/parser.py", line 662, in parse_dict
    self.stream.expect('colon')
  File "/usr/local/miniconda3/lib/python3.7/site-packages/jinja2/lexer.py", line 384, in expect
    self.name, self.filename)
jinja2.exceptions.TemplateSyntaxError: expected token ':', got '}'
  File "./README.md", line 17
    {% if {{ cookiecutter.open_source_license }} == 'Not open source' -%}
csala commented 4 years ago

My bad. I kept testing and doing changes, but possibly I did not test the final version, as now I also got same error. I just fixed it though.