gupax/CHANGELOG.md
2023-01-23 17:05:34 -05:00

232 lines
8.9 KiB
Markdown

# v1.1.1
## Updates
* **Nodes:** Added 5 nodes to [Community Monero Nodes](https://github.com/hinto-janaiyo/gupax#community-monero-nodes) list:
- `nodes.hashvault.pro`
- `node.moneroworld.com`
- `uwillrunanodesoon.moneroworld.com`
- `176.9.0.187` [(Monero seed node)](https://github.com/monero-project/monero/blob/release-v0.18/src/p2p/net_node.inl#L708)
- `51.79.173.165` [(Monero seed node)](https://github.com/monero-project/monero/blob/release-v0.18/src/p2p/net_node.inl#L715)
* **P2Pool:** Added warning in `[P2Pool Simple]` tab about using remote nodes
## Fixes
* **UI:** Top/Bottom bars are smaller, fixes some UI overflowing or being cramped
* **Nodes:** Node ping colors are more strict (<200ms = GREEN, 200ms-499ms = YELLOW, >500ms = RED)
## Bundled Versions
* [`P2Pool v3.0`](https://github.com/SChernykh/p2pool/releases/tag/v3.0)
* [`XMRig v6.18.1`](https://github.com/xmrig/xmrig/releases/tag/v6.18.1)
---
# v1.1.0
## Updates
* **Status:** [Added P2Pool submenu](https://github.com/hinto-janaiyo/gupax#Status)
- Total payouts across all time
- Total XMR mined across all time
- Formatted log lines of ALL payouts (date, amount, block) with sorting options
- Automatic/Manual calculator for average share/block time
- P2Pool/Monero stats for difficulty/hashrate/dominance
* **Status:** Added more process stats
- P2Pool
- Current Monero node IP/RPC/ZMQ
- Current Sidechain
- Current Monero address
- XMRig
- Current Pool IP
- Current thread usage
* **Key Shortcut:** Added two shortcuts
- `C | Left Submenu`
- `V | Left Submenu`
* **Command Line:** Added two flags
- `--payouts Print the P2Pool payout log, payout count, and total XMR mined`
- `--reset-payouts Reset the permanent P2Pool stats that appear in the [Status] tab`
## Fixes
* **macOS:** Added warning (and solution) if `Gupax/P2Pool/XMRig` were quarantined by [`Gatekeeper`](https://support.apple.com/en-us/HT202491)
* **P2Pool/XMRig:** Added a red `Start` button on errors (bad PATH, invalid file, etc) and a solution in the tooltip
* **P2Pool/XMRig:** Fixed processes sometimes not starting after entering a custom PATH
* **P2Pool:** Fixed custom node selection sometimes using old values after save
* Miscellaneous UI changes and fixes
## Bundled Versions
* [`P2Pool v2.7`](https://github.com/SChernykh/p2pool/releases/tag/v2.7)
* [`XMRig v6.18.1`](https://github.com/xmrig/xmrig/releases/tag/v6.18.1)
---
# v1.0.0
[Download here](https://github.com/hinto-janaiyo/gupax/releases/latest) or at https://gupax.io.
[Watch a 3-minute setup guide here.](https://github.com/hinto-janaiyo/gupax#How-To)
## Changes
* Optimized PTY output handling (less memory usage)
* Added `Select random node`, `<- Last`, `Next ->` buttons in `P2Pool Simple`
* Added `Debug Info` screen (`D` key on `About` tab)
* Added Linux distro build profile
* Added `21` unit tests
* Misc fixes/optimizations
## Bundled Versions
* [`P2Pool v2.6`](https://github.com/SChernykh/p2pool/releases/tag/v2.6)
* [`XMRig v6.18.1`](https://github.com/xmrig/xmrig/releases/tag/v6.18.1)
---
# v0.9.0
## Beta Release
* Connected `[Start/Stop/Restart]` buttons to actual processes:
- Current state (settings that may or may not be saved) are passed to the process when (re)starting
- Uptime & Exit status display when process is stopped
- Added colors for process state:
```
GREEN | Process is online and healthy
YELLOW | Process is in the middle of (re)starting/stopping
RED | Process is offline, and failed when exiting
GRAY | Process is offline
```
* Added keyboard shortcuts:
```
*--------------------------------------*
| Key shortcuts |
|--------------------------------------|
| F11 | Fullscreen |
| Escape | Quit screen |
| Left/Right | Switch Tabs |
| Up | Start/Restart |
| Down | Stop |
| S | Save |
| R | Reset |
*--------------------------------------*
```
* Added `PTY` (actual terminals) for P2Pool/XMRig:
- Scrollable logs up to 500k bytes (6000~ lines) before refresh
- All STDOUT/STDERR relayed to GUI (buffered, lazily read)
- `Advanced` tabs have input (STDIN) relayed to process (buffered, 1~sec delay)
* Added `sudo` screen for XMRig (macOS/Linux):
- Tests password for validity
- Starts XMRig with `sudo` for MSR mod & hugepages
- Wipes password memory with zeros after usage
* Added `Status` tab:
- Refreshes all stats once per second
- Gupax/System stats
- P2Pool stats via API file
- XMRig stats via HTTP API
* Added `Simple` XMRig tab:
- Console
- Thread slider
- Pause on active slider (Windows/macOS only)
* Added `Advanced` XMRig tab:
- Includes all simple features
- STDIN input
- Manual pool database, select/add/edit/delete a custom `Name/IP/Port/RigID` (max 1000 pools), saved at:
- Windows: `C:\Users\USER\AppData\Roaming\Gupax\pool.toml`
- macOS: `/Users/USER/Library/Application Support/Gupax/pool.toml`
- Linux: `/home/USER/.local/share/gupax/pool.toml`
- Overriding command arguments
- Manual Monero address option
- HTTP API IP/Port option
- TLS option
- Keepalive option
* Added `Simple` Gupax tab:
- Package updater
- `Auto-update` setting
- `Update-via-Tor` setting
- `Ask-before-quit` setting
- `Save-before-quit` setting
- `Auto-P2Pool` setting (starts P2Pool on Gupax startup)
- `Auto-XMRig` setting (starts XMRig on Gupax startup)
* Added `Advanced` Gupax tab:
- Includes all simple features
- P2Pool binary path selector
- XMRig binary path selector
- Gupax window width/height adjuster
- Startup Tab selector
* Added plowsof to community nodes:
- Plowsof1: `IP: node.monerodevs.org, RPC: 18089, ZMQ: 18084`
- Plowsof2: `IP: node2.monerodevs.org, RPC: 18089, ZMQ: 18084`
* Default resolution change `1280x720, 16:9` -> `1280x960, 4:3`
* Added fade-in/out of black when resizing resolution
* Added more internal documentation (`src/README.md`)
* Added many, many `info` & `debug` logs (accessible via env variable `RUST_LOG`)
* Bunch of fixes, optimizations, etc.
---
## v0.5.0
## Prototype Release
* Added `Simple` P2Pool tab:
- Monero address input with valid address check (base58 regex)
- [Community Monero node selector](https://github.com/hinto-janaiyo/gupax/tree/main/README.md#community-monero-nodes)
- Community node ping button (asynchronous `JSON-RPC` calls to all nodes)
- Color coded list after ping:
```
<300ms = GREEN
<1000ms = YELLOW
<5000ms = RED
>5000ms = BLACK
```
- `Auto-select` - Pick the fastest node after ping automatically
- `Auto-ping` - Automatically ping nodes on Gupax startup
* Added `Advanced` P2Pool tab:
- Manual node database, select/add/edit/delete a custom `Name/IP/RPC/ZMQ` (max 1000 nodes), saved at:
- Windows: `C:\Users\USER\AppData\Roaming\Gupax\node.toml`
- macOS: `/Users/USER/Library/Application Support/Gupax/node.toml`
- Linux: `/home/USER/.local/share/gupax/node.toml`
- Overriding command arguments to P2Pool
- P2Pool main/mini toggle
- Out/In Peers slider
- Log level slider
* Added command arguments:
```
--help Print this help message
--version Print version and build info
--state Print Gupax state
--nodes Print the manual node list
--no-startup Disable all auto-startup settings for this instance
--reset-state Reset all Gupax state (your settings)
--reset-nodes Reset the manual node list in the [P2Pool] tab
--reset-all Reset both the state and the manual node list
--ferris Print an extremely cute crab
```
* Added fullscreen GUI error handler (Error message + UI buttons for response, Yes/No, Quit, etc)
* Added a native `File Explorer/Finder/GTK` file selector for picking P2Pool/XMRig binary path in `Gupax` tab
* Added detailed console log levels `RUST_LOG=(trace|debug|info|warn|error) ./gupax`
* [Added new PGP key](https://github.com/hinto-janaiyo/gupax/blob/main/pgp/hinto-janaiyo.asc)
* Created website (HTML/CSS only, no JavaScript): https://gupax.io
---
## v0.1.0
## Prototype Release
* Added package updater (by default, via Tor using [`Arti`](https://blog.torproject.org/arti_100_released/))
* Added [custom icons per OS](https://github.com/hinto-janaiyo/gupax/tree/main/images/icons) (File Explorer, Taskbar, Finder, App header, etc)
* Added Monero node [`JSON-RPC ping`](https://github.com/hinto-janaiyo/gupax/blob/main/src/node.rs) system, not yet in GUI
* Added `F11` fullscreen toggle
* Implemented `Ask before quit`
* Implemented `Auto-save`
* Binaries for all platforms (Windows, macOS, Linux)
* Added state file to save settings:
- Windows: `C:\Users\USER\AppData\Roaming\Gupax\gupax.toml`
- macOS: `/Users/USER/Library/Application Support/Gupax/gupax.toml`
- Linux: `/home/USER/.local/share/gupax/gupax.toml`
---
## v0.0.1
## Prototype Release
* Functional (slightly buggy) GUI external
* Elements have state (buttons, sliders, etc)
* No internals, no connections, no processes
* Only binaries for x86_64 Windows/Linux for now