sip-module(1)

πŸ“¦
version 6.16.1 Β· 3 versions
, in ubuntu resolute, ubuntu stonking

🌸 sip-module(1) 🌸

okay bestie, welcome to the sip-module page from the General Commands Manual β€” yes it's a whole manual, and yes you're gonna slay it πŸ’…


✨ NAME ✨

sip-module β€” generate a sip extension module. that's the whole job, that's the assignment, and she does it flawlessly πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

sip-module [options] name

okay so real talk: name is the fully qualified name of the sip module β€” like, including the package name, bestie. don't come at her with a half name, she needs the whole thing πŸŽ€


🌈 DESCRIPTION 🌈

sip-module builds one of more of the elements of the sip module for a set of package projects.

(yes she said "one of more of", she's quirky like that, no cap 🫢)


πŸ’œ OPTIONS πŸ’œ

  • -h, --help β€” shows you a help message. the "girl help" of flags but, like, the good kind πŸ’–
  • -V, --version β€” spills the SIP version number. iconic behavior.
  • --abi-version MAJOR[.MINOR] β€” sets the major version number of the ABI implemented by the sip module to MAJOR. and if you also give a minor version number? it gets read as a minimum minor version, not the exact minor version being used. sneaky but make it make sense ✨ by default she uses the very latest version, because of course she does πŸ‘‘
  • --option NAME β€” builds the sip module using the NAME configuration option. peep the %SipModuleConfiguration <#std-directive-SipModuleConfiguration> directive for the list of possible options and what they mean. and yes, you can specify this option multiple times, go off πŸ”₯
  • --project NAME β€” the name of the project exactly as it would show up on PyPI is NAME. by default the name is derived from the fully qualified name of the sip module. auto-generated bestie πŸ’…
  • --sdist β€” creates an sdist which you can then install with pip or upload to PyPI πŸŽ€
    • pip can also be used to create a wheel from the sdist. however, for Linux wheels, auditwheel must be run for the wheel before it can be uploaded to PyPI. (yes, must. that's not a vibe check you can skip πŸ™ˆ)
  • --setup-cfg FILE β€” FILE gets copied to the sdist as setup.cfg instead of the default version. this lets you customise the sdist to your exact little taste πŸ’– and there's a whole set of macros you can drop into that setup.cfg file:
    • @SIP_MODULE_FQ_NAME@ is replaced by the fully qualified name of the sip module.
    • @SIP_MODULE_PACKAGE_NAME@ is replaced by the module's project top-level package name.
    • @SIP_MODULE_PROJECT_NAME@ is replaced by the module's project name as it would appear on PyPI.
    • @SIP_MODULE_VERSION@ is replaced by the version number of the module.
  • --sip-h β€” creates a sip.h header file that defines the C ABI implemented by the sip module. C girlies, this one's for you ⭐
  • --sip-rst β€” creates a sip.rst file that documents the Python API implemented by the sip module. documentation? we love to see it πŸ“πŸ’œ
  • --target-dir DIR β€” each of the module's elements gets created in DIR. pick your home base, bestie 🏠

🚨 reminder bestie: --sdist on Linux means auditwheel before any PyPI upload. she's not being dramatic, she's being accurate πŸ’€

and that's the whole page, no notes ✨ this came to you from the General Commands Manual, page sip-module(1) β€” go build something cute with it. mwah πŸ«ΆπŸ’–πŸŽ€

πŸ“¦ where this page comes from