Aller au contenu

Explorateur de paquets

L'explorateur de paquets est un catalogue navigable de tous les paquets que BatleHub connaît. Il replie toutes les versions d'un paquet sur une seule ligne, réunit les paquets passés par le proxy et ceux publiés localement, et permet de chercher des paquets qui ne sont pas encore passés par le proxy en interrogeant les registres amont en temps réel.


Vue d'ensemble

L'explorateur est accessible à tout utilisateur sur /explore dans la console. Il a deux vues :

  • Catalogue (/explore) — une ligne par nom de paquet, sur tous les registres accessibles ou filtré sur un seul. Triable par nombre de téléchargements, par nom ou par dernier accès.
  • Détail d'un paquet (/explore/packages/<registry>/<name>) — toutes les versions connues avec leur source (via proxy ou publiée localement), l'état du pare-feu version par version, et un résumé des garde-fous montrant votre niveau d'accès sur ce registre.

Sources de données

SourceOù vivent les données
Via proxypackage_statuses — chaque paquet jamais demandé à travers le proxy
Locallocal_packages — les paquets publiés directement sur un registre BatleHub en mode local ou hybrid
AmontAppel de recherche en direct sur l'API du registre amont (npm, crates.io, RubyGems) quand vous saisissez une requête

Les versions locales et proxy d'un même paquet sont fusionnées en une seule entrée dont la source affiche Les deux.


Utiliser le catalogue

Le panneau de gauche liste tous les registres accessibles, y compris ceux qu'aucun paquet n'a encore traversés (affichés avec un compte de 0). Cliquez sur un registre pour filtrer la table ; cliquez sur Tous les registres pour tout voir.

Saisissez votre requête dans le champ de recherche. Après 300 ms d'anti-rebond, deux choses se produisent :

  1. La table principale est filtrée par correspondance de sous-chaîne sur le nom du paquet (côté serveur, insensible à la casse).
  2. Une recherche en amont part vers les registres qui la prennent en charge (voir Recherche en amont). Les résultats apparaissent en bas de la même table, marqués amont.

Une ligne amont est un paquet dont cette instance ne détient rien. Si l'opérateur a laissé console_fetch actif et que le registre est adressable par la seule version, la ligne propose un bouton nommant la version renvoyée par la recherche amont — Récupérer 4.17.21 — qui la fait passer par cette instance sous votre propre identité, garde-fous, quota et ligne d'audit compris. La ligne rejoint alors la moitié détenue de la table. Là où le bouton n'est pas proposé, la ligne n'en affiche aucun, et la page du paquet dit pourquoi.

Tri

OptionComportement
Les plus téléchargésLes paquets au plus grand nombre d'événements d'accès en premier
Nom A–ZOrdre alphabétique du nom de paquet
Accédés récemmentLes paquets demandés le plus récemment en premier

Colonnes de la table

ColonneNotes
PaquetNom du paquet (en police à chasse fixe).
RegistreRegistre auquel appartient le paquet.
VersionsNombre de versions connues (en cache). Pour les lignes purement amont : la dernière version renvoyée par le registre amont.
TéléchargementsTotal des événements d'accès, toutes versions confondues. pour les lignes purement amont.
SourceVia proxy, Local ou Les deux pour les paquets en cache. Pour les lignes purement amont : la description du paquet, si elle existe.
ProxyVia proxy (badge plein) pour les paquets déjà en cache ; Pas encore passé par le proxy (badge en pointillé) pour les résultats purement amont.

Un badge Contient des versions bloquées apparaît à côté du badge Source lorsqu'au moins une version est actuellement bloquée.


Détail d'un paquet

Cliquez sur n'importe quelle ligne en cache du catalogue pour ouvrir la page de détail du paquet.

Résumé des garde-fous

La carte Garde-fou d'accès montre deux vérifications sur votre session courante :

VérificationVertRouge / gris
Accès au registreVotre rôle peut passer par le proxy sur ce registreVotre rôle n'a pas accès à ce registre
Canal bêtaVous êtes membre du canal bêta — les versions de pre-release sont visiblesVous n'êtes pas membre ; les versions de pre-release sont masquées

La carte reflète ce que votre token courant autorise. Si le registre est accessible mais qu'une version précise est bloquée, cela apparaît dans la colonne Pare-feu de la table des versions, pas dans la carte.

Table des versions

Chaque ligne est une version du paquet. Colonnes :

ColonneNotes
VersionLa chaîne de version. Les versions de pre-release (contenant -) sont en italique, avec un badge pre-release.
SourceVia proxy (depuis le cache amont) ou Local (publiée directement).
Pare-feuVoir ci-dessous.
TéléchargementsTotal des événements d'accès pour cette version exacte.
Dernier accèsHorodatage du dernier événement d'accès.
PubliéeHorodatage published_at pour les paquets locaux ; pour les paquets via proxy.

État du pare-feu

BadgeSignification
LibreLa version est disponible.
BloquéeUn administrateur a bloqué cette version. Survolez le badge pour connaître le motif, l'auteur du blocage et sa date.
RetiréeLa version a été retirée après publication (paquets locaux uniquement).

Pour aller plus loin

Le reste de la documentation de l'explorateur est réparti sur ces pages :

  • Recherche en amont — interroger les registres amont pour des paquets pas encore passés par le proxy, les registres pris en charge, et la configuration de l'URL de recherche.
  • Contrôle d'accès — séparer l'accès proxy de l'accès à l'explorateur, la configuration RBAC et les règles d'héritage.
  • Cache et API — le cache en mémoire de l'explorateur, les notes de performance et la référence de l'API REST.

Publié sous licence Apache 2.0. Fait avec ❤️ et beaucoup trop de ☕.