Version numbers और history

Python पैकेज विकसित करना

James Fulton

Climate informatics researcher

Final files

  • CONTRIBUTING.md
  • HISTORY.md
mysklearn/
|-- mysklearn/
|   |-- __init__.py
|   `-- mysklearn.py
|-- tests/
|   |-- __init__.py
|   `-- test_mysklearn.py
|-- MANIFEST.in
|-- README.md
|-- requirements_dev.txt
|-- setup.cfg
|-- setup.py
|-- tox.ini
|-- AUTHORS.md
|-- CONTRIBUTING.md  <-- नए फ़ाइलें
|-- HISTORY.md       <--
`-- Makefile
Python पैकेज विकसित करना

CONTRIBUTING.md

  • Markdown या reStructured-Text में से कोई एक
  • दूसरे डेवलपर्स को आपके पैकेज पर काम करने के लिए आमंत्रित करता है
  • उन्हें शुरुआत कैसे करें, यह बताता है
Python पैकेज विकसित करना

HISTORY.md

उदा. NumPy release notes

  • history, changelog या release notes के नाम से जाना जाता है
  • यूज़र्स को बताता है कि versions के बीच क्या बदला है
Python पैकेज विकसित करना

HISTORY.md

  • हर रिलीज़्ड version के लिए एक section
  • महत्वपूर्ण बदलावों के bullet points
  • Subsections के लिए
# History

## 0.3.0 ## 0.2.1 ## 0.2.0
Python पैकेज विकसित करना

HISTORY.md

  • हर रिलीज़्ड version के लिए एक section
  • महत्वपूर्ण बदलावों के bullet points
  • Subsections के लिए
    • मौजूदा functions में सुधार
# History

## 0.3.0
### Changed
- Regression fitting को NumPy operations से तेज किया गया।




## 0.2.1



## 0.2.0











Python पैकेज विकसित करना

HISTORY.md

  • हर रिलीज़्ड version के लिए एक section
  • महत्वपूर्ण बदलावों के bullet points
  • Subsections के लिए
    • मौजूदा functions में सुधार
    • नए additions
# History

## 0.3.0
### Changed
- Regression fitting को NumPy operations से तेज किया गया।




## 0.2.1



## 0.2.0
### Added
- Multiple linear regression अब नए 
  `regression.multiple_regression` module में उपलब्ध है।








Python पैकेज विकसित करना

HISTORY.md

  • हर रिलीज़्ड version के लिए एक section
  • महत्वपूर्ण बदलावों के bullet points
  • Subsections के लिए
    • मौजूदा functions में सुधार
    • नए additions
    • ठीक किए गए bugs
# History

## 0.3.0
### Changed
- Regression fitting को NumPy operations से तेज किया गया।




## 0.2.1
### Fixed
- शून्य intercepts कराने वाले bug को ठीक किया गया।

## 0.2.0
### Added
- Multiple linear regression अब नए 
  `regression.multiple_regression` module में उपलब्ध है।








Python पैकेज विकसित करना

HISTORY.md

  • हर रिलीज़्ड version के लिए एक section
  • महत्वपूर्ण बदलावों के bullet points
  • Subsections के लिए
    • मौजूदा functions में सुधार
    • नए additions
    • ठीक किए गए bugs
    • Deprecations
# History

## 0.3.0
### Changed
- Regression fitting को NumPy operations से तेज किया गया।
### Deprecated
- Python 3.5 के लिए सपोर्ट समाप्त हो गया है।
- `regression.regression` module हटा दिया गया है।

## 0.2.1
### Fixed
- शून्य intercepts कराने वाले bug को ठीक किया गया।

## 0.2.0
### Added
- Multiple linear regression अब नए 
  `regression.multiple_regression` module में उपलब्ध है।
### Deprecated
- 0.2.x Python 3.5 को सपोर्ट करने वाला आखिरी version होगा।
- `regression.regression` module का नाम बदलकर 
  `regression.single_regression` किया गया है। `regression.regression` को 
  अगली minor रिलीज़ में हटा दिया जाएगा।


Python पैकेज विकसित करना

History

0.3.0

Changed
  • Regression fitting को NumPy operations से तेज किया गया।
Deprecated
  • Python 3.5 के लिए सपोर्ट समाप्त हो गया है।
  • regression.regression module हटा दिया गया है।

0.2.1

Fixed
  • शून्य intercepts कराने वाले bug को ठीक किया गया।

0.2.0

Added
  • Multiple linear regression अब नए regression.multiple_regression module में उपलब्ध है।
Deprecated
  • 0.2.x Python 3.5 को सपोर्ट करने वाला आखिरी version होगा।
  • regression.regression module का नाम बदलकर regression.single_regression किया गया है। regression.regression को अगली minor रिलीज़ में हटा दिया जाएगा।
Python पैकेज विकसित करना

Version number

  • नई रिलीज़ के लिए तैयार होने पर version number बढ़ाएँ
  • बदले बिना PyPI पर अपलोड नहीं कर सकते
mysklearn/
|-- mysklearn/
|   |-- __init__.py         <---
|   `-- mysklearn.py
|-- setup.py                <---
...
Python पैकेज विकसित करना

पैकेज का version number

setup.py

# Import required functions
from setuptools import setup, find_packages

# Call setup function
setup(
    ...
    version='0.1.0',  <---
    ...

)

Top level __init__.py

"""
Linear regression for Python
============================

mysklearn is a complete package for implmenting
linear regression in python. 
"""

__version__ = '0.1.0'  <---
print(mysklearn.__version__)
0.1.0
Python पैकेज विकसित करना

bumpversion

  • सभी package version numbers अपडेट करने का आसान टूल
bumpversion major
bumpversion minor
bumpversion patch
mysklearn/    <--   यहाँ navigate करें
|-- mysklearn/
|   |-- __init__.py
|   `-- mysklearn.py
|-- setup.py
...
Python पैकेज विकसित करना

अभ्यास करते हैं!

Python पैकेज विकसित करना

Preparing Video For Download...