---
title: "Päivitämme NodeJS- ja Python-oletusversiot"
canonical_url: "https://www.speedzone.fi/blogi/paivitamme-nodejs-ja-python-oletusversiot/"
post_type: "post"
published: "2024-06-12T07:36:09+00:00"
modified: "2024-07-22T07:37:00+00:00"
author: "Ingmar Aasoja"
featured_image: "https://www.speedzone.fi/static/sites/2/2024/06/Paivitamme-NodeJS-ja-Python-oletusversiot.jpg"
taxonomies:
  category:
    - name: "Päivitykset"
      url: "https://www.speedzone.fi/blogi/category/paivitykset/"
  post_tag:
    - name: "CSS"
      url: "https://www.speedzone.fi/blogi/tag/css/"
    - name: "JS & CSS"
      url: "https://www.speedzone.fi/blogi/tag/js-css/"
    - name: "Kehittäjälle"
      url: "https://www.speedzone.fi/blogi/tag/kehittajalle/"
    - name: "NodeJS"
      url: "https://www.speedzone.fi/blogi/tag/nodejs/"
    - name: "NodeJS Python"
      url: "https://www.speedzone.fi/blogi/tag/nodejs-python/"
    - name: "NVM"
      url: "https://www.speedzone.fi/blogi/tag/nvm/"
    - name: "Python"
      url: "https://www.speedzone.fi/blogi/tag/python/"
    - name: "Teknistä"
      url: "https://www.speedzone.fi/blogi/tag/teknista/"
    - name: "Turvallisuus"
      url: "https://www.speedzone.fi/blogi/tag/turvallisuus/"
    - name: "verkkosivu"
      url: "https://www.speedzone.fi/blogi/tag/verkkosivu/"
  skills:
    - name: "Asiantuntijalle"
      url: "https://www.speedzone.fi/blogi/skill/asiantuntijalle/"
    - name: "Edistyneille"
      url: "https://www.speedzone.fi/blogi/skill/edistyneille/"
---

# Päivitämme NodeJS- ja Python-oletusversiot

> TL;DR;
>
>
>
> *Kesäkuussa päivittyvät palvelimilla jatkuvasti oletusversiot:*
> **Node.js LTS päivittyy versioon 20** *ja* **Python versioon 3.11**

**Tässä kuussa alamme päivittää Zone-alustalla vaiheittain** `Node.js`**– ja** `Python`**-oletusversioita, minkä vuoksi pyydämme tällä kirjoituksella juuri sellaisten käyttäjien huomiota, jotka ovat sinut mainittujen ohjelmien kanssa.**

![Päivitämme NodeJS- ja Python-oletusversiot](https://www.speedzone.fi/static/sites/2/2024/06/Paivitamme-NodeJS-ja-Python-oletusversiot-1024x577.jpg)## **Node.js LTS 20**

Node.js-version muutos voi vaikuttaa käyttäjiin monella tavalla.

### <a></a> **PM2:ssa toimivat verkkosovellukset**

Suurin ja välittömin vaikutus kohdistuu Node.js-ajoympäristössä kirjoitettuihin verkkosovelluksiin, jotka toimivat jatkuvasti palvelimella. Version päivityksen jälkeen sovellus lakkaa toimimasta, jos se ei ole yhteensopiva uuden version kanssa. Huomaa, että kun palvelin päivitetään, kaikki sovellukset käynnistetään uudelleen. On tärkeää varmistaa, että sovellus toimii myös uudella versiolla tai käyttää NVM:n avulla edellistä versiota.

### <a></a> **JS &amp; CSS build -komentosarjat**

Pienempi vaikutus on sellaisilla komentosarjoilla, joita käytetään verkkosivuston CSS:n ja JS:n kääntämiseen selaimelle ymmärrettävään muotoon. Jos WWW-palvelimella suoritetaan sellaisia komentoja kuin `yarn build` tai `npm run build`, nykyinen verkkosivu toimii edelleen, vaikka build-komentosarjat eivät olisikaan yhteensopivia uuden version kanssa. Ongelmia voi syntyä verkkosivuston koodia päivitettäessä, jos verkossa on päivitettävä JS- ja/tai CSS-tiedostoja.

Jos kääntäminen tapahtuu erillisellä palvelimella, joka ei sijaitse Zonessa, tämä muutos ei vaikuta sinuun.

**Node.js-versioiden asetuksia voi tehdä NVM:n avulla**

Vaikka Node.js:n version päivityksellä on yleensä vähäinen vaikutus sovellukseen, siihen kannattaa silti varautua. Kaikki riippuvuudet kannattaa päivittää mahdollisimman uuteen versioon käyttäen joko `Yarn`– tai `npm`-paketinhallintatyökalua. Lisäksi voidaan jo nyt ottaa käyttöön Node.js 20 käyttäen NVM-versionhallintatyökalua (lue tästä: [Node Version Manager](https://help.zone.eu/en/kb/changing-the-nodejs-version/)). NVM-työkalulla voidaan myös tehdä nykyiseen versioon sellaiset asetukset, että kun palvelimen perusversio päivitetään, käytetään NVM:llä asetettua edellistä versiota.

Jos epäillään, että verkkosovellus ei ehkä toimi uudemmalla versiolla, kannattaa nykyinen versio konfiguroida etukäteen NVM:n avulla. Voit nähdä tällä hetkellä käytössä olevan version WWW-palvelimen SSH-konsolissa suorittamalla komennon `node -v`.

Jos asennetaan NVM:llä jokin versio, esimerkiksi `nvm install 18`, niin kyseinen versio tulee merkitä PM2:n ekosysteemin tiedostossa `interpreter`-kenttään, esimerkiksi `/dataXX/virtXXX/.nvm/versions/node/v18.20.3/bin/node`, jossa `/dataXX/virtXXX` tulisi vaihtaa omaan SSH-käyttäjän kotihakemistoon.

## **Python 3.11**

Python ei ole jaetussa verkkoisännöinnissä yleisin ohjelmisto. Jos sinulla on yksinkertainen verkkosovellus, voit jättää tämän luvun huomiotta. Jos sinulla on kuitenkin tietty sovellus, joka toimii Pythonilla, muista, että oletusversio päivitetään 3.8:sta 3.11:een.

Python 3.11 on jo nyt saatavilla palvelimillamme komennolla `python3.11`. Nykyinen komento `python` käynnistää taustalla `python3.8`:n. Sovellukset voidaan siis siirtää uudempaan versioon jo nyt. Muutoksen myötä komento `python` alkaa käynnistää `python3.11`:n. Tämän vuoden loppukesällä vanhempi versio 3.8 poistetaan järjestelmästä.

Jotta sovellus toimisi edelleen, kannattaa palvelinpäivityksen jälkeen päivittää `virtualenv` kääntymällä suoraan uudemman `python3.11`:n puoleen.

Uusi virtualenv, jonka versio on 3.11, voidaan luoda komennolla `virtualenv ~/tiedosto/polku --python=python3.11`, jossa `~/tiedosto/polku` tulee vaihtaa haluttuun sijaintiin.
