Categories
Programming

Newspipe 9.1.0

Après de très long mois, une nouvelle version de Newspipe est enfin prête.

La version 9.0 est silencieusement sortie le 27 février 2020. Tandis que la version précédente date du 24 Mai 2017!

Alors, qu’est-ce qui a changé dans Newspipe? Et bien beaucoup de choses!

Premièrement, le code source est maintenant officiellement disponible sur la forge sourcehut.

L’interface graphique n’utilise plus React. Elle est revenue à l’ancienne version, avec des améliorations (il y en aura encore). De nombreuses vues sont plus claires.

Le back-end a été restructuré et ce n’est qu’un début.

Aussi les profils (un exemple) des utilisateurs disposent maintenant, lorsqu’ils sont publics, d’un flux. Voici encore un exemple.

L’import des marque-pages depuis Pinboard a été amélioré.

Le déploiement est aussi beaucoup plus simple et peut se faire avec Poetry.

Bref, beaucoup de changement. La prochaine version de Newspipe sera l’occasion d’ouvrir à nouveau les inscriptions sur l’instance officielle (qui ne fonctionne plus sur Heroku).

6 replies on “Newspipe 9.1.0”

Ah tiens je serais intéressé par ton retour d’XP sur le pourquoi du comment de l’abandon de React 🙂 plutôt des raisons cote développement ou côté utilisateurs ?

Il y a plusieurs raisons:

– je n’ai pas de plaisir à développer avec ce genre technologies (MVC JavaScript côté client). Je me demande même si je ne vais pas complètement supprimer JavaScript de ce projet;
– maintenant je vais pourvoir avancer plus vite pour les fonctionnalités et écrire du code qui me plaît.
– je n’aime pas les one page app;
– je trouve que ça coûte trop de temps pour un projet personnel (par exemple la migration de React Bootstrap 3 à React Bootstrap 4. En plus React Bootstrap 4 est sortie longtemps après Bootstrap 4). Surtout que je tiens à rester à jour avec toutes les dépendances (back-end et front-end);
– JavaScript c’est de la merde (désolé, je n’ai pas pu me retenir, j’ai encore pissé dessus).

Ouais je comprends. 🙂 Enfin surtout pour les raisons de coût de développement, de dépendances, et pour certains inconvénients des SPA quand elles ne respectent pas les bonnes pratiques. Pour JavaScript en effet, si tu peux t’en passer, fais-le.

Question sécurité, t’as mis en place des CSP?

En fait pour être honnête pour l’instant j’ai laissé de côté CSP. J’ai fais ça pour mon instance Nextcloud par contre.

Je ne vois pas comment faire avec une application uWSGI. Mais ce n’est pas grave car je viens de trouver ceci: https://github.com/GoogleCloudPlatform/flask-talisman
Donc merci à toi! 🙂

Ça semble bien fonctionner. Je viens de tester ceci, par défaut:
https://git.sr.ht/~cedric/newspipe/commit/f73003afca2b6cc9f48334958068b8f71e084342
Je me suis inspiré d’un des exemples sur le README de flask-talisman. Tu peux suggérer autre chose si tu veux.

Bon, j’ai du assouplir une peu:
https://git.sr.ht/~cedric/newspipe/commit/1c1c96e6fd0ce41a413aec9a4fd7d490ae7d1ca5

Il y a des choses qui utilisent du JavaScript inline. Ça ne semble pas venir directement de mon code. Du coup c’est chiant.

Mais ça fonctionne bien:

cedric@numero5:~$ curl -I -L https://www.newspipe.org/login
HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
Content-Length: 3925
X-Frame-Options: SAMEORIGIN
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
Content-Security-Policy: default-src 'self'; img-src *; media-src youtube.com; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'
X-Content-Security-Policy: default-src 'self'; img-src *; media-src youtube.com; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'
Strict-Transport-Security: max-age=31556926; includeSubDomains
Referrer-Policy: strict-origin-when-cross-origin
Vary: Cookie

Comments are closed.