Skip to content

PEP 9998: building (draft; do not merge)#44

Draft
mgorny wants to merge 17 commits intopep-providersfrom
pep-building
Draft

PEP 9998: building (draft; do not merge)#44
mgorny wants to merge 17 commits intopep-providersfrom
pep-building

Conversation

@mgorny
Copy link
Copy Markdown

@mgorny mgorny commented Mar 2, 2026

Here's an early draft, mostly as context to #40.


📚 Documentation preview 📚: https://wheelnext-peps--44.org.readthedocs.build/

@read-the-docs-community
Copy link
Copy Markdown

read-the-docs-community bot commented Mar 2, 2026

Documentation build overview

📚 wheelnext-peps | 🛠️ Build #31777880 | 📁 Comparing b7ad00c against latest (ace5127)


🔍 Preview build

Show files changed (730 files in total): 📝 720 modified | ➕ 10 added | ➖ 0 deleted
File Status
index.html 📝 modified
numerical/index.html 📝 modified
pep-0000/index.html 📝 modified
pep-0001/index.html 📝 modified
pep-0002/index.html 📝 modified
pep-0003/index.html 📝 modified
pep-0004/index.html 📝 modified
pep-0005/index.html 📝 modified
pep-0006/index.html 📝 modified
pep-0007/index.html 📝 modified
pep-0008/index.html 📝 modified
pep-0009/index.html 📝 modified
pep-0010/index.html 📝 modified
pep-0011/index.html 📝 modified
pep-0012/index.html 📝 modified
pep-0013/index.html 📝 modified
pep-0020/index.html 📝 modified
pep-0042/index.html 📝 modified
pep-0100/index.html 📝 modified
pep-0101/index.html 📝 modified
pep-0102/index.html 📝 modified
pep-0103/index.html 📝 modified
pep-0160/index.html 📝 modified
pep-0200/index.html 📝 modified
pep-0201/index.html 📝 modified
pep-0202/index.html 📝 modified
pep-0203/index.html 📝 modified
pep-0204/index.html 📝 modified
pep-0205/index.html 📝 modified
pep-0206/index.html 📝 modified
pep-0207/index.html 📝 modified
pep-0208/index.html 📝 modified
pep-0209/index.html 📝 modified
pep-0210/index.html 📝 modified
pep-0211/index.html 📝 modified
pep-0212/index.html 📝 modified
pep-0213/index.html 📝 modified
pep-0214/index.html 📝 modified
pep-0215/index.html 📝 modified
pep-0216/index.html 📝 modified
pep-0217/index.html 📝 modified
pep-0218/index.html 📝 modified
pep-0219/index.html 📝 modified
pep-0220/index.html 📝 modified
pep-0221/index.html 📝 modified
pep-0222/index.html 📝 modified
pep-0223/index.html 📝 modified
pep-0224/index.html 📝 modified
pep-0225/index.html 📝 modified
pep-0226/index.html 📝 modified
pep-0227/index.html 📝 modified
pep-0228/index.html 📝 modified
pep-0229/index.html 📝 modified
pep-0230/index.html 📝 modified
pep-0231/index.html 📝 modified
pep-0232/index.html 📝 modified
pep-0233/index.html 📝 modified
pep-0234/index.html 📝 modified
pep-0235/index.html 📝 modified
pep-0236/index.html 📝 modified
pep-0237/index.html 📝 modified
pep-0238/index.html 📝 modified
pep-0239/index.html 📝 modified
pep-0240/index.html 📝 modified
pep-0241/index.html 📝 modified
pep-0242/index.html 📝 modified
pep-0243/index.html 📝 modified
pep-0244/index.html 📝 modified
pep-0245/index.html 📝 modified
pep-0246/index.html 📝 modified
pep-0247/index.html 📝 modified
pep-0248/index.html 📝 modified
pep-0249/index.html 📝 modified
pep-0250/index.html 📝 modified
pep-0251/index.html 📝 modified
pep-0252/index.html 📝 modified
pep-0253/index.html 📝 modified
pep-0254/index.html 📝 modified
pep-0255/index.html 📝 modified
pep-0256/index.html 📝 modified
pep-0257/index.html 📝 modified
pep-0258/index.html 📝 modified
pep-0259/index.html 📝 modified
pep-0260/index.html 📝 modified
pep-0261/index.html 📝 modified
pep-0262/index.html 📝 modified
pep-0263/index.html 📝 modified
pep-0264/index.html 📝 modified
pep-0265/index.html 📝 modified
pep-0266/index.html 📝 modified
pep-0267/index.html 📝 modified
pep-0268/index.html 📝 modified
pep-0269/index.html 📝 modified
pep-0270/index.html 📝 modified
pep-0271/index.html 📝 modified
pep-0272/index.html 📝 modified
pep-0273/index.html 📝 modified
pep-0274/index.html 📝 modified
pep-0275/index.html 📝 modified
pep-0276/index.html 📝 modified
pep-0277/index.html 📝 modified
pep-0278/index.html 📝 modified
pep-0279/index.html 📝 modified
pep-0280/index.html 📝 modified
pep-0281/index.html 📝 modified
pep-0282/index.html 📝 modified
pep-0283/index.html 📝 modified
pep-0284/index.html 📝 modified
pep-0285/index.html 📝 modified
pep-0286/index.html 📝 modified
pep-0287/index.html 📝 modified
pep-0288/index.html 📝 modified
pep-0289/index.html 📝 modified
pep-0290/index.html 📝 modified
pep-0291/index.html 📝 modified
pep-0292/index.html 📝 modified
pep-0293/index.html 📝 modified
pep-0294/index.html 📝 modified
pep-0295/index.html 📝 modified
pep-0296/index.html 📝 modified
pep-0297/index.html 📝 modified
pep-0298/index.html 📝 modified
pep-0299/index.html 📝 modified
pep-0301/index.html 📝 modified
pep-0302/index.html 📝 modified
pep-0303/index.html 📝 modified
pep-0304/index.html 📝 modified
pep-0305/index.html 📝 modified
pep-0306/index.html 📝 modified
pep-0307/index.html 📝 modified
pep-0308/index.html 📝 modified
pep-0309/index.html 📝 modified
pep-0310/index.html 📝 modified
pep-0311/index.html 📝 modified
pep-0312/index.html 📝 modified
pep-0313/index.html 📝 modified
pep-0314/index.html 📝 modified
pep-0315/index.html 📝 modified
pep-0316/index.html 📝 modified
pep-0317/index.html 📝 modified
pep-0318/index.html 📝 modified
pep-0319/index.html 📝 modified
pep-0320/index.html 📝 modified
pep-0321/index.html 📝 modified
pep-0322/index.html 📝 modified
pep-0323/index.html 📝 modified
pep-0324/index.html 📝 modified
pep-0325/index.html 📝 modified
pep-0326/index.html 📝 modified
pep-0327/index.html 📝 modified
pep-0328/index.html 📝 modified
pep-0329/index.html 📝 modified
pep-0330/index.html 📝 modified
pep-0331/index.html 📝 modified
pep-0332/index.html 📝 modified
pep-0333/index.html 📝 modified
pep-0334/index.html 📝 modified
pep-0335/index.html 📝 modified
pep-0336/index.html 📝 modified
pep-0337/index.html 📝 modified
pep-0338/index.html 📝 modified
pep-0339/index.html 📝 modified
pep-0340/index.html 📝 modified
pep-0341/index.html 📝 modified
pep-0342/index.html 📝 modified
pep-0343/index.html 📝 modified
pep-0344/index.html 📝 modified
pep-0345/index.html 📝 modified
pep-0346/index.html 📝 modified
pep-0347/index.html 📝 modified
pep-0348/index.html 📝 modified
pep-0349/index.html 📝 modified
pep-0350/index.html 📝 modified
pep-0351/index.html 📝 modified
pep-0352/index.html 📝 modified
pep-0353/index.html 📝 modified
pep-0354/index.html 📝 modified
pep-0355/index.html 📝 modified
pep-0356/index.html 📝 modified
pep-0357/index.html 📝 modified
pep-0358/index.html 📝 modified
pep-0359/index.html 📝 modified
pep-0360/index.html 📝 modified
pep-0361/index.html 📝 modified
pep-0362/index.html 📝 modified
pep-0363/index.html 📝 modified
pep-0364/index.html 📝 modified
pep-0365/index.html 📝 modified
pep-0366/index.html 📝 modified
pep-0367/index.html 📝 modified
pep-0368/index.html 📝 modified
pep-0369/index.html 📝 modified
pep-0370/index.html 📝 modified
pep-0371/index.html 📝 modified
pep-0372/index.html 📝 modified
pep-0373/index.html 📝 modified
pep-0374/index.html 📝 modified
pep-0375/index.html 📝 modified
pep-0376/index.html 📝 modified
pep-0377/index.html 📝 modified
pep-0378/index.html 📝 modified
pep-0379/index.html 📝 modified
pep-0380/index.html 📝 modified
pep-0381/index.html 📝 modified
pep-0382/index.html 📝 modified
pep-0383/index.html 📝 modified
pep-0384/index.html 📝 modified
pep-0385/index.html 📝 modified
pep-0386/index.html 📝 modified
pep-0387/index.html 📝 modified
pep-0389/index.html 📝 modified
pep-0390/index.html 📝 modified
pep-0391/index.html 📝 modified
pep-0392/index.html 📝 modified
pep-0393/index.html 📝 modified
pep-0394/index.html 📝 modified
pep-0395/index.html 📝 modified
pep-0396/index.html 📝 modified
pep-0397/index.html 📝 modified
pep-0398/index.html 📝 modified
pep-0399/index.html 📝 modified
pep-0400/index.html 📝 modified
pep-0401/index.html 📝 modified
pep-0402/index.html 📝 modified
pep-0403/index.html 📝 modified
pep-0404/index.html 📝 modified
pep-0405/index.html 📝 modified
pep-0406/index.html 📝 modified
pep-0407/index.html 📝 modified
pep-0408/index.html 📝 modified
pep-0409/index.html 📝 modified
pep-0410/index.html 📝 modified
pep-0411/index.html 📝 modified
pep-0412/index.html 📝 modified
pep-0413/index.html 📝 modified
pep-0414/index.html 📝 modified
pep-0415/index.html 📝 modified
pep-0416/index.html 📝 modified
pep-0417/index.html 📝 modified
pep-0418/index.html 📝 modified
pep-0419/index.html 📝 modified
pep-0420/index.html 📝 modified
pep-0421/index.html 📝 modified
pep-0422/index.html 📝 modified
pep-0423/index.html 📝 modified
pep-0424/index.html 📝 modified
pep-0425/index.html 📝 modified
pep-0426/index.html 📝 modified
pep-0427/index.html 📝 modified
pep-0428/index.html 📝 modified
pep-0429/index.html 📝 modified
pep-0430/index.html 📝 modified
pep-0431/index.html 📝 modified
pep-0432/index.html 📝 modified
pep-0433/index.html 📝 modified
pep-0434/index.html 📝 modified
pep-0435/index.html 📝 modified
pep-0436/index.html 📝 modified
pep-0437/index.html 📝 modified
pep-0438/index.html 📝 modified
pep-0439/index.html 📝 modified
pep-0440/index.html 📝 modified
pep-0441/index.html 📝 modified
pep-0442/index.html 📝 modified
pep-0443/index.html 📝 modified
pep-0444/index.html 📝 modified
pep-0445/index.html 📝 modified
pep-0446/index.html 📝 modified
pep-0447/index.html 📝 modified
pep-0448/index.html 📝 modified
pep-0449/index.html 📝 modified
pep-0450/index.html 📝 modified
pep-0451/index.html 📝 modified
pep-0452/index.html 📝 modified
pep-0453/index.html 📝 modified
pep-0454/index.html 📝 modified
pep-0455/index.html 📝 modified
pep-0456/index.html 📝 modified
pep-0457/index.html 📝 modified
pep-0458/index.html 📝 modified
pep-0459/index.html 📝 modified
pep-0460/index.html 📝 modified
pep-0461/index.html 📝 modified
pep-0462/index.html 📝 modified
pep-0463/index.html 📝 modified
pep-0464/index.html 📝 modified
pep-0465/index.html 📝 modified
pep-0466/index.html 📝 modified
pep-0467/index.html 📝 modified
pep-0468/index.html 📝 modified
pep-0469/index.html 📝 modified
pep-0470/index.html 📝 modified
pep-0471/index.html 📝 modified
pep-0472/index.html 📝 modified
pep-0473/index.html 📝 modified
pep-0474/index.html 📝 modified
pep-0475/index.html 📝 modified
pep-0476/index.html 📝 modified
pep-0477/index.html 📝 modified
pep-0478/index.html 📝 modified
pep-0479/index.html 📝 modified
pep-0480/index.html 📝 modified
pep-0481/index.html 📝 modified
pep-0482/index.html 📝 modified
pep-0483/index.html 📝 modified
pep-0484/index.html 📝 modified
pep-0485/index.html 📝 modified
pep-0486/index.html 📝 modified
pep-0487/index.html 📝 modified
pep-0488/index.html 📝 modified
pep-0489/index.html 📝 modified
pep-0490/index.html 📝 modified
pep-0491/index.html 📝 modified
pep-0492/index.html 📝 modified
pep-0493/index.html 📝 modified
pep-0494/index.html 📝 modified
pep-0495/index.html 📝 modified
pep-0496/index.html 📝 modified
pep-0497/index.html 📝 modified
pep-0498/index.html 📝 modified
pep-0499/index.html 📝 modified
pep-0500/index.html 📝 modified
pep-0501/index.html 📝 modified
pep-0502/index.html 📝 modified
pep-0503/index.html 📝 modified
pep-0504/index.html 📝 modified
pep-0505/index.html 📝 modified
pep-0506/index.html 📝 modified
pep-0507/index.html 📝 modified
pep-0508/index.html 📝 modified
pep-0509/index.html 📝 modified
pep-0510/index.html 📝 modified
pep-0511/index.html 📝 modified
pep-0512/index.html 📝 modified
pep-0513/index.html 📝 modified
pep-0514/index.html 📝 modified
pep-0515/index.html 📝 modified
pep-0516/index.html 📝 modified
pep-0517/index.html 📝 modified
pep-0518/index.html 📝 modified
pep-0519/index.html 📝 modified
pep-0520/index.html 📝 modified
pep-0521/index.html 📝 modified
pep-0522/index.html 📝 modified
pep-0523/index.html 📝 modified
pep-0524/index.html 📝 modified
pep-0525/index.html 📝 modified
pep-0526/index.html 📝 modified
pep-0527/index.html 📝 modified
pep-0528/index.html 📝 modified
pep-0529/index.html 📝 modified
pep-0530/index.html 📝 modified
pep-0531/index.html 📝 modified
pep-0532/index.html 📝 modified
pep-0533/index.html 📝 modified
pep-0534/index.html 📝 modified
pep-0535/index.html 📝 modified
pep-0536/index.html 📝 modified
pep-0537/index.html 📝 modified
pep-0538/index.html 📝 modified
pep-0539/index.html 📝 modified
pep-0540/index.html 📝 modified
pep-0541/index.html 📝 modified
pep-0542/index.html 📝 modified
pep-0543/index.html 📝 modified
pep-0544/index.html 📝 modified
pep-0545/index.html 📝 modified
pep-0546/index.html 📝 modified
pep-0547/index.html 📝 modified
pep-0548/index.html 📝 modified
pep-0549/index.html 📝 modified
pep-0550/index.html 📝 modified
pep-0551/index.html 📝 modified
pep-0552/index.html 📝 modified
pep-0553/index.html 📝 modified
pep-0554/index.html 📝 modified
pep-0555/index.html 📝 modified
pep-0556/index.html 📝 modified
pep-0557/index.html 📝 modified
pep-0558/index.html 📝 modified
pep-0559/index.html 📝 modified
pep-0560/index.html 📝 modified
pep-0561/index.html 📝 modified
pep-0562/index.html 📝 modified
pep-0563/index.html 📝 modified
pep-0564/index.html 📝 modified
pep-0565/index.html 📝 modified
pep-0566/index.html 📝 modified
pep-0567/index.html 📝 modified
pep-0568/index.html 📝 modified
pep-0569/index.html 📝 modified
pep-0570/index.html 📝 modified
pep-0571/index.html 📝 modified
pep-0572/index.html 📝 modified
pep-0573/index.html 📝 modified
pep-0574/index.html 📝 modified
pep-0575/index.html 📝 modified
pep-0576/index.html 📝 modified
pep-0577/index.html 📝 modified
pep-0578/index.html 📝 modified
pep-0579/index.html 📝 modified
pep-0580/index.html 📝 modified
pep-0581/index.html 📝 modified
pep-0582/index.html 📝 modified
pep-0583/index.html 📝 modified
pep-0584/index.html 📝 modified
pep-0585/index.html 📝 modified
pep-0586/index.html 📝 modified
pep-0587/index.html 📝 modified
pep-0588/index.html 📝 modified
pep-0589/index.html 📝 modified
pep-0590/index.html 📝 modified
pep-0591/index.html 📝 modified
pep-0592/index.html 📝 modified
pep-0593/index.html 📝 modified
pep-0594/index.html 📝 modified
pep-0595/index.html 📝 modified
pep-0596/index.html 📝 modified
pep-0597/index.html 📝 modified
pep-0598/index.html 📝 modified
pep-0599/index.html 📝 modified
pep-0600/index.html 📝 modified
pep-0601/index.html 📝 modified
pep-0602/index.html 📝 modified
pep-0603/index.html 📝 modified
pep-0604/index.html 📝 modified
pep-0605/index.html 📝 modified
pep-0606/index.html 📝 modified
pep-0607/index.html 📝 modified
pep-0608/index.html 📝 modified
pep-0609/index.html 📝 modified
pep-0610/index.html 📝 modified
pep-0611/index.html 📝 modified
pep-0612/index.html 📝 modified
pep-0613/index.html 📝 modified
pep-0614/index.html 📝 modified
pep-0615/index.html 📝 modified
pep-0616/index.html 📝 modified
pep-0617/index.html 📝 modified
pep-0618/index.html 📝 modified
pep-0619/index.html 📝 modified
pep-0620/index.html 📝 modified
pep-0621/index.html 📝 modified
pep-0622/index.html 📝 modified
pep-0623/index.html 📝 modified
pep-0624/index.html 📝 modified
pep-0625/index.html 📝 modified
pep-0626/index.html 📝 modified
pep-0627/index.html 📝 modified
pep-0628/index.html 📝 modified
pep-0629/index.html 📝 modified
pep-0630/index.html 📝 modified
pep-0631/index.html 📝 modified
pep-0632/index.html 📝 modified
pep-0633/index.html 📝 modified
pep-0634/index.html 📝 modified
pep-0635/index.html 📝 modified
pep-0636/index.html 📝 modified
pep-0637/index.html 📝 modified
pep-0638/index.html 📝 modified
pep-0639/index.html 📝 modified
pep-0640/index.html 📝 modified
pep-0641/index.html 📝 modified
pep-0642/index.html 📝 modified
pep-0643/index.html 📝 modified
pep-0644/index.html 📝 modified
pep-0645/index.html 📝 modified
pep-0646/index.html 📝 modified
pep-0647/index.html 📝 modified
pep-0648/index.html 📝 modified
pep-0649/index.html 📝 modified
pep-0650/index.html 📝 modified
pep-0651/index.html 📝 modified
pep-0652/index.html 📝 modified
pep-0653/index.html 📝 modified
pep-0654/index.html 📝 modified
pep-0655/index.html 📝 modified
pep-0656/index.html 📝 modified
pep-0657/index.html 📝 modified
pep-0658/index.html 📝 modified
pep-0659/index.html 📝 modified
pep-0660/index.html 📝 modified
pep-0661/index.html 📝 modified
pep-0662/index.html 📝 modified
pep-0663/index.html 📝 modified
pep-0664/index.html 📝 modified
pep-0665/index.html 📝 modified
pep-0666/index.html 📝 modified
pep-0667/index.html 📝 modified
pep-0668/index.html 📝 modified
pep-0669/index.html 📝 modified
pep-0670/index.html 📝 modified
pep-0671/index.html 📝 modified
pep-0672/index.html 📝 modified
pep-0673/index.html 📝 modified
pep-0674/index.html 📝 modified
pep-0675/index.html 📝 modified
pep-0676/index.html 📝 modified
pep-0677/index.html 📝 modified
pep-0678/index.html 📝 modified
pep-0679/index.html 📝 modified
pep-0680/index.html 📝 modified
pep-0681/index.html 📝 modified
pep-0682/index.html 📝 modified
pep-0683/index.html 📝 modified
pep-0684/index.html 📝 modified
pep-0685/index.html 📝 modified
pep-0686/index.html 📝 modified
pep-0687/index.html 📝 modified
pep-0688/index.html 📝 modified
pep-0689/index.html 📝 modified
pep-0690/index.html 📝 modified
pep-0691/index.html 📝 modified
pep-0692/index.html 📝 modified
pep-0693/index.html 📝 modified
pep-0694/index.html 📝 modified
pep-0695/index.html 📝 modified
pep-0696/index.html 📝 modified
pep-0697/index.html 📝 modified
pep-0698/index.html 📝 modified
pep-0699/index.html 📝 modified
pep-0700/index.html 📝 modified
pep-0701/index.html 📝 modified
pep-0702/index.html 📝 modified
pep-0703/index.html 📝 modified
pep-0704/index.html 📝 modified
pep-0705/index.html 📝 modified
pep-0706/index.html 📝 modified
pep-0707/index.html 📝 modified
pep-0708/index.html 📝 modified
pep-0709/index.html 📝 modified
pep-0710/index.html 📝 modified
pep-0711/index.html 📝 modified
pep-0712/index.html 📝 modified
pep-0713/index.html 📝 modified
pep-0714/index.html 📝 modified
pep-0715/index.html 📝 modified
pep-0718/index.html 📝 modified
pep-0719/index.html 📝 modified
pep-0720/index.html 📝 modified
pep-0721/index.html 📝 modified
pep-0722/index.html 📝 modified
pep-0723/index.html 📝 modified
pep-0724/index.html 📝 modified
pep-0725/index.html 📝 modified
pep-0726/index.html 📝 modified
pep-0727/index.html 📝 modified
pep-0728/index.html 📝 modified
pep-0729/index.html 📝 modified
pep-0730/index.html 📝 modified
pep-0731/index.html 📝 modified
pep-0732/index.html 📝 modified
pep-0733/index.html 📝 modified
pep-0734/index.html 📝 modified
pep-0735/index.html 📝 modified
pep-0736/index.html 📝 modified
pep-0737/index.html 📝 modified
pep-0738/index.html 📝 modified
pep-0739/index.html 📝 modified
pep-0740/index.html 📝 modified
pep-0741/index.html 📝 modified
pep-0742/index.html 📝 modified
pep-0743/index.html 📝 modified
pep-0744/index.html 📝 modified
pep-0745/index.html 📝 modified
pep-0746/index.html 📝 modified
pep-0747/index.html 📝 modified
pep-0748/index.html 📝 modified
pep-0749/index.html 📝 modified
pep-0750/index.html 📝 modified
pep-0751/index.html 📝 modified
pep-0752/index.html 📝 modified
pep-0753/index.html 📝 modified
pep-0754/index.html 📝 modified
pep-0755/index.html 📝 modified
pep-0756/index.html 📝 modified
pep-0757/index.html 📝 modified
pep-0758/index.html 📝 modified
pep-0759/index.html 📝 modified
pep-0760/index.html 📝 modified
pep-0761/index.html 📝 modified
pep-0762/index.html 📝 modified
pep-0763/index.html 📝 modified
pep-0764/index.html 📝 modified
pep-0765/index.html 📝 modified
pep-0766/index.html 📝 modified
pep-0767/index.html 📝 modified
pep-0768/index.html 📝 modified
pep-0769/index.html 📝 modified
pep-0770/index.html 📝 modified
pep-0771/index.html 📝 modified
pep-0772/index.html 📝 modified
pep-0773/index.html 📝 modified
pep-0774/index.html 📝 modified
pep-0775/index.html 📝 modified
pep-0776/index.html 📝 modified
pep-0777/index.html 📝 modified
pep-0778/index.html 📝 modified
pep-0779/index.html 📝 modified
pep-0780/index.html 📝 modified
pep-0781/index.html 📝 modified
pep-0782/index.html 📝 modified
pep-0783/index.html 📝 modified
pep-0784/index.html 📝 modified
pep-0785/index.html 📝 modified
pep-0787/index.html 📝 modified
pep-0788/index.html 📝 modified
pep-0789/index.html 📝 modified
pep-0790/index.html 📝 modified
pep-0791/index.html 📝 modified
pep-0792/index.html 📝 modified
pep-0793/index.html 📝 modified
pep-0794/index.html 📝 modified
pep-0797/index.html 📝 modified
pep-0798/index.html 📝 modified
pep-0799/index.html 📝 modified
pep-0800/index.html 📝 modified
pep-0801/index.html 📝 modified
pep-0802/index.html 📝 modified
pep-0803/index.html 📝 modified
pep-0804/index.html 📝 modified
pep-0806/index.html 📝 modified
pep-0807/index.html 📝 modified
pep-0808/index.html 📝 modified
pep-0809/index.html 📝 modified
pep-0810/index.html 📝 modified
pep-0811/index.html 📝 modified
pep-0813/index.html ➕ added
pep-0814/index.html 📝 modified
pep-0815/index.html 📝 modified
pep-0816/index.html 📝 modified
pep-0817/index.html 📝 modified
pep-0818/index.html ➕ added
pep-0819/index.html 📝 modified
pep-0820/index.html 📝 modified
pep-0821/index.html 📝 modified
pep-0822/index.html 📝 modified
pep-0825/index.html ➕ added
pep-0826/index.html ➕ added
pep-0827/index.html ➕ added
pep-0828/index.html ➕ added
pep-2026/index.html 📝 modified
pep-3000/index.html 📝 modified
pep-3001/index.html 📝 modified
pep-3002/index.html 📝 modified
pep-3003/index.html 📝 modified
pep-3099/index.html 📝 modified
pep-3100/index.html 📝 modified
pep-3101/index.html 📝 modified
pep-3102/index.html 📝 modified
pep-3103/index.html 📝 modified
pep-3104/index.html 📝 modified
pep-3105/index.html 📝 modified
pep-3106/index.html 📝 modified
pep-3107/index.html 📝 modified
pep-3108/index.html 📝 modified
pep-3109/index.html 📝 modified
pep-3110/index.html 📝 modified
pep-3111/index.html 📝 modified
pep-3112/index.html 📝 modified
pep-3113/index.html 📝 modified
pep-3114/index.html 📝 modified
pep-3115/index.html 📝 modified
pep-3116/index.html 📝 modified
pep-3117/index.html 📝 modified
pep-3118/index.html 📝 modified
pep-3119/index.html 📝 modified
pep-3120/index.html 📝 modified
pep-3121/index.html 📝 modified
pep-3122/index.html 📝 modified
pep-3123/index.html 📝 modified
pep-3124/index.html 📝 modified
pep-3125/index.html 📝 modified
pep-3126/index.html 📝 modified
pep-3127/index.html 📝 modified
pep-3128/index.html 📝 modified
pep-3129/index.html 📝 modified
pep-3130/index.html 📝 modified
pep-3131/index.html 📝 modified
pep-3132/index.html 📝 modified
pep-3133/index.html 📝 modified
pep-3134/index.html 📝 modified
pep-3135/index.html 📝 modified
pep-3136/index.html 📝 modified
pep-3137/index.html 📝 modified
pep-3138/index.html 📝 modified
pep-3139/index.html 📝 modified
pep-3140/index.html 📝 modified
pep-3141/index.html 📝 modified
pep-3142/index.html 📝 modified
pep-3143/index.html 📝 modified
pep-3144/index.html 📝 modified
pep-3145/index.html 📝 modified
pep-3146/index.html 📝 modified
pep-3147/index.html 📝 modified
pep-3148/index.html 📝 modified
pep-3149/index.html 📝 modified
pep-3150/index.html 📝 modified
pep-3151/index.html 📝 modified
pep-3152/index.html 📝 modified
pep-3153/index.html 📝 modified
pep-3154/index.html 📝 modified
pep-3155/index.html 📝 modified
pep-3156/index.html 📝 modified
pep-3333/index.html 📝 modified
pep-8000/index.html 📝 modified
pep-8001/index.html 📝 modified
pep-8002/index.html 📝 modified
pep-8010/index.html 📝 modified
pep-8011/index.html 📝 modified
pep-8012/index.html 📝 modified
pep-8013/index.html 📝 modified
pep-8014/index.html 📝 modified
pep-8015/index.html 📝 modified
pep-8016/index.html 📝 modified
pep-8100/index.html 📝 modified
pep-8101/index.html 📝 modified
pep-8102/index.html 📝 modified
pep-8103/index.html 📝 modified
pep-8104/index.html 📝 modified
pep-8105/index.html 📝 modified
pep-8106/index.html 📝 modified
pep-8107/index.html 📝 modified
pep-9998/index.html ➕ added
pep-9999/index.html ➕ added
pep-0825/appendix-variant-json-schema/index.html ➕ added
pep-9999/appendix-variant-json-schema/index.html ➕ added
topic/packaging/index.html 📝 modified
topic/release/index.html 📝 modified
topic/typing/index.html 📝 modified

@mgorny mgorny force-pushed the pep-building branch 3 times, most recently from 2fed7a0 to 96c81fc Compare March 9, 2026 13:16
Copy link
Copy Markdown

@rgommers rgommers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks pretty good to me, thanks @mgorny! I only have a handful of comments at the moment.

For consistency, it is RECOMMENDED that build backends implement the
following interface for building variant wheels:

- variant metadata seed is stored in ``pyproject.toml`` file, as
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The word "seed" here and in the next section isn't too helpful. It seems to imply that changes may occur, it's only a starting point (a la "random seed"). That isn't the case - the metadata in pyproject.toml and in variants.json should actually be 100% consistent. And as for PEP 621, if both exist, I'd expect the pyproject.toml version to be authoritative.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not opposed to replacing or removing "seed", but there are some differences:

  1. variants will only include the selected variant.
  2. providers.{namespace}.static-properties may be filled from a plugin.
  3. default-priorities.feature.{namespace} may be filled from a plugin.

[variant.variants.x8664_v4_mkl]
blas_lapack.library = ["mkl"]
x86_64.level = ["v4"]

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This example works well (nit: the x8664 spelling looks off to my eyes, can it be replaced with x86-64?). It may be useful to add an example invocation maybe?

$ pip install . -Cvariant-label=x86-64_v3
...
built xxx.whl

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Uh, actually it was supposed to be x8664v4_mkl, with the (non-normative) assumption that we're using _ to split different properties here. I'm fine with changing it but then we should probably change the labels in 825 too, to keep the variant labels consistent across the examples.

consistent user experience, but are by no means mandatory. The standard
``pyproject.toml`` file is used to avoid spreading the project
configuration across multiple files, and the same schema as for variant
metadata is used.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This Rationale is well-written and very useful. I think it's easier to understand the specification after reading this section. I'd put Rationale above Specification for that reason (which is where it normally goes anyway). Coming to a terse Specification first, the reader will likely lack context.

Alternatively, at least this first paragraph could go above it (in Motivation maybe?), because it sets the context well. The rest of this Rationale is more about explaining individual design decisions, but this first paragraph is not.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, I actually forgot that Rationale normally comes prior to Specification. Do you think it's better to move it wholesome, or split as you suggested in the second alternative, and keep Rationale after Specification?

mgorny added 17 commits March 12, 2026 16:05
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Signed-off-by: Michał Górny <mgorny@quansight.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants