mirror of
https://github.com/Cyrix126/gupaxx.git
synced 2024-11-16 15:27:46 +00:00
feat: Release 1.1.0
This commit is contained in:
parent
228d1e8f8e
commit
9434cce1fe
13 changed files with 52 additions and 14 deletions
32
CHANGELOG.md
32
CHANGELOG.md
|
@ -1,3 +1,35 @@
|
|||
# v1.1.0
|
||||
Stable release, bugfixes and new features.
|
||||
|
||||
## Changes
|
||||
### UI
|
||||
- Update xmrig and p2pool only if bundle button is checked.
|
||||
- Default value for bundle button depends of bundle or standalone version.
|
||||
- Ask user to restart Gupaxx after updating.
|
||||
- Prevent user to update twice without restart.
|
||||
### Internal
|
||||
- Bump deps
|
||||
- Update CI to produce different Gupaxx binary for standalone and bundle version.
|
||||
- Update tools release to include different default value depending of standalone and bundle version.
|
||||
- Use bundled XMRig and P2Pool of Gupaxx instead of upstream version.
|
||||
- Update test
|
||||
### Doc
|
||||
- Update DIFFERENCES and ARCHITECTURE to reflect updates differences.
|
||||
## Fixes
|
||||
- fix temporary directories of updates not deleted introduced in fork
|
||||
- fix https://github.com/Cyrix126/gupaxx/issues/3
|
||||
- fix https://github.com/Cyrix126/gupaxx/issues/4
|
||||
- fix https://github.com/Cyrix126/gupaxx/issues/5
|
||||
|
||||
## Notes
|
||||
### Do not use built in updates to upgrade to this version
|
||||
This update bump the 1.x.0 number, which would mean breaking changes. However, it is only because updating previously from Gupaxx (in =<1.0.0) without manually downloading from github release would upgrade P2Pool and XMRig from upstream, which is a behaviour that has been modified in this release.
|
||||
No configuration file change is needed, just update from github for this release.
|
||||
|
||||
## Bundled Versions
|
||||
* [`P2Pool v3.10`](https://github.com/SChernykh/p2pool/releases/tag/v3.10)
|
||||
* [`XMRig v6.21.1`](https://github.com/xmrig/xmrig/releases/tag/v6.21.1)
|
||||
|
||||
# v1.0.0
|
||||
Stable release
|
||||
|
||||
|
|
2
Cargo.lock
generated
2
Cargo.lock
generated
|
@ -2125,7 +2125,7 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "gupaxx"
|
||||
version = "1.0.0"
|
||||
version = "1.1.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"benri",
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
cargo-features = ["profile-rustflags"]
|
||||
[package]
|
||||
name = "gupaxx"
|
||||
version = "1.0.0"
|
||||
version = "1.1.0"
|
||||
authors = ["cyrix126 <gupaxx@baermail.fr>"]
|
||||
description = "Fork of Gupax integrating the XMRvsBeast Raffle "
|
||||
documentation = "https://github.com/cyrix126/gupaxx"
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
- [x] adapt README for XvB
|
||||
- [x] beta release
|
||||
- [x] stable release
|
||||
- [ ] video tutorial to set up XvB Tab
|
||||
- [x] video tutorial to set up XvB Tab
|
||||
- [x] adapt doc for new code
|
||||
- [x] cargo package metadata
|
||||
- [x] pgp signatures
|
||||
|
|
|
@ -60,6 +60,7 @@ pub mod resize;
|
|||
// The state of the outer main [App].
|
||||
// See the [State] struct in [state.rs] for the
|
||||
// actual inner state of the tab settings.
|
||||
#[allow(dead_code)]
|
||||
pub struct App {
|
||||
// Misc state
|
||||
pub tab: Tab, // What tab are we on?
|
||||
|
|
|
@ -67,7 +67,7 @@ const REMOTE_NODE_MAX_CHARS: usize = {
|
|||
assert!(len != 0);
|
||||
len
|
||||
};
|
||||
|
||||
#[allow(dead_code)]
|
||||
pub struct RemoteNode {
|
||||
pub ip: &'static str,
|
||||
pub location: &'static str,
|
||||
|
@ -278,6 +278,7 @@ impl NodeData {
|
|||
//
|
||||
// This struct leaves out most fields on purpose,
|
||||
// we only need a few to verify the node is ok.
|
||||
#[allow(dead_code)] // allow dead code because Deserialize doesn't use all the fields in this program
|
||||
#[derive(Debug, serde::Deserialize)]
|
||||
pub struct GetInfo<'a> {
|
||||
pub id: &'a str,
|
||||
|
|
|
@ -530,13 +530,11 @@ impl Update {
|
|||
path.display()
|
||||
);
|
||||
// if bundled, create directory for p2pool and xmrig if not present
|
||||
if lock!(og).gupax.bundled {
|
||||
if name == P2POOL_BINARY || name == XMRIG_BINARY {
|
||||
std::fs::create_dir_all(
|
||||
path.parent()
|
||||
.ok_or_else(|| anyhow!(format!("{} path failed", name)))?,
|
||||
)?;
|
||||
}
|
||||
if lock!(og).gupax.bundled && (name == P2POOL_BINARY || name == XMRIG_BINARY) {
|
||||
std::fs::create_dir_all(
|
||||
path.parent()
|
||||
.ok_or_else(|| anyhow!(format!("{} path failed", name)))?,
|
||||
)?;
|
||||
}
|
||||
// Move downloaded path into old path
|
||||
std::fs::rename(entry.path(), path)?;
|
||||
|
|
|
@ -125,6 +125,7 @@ impl Default for Sys {
|
|||
//---------------------------------------------------------------------------------------------------- [Process] Struct
|
||||
// This holds all the state of a (child) process.
|
||||
// The main GUI thread will use this to display console text, online state, etc.
|
||||
#[allow(dead_code)]
|
||||
#[derive(Debug)]
|
||||
pub struct Process {
|
||||
pub name: ProcessName, // P2Pool or XMRig?
|
||||
|
|
|
@ -666,6 +666,7 @@ impl ImgXmrig {
|
|||
}
|
||||
|
||||
//---------------------------------------------------------------------------------------------------- Public XMRig API
|
||||
#[allow(dead_code)]
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct PubXmrigApi {
|
||||
pub output: String,
|
||||
|
|
|
@ -361,10 +361,11 @@ impl Helper {
|
|||
}
|
||||
}
|
||||
//---------------------------------------------------------------------------------------------------- Public XvB API
|
||||
|
||||
#[derive(Debug, Clone, Default)]
|
||||
pub struct PubXvbApi {
|
||||
pub output: String,
|
||||
pub uptime: u64,
|
||||
pub _uptime: u64,
|
||||
pub xvb_sent_last_hour_samples: SamplesAverageHour,
|
||||
pub p2pool_sent_last_hour_samples: SamplesAverageHour,
|
||||
pub stats_pub: XvbPubStats,
|
||||
|
|
|
@ -17,6 +17,7 @@ use crate::{
|
|||
|
||||
use super::{rounds::XvbRound, PubXvbApi};
|
||||
|
||||
#[allow(dead_code)] // because deserialize doesn't use all the fields
|
||||
#[derive(Debug, Clone, Default, Deserialize)]
|
||||
pub struct XvbPubStats {
|
||||
pub time_remain: u32, // remaining time of round in minutes
|
||||
|
|
|
@ -87,12 +87,13 @@ fn main() {
|
|||
|
||||
// Run Gupax.
|
||||
info!("/*************************************/ Init ... OK /*************************************/");
|
||||
let _ = eframe::run_native(
|
||||
eframe::run_native(
|
||||
&app.name_version.clone(),
|
||||
options,
|
||||
Box::new(move |cc| {
|
||||
egui_extras::install_image_loaders(&cc.egui_ctx);
|
||||
Box::new(App::cc(cc, resolution, app))
|
||||
}),
|
||||
);
|
||||
)
|
||||
.unwrap();
|
||||
}
|
||||
|
|
|
@ -35,6 +35,7 @@ use std::{
|
|||
};
|
||||
use zeroize::Zeroize;
|
||||
|
||||
#[allow(dead_code)] // for dummy value windows
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct SudoState {
|
||||
pub windows: bool, // If this bool is set, this struct is just a dummy so I don't have to change my type signatures :)
|
||||
|
|
Loading…
Reference in a new issue