From 8e56aef3cede12534a933b498a158e3bb9e281f2 Mon Sep 17 00:00:00 2001 From: "Pedro S. Lopez" Date: Sun, 1 Aug 2021 23:04:02 -0400 Subject: [PATCH] fix: more stable latest version check (#805) --- .github/workflows/update.yml | 2 ++ tools/version-checker/update-version | 21 ++++++--------------- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 284c511..3aa6387 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -1,6 +1,8 @@ name: Update on: + schedule: + - cron: "0/15 * * * *" workflow_dispatch: jobs: diff --git a/tools/version-checker/update-version b/tools/version-checker/update-version index 00d89cb..3afbb27 100755 --- a/tools/version-checker/update-version +++ b/tools/version-checker/update-version @@ -1,21 +1,12 @@ #!/usr/bin/env node const fs = require('fs'); -const puppeteer = require('puppeteer'); -const { DefaultOptions } = require('../../src/util/Constants'); +const fetch = require('node-fetch'); -const getLatestVersion = async () => { - const browser = await puppeteer.launch(); - const page = await browser.newPage(); - await page.setUserAgent(DefaultOptions.userAgent); - - await page.goto('https://web.whatsapp.com/', { waitUntil: 'load'}); - await page.waitForSelector('.landing-header'); - - const version = await page.evaluate(() => window.Debug.VERSION); - await browser.close(); - - return version; +const getLatestVersion = async (currentVersion) => { + const res = await fetch(`https://web.whatsapp.com/check-update?version=${currentVersion}&platform=web`); + const data = await res.json(); + return data.currentVersion; }; const getCurrentVersion = () => { @@ -40,7 +31,7 @@ const updateVersion = async (oldVersion, newVersion) => { (async () => { const currentVersion = getCurrentVersion(); - const version = await getLatestVersion(); + const version = await getLatestVersion(currentVersion); console.log(`Current version: ${currentVersion}`); console.log(`Latest version: ${version}`);