หมายเลขเวอร์ชันและประวัติการเปลี่ยนแปลง

การพัฒนา Python Packages

James Fulton

Climate informatics researcher

ไฟล์สุดท้าย

  • 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  <-- new files
|-- HISTORY.md       <--
`-- Makefile
การพัฒนา Python Packages

CONTRIBUTING.md

  • รองรับทั้ง markdown และ reStructuredText
  • เชิญชวนนักพัฒนาคนอื่นมาร่วมพัฒนาแพ็กเกจ
  • บอกวิธีเริ่มต้นใช้งาน
การพัฒนา Python Packages

HISTORY.md

เช่น NumPy release notes

  • รู้จักกันในชื่อ history, changelog หรือ release notes
  • บอกผู้ใช้ว่ามีอะไรเปลี่ยนแปลงระหว่างเวอร์ชัน
การพัฒนา Python Packages

HISTORY.md

  • หัวข้อสำหรับแต่ละเวอร์ชันที่เผยแพร่
  • รายการการเปลี่ยนแปลงสำคัญ
  • หัวข้อย่อยสำหรับ
# History

## 0.3.0 ## 0.2.1 ## 0.2.0
การพัฒนา Python Packages

HISTORY.md

  • หัวข้อสำหรับแต่ละเวอร์ชันที่เผยแพร่
  • รายการการเปลี่ยนแปลงสำคัญ
  • หัวข้อย่อยสำหรับ
    • การปรับปรุงฟังก์ชันที่มีอยู่
# History

## 0.3.0
### Changed
- Regression fitting sped up using NumPy operations.




## 0.2.1



## 0.2.0











การพัฒนา Python Packages

HISTORY.md

  • หัวข้อสำหรับแต่ละเวอร์ชันที่เผยแพร่
  • รายการการเปลี่ยนแปลงสำคัญ
  • หัวข้อย่อยสำหรับ
    • การปรับปรุงฟังก์ชันที่มีอยู่
    • สิ่งที่เพิ่มใหม่
# History

## 0.3.0
### Changed
- Regression fitting sped up using NumPy operations.




## 0.2.1



## 0.2.0
### Added
- Multiple linear regression now available in new 
  `regression.multiple_regression` module.








การพัฒนา Python Packages

HISTORY.md

  • หัวข้อสำหรับแต่ละเวอร์ชันที่เผยแพร่
  • รายการการเปลี่ยนแปลงสำคัญ
  • หัวข้อย่อยสำหรับ
    • การปรับปรุงฟังก์ชันที่มีอยู่
    • สิ่งที่เพิ่มใหม่
    • บักที่แก้ไขแล้ว
# History

## 0.3.0
### Changed
- Regression fitting sped up using NumPy operations.




## 0.2.1
### Fixed
- Fixed bug causing intercepts of zero.

## 0.2.0
### Added
- Multiple linear regression now available in new 
  `regression.multiple_regression` module.








การพัฒนา Python Packages

HISTORY.md

  • หัวข้อสำหรับแต่ละเวอร์ชันที่เผยแพร่
  • รายการการเปลี่ยนแปลงสำคัญ
  • หัวข้อย่อยสำหรับ
    • การปรับปรุงฟังก์ชันที่มีอยู่
    • สิ่งที่เพิ่มใหม่
    • บักที่แก้ไขแล้ว
    • ฟีเจอร์ที่เลิกใช้งาน
# History

## 0.3.0
### Changed
- Regression fitting sped up using NumPy operations.
### Deprecated
- Support for Python 3.5 has ended.
- `regression.regression` module has been removed.

## 0.2.1
### Fixed
- Fixed bug causing intercepts of zero.

## 0.2.0
### Added
- Multiple linear regression now available in new 
  `regression.multiple_regression` module.
### Deprecated
- 0.2.x will be the last version that supports Python 3.5.
- `regression.regression` module has been renamed 
  `regression.single_regression`. `regression.regression` will be 
  removed in next minor release.


การพัฒนา Python Packages

History

0.3.0

Changed
  • Regression fitting sped up using NumPy operations.
Deprecated
  • Support for Python 3.5 has ended.
  • regression.regression module has been removed.

0.2.1

Fixed
  • Fixed bug causing intercepts of zero.

0.2.0

Added
  • Multiple linear regression now available in new regression.multiple_regression module.
Deprecated
  • 0.2.x will be the last version that supports Python 3.5.
  • regression.regression module has been renamed regression.single_regression. regression.regression will be removed in next minor release.
การพัฒนา Python Packages

หมายเลขเวอร์ชัน

  • เพิ่มหมายเลขเวอร์ชันเมื่อพร้อมเผยแพร่
  • อัปโหลดไปยัง PyPI ไม่ได้หากไม่เปลี่ยนหมายเลขเวอร์ชัน
mysklearn/
|-- mysklearn/
|   |-- __init__.py         <---
|   `-- mysklearn.py
|-- setup.py                <---
...
การพัฒนา Python Packages

หมายเลขเวอร์ชันของแพ็กเกจ

setup.py

# Import required functions
from setuptools import setup, find_packages

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

)

__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 Packages

bumpversion

  • เครื่องมืออัปเดตหมายเลขเวอร์ชันทั้งหมดในแพ็กเกจได้สะดวก
bumpversion major
bumpversion minor
bumpversion patch
mysklearn/    <--   navigate to here
|-- mysklearn/
|   |-- __init__.py
|   `-- mysklearn.py
|-- setup.py
...
การพัฒนา Python Packages

มาฝึกกันเถอะ!

การพัฒนา Python Packages

Preparing Video For Download...