

Amazon non CodeCatalyst è più aperta a nuovi clienti. I clienti esistenti possono continuare a utilizzare il servizio normalmente. Per ulteriori informazioni, consulta [Come migrare da CodeCatalyst](migration.md).

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Uso di Python
<a name="packages-python"></a>

Questi argomenti descrivono come usare`pip`, il gestore di pacchetti Python e `twine` l'utilità di pubblicazione dei pacchetti Python con. CodeCatalyst

**Topics**
+ [Configurazione di pip e installazione di pacchetti Python](packages-python-pip.md)
+ [Configurazione di Twine e pubblicazione di pacchetti Python](packages-python-twine.md)
+ [Normalizzazione dei nomi dei pacchetti in Python](python-name-normalization.md)
+ [Compatibilità con Python](packages-python-compatibility.md)

# Configurazione di pip e installazione di pacchetti Python
<a name="packages-python-pip"></a>

Per `pip` utilizzarlo CodeCatalyst, è necessario connettersi `pip` al repository dei pacchetti e fornire un token di accesso personale per l'autenticazione. È possibile visualizzare le istruzioni per la connessione `pip` al repository dei pacchetti nella CodeCatalyst console. Dopo l'autenticazione e la connessione `pip` CodeCatalyst, puoi eseguire `pip` i comandi.

**Contents**
+ [Installazione di pacchetti Python da CodeCatalyst con pip](#pip-install)
+ [Consumo di pacchetti Python da PyPI tramite CodeCatalyst](#pip-install-pypi)
+ [supporto per i comandi pip](#pip-command-support)
  + [Comandi supportati che interagiscono con un repository](#supported-pip-commands-that-interact-with-a-repository)
  + [Comandi lato client supportati](#supported-pip-client-side-commands)

## Installazione di pacchetti Python da CodeCatalyst con pip
<a name="pip-install"></a>

Le seguenti istruzioni spiegano come `pip` configurare l'installazione dei pacchetti Python dal tuo CodeCatalyst repository di pacchetti o da uno dei suoi repository upstream.

**Da configurare e utilizzare `pip` per installare i pacchetti Python dal tuo CodeCatalyst repository di pacchetti**

1. [Apri la CodeCatalyst console all'indirizzo https://codecatalyst.aws/.](https://codecatalyst.aws/)

1. Nella pagina di panoramica del progetto, scegli **Pacchetti**.

1. Scegli il tuo repository di pacchetti dall'elenco dei repository di pacchetti.

1. Scegli **Connect to repository.**

1. Nella finestra di dialogo **Connect to repository**, scegli **pip** dall'elenco dei client del gestore di pacchetti.

1. Avrai bisogno di un token di accesso personale (PAT) con cui autenticare pip. CodeCatalyst Se ne hai già uno, puoi usarlo. In caso contrario, puoi crearne uno qui.

   1. Scegli **Crea token**.

   1. Scegli **Copia** per copiare il tuo PAT.
**avvertimento**  
Non potrai più vedere o copiare il tuo PAT dopo aver chiuso la finestra di dialogo.

1. Utilizzate il `pip config` comando per impostare l'URL e le credenziali del CodeCatalyst registro. Sostituisci i seguenti valori.
**Nota**  
Se si copiano le istruzioni dalla console, i seguenti valori devono essere aggiornati automaticamente e non devono essere modificati.
   + *username*Sostituiscili con il tuo nome CodeCatalyst utente.
   + *PAT*Sostituiscilo con il tuo CodeCatalyst PAT.
   + *space\$1name*Sostituiscilo con il nome CodeCatalyst dello spazio.
   + *proj\$1name*Sostituiscilo con il nome CodeCatalyst del tuo progetto.
   + *repo\$1name*Sostituiscilo con il nome CodeCatalyst del repository dei pacchetti.

   ```
   pip config set global.index-url https://username:PAT@https://packages.region.codecatalyst.aws/pypi/space_name/proj_name/repo_name/simple/
   ```

1. Supponendo che un pacchetto sia presente nel tuo repository o in uno dei suoi repository originali, puoi installarlo con. `pip install` Ad esempio, utilizzate il comando seguente per installare il pacchetto. `requests`

   ```
   pip install requests
   ```

   Utilizzate l'`-i`opzione per tornare temporaneamente all'installazione dei pacchetti da [https://pypi.org](https://pypi.org) anziché dal vostro repository di CodeCatalyst pacchetti.

   ```
   pip install -i https://pypi.org/simple requests
   ```

## Consumo di pacchetti Python da PyPI tramite CodeCatalyst
<a name="pip-install-pypi"></a>

**È possibile utilizzare pacchetti Python dal Python [Package Index (PyPI)](https://www.pypi.org/) tramite un CodeCatalyst repository configurando il repository con una connessione upstream a PyPI.** I pacchetti consumati da **PyPI vengono importati** e archiviati nel tuo repository. CodeCatalyst 

**Per utilizzare pacchetti da PyPI**

1. Se non l'hai già fatto, configura pip con il tuo repository di CodeCatalyst pacchetti seguendo i passaggi indicati. [Installazione di pacchetti Python da CodeCatalyst con pip](#pip-install) 

1. Assicurati che il tuo repository abbia aggiunto **PyPI** come sorgente upstream. Puoi controllare quali sorgenti upstream vengono aggiunte o aggiungere **PyPI** come sorgente upstream seguendo le istruzioni e scegliendo il repository [Aggiunta di un repository upstream](packages-upstream-repositories-add.md) **PyPI** store.

Per ulteriori informazioni sulla richiesta di pacchetti dai repository upstream, consulta. [Richiesta di una versione del pacchetto con repository upstream](packages-upstream-repositories-request.md)

## supporto per i comandi pip
<a name="pip-command-support"></a>

Le sezioni seguenti riepilogano i comandi pip supportati dai CodeCatalyst repository, oltre ai comandi specifici che non sono supportati.

**Topics**
+ [Comandi supportati che interagiscono con un repository](#supported-pip-commands-that-interact-with-a-repository)
+ [Comandi lato client supportati](#supported-pip-client-side-commands)

### Comandi supportati che interagiscono con un repository
<a name="supported-pip-commands-that-interact-with-a-repository"></a>

Questa sezione elenca `pip` i comandi in cui il `pip` client effettua una o più richieste al registro con cui è stato configurato. È stato verificato che questi comandi funzionino correttamente quando vengono richiamati CodeCatalyst su un archivio di pacchetti.


****  

| Comando | Description | 
| --- | --- | 
|   [installare](https://pip.pypa.io/en/stable/reference/pip_install/)   |  Installa pacchetti.  | 
|   [scaricare](https://pip.pypa.io/en/stable/reference/pip_download/)   |  Scarica i pacchetti.  | 

CodeCatalyst non implementa`pip search`. Se hai configurato `pip` con un repository di CodeCatalyst pacchetti, l'esecuzione `pip search` cercherà e mostrerà i pacchetti da [PyPI](https://pypi.org/).

### Comandi lato client supportati
<a name="supported-pip-client-side-commands"></a>

Questi comandi non richiedono alcuna interazione diretta con un repository, quindi CodeCatalyst non è necessario fare nulla per supportarli.


****  

| Comando | Description | 
| --- | --- | 
|   [disinstallare](https://pip.pypa.io/en/stable/reference/pip_uninstall/)   |  Disinstalla i pacchetti.  | 
|   [congelare](https://pip.pypa.io/en/stable/reference/pip_freeze/)   |  Visualizza i pacchetti installati nel formato dei requisiti.  | 
|   [elenco](https://pip.pypa.io/en/stable/reference/pip_list/)   |  Elenca i pacchetti installati.  | 
|   [sh](https://pip.pypa.io/en/stable/reference/pip_show/)ow   |  Mostra informazioni sui pacchetti installati.  | 
|   [controlla](https://pip.pypa.io/en/stable/reference/pip_check/)   |  Verifica che i pacchetti installati abbiano dipendenze compatibili.  | 
|   [configurazione](https://pip.pypa.io/en/stable/reference/pip_config/)   |  Gestisci la configurazione locale e globale.  | 
|   [ruota](https://pip.pypa.io/en/stable/reference/pip_wheel/)   |  Costruisci ruote in base alle tue esigenze.  | 
|   [cancelletto](https://pip.pypa.io/en/stable/reference/pip_hash/)   |  Calcola gli hash degli archivi dei pacchetti.  | 
|   [completamento](https://pip.pypa.io/en/stable/user_guide/#command-completion)   |  Aiuta a completare i comandi.  | 
|   [debug](https://pip.pypa.io/en/stable/reference/pip_debug/)   |  Mostra informazioni utili per il debug.  | 
|  aiuto  |  Mostra l'aiuto per i comandi.  | 

# Configurazione di Twine e pubblicazione di pacchetti Python
<a name="packages-python-twine"></a>

Per `twine` utilizzarlo CodeCatalyst, è necessario connettersi `twine` al repository dei pacchetti e fornire un token di accesso personale per l'autenticazione. È possibile visualizzare le istruzioni per la connessione `twine` al repository dei pacchetti nella CodeCatalyst console. Dopo l'autenticazione e la connessione `twine` CodeCatalyst, puoi eseguire `twine` i comandi.

## Pacchetti di pubblicazione su CodeCatalyst with Twine
<a name="packages-twine-publish"></a>

Le seguenti istruzioni spiegano come autenticarsi e connettersi `twine` al repository dei CodeCatalyst pacchetti.

**Da configurare e utilizzare `twine` per pubblicare pacchetti nel proprio CodeCatalyst repository di pacchetti**

1. Apri la CodeCatalyst console all'indirizzo [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Nella pagina di panoramica del progetto, scegli **Pacchetti**.

1. Scegli il tuo repository di pacchetti dall'elenco dei repository di pacchetti.

1. Scegli **Connect to repository.**

1. Nella finestra di dialogo **Connect to repository**, scegli **Twine** dall'elenco dei client del gestore di pacchetti.

1. Avrai bisogno di un token di accesso personale (PAT) con cui autenticare Twine. CodeCatalyst Se ne hai già uno, puoi usarlo. In caso contrario, puoi crearne uno qui.

   1. Scegli **Crea token**.

   1. Scegli **Copia** per copiare il tuo PAT.
**avvertimento**  
Non potrai più vedere o copiare il tuo PAT dopo aver chiuso la finestra di dialogo.

1. È possibile configurare twine con un `.pypirc` file o con variabili di ambiente.

   1. **Da configurare con un `.pypirc` file.**

      Apri `~/.pypirc` nell'editor che preferisci.

      Aggiungi un server di indicizzazione per CodeCatalyst, incluso il repository, il nome utente e il PAT che hai creato e copiato in un passaggio precedente. Sostituisci i seguenti valori.
**Nota**  
Se si copiano le istruzioni dalla console, i seguenti valori devono essere aggiornati automaticamente e non devono essere modificati.
      + *username*Sostituiscili con il tuo nome CodeCatalyst utente.
      + *PAT*Sostituiscilo con il tuo CodeCatalyst PAT.
      + *space\$1name*Sostituiscilo con il nome CodeCatalyst dello spazio.
      + *proj\$1name*Sostituiscilo con il nome CodeCatalyst del tuo progetto.
      + *repo\$1name*Sostituiscilo con il nome CodeCatalyst del repository dei pacchetti.

      ```
      [distutils]
      index-servers = proj-name/repo-name
      
      [proj-name/repo-name]
      repository = https://packages.region.codecatalyst.aws/pypi/space_name/proj_name/repo_name/
      password = PAT
      username = username
      ```

   1. **Da configurare con variabili di ambiente.**

      Imposta le seguenti variabili di ambiente. Nel `TWINE_REPOSITORY_URL` valore*space\$1name*, *proj\$1name* aggiorna e *repo\$1name* inserisci i nomi CodeCatalyst dello spazio, del progetto e del repository dei pacchetti.

      ```
      export TWINE_USERNAME=username
      ```

      ```
      export TWINE_PASSWORD=PAT
      ```

      ```
      export TWINE_REPOSITORY_URL="https://packages.region.codecatalyst.aws/pypi/space_name/proj_name/repo_name/"
      ```

1. Pubblica una distribuzione Python con il `twine upload` comando.

# Normalizzazione dei nomi dei pacchetti in Python
<a name="python-name-normalization"></a>

CodeCatalyst normalizza i nomi dei pacchetti prima di memorizzarli, il che significa che i nomi dei pacchetti CodeCatalyst possono essere diversi dal nome fornito quando il pacchetto è stato pubblicato.

Per i pacchetti Python, quando si esegue la normalizzazione il nome del pacchetto è in minuscolo e tutte le istanze dei caratteri vengono sostituite con un `.` singolo `-` carattere. `_` `-` Quindi i nomi dei pacchetti e sono normalizzati `pigeon_cli` e `pigeon.cli` memorizzati come. `pigeon-cli` Il nome non normalizzato può essere usato da pip e twine. Per ulteriori informazioni sulla normalizzazione dei nomi dei pacchetti Python, vedere [PEP 503](https://www.python.org/dev/peps/pep-0503/#normalized-names) nella documentazione di Python.

# Compatibilità con Python
<a name="packages-python-compatibility"></a>

 Sebbene CodeCatalyst non supporti l'`/simple/`API, supporta le operazioni `Legacy` API. CodeCatalyst non supporta le operazioni PyPI `XML-RPC` o `JSON` API. 

Per ulteriori informazioni, vedere quanto segue nel repository della Python Packaging Authority. GitHub
+ [API legacy](https://warehouse.pypa.io/api-reference/legacy.html)
+ [API XML-RPC](https://github.com/pypi/warehouse/blob/main/docs/dev/api-reference/xml-rpc.rst)
+ [API JSON](https://docs.pypi.org/api/json/)