Skip to main content

pypi compatible packaging for OmniORB 4.3.2

Project description

Jeteve OmniORB

PyPI - Version PyPI - Python Version


Table of Contents

Installation

pip install jeteve-omniorb

License

jeteve-omniorb is distributed under the terms of the MIT license.

About jeteve-omniorb

This is a standard python wheel packaging OmniORB/OmniORBpy for easy use from python projects.

See original software here: https://omniorb.sourceforge.io/

Installation

This installs like a standard pypi package.

See https://pypi.org/project/jeteve-omniorb

Why jeteve_omniorb

  • Just install a Python package, no more special OmniORB compilation on your platform.
  • Packages latest stable OmniORB.
  • Batteries included. Get started with OmniORB examples right after installation. See example/ and/or https://omniorb.sourceforge.io/omnipy43/omniORBpy.
  • Support for legacy glibc 2.17+ because we don't all have new shiny OSes.
  • CI Tested Support for python from 3.8 to 3.14.
  • Stable OmniOrb versions Automatically tested using omniorb's examples.
  • Tested to work with uvx if you want to just run omniidl or omniNames.
  • cute emojis in shell scripts.

Batteries included

We aim at supporting the full Python example from omniorb out of the box:

https://omniorb.sourceforge.io/omnipy43/omniORBpy/omniORBpy002.html#sec10

In particular, that means that this packages the binary omnicpp (OmniORBs take on a C Preprocessor) coming from the C/C++ OmniORB library.

This is tested as part of the building process.

How to build

In your development environment, run build-wheels.sh You only need docker.

Version management

This generates wheels that are versioned with the version of the packaged OmniORB library, and following https://peps.python.org/pep-0440/, it adds a .postN part that express the fact that this is a new packaging of the same software.

From git tags perspective, this specific repo needs to be tagged with .postN.

Development principles

Everything happens in the provided Docker images.

It is based on manylinux2014_x86_64 (from project https://github.com/pypa/manylinux) for maximum compatibility with glibc 2.17.

Other architectures will come later. Maybe.

Dev notes - Building and testing a specific version:

Building the build image:

docker buildx build . --iidfile .docker-image-id
docker run --rm -v $(pwd):/workdir $(cat .docker-image-id) echo "✅ Docker image built successful."

For another platform/architecture:

First follow https://docs.docker.com/build/building/multi-platform/

Make sure you install qemu binaries if you want to leverage qemu:

docker run --privileged --rm tonistiigi/binfmt --install all

Note that qemu will be very slow. The buildx with multiple build nodes providing the different architectures is preferred.

Using the github actions workflow is preferred, as it provides VM on native architectures.

# See supported architecture in manylinux
# https://github.com/pypa/manylinux
docker buildx build --iidfile .docker-image-id --platform linux/arm64 --build-arg MANYLINUX_ARCH=aarch64 .
docker run --platform linux/arm64  --rm -v $(pwd):/workdir $(cat .docker-image-id) echo "✅ Docker image built successful."

Build:

docker run -t -e HOME=/workdir -u $(id -u):$(id -g) --rm -v $(pwd):/workdir $(cat .docker-image-id) bash /workdir/inside-build-wheels.sh "cp312" "4.2.6"

Test:

docker run -t -e HOME=/workdir -u $(id -u):$(id -g) --rm -v $(pwd):/workdir $(cat .docker-image-id) bash /workdir/inside-test-wheels.sh "3.12" "4.2.6"

Dev notes - how to upload

  1. Check all wheels with twine (using uvx is recommended)

uvx twine check wheelhouse/*

  1. Upload to test repo

uvx twine upload --repository testpypi wheelhouse/*

  1. Check you can download and execute uvx -n -p 3.13 --from "jeteve_omniorb~=4.3.3" --index-url https://test.pypi.org/simple/ omnicpp -h uvx -n -p 3.12 --from "jeteve_omniorb~=4.3.3" --index-url https://test.pypi.org/simple/ omnicpp -h uvx -n -p 3.11 --from "jeteve_omniorb~=4.3.3" --index-url https://test.pypi.org/simple/ omnicpp -h uvx -n -p 3.10 --from "jeteve_omniorb~=4.3.3" --index-url https://test.pypi.org/simple/ omnicpp -h

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

jeteve_omniorb-4.3.2.post6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

jeteve_omniorb-4.3.2.post6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

jeteve_omniorb-4.3.2.post6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

jeteve_omniorb-4.3.2.post6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

jeteve_omniorb-4.3.2.post6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

File details

Details for the file jeteve_omniorb-4.3.2.post6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for jeteve_omniorb-4.3.2.post6-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 4beaebdc4410de30688b7d6d1aef4858e090a6f46001c07800dbd903a12ed479
MD5 5a1691ee7cd558a0e0ccf2956ec4b6e1
BLAKE2b-256 9682aa1b0c567a8b00a0ca6c3f2a4d6b99ca164c63777dfab89a7479d7b0f860

See more details on using hashes here.

File details

Details for the file jeteve_omniorb-4.3.2.post6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for jeteve_omniorb-4.3.2.post6-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 aae1bcf3afcffd816aa0b337cfd0676fc886cd914fdc7709e8a23c5a6ed5ff41
MD5 071fc764967efbd5f4bad611628824d0
BLAKE2b-256 d0292d1322a3e33436d7c1a5d995dc92c966286f0b23fe53dc89560d27d8e2a2

See more details on using hashes here.

File details

Details for the file jeteve_omniorb-4.3.2.post6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for jeteve_omniorb-4.3.2.post6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 e095e2563f4e0bde5e3160f9490176d3e4b53e908934e774bc74a963eecc8b72
MD5 4cfca33aa28ec05a88484c2ee831a6b9
BLAKE2b-256 59156e43aad0f7a56f60ea9187592a8217f4b00efed825878a1e0db5b8026ecd

See more details on using hashes here.

File details

Details for the file jeteve_omniorb-4.3.2.post6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for jeteve_omniorb-4.3.2.post6-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 c2f9d27222fdf10991ada5ce7ba7c7206c1cebe1f16804ce3e61d475e4b948a6
MD5 919067173b35fae3efdc1377e6d0ef5f
BLAKE2b-256 3ee15346331b8e8eba9760ad4ad21accfae4075ee34057e472f1a9e696591a32

See more details on using hashes here.

File details

Details for the file jeteve_omniorb-4.3.2.post6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for jeteve_omniorb-4.3.2.post6-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 6e28ab541b28c6943c7cb582edf9fd18bbbcbc284479d7c807cb2faa82f908a4
MD5 a8d9655afe7e50712d59a1f31935b7d4
BLAKE2b-256 4e7053708ff5cbf5c8ea1d6e49e2d17e16f968aa1af5d637d8ae52ceec2aad7a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page