Toutes les modifications notable de ce projet seront documentées dans ce fichier.
Le format est basé sur Keep a Changelog, et ce projet adhère à Semantic Versioning.
- La blacklist ne prenait pas en compte le nom du marchant
- Ajout d'un fichier blacklist.txt où chaque ligne correspond à des mots bannis du titre
- Correction des tests getDeals() qui n'étaient pas correctement typé
- Ajout du fichiers requirements.txt pour les dépendances
- Ajout de Github Actions
- Refactoring pour déplacer la logique métier dans la classe Dealabs et Deal
- Déplacement des outils et de gestion dans la classe Utils
- Repo renommé en dealabs-api-notifications
- Ajout des tests pour vérifier la classe Dealabs et Deals ainsi que l'accès à l'api soit toujours fonctionnel
- Ajout du paramètre FREE_PRODUCTS_PRIORITY pour pouvoir afficher les notifications des produits gratuits de façon non prioritaire et se concentrer sur les erreurs de prix
- Ajout du paramètre PRIORITY_ONLY_FIRST pour notifier uniquement en priorité a l'apparition du deal et pas à chaque mise à jour
- Les deals envoyés sont en cache dans un fichier send.json
- Les deals designés comme locaux, mais de type nationaux n'étaient pas récupérés
- Catch les erreurs lors de la récupération des redirections d'urls dans getFinalUrl()
- Refactoring complet pour tout inclure dans un module
- La récupération passe désormais par graphQL et plus l'api interne
- Les images ne sont plus récupérées via l'api des images, mais le CDN public
- Ajout de la fonctionnalité OPEN_DEALABS qui permet de choisir d'ouvrir l'application dealabs ou le site du deal
- Il est maintenant possible d'inclure le module pour l'utiliser directement en python
- Le point d'entrée (main.py) accepte maintenant des arguments [refresh_seconds] [minimum_discount] [free_products] [expire_notification] [open_dealabs]
- Retour du getDeal()
- Ajout du paramètre FREE_PRODUCTS pour capturer les produits gratuits
- Changement de l'ordre des paramètres pour correspondre a l'oauth_signature
- La requete pour récupérer les deals contient maintenant un compte fictif, ce qui permet de récupérer les deals plus rapidement
- Refactorisation du code
- Ajout de timeouts à chaque requete
- getProduct() a été supprimé car il ne fonctionnait pas, et était sécurisé avec un oauth_signature
- Ajout du prix, réduction, marchand et les groupes du deals au hash
- Génération d'un hash au lieu de prendre l'id du deal, sinon les modifications ultérieures à la création du deal n'étaient pas prises en compte
- Ajout de la fonctionalité permettant d'être prevenu lorsque les tokens pushOver vont expirer
Création du projet