Links
Comment on page
📦

Pip ile Kurulabilir Python Paketi Oluşturma

Python paket yöneticisi olan pip ile projenizin indirilebilir olmasını sağlamak isterseniz okumaya devam edin.

👇 Nasıl bir şey mi yapmış olacaksınız

Eski adı: Pip Üzerinde Paket Yayınlama

🧾 PyPI'ya Kayıt olma

👷‍ Dosya Yapısını Oluşturma

📂 Dizin Yapısı
👨‍🔧 setup.py kurulum dosyası
🏹 ::init:: ile modülleri dışa aktarma
Açıklama metninizi markdown formatı ile README.md içerisine yazın.
Kurulum yapılandırma dosyasıdır.
from distutils.core import setup
import setuptools
VERSION = "1.0.0" # BURAYI AKLINIZDA TUTUN (Değiştirebilirsiniz)
long_description = ""
with open("README.md", "r", encoding="utf-8") as file:
long_description = file.read()
setup(
name='PAKET_İSMİ', # How you named your package folder (MyLib)
packages=setuptools.find_packages(),
# Start with a small number and increase it with every change you make
version=VERSION,
# Chose a license from here: https://help.github.com/articles/licensing-a-repository
license='MIT',
# Give a short description about your library
description='Sık kullanılan python işlemleri için hazır paket',
long_description=long_description,
long_description_content_type="text/markdown",
author='İsim Soyisim', # Adınızı soyadınız yazın
author_email='[email protected]', # E-posta adresiniz
# Provide either the link to your github or to your website
url='https://github.com/GITHUB_HESABI/PAKET_İSMİ',
# I explain this later on
download_url=f'https://github.com/GITHUB_HESABI/PAKET_İSMİ/archive/{VERSION}.tar.gz',
# Keywords that define your package best
keywords=['Alakalı', 'kelimeler'],
# install_requires=[], # Bağımlılıklar
classifiers=[
# Chose either "3 - Alpha", "4 - Beta" or "5 - Production/Stable" as the current state of your package
'Development Status :: 3 - Alpha',
# Define that your audience are developers
'Intended Audience :: Developers',
'Topic :: Software Development :: Build Tools',
'License :: OSI Approved :: MIT License', # Again, pick a license
# Specify which pyhton versions that you want to support
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6',
],
# Komut isteminden kullanılacaksa, main'e verilen yol
# entry_points={
# # Komut isteminden çalıştırma
# # örndeğin: ypackage
# # Kullanım: 'ypackge = ypackage.ypackage:main
# 'console_scripts': [
# 'komut_ismi = dizin.dosya:main',
# ]
# },
)
Dosyanın amacı içerisindeki her paketleri dışarı aktarmaktır
from ypackage import filesystem
from ypackage import common
from ypackage import gitbook
from ypackage import markdown

📡 GitHub'da Yayınlama

GitHub üzeinden repository oluşturun ve projenizi oraya upload edin.
GitHub hakkında detaylar için arama sitemin arama motoruna GitHub yazabilirsiniz
  • GitHub projenizin urline girin
  • Release alanına tıklayın
  • Daha önceden varsa Edit yoksa Create butonuna tıklayın ve yeni bir sürüm oluşturun
  • Tags alanına setup.py dosyamızdaki VERSION değerini yazın
    • Download url kısmındaki ...{VERSION}.tar.gz' yapısından dolayı
    • Örn: 1.0.0
  • Açıklamalarınızı yapıp Update Relesae butonuna basın
    • Ek olarak dosya eklemenize gerek yoktur

📦 Gerekli Paketlerin Kurulumu

Bu işlemleri için python ve pip araçlarının kurulu olması lazımdır.
pip install --upgrade setuptools wheel tqdm
pip install twine

📡 Projeyi PyPI'da Yayınlama

  • Proje dizininize girin (yukarıdaki resimdeki alan)
  • rm -rf build/ dist/ (del build/ dist/ veya el) ile eski proje çalışmalarını silin
  • python setup.py sdist bdist_wheel komutu ile projenizi aktarılmaya hazır hale getirin
  • twine upload dist/* komutu ile PyPI'ya projenizi aktarın

🌌 Projeyi PyPI'da Güncelleme

  • setup.py'daki VERSION bilginizi arttırın
    • Örn: 1.0.1
  • GitHub üzerinden v<VERSION> yeni release oluşturun
    • Örn: v1.0.1
  • 📡 Projeyi PyPI'da Yayınlama alanındakileri uygulayın

🔗 Harici Bağlantılar

2023 © Yunus Emre AK