Factory Instructions
Factory Rationale
You have probably come here because you want to test a Nuitka change
made for you on factory
branch or its Nuitka Commercial
counterpart, the staging
branch.
Both the main
and develop
branches of Nuitka should always
be working correctly. For experiments in the context of issues and new
features not yet ready for prime time, we use the factory
branch.
The staging
branch of Nuitka Commercial is generally only
updated when factory
can be assumed to be relatively good, but also
when commercial users get asked to test corrections, so tread with
caution there as well.
How do you get factory
or staging
?
git
# Standard version:
git clone --branch factory https://github.com/Nuitka/Nuitka.git
# Commercial version (subscribers only)
git clone --branch staging https://github.com/Nuitka/Nuitka-commercial.git
Either run bin/nuitka
from the checkout, and it will use the Nuitka
code right next to it, or run python setup.py develop``to create a
``.pth
file that works like a symlink. That means if you update the
git, Nuitka is automatically updated in your environment, too.
Of course python setup.py install
also works, but copies Nuitka
into the environment and needs to be redone for every git update.
pip
# With "python" being the version where you want to install Nuitka
# Standard version:
python -m pip install -U --force-reinstall "https://github.com/Nuitka/Nuitka/archive/factory.zip"
# Commercial version (subscribers only)
python -m pip install -U --force-reinstall "https://github.com/Nuitka/Nuitka-commercial/archive/staging.zip"
When is it released?
When the factory
branch is stable and about one week old, it’s time
to release a new hotfix; we then distribute its contents to main
and
develop
branches depending on suitability. They become part of the
hotfix or the new pre-release at that point.
Usually, there is a new hotfix every one or two weeks. But before a new Nuitka release comes out, they might stop for a while, as with the next release being so close wouldn’t matter much.
For invasive fixes that are critical, they can become release triggers, certainly, if Nuitka Commercial customers with priority support are affected.
Subscribing to Nuitka Commercial
You may also learn more about Nuitka Commercial offering.
If you want to have better protection of your IP or just more robust updates sooner, then you can purchase Nuitka Commercial. You, of course, also reward the responsive support given.
Word of Warning
The factory
branch of Nuitka may include all kinds of stupid
mistakes; for example, not being executable with all Python
versions, crashing and not working at all.
They also frequently change without notice and nearly always as a git
rebase
. So please use it only for the issue at hand or even more than
usual at your own risk.
Once confirmed and found suitable, fixes will typically appear on
develop
or main
branch relatively shortly, so try to use those
instead once possible. To keep using factory
is asking for trouble,
and it may have issues you have not noticed yet.
The recommendation about the staging
branch of Nuitka Commercial
is slightly less strict, but it’s best to treat it the same, even if
with the best efforts to keep it more stable, there will be mistakes.