77. PYTHON (Pythonic & Packaging) – Packaging

Belajar Bahasa Python Lengkap

Di Python, istilah packaging mengacu pada peletakkan modul yang kita miliki ditulis dalam sebuah format standar, jadi programmer lain dapat meng-install dan menggunakannya dengan mudah.

Packaging melibatkan modul setuptools dan disutils. Langkah pertama dari packaging adalah untuk mengatur file yang ada secara benar. Menempatkan semua file yang kita ingin letakkan di dalam sebuah library di dalam parent directory yang sama.

Direktori ini harus memiliki sebuah file yang bernama __init__.py, dimana dapat berupa file kosong tetap harus ada di dalam direktori. Direktori ini masuk ke dalam direktori lain yang berisi readme dan license, seperti file penting yang bernama setup.py.

Contoh struktur direktori:

Zakky/
    LICENSE.txt
    README.txt
    setup.py
    zakky/
       init.py
       sololearn.py
       sololearn2.py

Kita dapat menempatkan file script di dalam direktori tersebut sebanyak yang kita butuhkan.

Langkah selanjutnya dalam packaging adalah menuliskan file setup.py. File ini berisi informasi yang dibutuhkan untuk merangkai package sehingga dapat di-upload ke PyPI dan di-install menggunakan pip (nama, versi, dll).

Contoh file setup.py:

from distutils.core import setup

setup(
    name='Zakky',
    version='0.1dev',
    packages=[zakky,],
    license='MIT',
    long_description=open('README.txt').read(),
)

Setelah membuat file setup.py, upload ke PyPI atau gunakan command line untuk membuat sebuah executable installer.

Untuk membangun sebuah source distribution, gunakan command line untuk mengarahkan ke dalam direktori yang berisi setup.py, dan menjalankan perintah python setup.py sdist.

Jalankan python setup.py bdist atau pada windows menggunakan python setup.py bdist_winist untuk melakukan build sebuah executable installer.

Gunakan python setup.py register diikuti oleh python setup.py sdist upload untuk meng-upload sebuah package.

Akhirnya, install sebuah package dengan perintah python setup.py install.


LANJUTKAN BACA MATERI LENGKAP


Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.