Skip to content

Instantly share code, notes, and snippets.

@hroncok
Created September 23, 2024 15:09
Show Gist options
  • Save hroncok/ade9b3c61a06a4b548c522963ff0d714 to your computer and use it in GitHub Desktop.
Save hroncok/ade9b3c61a06a4b548c522963ff0d714 to your computer and use it in GitHub Desktop.
Fedora 41 packages that should be blocked
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "7cce184c-5cd2-4e63-8fe1-5fa372b0b779",
"metadata": {},
"outputs": [],
"source": [
"RETIRED = 'https://src.fedoraproject.org/lookaside/retired_in_{branch}.json'"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "68880458-27d3-48c3-9ee6-aada3258ac5d",
"metadata": {},
"outputs": [],
"source": [
"import urllib3"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "3ca9c636-898e-4bde-bc37-15c74b81abc9",
"metadata": {},
"outputs": [],
"source": [
"retired_jsons = {}"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "c0703105-5fc3-40a8-95e7-c400e9ab7c09",
"metadata": {},
"outputs": [],
"source": [
"for branch in 'rawhide', 'f41':\n",
" resp = urllib3.request('GET', RETIRED.format(branch=branch))\n",
" retired_jsons.update(resp.json())\n",
" "
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "f7d472fb-7382-4048-992b-f22dca1fff0e",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['389-admin-console',\n",
" '389-admin',\n",
" '389-adminutil',\n",
" '389-console',\n",
" '389-ds-console',\n",
" '389-ds',\n",
" '389-dsgw',\n",
" '3Depict',\n",
" '5minute',\n",
" '7kaa']"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"retired_jsons['rawhide'][:10]"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "94577f47-df8b-46c3-8d83-a948d698e329",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['bes',\n",
" 'ghc-connection',\n",
" 'ghc-cprng-aes',\n",
" 'ghc-crypto-random',\n",
" 'ghc-highlighting-kate',\n",
" 'ghc-libxml-sax',\n",
" 'ghc-monad-journal',\n",
" 'ghc-regexpr',\n",
" 'ghc-x509',\n",
" 'ghc-x509-store']"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"retired_jsons['f41'][:10]"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "b8d8b25f-b43b-4f05-9cd7-3e1361862268",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"................................................................................................................................................................................................................................................................................X..........X...........................................................X.......................................................X............................................................................................................................................................................................................X.................................................................................................X......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X..........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X........................XX............................................X....X..........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X......................................X...................X.....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X.....................................................................................................................................................................................................................................................................................................................X........................................................................................X........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X.......................................................................................................................................................................................X...........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X....X.................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X......................................................................................................................X..........................................................................................................................................................................................................................................................................X.......................................................................................................................................................................................................................................................................................................X.........................................................................................................................................................................................................X............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X...........................................................................................................................................................................................................................................X...............................................X.......................................................................................................................................................................................................................................................................................................................................................................................................X.......................X........................................................................................................................................................X...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................X......................................................\n"
]
}
],
"source": [
"check = set()\n",
"for pkg in retired_jsons['rawhide']:\n",
" if pkg in retired_jsons['f41']:\n",
" continue\n",
" koji = !koji list-pkgs --tag f41 --package {pkg} --show-blocked --quiet\n",
" if '[BLOCKED]' not in koji[0]:\n",
" print('X', end='')\n",
" check.add(pkg)\n",
" else:\n",
" print('.', end='')\n",
"print()"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "435d8f7c-d53b-4394-8b24-e0bc2a489109",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"['astrometry-tycho2',\n",
" 'atinject',\n",
" 'azure-nvme-utils',\n",
" 'bfast',\n",
" 'cdi-api',\n",
" 'clonekeen',\n",
" 'dmlite',\n",
" 'erlang-protobuffs',\n",
" 'ghc-ConfigFile',\n",
" 'ghc-MonadCatchIO-mtl',\n",
" 'ghc-MonadCatchIO-transformers',\n",
" 'gimp-save-for-web',\n",
" 'gimp3',\n",
" 'kubernetes',\n",
" 'mingw-gdbm',\n",
" 'mingw-p11-kit',\n",
" 'mingw-sane-backends',\n",
" 'pd-mapper',\n",
" 'php-andrewsville-php-token-reflection',\n",
" 'php-doctrine-reflection',\n",
" 'php-swiftmailer6',\n",
" 'pinentry-epel',\n",
" 'python-backports-tarfile',\n",
" 'python-bash-kernel',\n",
" 'python-jupyter-sphinx',\n",
" 'python-nb2plots',\n",
" 'python-scripttester',\n",
" 'python-zdaemon',\n",
" 'receptor',\n",
" 'rust-etcetera',\n",
" 'rust-logos-derive',\n",
" 'rust-nu-ansi-term0.46',\n",
" 'salt3006',\n",
" 'scala',\n",
" 'sisu-mojos',\n",
" 'zabbix7.0']"
]
},
"execution_count": 8,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"sorted(check)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "0d089c4f-d8a8-471d-9851-79a7995c4fac",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"'astrometry-tycho2 atinject azure-nvme-utils bfast cdi-api clonekeen dmlite erlang-protobuffs ghc-ConfigFile ghc-MonadCatchIO-mtl ghc-MonadCatchIO-transformers gimp-save-for-web gimp3 kubernetes mingw-gdbm mingw-p11-kit mingw-sane-backends pd-mapper php-andrewsville-php-token-reflection php-doctrine-reflection php-swiftmailer6 pinentry-epel python-backports-tarfile python-bash-kernel python-jupyter-sphinx python-nb2plots python-scripttester python-zdaemon receptor rust-etcetera rust-logos-derive rust-nu-ansi-term0.46 salt3006 scala sisu-mojos zabbix7.0'"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"' '.join(sorted(check))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "a0b8abb8-0143-4785-9cde-a14e8de6a2dd",
"metadata": {},
"outputs": [],
"source": [
"SPEC = 'https://src.fedoraproject.org/rpms/{pkg}/raw/f41/f/{pkg}.spec'"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "c3849f83-40d0-4ac4-992f-d2bada1c2fd2",
"metadata": {},
"outputs": [],
"source": [
"resp = urllib3.request('HEAD', SPEC.format(pkg='ghc-ConfigFile'))"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "1f3e6c22-ba47-4c48-a4f1-a0e1df86d355",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"404"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"resp.status"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "0ad632af-b2bd-4007-8224-8634855a7f83",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"astrometry-tycho2\n",
"clonekeen\n",
"erlang-protobuffs\n",
"ghc-ConfigFile\n",
"ghc-MonadCatchIO-mtl\n",
"ghc-MonadCatchIO-transformers\n",
"pd-mapper\n",
"php-andrewsville-php-token-reflection\n",
"php-doctrine-reflection\n",
"php-swiftmailer6\n",
"pinentry-epel\n",
"python-backports-tarfile\n",
"rust-nu-ansi-term0.46\n",
"salt3006\n",
"zabbix7.0\n"
]
}
],
"source": [
"for pkg in sorted(check):\n",
" resp = urllib3.request('HEAD', SPEC.format(pkg=pkg))\n",
" if resp.status == 404:\n",
" print(pkg)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "9e1a86b2-2461-4969-a277-a68a5f6521c2",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.6"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment