Лицензии и файлы README

Разработка пакетов на Python

James Fulton

Climate informatics researcher

Зачем нужна лицензия?

  • Чтобы дать другим разрешение на использование вашего кода
Разработка пакетов на Python

Лицензии с открытым исходным кодом

  • Подробнее здесь
  • Разрешают пользователям
    • использовать ваш пакет
    • изменять ваш пакет
    • распространять версии вашего пакета
1 https://choosealicense.com
Разработка пакетов на Python

Что такое README?

  • «Главная страница» вашего пакета
  • Отображается на Github или PyPI
Разработка пакетов на Python

Что включить в README

Разделы README

  • Заголовок
  • Описание и возможности
  • Установка
  • Примеры использования
  • Участие в разработке
  • Лицензия
Разработка пакетов на Python

Формат README

Markdown (commonmark)

  • Хранится в файле README.md
  • Проще в использовании
  • Применяется в этом курсе и на практике
reStructuredText

  • Хранится в файле README.rst
  • Более сложный формат
  • Также широко распространён
Разработка пакетов на Python

Commonmark

Содержимое README.md














`

Как выглядит после рендеринга

Разработка пакетов на Python

Commonmark

Содержимое README.md

# mysklearn

mysklearn is a package for complete **linear regression** in Python.
You can find out more about this package on [DataCamp](https://datacamp.com)

Как выглядит после рендеринга

mysklearn

mysklearn is a package for complete linear regression in python.

You can find out more about this package on DataCamp

Разработка пакетов на Python

Commonmark

Содержимое README.md

# mysklearn

mysklearn is a package for complete **linear regression** in Python.
You can find out more about this package on [DataCamp](https://datacamp.com)
## Installation You can install this package using

Как выглядит после рендеринга

mysklearn

mysklearn is a package for complete linear regression in python.

You can find out more about this package on DataCamp

Installation

You can install this package using

Разработка пакетов на Python

Commonmark

Содержимое README.md

# mysklearn
mysklearn is a package for complete 
**linear regression** in Python.

You can find out more about this package 
on [DataCamp](https://datacamp.com)

## Installation
You can install this package using

```
pip install mysklearn
```

Как выглядит после рендеринга

mysklearn

mysklearn is a package for complete linear regression in python.

You can find out more about this package on DataCamp

Installation

You can install this package using

pip install mysklearn
Разработка пакетов на Python

Добавление файлов в пакет

Дерево директорий пакета с подпакетами

mysklearn/
|-- mysklearn
|   |-- __init__.py
|   |-- preprocessing
|   |   |-- ...
|   |-- regression
|   |   |-- ...
|   |-- utils.py
|-- setup.py
|-- requirements.txt
|-- LICENSE      <--- new files
|-- README.md    <--- added to top directory
Разработка пакетов на Python

MANIFEST.in

Перечисляет дополнительные файлы для включения в дистрибутив пакета.

Разработка пакетов на Python

MANIFEST.in

Содержимое MANIFEST.in

include LICENSE
include README.md
mysklearn/
|-- mysklearn
|   |-- __init__.py
|   |-- preprocessing
|   |   |-- ...
|   |-- regression
|   |   |-- ...
|   |-- utils.py
|-- setup.py
|-- requirements.txt
|-- LICENSE
|-- README.md
|-- MANIFEST.in   <---
Разработка пакетов на Python

Давайте потренируемся!

Разработка пакетов на Python

Preparing Video For Download...