diff --git a/.github/workflows/develop-chia.yaml b/.github/workflows/develop-chia.yaml index f80e66f6..b84cb5b1 100644 --- a/.github/workflows/develop-chia.yaml +++ b/.github/workflows/develop-chia.yaml @@ -44,7 +44,7 @@ jobs: "UBUNTU_VER=jammy" "MACHINARIS_STREAM=develop" "CHIADOG_BRANCH=dev" - "CHIA_BRANCH=release/1.7.1" + "CHIA_BRANCH=release/1.8.0" "BLADEBIT_BRANCH=cuda-compression" "MADMAX_BRANCH=master" "PLOTMAN_BRANCH=compress" @@ -90,8 +90,9 @@ jobs: "UBUNTU_VER=jammy" "MACHINARIS_STREAM=develop" "CHIADOG_BRANCH=dev" - "GIGAHORSE_BRANCH=v1.6.2.giga7" - "CHIA_BRANCH=release/1.6.2" + "GIGAHORSE_BRANCH=v1.8.0.giga10" + "CHIA_BRANCH=release/1.8.0" + "MADMAX_BRANCH=v1.8.0.giga10" "PLOTMAN_BRANCH=compress" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-gigahorse:develop diff --git a/.github/workflows/develop-hddcoin.yaml b/.github/workflows/develop-hddcoin.yaml index 67b85d86..0f00dd7f 100644 --- a/.github/workflows/develop-hddcoin.yaml +++ b/.github/workflows/develop-hddcoin.yaml @@ -45,7 +45,7 @@ jobs: "MACHINARIS_STREAM=develop" "CHIADOG_BRANCH=dev" "FDCLI_BRANCH=dev" - "HDDCOIN_BRANCH=main" + "HDDCOIN_BRANCH=beta" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-hddcoin:develop ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/machinaris-hddcoin:develop diff --git a/.github/workflows/main-chia.yaml b/.github/workflows/main-chia.yaml index 09a767fc..62fce811 100644 --- a/.github/workflows/main-chia.yaml +++ b/.github/workflows/main-chia.yaml @@ -44,8 +44,8 @@ jobs: build-args: | "UBUNTU_VER=jammy" "MACHINARIS_STREAM=latest" - "CHIA_BRANCH=release/1.7.1" - "MADMAX_BRANCH=v1.6.2-1" + "CHIA_BRANCH=release/1.8.0" + "MADMAX_BRANCH=v1.8.0.giga10" "BLADEBIT_BRANCH=cuda-compression" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris:latest @@ -90,9 +90,9 @@ jobs: build-args: | "UBUNTU_VER=jammy" "MACHINARIS_STREAM=latest" - "GIGAHORSE_BRANCH=v1.6.2.giga7" - "CHIA_BRANCH=release/1.6.2" - "MADMAX_BRANCH=v1.6.2-1" + "GIGAHORSE_BRANCH=v1.8.0.giga10" + "CHIA_BRANCH=release/1.8.0" + "MADMAX_BRANCH=v1.8.0.giga10" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-gigahorse:latest ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-gigahorse:v${{ github.event.inputs.version }} diff --git a/.github/workflows/main-chives.yaml b/.github/workflows/main-chives.yaml index 303b96c4..d43ac9f8 100644 --- a/.github/workflows/main-chives.yaml +++ b/.github/workflows/main-chives.yaml @@ -46,7 +46,7 @@ jobs: "MACHINARIS_STREAM=latest" "CHIVES_REPO=https://github.com/HiveProject2021/chives-blockchain.git" "CHIVES_BRANCH=1.5.4" - "MADMAX_BRANCH=v1.6.2-1" + "MADMAX_BRANCH=v1.8.0.giga10" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-chives:latest ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-chives:v${{ github.event.inputs.version }} diff --git a/.github/workflows/main-hddcoin.yaml b/.github/workflows/main-hddcoin.yaml index 4787c818..ef02cb2e 100644 --- a/.github/workflows/main-hddcoin.yaml +++ b/.github/workflows/main-hddcoin.yaml @@ -44,7 +44,7 @@ jobs: build-args: | "UBUNTU_VER=focal" "MACHINARIS_STREAM=latest" - "HDDCOIN_BRANCH=main" + "HDDCOIN_BRANCH=beta" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-hddcoin:latest ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-hddcoin:v${{ github.event.inputs.version }} diff --git a/.github/workflows/main-mmx.yaml b/.github/workflows/main-mmx.yaml index e478ac4b..4e3cdd4f 100644 --- a/.github/workflows/main-mmx.yaml +++ b/.github/workflows/main-mmx.yaml @@ -45,8 +45,8 @@ jobs: "UBUNTU_VER=jammy" "MACHINARIS_STREAM=latest" "CHIA_BRANCH=latest" - "MMX_BRANCH=v0.9.14" - "MADMAX_BRANCH=v1.6.2-1" + "MMX_BRANCH=v0.10.2" + "MADMAX_BRANCH=v1.8.0.giga10" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-mmx:latest ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-mmx:v${{ github.event.inputs.version }} diff --git a/.github/workflows/test-chia.yaml b/.github/workflows/test-chia.yaml index 3fcb5a94..f9727a37 100644 --- a/.github/workflows/test-chia.yaml +++ b/.github/workflows/test-chia.yaml @@ -44,10 +44,10 @@ jobs: "UBUNTU_VER=jammy" "MACHINARIS_STREAM=test" "CHIADOG_BRANCH=dev" - "CHIA_BRANCH=release/1.7.1" + "CHIA_BRANCH=release/1.8.0" "PLOTMAN_BRANCH=development" "BLADEBIT_BRANCH=cuda-compression" - "MADMAX_BRANCH=v1.6.2-1" + "MADMAX_BRANCH=v1.8.0.giga10" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris:test ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/machinaris:test @@ -90,8 +90,8 @@ jobs: "UBUNTU_VER=jammy" "MACHINARIS_STREAM=test" "CHIADOG_BRANCH=dev" - "GIGAHORSE_BRANCH=v1.6.2.giga7" - "CHIA_BRANCH=release/1.6.2" + "GIGAHORSE_BRANCH=v1.8.0.giga10" + "CHIA_BRANCH=release/1.8.0" "PLOTMAN_BRANCH=development" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-gigahorse:test diff --git a/.github/workflows/test-chives.yaml b/.github/workflows/test-chives.yaml index bdc4c9c3..aa86b0e9 100644 --- a/.github/workflows/test-chives.yaml +++ b/.github/workflows/test-chives.yaml @@ -91,7 +91,7 @@ jobs: "CHIVES_REPO=https://github.com/foxypool/chives-blockchain.git" "CHIVES_BRANCH=main" "PLOTMAN_BRANCH=development" - "MADMAX_BRANCH=v1.6.2-1" + "MADMAX_BRANCH=v1.8.0.giga10" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-chivesfoxy:test ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/machinaris-chivesfoxy:test diff --git a/.github/workflows/test-hddcoin.yaml b/.github/workflows/test-hddcoin.yaml index 570a5cee..6913a54e 100644 --- a/.github/workflows/test-hddcoin.yaml +++ b/.github/workflows/test-hddcoin.yaml @@ -44,7 +44,7 @@ jobs: "UBUNTU_VER=focal" "MACHINARIS_STREAM=test" "CHIADOG_BRANCH=dev" - "HDDCOIN_BRANCH=main" + "HDDCOIN_BRANCH=beta" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-hddcoin:test ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/machinaris-hddcoin:test diff --git a/.github/workflows/test-mmx.yaml b/.github/workflows/test-mmx.yaml index 8885a60c..77a89246 100644 --- a/.github/workflows/test-mmx.yaml +++ b/.github/workflows/test-mmx.yaml @@ -45,8 +45,8 @@ jobs: "MACHINARIS_STREAM=test" "CHIA_BRANCH=latest" "PLOTMAN_BRANCH=development" - "MMX_BRANCH=v0.9.14" - "MADMAX_BRANCH=v1.6.2-1" + "MMX_BRANCH=v0.10.2" + "MADMAX_BRANCH=v1.8.0.giga10" tags: | ${{ secrets.DOCKERHUB_USERNAME }}/machinaris-mmx:test ghcr.io/${{ secrets.DOCKERHUB_USERNAME }}/machinaris-mmx:test diff --git a/CHANGELOG.md b/CHANGELOG.md index 73d9f814..35303ecf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,22 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.8.0] - 2023-05-04 +### Added + - Concurrent plot transfers to both remote and local archive paths. Previously was one plot transferred at a time. + - Checking for adequate free space on both tmp and dst paths before starting another plotting job. + - Replotting selection (Farming page settings) can now target uncompressed plots for deletion. +## Changed + - Fix for Download button on Settings pages that were providing the wrong config file. Thanks @TuftyBruno. + - Updated German and Portugese translations. Thanks to @slowfinger and @antcasq. All contributions are appreciated. + - Follow Chia version numbers (like 1.8.0) from now on, as Machinaris is on their release cadence. +## Updated + - [Cactus](https://github.com/Cactus-Network/cactus-blockchain/releases/tag/1.7.1) to v1.7.1 + - [Chia](https://github.com/Chia-Network/chia-blockchain/releases/tag/1.8.0) to v1.8.0 + - [Gigahorse](https://github.com/madMAx43v3r/chia-gigahorse/releases/tag/v1.7.1.giga10) to v1.7.1.giga10. + - [HDDCoin](https://github.com/HDDcoin-Network/hddcoin-blockchain/releases/tag/3.0.0-beta.1) to 3.0.0-beta1 based on Chia 1.7.0. + - [MMX](https://github.com/madMAx43v3r/mmx-node/releases/tag/v0.10.2) to (v0.10.2) on `testnet10`. + ## [0.8.8] - 2023-03-23 ### Added - Support for running a blockchain timelord with environment variable `mode` set to `fullnode,timelord`. diff --git a/CREDITS.md b/CREDITS.md index 6400e083..ef171b23 100644 --- a/CREDITS.md +++ b/CREDITS.md @@ -91,6 +91,7 @@ A big thanks to all that contributed with dev and test including: * Joe Zotac Experience * @qoole * @miguell +* @slowfinger ## Trademark Notice CHIA NETWORK INC, CHIA™, the CHIA BLOCKCHAIN™, the CHIA PROTOCOL™, CHIALISP™ and the “leaf Logo” (including the leaf logo alone when it refers to or indicates Chia), are trademarks or registered trademarks of Chia Network, Inc., a Delaware corporation. *There is no affliation between this Machinaris project and the main Chia Network project.* \ No newline at end of file diff --git a/VERSION b/VERSION index 5c5cbb3b..afa2b351 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.8.8 \ No newline at end of file +1.8.0 \ No newline at end of file diff --git a/api/commands/chia_cli.py b/api/commands/chia_cli.py index 745a8959..b32c90c6 100644 --- a/api/commands/chia_cli.py +++ b/api/commands/chia_cli.py @@ -37,7 +37,7 @@ WALLET_SETTINGS_FILE = '/root/.chia/machinaris/config/wallet_settings.json' # Blockchains which dropped compatibility with `show -c` commands around v1.6 -BLOCKCHAINS_USING_PEER_CMD = ['btcgreen', 'cactus', 'chia', 'chinilla', 'flax', 'gigahorse', 'littlelambocoin', 'maize', 'one', 'pipscoin', 'shibgreen', 'tad'] +BLOCKCHAINS_USING_PEER_CMD = ['btcgreen', 'cactus', 'chia', 'chinilla', 'flax', 'gigahorse', 'hddcoin', 'littlelambocoin', 'maize', 'one', 'pipscoin', 'shibgreen', 'tad'] def load_farm_summary(blockchain): chia_binary = globals.get_blockchain_binary(blockchain) diff --git a/api/commands/plotman_cli.py b/api/commands/plotman_cli.py index fcd40bc4..9aa74d95 100644 --- a/api/commands/plotman_cli.py +++ b/api/commands/plotman_cli.py @@ -267,7 +267,7 @@ def find_plotting_job_log(plot_id): return None def analyze(plot_file): - groups = re.match("plot(?:-mmx)?-k(\d+)(?:-c\d)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", plot_file) + groups = re.match("plot(?:-mmx)?-k(\d+)(?:-c\d+)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", plot_file) if not groups: return "Invalid plot file name provided: {0}".format(plot_file) plot_log_file = find_plotting_job_log(groups[7]) diff --git a/api/models/plotman.py b/api/models/plotman.py index 6c604f8c..2a80507b 100644 --- a/api/models/plotman.py +++ b/api/models/plotman.py @@ -80,7 +80,7 @@ def parse_transfer_log(self, log_file, running_transfers): elif line.startswith("Completed"): self.end_date = line[line.index(' at ')+4:].strip() elif line.startswith("+ rsync"): - m = re.search("plot(?:-mmx)?-k(\d+)(?:-c\d)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", line) + m = re.search("plot(?:-mmx)?-k(\d+)(?:-c\d+)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", line) if m: self.plot_id = m.group(7)[:16].strip() self.k = int(m.group(1).strip()) diff --git a/api/schedules/plots_replot.py b/api/schedules/plots_replot.py index fbcb598e..9d728c7b 100644 --- a/api/schedules/plots_replot.py +++ b/api/schedules/plots_replot.py @@ -15,7 +15,7 @@ import traceback from flask import g -from sqlalchemy import or_ +from sqlalchemy import and_, or_ from common.models import plots as p, plottings as pl from common.models import workers as w @@ -23,6 +23,8 @@ from api import app, utils REPLOTTING_CONFIG = '/root/.chia/machinaris/config/replotting.json' +GIGAHORSE_COMPRESSION_LEVELS = range(1, 10) # Compression levels are 1 thru 9 for Gigahorse (see https://xch.farm/compressed-plots/) +BLADEBIT_COMPRESSION_LEVELS = range(1, 12) # Compression levels are 01 thru 11 for Bladebit (see https://xch.farm/compressed-plots/) def load_replotting_settings(): settings = {} @@ -46,6 +48,11 @@ def gather_oldest_solo_plots(db, harvester): return db.session.query(p.Plot).filter(p.Plot.blockchain == harvester.blockchain, p.Plot.hostname == harvester.hostname, p.Plot.type == 'solo').order_by(p.Plot.created_at.asc()).limit(20).all() +def gather_uncompressed_plots(db, harvester): + return db.session.query(p.Plot).filter(p.Plot.blockchain == harvester.blockchain, p.Plot.hostname == harvester.hostname, + and_(*[p.Plot.file.notlike("%-c{0}-%".format(level)) for level in GIGAHORSE_COMPRESSION_LEVELS]), + and_(*[p.Plot.file.notlike("%-c0{0}-%".format(level)) for level in BLADEBIT_COMPRESSION_LEVELS])).order_by(p.Plot.created_at.asc()).limit(20).all() + def gather_plots_before(db, harvester, delete_before_date): return db.session.query(p.Plot).filter(p.Plot.blockchain == harvester.blockchain, p.Plot.hostname == harvester.hostname, p.Plot.created_at < "{0} 00:00".format(delete_before_date)).order_by(p.Plot.created_at.asc()).limit(20).all() @@ -59,7 +66,7 @@ def gather_plots_by_ksize(db, harvester, delete_by_ksizes): app.logger.error("Invalid target ksize for deletion provided: {0}".format(ksize)) return [] return db.session.query(p.Plot).filter(p.Plot.blockchain == harvester.blockchain, p.Plot.hostname == harvester.hostname, - or_(*[p.Plot.file.like("-k{0}-".format(ksize)) for ksize in delete_by_ksizes])).order_by(p.Plot.created_at.asc()).limit(20).all() + or_(*[p.Plot.file.like("%-k{0}-%".format(ksize)) for ksize in delete_by_ksizes])).order_by(p.Plot.created_at.asc()).limit(20).all() def limit_deletes_to_accomodate_ksize(db, candidate_plots, free_ksize): size_bytes_to_delete = 0 @@ -99,11 +106,13 @@ def execute(): for harvester in gather_harvesters(db, blockchain): app.logger.debug("Checking {0} harvester {1} for candidate plot deletions. ({2})".format(blockchain, harvester.displayname, harvester.hostname)) candidate_plots = [] - if settings['delete_solo']: + if 'delete_solo' in settings and settings['delete_solo']: candidate_plots.extend(gather_oldest_solo_plots(db, harvester)) - if settings['delete_before']: + if 'delete_uncompressed' in settings and settings['delete_uncompressed']: + candidate_plots.extend(gather_uncompressed_plots(db, harvester)) + if 'delete_before' in settings and settings['delete_before']: candidate_plots.extend(gather_plots_before(db, harvester, settings['delete_before_date'])) - if settings['delete_by_ksize']: + if 'delete_by_ksize' in settings and settings['delete_by_ksize']: candidate_plots.extend(gather_plots_by_ksize(db, harvester, settings['delete_by_ksizes'])) if len(candidate_plots) > 0: candidate_plots = limit_deletes_to_accomodate_ksize(db, candidate_plots, settings['free_ksize']) diff --git a/api/schedules/stats_effort.py b/api/schedules/stats_effort.py index 045b9efe..3bf04f2e 100644 --- a/api/schedules/stats_effort.py +++ b/api/schedules/stats_effort.py @@ -41,7 +41,7 @@ def get_oldest_plot_file_time(): for plot_dir in globals.get_disks("plots"): plots = [f for f in os.listdir(plot_dir) if os.path.isfile(os.path.join(plot_dir,f))] for plot in plots: - match = re.match("plot(?:-mmx)?-k(\d+)(?:-c\d)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", plot) + match = re.match("plot(?:-mmx)?-k(\d+)(?:-c\d+)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", plot) if match: created_at_str = "{0}-{1}-{2} {3}:{4}".format( match.group(2),match.group(3),match.group(4),match.group(5),match.group(6)) created_at_secs = time.mktime(datetime.datetime.strptime(created_at_str, "%Y-%m-%d %H:%M").timetuple()) diff --git a/api/schedules/status_plots.py b/api/schedules/status_plots.py index 79ba1494..11a06b0b 100644 --- a/api/schedules/status_plots.py +++ b/api/schedules/status_plots.py @@ -29,7 +29,7 @@ def get_plot_attrs(plot_id, filename): dir,file = os.path.split(filename) - match = re.match("plot(?:-mmx)?-k(\d+)(?:-c\d)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", file) + match = re.match("plot(?:-mmx)?-k(\d+)(?:-c\d+)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", file) if match: short_plot_id = match.group(7)[:16] created_at = "{0}-{1}-{2} {3}:{4}".format( match.group(2),match.group(3),match.group(4),match.group(5),match.group(6)) diff --git a/api/translations/de_DE/LC_MESSAGES/messages.po b/api/translations/de_DE/LC_MESSAGES/messages.po index 4db838fe..ebcf9ba5 100755 --- a/api/translations/de_DE/LC_MESSAGES/messages.po +++ b/api/translations/de_DE/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Machinaris VERSION\n" "Report-Msgid-Bugs-To: https://github.com/guydavis/machinaris" "/issuesCreation-Date: 2022-02-16 15:00-0700\n" -"POT-Creation-Date: 2023-03-21 10:35-0600\n" +"POT-Creation-Date: 2023-04-23 17:03-0600\n" "PO-Revision-Date: 2022-02-15 14:29-0700\n" "Last-Translator: ApfelBirneKreis\n" "Language: de\n" diff --git a/api/translations/fr_FR/LC_MESSAGES/messages.po b/api/translations/fr_FR/LC_MESSAGES/messages.po index c7bd56bd..c0d452e6 100755 --- a/api/translations/fr_FR/LC_MESSAGES/messages.po +++ b/api/translations/fr_FR/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Machinaris VERSION\n" "Report-Msgid-Bugs-To: https://github.com/guydavis/machinaris" "/issuesCreation-Date: 2022-02-16 15:00-0700\n" -"POT-Creation-Date: 2023-03-21 10:35-0600\n" +"POT-Creation-Date: 2023-04-23 17:03-0600\n" "PO-Revision-Date: 2022-02-15 14:29-0700\n" "Last-Translator: Guy Davis\n" "Language: fr\n" diff --git a/api/translations/it_IT/LC_MESSAGES/messages.po b/api/translations/it_IT/LC_MESSAGES/messages.po index 2ef9a792..28ea478b 100755 --- a/api/translations/it_IT/LC_MESSAGES/messages.po +++ b/api/translations/it_IT/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Machinaris VERSION\n" "Report-Msgid-Bugs-To: https://github.com/guydavis/machinaris" "/issuesCreation-Date: 2022-02-16 15:00-0700\n" -"POT-Creation-Date: 2023-03-21 10:35-0600\n" +"POT-Creation-Date: 2023-04-23 17:03-0600\n" "PO-Revision-Date: 2022-02-15 14:29-0700\n" "Last-Translator: Fabrizio Cacicia\n" "Language: it\n" diff --git a/api/translations/nl_NL/LC_MESSAGES/messages.po b/api/translations/nl_NL/LC_MESSAGES/messages.po index 34476cc0..1a97c00f 100755 --- a/api/translations/nl_NL/LC_MESSAGES/messages.po +++ b/api/translations/nl_NL/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Machinaris VERSION\n" "Report-Msgid-Bugs-To: https://github.com/guydavis/machinaris/issuesPOT-" "Creation-Date: 2022-03-13 10:30-0600\n" -"POT-Creation-Date: 2023-03-21 10:35-0600\n" +"POT-Creation-Date: 2023-04-23 17:03-0600\n" "PO-Revision-Date: 2022-03-13 10:29-0600\n" "Last-Translator: Bernie Deprez\n" "Language: nl_NL\n" diff --git a/api/translations/pt_PT/LC_MESSAGES/messages.po b/api/translations/pt_PT/LC_MESSAGES/messages.po index 2a3a8a76..370b7b1f 100755 --- a/api/translations/pt_PT/LC_MESSAGES/messages.po +++ b/api/translations/pt_PT/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Machinaris VERSION\n" "Report-Msgid-Bugs-To: https://github.com/guydavis/machinaris" "/issuesCreation-Date: 2022-02-16 15:00-0700\n" -"POT-Creation-Date: 2023-03-21 10:35-0600\n" +"POT-Creation-Date: 2023-04-23 17:03-0600\n" "PO-Revision-Date: 2022-02-13 13:45-0700\n" "Last-Translator: Antonio Casqueiro\n" "Language: pt\n" diff --git a/api/translations/zh/LC_MESSAGES/messages.po b/api/translations/zh/LC_MESSAGES/messages.po index 29f06069..5015408c 100755 --- a/api/translations/zh/LC_MESSAGES/messages.po +++ b/api/translations/zh/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Machinaris VERSION\n" "Report-Msgid-Bugs-To: https://github.com/guydavis/machinaris" "/issuesCreation-Date: 2022-02-16 15:00-0700\n" -"POT-Creation-Date: 2023-03-21 10:35-0600\n" +"POT-Creation-Date: 2023-04-23 17:03-0600\n" "PO-Revision-Date: 2022-02-15 14:29-0700\n" "Last-Translator: Guy Davis\n" "Language: zh\n" diff --git a/common/config/blockchains.json b/common/config/blockchains.json index 87acfb82..df6441ff 100644 --- a/common/config/blockchains.json +++ b/common/config/blockchains.json @@ -43,7 +43,7 @@ "farmer_port": 27914, "fullnode_rpc_port": 27925, "worker_port": 8945, - "reward": 200.0, + "reward": 20.0, "mojos_per_coin": 1000000000000, "blocks_per_day": 4608, "git_url": "https://github.com/bpx-network/bpx-blockchain", @@ -343,8 +343,8 @@ "name": "MMX", "symbol": "MMX" , "binary": "/mmx-node/bin/mmx", - "network_path": "/root/.mmx/testnet9", - "network_name": "testnet9", + "network_path": "/root/.mmx/testnet10", + "network_name": "testnet10", "network_port": 12339, "farmer_port": 11330, "worker_port": 8940, diff --git a/docker/dockerfile-focal.base b/docker/dockerfile-focal.base index d5eac05e..41461e9a 100644 --- a/docker/dockerfile-focal.base +++ b/docker/dockerfile-focal.base @@ -25,6 +25,7 @@ RUN apt-get update \ openssl \ p7zip-full \ p7zip-rar \ + psmisc \ python3 \ python3.9-distutils \ python3.9-venv \ diff --git a/docker/dockerfile-jammy.base b/docker/dockerfile-jammy.base index 858025d8..748065e5 100644 --- a/docker/dockerfile-jammy.base +++ b/docker/dockerfile-jammy.base @@ -26,6 +26,7 @@ RUN apt-get update \ openssl \ p7zip-full \ p7zip-rar \ + psmisc \ python3 \ python3.10-distutils \ python3.10-venv \ diff --git a/scripts/forks/cactus_install.sh b/scripts/forks/cactus_install.sh index 70095e31..c69a1b15 100644 --- a/scripts/forks/cactus_install.sh +++ b/scripts/forks/cactus_install.sh @@ -4,8 +4,8 @@ # CACTUS_BRANCH=$1 -# On 2023-01-24 -HASH=96dcdf36a214fea2236e88bd5fb251c81da46897 +# On 2023-03-26 +HASH=31d37fea4e000152962d1a13d75ee156e7779837 if [ -z ${CACTUS_BRANCH} ]; then echo 'Skipping Cactus install as not requested.' @@ -15,10 +15,9 @@ else git submodule update --init mozilla-ca git checkout $HASH chmod +x install.sh - # 2022-07-20: Python needs 'packaging==21.3' - sed -i 's/packaging==21.0/packaging==21.3/g' setup.py # Log "Added Coins" at info, not debug level. See: https://github.com/Chia-Network/chia-blockchain/issues/11955 sed -e 's/^ self.log.debug($/ self.log.info(/g' cactus/wallet/wallet_state_manager.py + /usr/bin/sh ./install.sh if [ ! -d /chia-blockchain/venv ]; then diff --git a/scripts/forks/chia_install.sh b/scripts/forks/chia_install.sh index 964f3d46..bee759ee 100644 --- a/scripts/forks/chia_install.sh +++ b/scripts/forks/chia_install.sh @@ -10,18 +10,15 @@ if [ -z ${CHIA_BRANCH} ]; then else cd /tmp rm -rf /root/.cache - apt-get update && apt-get install -y dialog apt-utils + apt-get update && apt-get install -y dialog apt-utils /usr/bin/bash /machinaris/scripts/gpu_drivers_install.sh - + git clone --branch ${CHIA_BRANCH} --recurse-submodules=mozilla-ca https://github.com/Chia-Network/chia-blockchain.git /chia-blockchain cd /chia-blockchain # Log "Added Coins" at info, not debug level. See: https://github.com/Chia-Network/chia-blockchain/issues/11955 sed -i -e 's/^ self.log.debug($/ self.log.info(/g' chia/wallet/wallet_state_manager.py - # 2022-07-20: Python needs 'packaging==21.3' - sed -i 's/packaging==21.0/packaging==21.3/g' setup.py - /bin/sh ./install.sh fi diff --git a/scripts/forks/chia_launch.sh b/scripts/forks/chia_launch.sh index 93f00c0d..32fe7b71 100644 --- a/scripts/forks/chia_launch.sh +++ b/scripts/forks/chia_launch.sh @@ -38,22 +38,14 @@ if [[ "${blockchain_db_download}" == 'true' ]] \ mkdir -p /root/.chia/mainnet/db/chia && cd /root/.chia/mainnet/db/chia # Latest Blockchain DB, first try direct download, then fallback to slower torrent torrent=$(curl -s https://www.chia.net/downloads/ | grep -Po "https:.*/blockchain_v2_mainnet.\d{4}-\d{2}-\d{2}.sqlite.gz.torrent") - #echo "Please be patient! Downloading blockchain database directly from: " - #echo " ${torrent::-8}" - #curl -kLJ -O ${torrent::-8} > /tmp/chiadb_download.log 2>&1 - #size_at_least=55000000000 # 55 GB - #size_actual=$(wc -c > /tmp/chiadb_download.log 2>&1 cd /chia-blockchain && . ./activate # Re-activate - #fi echo "Now decompressing the blockchain database..." - gunzip *.gz + cd /root/.chia/mainnet/db/chia && gunzip *.gz cd /root/.chia/mainnet/db mv /root/.chia/mainnet/db/chia/blockchain_v2_mainnet.*.sqlite blockchain_v2_mainnet.sqlite rm -rf /root/.chia/mainnet/db/chia diff --git a/scripts/forks/gigahorse_launch.sh b/scripts/forks/gigahorse_launch.sh index 79fd8d28..79092574 100644 --- a/scripts/forks/gigahorse_launch.sh +++ b/scripts/forks/gigahorse_launch.sh @@ -33,23 +33,16 @@ if [[ "${blockchain_db_download}" == 'true' ]] \ echo "Please be patient as this takes hours now, but saves days of syncing time later." mkdir -p /root/.chia/mainnet/db/chia && cd /root/.chia/mainnet/db/chia # Latest Blockchain DB, first try direct download, then fallback to slower torrent + # Latest Blockchain DB, first try direct download, then fallback to slower torrent torrent=$(curl -s https://www.chia.net/downloads/ | grep -Po "https:.*/blockchain_v2_mainnet.\d{4}-\d{2}-\d{2}.sqlite.gz.torrent") - #echo "Please be patient! Downloading blockchain database directly from: " - #echo " ${torrent::-8}" - #curl -kLJ -O ${torrent::-8} > /tmp/chiadb_download.log 2>&1 - #size_at_least=55000000000 # 55 GB - #size_actual=$(wc -c > /tmp/chiadb_download.log 2>&1 cd /chia-blockchain && . ./activate # Re-activate - #fi echo "Now decompressing the blockchain database..." - gunzip *.gz + cd /root/.chia/mainnet/db/chia && gunzip *.gz cd /root/.chia/mainnet/db mv /root/.chia/mainnet/db/chia/blockchain_v2_mainnet.*.sqlite blockchain_v2_mainnet.sqlite rm -rf /root/.chia/mainnet/db/chia diff --git a/scripts/forks/hddcoin_install.sh b/scripts/forks/hddcoin_install.sh index 68a1d03e..2281cc50 100644 --- a/scripts/forks/hddcoin_install.sh +++ b/scripts/forks/hddcoin_install.sh @@ -4,8 +4,8 @@ # HDDCOIN_BRANCH=$1 -# On 2022-03-20 -HASH=42403754da1d819632b0442964eabc2962e30484 +# On 2023-05-03 +HASH=6159cf9abaccb5e365c4a5ceebce607fd7254944 if [ -z ${HDDCOIN_BRANCH} ]; then echo 'Skipping HDDCoin install as not requested.' @@ -15,10 +15,6 @@ else git submodule update --init mozilla-ca git checkout $HASH chmod +x install.sh - # 2022-01-30: pip broke due to https://github.com/pypa/pip/issues/10825 - sed -i 's/upgrade\ pip$/upgrade\ "pip<22.0"/' install.sh - # 2022-07-20: Python needs 'packaging==21.3' - sed -i 's/packaging==21.0/packaging==21.3/g' setup.py /usr/bin/sh ./install.sh if [ ! -d /chia-blockchain/venv ]; then diff --git a/scripts/forks/hddcoin_launch.sh b/scripts/forks/hddcoin_launch.sh index 12084429..ba5f12a4 100644 --- a/scripts/forks/hddcoin_launch.sh +++ b/scripts/forks/hddcoin_launch.sh @@ -34,12 +34,14 @@ if [ -f /root/.hddcoin/mainnet/config/config.yaml ]; then fi # Loop over provided list of key paths +label_num=0 for k in ${keys//:/ }; do if [[ "${k}" == "persistent" ]]; then echo "Not touching key directories." elif [ -s ${k} ]; then - echo "Adding key at path: ${k}" - hddcoin keys add -f ${k} > /dev/null + echo "Adding key #${label_num} at path: ${k}" + hddcoin keys add -l "key_${label_num}" -f ${k} > /dev/null + ((label_num=label_num+1)) fi done diff --git a/scripts/forks/mmx_launch.sh b/scripts/forks/mmx_launch.sh index 6e624028..59318f65 100644 --- a/scripts/forks/mmx_launch.sh +++ b/scripts/forks/mmx_launch.sh @@ -33,11 +33,11 @@ sed -i "s/\"plot_dirs\":.*$/\"plot_dirs\": [ $escaped_plot_dirs ]/g" /root/.chia /usr/bin/bash /machinaris/scripts/gpu_drivers_setup.sh -echo 'testnet9' > /root/.chia/mmx/NETWORK +echo 'testnet10' > /root/.chia/mmx/NETWORK -# Symlink the testnet9 folder -if [ ! -d /root/.chia/mmx/testnet9 ]; then - mkdir /root/.chia/mmx/testnet9 +# Symlink the testnet10 folder +if [ ! -d /root/.chia/mmx/testnet10 ]; then + mkdir /root/.chia/mmx/testnet10 fi # Create a key if none found from previous runs diff --git a/scripts/gpu_drivers_install.sh b/scripts/gpu_drivers_install.sh index f54e95cb..b50069d0 100644 --- a/scripts/gpu_drivers_install.sh +++ b/scripts/gpu_drivers_install.sh @@ -11,7 +11,9 @@ echo "Installing GPU drivers on ${arch_name} for ${ubuntu_ver}..." apt update && apt install -y git cmake build-essential ocl-icd-opencl-dev clinfo screen initramfs-tools ocl-icd-libopencl1 opencl-headers libnuma1 # For AMDGPU, install the amdgpu-install stub, optionally invoked later if OPENCL_GPU=amd at launch time -amd_deb=$(curl -s http://repo.radeon.com/amdgpu-install/latest/ubuntu/jammy/ | grep -m 1 -Po "amdgpu-install_[-\.\d]+_all.deb" | head -1) -curl -O http://repo.radeon.com/amdgpu-install/latest/ubuntu/jammy/${amd_deb} +# 2023-05-30 http://repo.radeon.com/amdgpu-install/latest/ubuntu/jammy/ (5.5) is currently broken, pinning old version (5.4) +driver_version=5.4 # Try 'latest' again once they fix it. +amd_deb=$(curl -s http://repo.radeon.com/amdgpu-install/${driver_version}/ubuntu/jammy/ | grep -m 1 -Po "amdgpu-install_[-\.\d]+_all.deb" | head -1) +curl -O http://repo.radeon.com/amdgpu-install/${driver_version}/ubuntu/jammy/${amd_deb} apt install -y ./${amd_deb} apt install -y radeontop diff --git a/scripts/gpu_drivers_setup.sh b/scripts/gpu_drivers_setup.sh index 11e8c94c..5cc00ba1 100644 --- a/scripts/gpu_drivers_setup.sh +++ b/scripts/gpu_drivers_setup.sh @@ -12,13 +12,13 @@ if [[ ${OPENCL_GPU} == 'nvidia' ]]; then echo "Enabling Nvidia GPU support inside this container." elif [[ ${OPENCL_GPU} == 'amd' ]]; then pushd /tmp > /dev/null - echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections + echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections apt-get update 2>&1 > /tmp/amdgpu_setup.log amdgpu-install -y --usecase=opencl --opencl=rocr --no-dkms --no-32 --accept-eula 2>&1 >> /tmp/amdgpu_setup.log popd > /dev/null - echo "Enabling AMD GPU support inside this container." + echo "Enabling AMD GPU support inside this container." elif [[ ${OPENCL_GPU} == 'intel' ]]; then apt-get update 2>&1 > /tmp/intelgpu_setup.log apt-get install -y intel-opencl-icd 2>&1 >> /tmp/intelgpu_setup.log - echo "Enabling Intel GPU support inside this container." + echo "Enabling Intel GPU support inside this container." fi diff --git a/web/actions/plotman.py b/web/actions/plotman.py index 56fbbd45..b7df4ef2 100644 --- a/web/actions/plotman.py +++ b/web/actions/plotman.py @@ -283,7 +283,7 @@ def load_replotting_settings(): settings = json.loads(fp.read()) for blockchain in pl.PLOTTABLE_BLOCKCHAINS: if not blockchain in settings: # Default is to have replotting disabled. - settings[blockchain] = { "enabled": False, "delete_solo": False, "free_ksize": 32, } + settings[blockchain] = { "enabled": False, "delete_solo": False, "delete_uncompressed": False, "free_ksize": 32, } return settings def save_replotting_settings(form): @@ -296,6 +296,7 @@ def save_replotting_settings(form): replotting_enabled.append(blockchain.capitalize()) settings[blockchain]['free_ksize'] = int(form.get('replotting_{0}_free_ksize'.format(blockchain))) settings[blockchain]['delete_solo'] = form.get('replotting_{0}_delete_solo'.format(blockchain)) == 'true' + settings[blockchain]['delete_uncompressed'] = form.get('replotting_{0}_delete_uncompressed'.format(blockchain)) == 'true' settings[blockchain]['delete_before'] = form.get('replotting_{0}_delete_before'.format(blockchain)) == 'true' settings[blockchain]['delete_before_date'] = form.get('replotting_{0}_delete_before_date'.format(blockchain)) settings[blockchain]['delete_by_ksize'] = form.get('replotting_{0}_delete_by_ksize'.format(blockchain)) == 'true' diff --git a/web/actions/warnings.py b/web/actions/warnings.py index bf178598..7191c34b 100644 --- a/web/actions/warnings.py +++ b/web/actions/warnings.py @@ -84,7 +84,7 @@ def check_warnings(args): def get_plot_attrs(filename): dir,file = os.path.split(filename) - match = re.match("plot(?:-mmx)?-k(\d+)(?:-c\d)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", file) + match = re.match("plot(?:-mmx)?-k(\d+)(?:-c\d+)?-(\d+)-(\d+)-(\d+)-(\d+)-(\d+)-(\w+).plot", file) if match: short_plot_id = match.group(7)[:16] created_at = "{0}-{1}-{2} {3}:{4}".format( match.group(2),match.group(3),match.group(4),match.group(5),match.group(6)) diff --git a/web/models/chia.py b/web/models/chia.py index e25e6e31..c67fbdd6 100644 --- a/web/models/chia.py +++ b/web/models/chia.py @@ -635,6 +635,8 @@ def extract_status(self, blockchain, details, worker_status): return "Synced" if 'No' == status: # MMX return "Syncing" + if 'Peer(s) Stalled' in status: # Staicoin + return "Peer(s) Stalled" return status return "Error" return "Offline" diff --git a/web/templates/farming/plots.html b/web/templates/farming/plots.html index 007c6a35..e7ac44aa 100644 --- a/web/templates/farming/plots.html +++ b/web/templates/farming/plots.html @@ -112,13 +112,20 @@ {% endfor %} +