Weitere ähnliche Inhalte Ähnlich wie 오픈소스 라이브러리 개발기 (20) Kürzlich hochgeladen (20) 오픈소스 라이브러리 개발기53. Pipenv
•
• Pipfile, Pipfile.lock
•
• pipenv install --dev
• pipenv shell (source venv/bin/activate)
pipenv lock -r > requirements.txt
pipenv lock -dr > requirements-dev.txt
54. Lint & Formatter
• PEP8
• pylint, flake8 linter
• autopep8, yapf, black formatter
• .pylintrc config
• pylint --error-only tox
57. Testing - pytest
• unittest + nose < pytest
•
•
• fixture
•
The cleaning hand of pytest
setUp, tearDown
58. Testing - pytest
• unittest + nose < pytest
•
•
• fixture
•
The cleaning hand of pytest
59. Testing - pytest
• unittest + nose < pytest
•
•
• fixture
•
Pytest Flask DB
Python pytest fixture
Switching from nose to py.test at Mozilla
63. CI
• tox
• pytest pylint
• coverage
• travis appveyor
75. stdlib
•
• functools: wraps, partial
• itertools: Response
• contextlib: sqlite cursor, contextmanager
• collections: ChainMap, 3.4 dict unpacking
• abc: ABCMeta, abstractmethod
• pathlib: os.join, os.path
93. &
• 0.1.0 & git tag
•
• setup.py version GitHub
• changelog
101. • Calendar Versioning (e.g. Pipenv 2018.7.1)
• Ubuntu, pytz, PyCharm, certifi
• (pip), outdated
(pytz, certifi), (Ubuntu,
Pipenv)
102. •
•
• : Getting started
• : api
• sphinx read the docs (sphinx , )
104. GitHub
• .github
• CONTRIBUTING.md: .
• ISSUE_TEMPLATE.md: ,
OS, python , , pip freeze
• PULL_REQUEST_TEMPLATE.md: ,
•
108. • CI:
•
• pypi : stable, unstable
•
• :
licenselicense MITMIT
buildbuild passingpassingbuildbuild passingpassing
pypipypi v0.2.4v0.2.4
pythonpython 3.4, 3.5, 3.63.4, 3.5, 3.6
codecovcodecov 92%92%
110. •
•
• ( Close #4, Fix #3
)
•
115. - Go
- Tox, Travis Codecov
- : pytest, Travis CI,
Docker
-