Commit Graph

141 Commits

Author SHA1 Message Date
Arvid Norberg
95e5b97557
Use bls from chia rs (#16715)
* replace blspy imports with chia_rs imports for BLS types

* remove blspy-stubs, since we're dropping the blspy dependency. chia_rs has type stubs already
2023-11-07 09:06:52 -08:00
Arvid Norberg
7b0bea4043
various typing fixes (#15899)
* add blspy-stubs to improve mypy

* various typing fixes

* avoid cast

* use ValueError exception instead of assert when aborting picking a wallet key
2023-08-17 19:10:40 -05:00
d1m1trus
6dd3a4d740
Fixed python3-venv into install.sh (#15920)
* Fix python3.11-venv into install.sh

Fix Installation aborted due to not being able to install an older version of python3.10-venv

* Fixed python3.11-venv into install.sh rev2

Fixed Installation aborted due to not being able to install an older version of python3.10-venv

* Fixed python3.11-venv into install.sh rev3

Fixed Installation aborted due to not being able to install an older version of python3.10-venv
2023-08-03 09:24:34 -05:00
Kyle Altendorf
74b02fa44e
test installed code, not source (#15532)
* explore testing installed code, not source

* non-editable install

* hmm

* yup

* bash it up

* test-single.yml: defaults: run: shell: bash

* try removing windows specific steps

* env.GITHUB_WORKSPACE

* Update test-single.yml

* Update test-single.yml

* Update test-single.yml

* also Install.ps1

* ,

* more

* Update test-single.yml

* Update .coveragerc

* whitespace
2023-07-24 20:02:00 -05:00
Kyle Altendorf
42a6d1afa6
remove support for Python 3.7 (#14611)
* remove support for Python 3.7

* python_requires=">=3.8, <4"

* 3.8.1+

* catchup

* remove todos handled in https://github.com/Chia-Network/chia-blockchain/pull/15755
2023-07-14 12:49:58 -05:00
Gene Hoffman
b0072fdce0
Move to Discord in docs and install scripts (#15193) 2023-05-04 13:18:33 -05:00
Kyle Altendorf
523a5d4cf5
Add support for Python 3.11 (#11407)
* Add Python 3.11 to CI

* 3.11 in the install scripts

* ${{ format('{0}.0-alpha - {0}.X', matrix.python) }}

* bump chiavdf and chiabip158 for releases with 3.11 wheels

* also bump blspy and clvm-tools-rs

* drop the extra .X for the python setup version

* chia_rs==0.1.13

* Update install.sh

* pyinstaller==5.5

* less mutable defaults

* memory_profiler

* assert sqlite3.threadsafety >= 1

* create tasks for stopping services

(cherry picked from commit 3384714f2e3e0bdc8c3d3741027e9e4fb69a6002)

* psutil==5.9.4

* drop memory_profiler transitive dep since it now supports 3.11

* drop redundant pre-release python getting incantation

* watchdog==2.2.0

* black for py311
2023-01-27 17:16:03 -06:00
Kyle Altendorf
419342ed22
reorder gui install command instructions in install.sh/ps1 (#14180)
* reorder gui install command instructions in install.sh

* reorder gui install command instructions in Install.ps1
2022-12-19 10:55:07 -06:00
dustinface
b916275540
tools: Implement and test tools/legacy_keyring.py (#13947)
* Add `-l` option to `install.sh` and use it for linux tests on CI

* Implement and test `tools/legacy_keyring.py`

* Update install.sh

Co-authored-by: Jeff <paninaro@gmail.com>

Co-authored-by: Jeff <paninaro@gmail.com>
2022-12-03 23:31:51 -06:00
Amine Khaldi
d73e979720
Deprecate chia plotters install command (#13584) (#13643)
* Deprecated `chia plotters install` command

* Fixed lint errors

* Made it able to recognize plotter executables in venv

* Added install-plotter.sh

* Removed strings for debug

* Added install-plotter.ps1

* Fixed an issue where madmax plotter under venv dir was not recognized by 'chia plotters' command

* Added exec permission to install-plotter.sh

* Fixed issues found in install-plotter.sh

* Fixed lint errors

* Added `-p` option to install.sh/install.ps1

* Fixed lint errors

* Added nice deprecated warning

* Fixed a lint error

* Slightly improved branching

* Made log messages look nice

* Fixed an issue where install.sh/ps1 -p failed if virtual env is not acivated

Co-authored-by: Izumi Hoshino <admin@chiamine.jp>
2022-10-17 14:29:02 -05:00
Izumi Hoshino
9fa965bab2
Minimized a chance where sudo prompts users for password (#13219)
* Minimized a chance where `sudo xxx install ...` is executed and prompts users for password

* Fixed install issue on Ubuntu/Debian

* (Retry) Fixed install issue on Ubuntu/Debian

* Fixed an issue where `install.sh` exits unexpectedly on Ubuntu/Debian

* Added `set +e` and `set -e` to find_xxx functions

* Improve code structure

* Fixed an issue where `install.sh` fails if Python < 3.7 is already installed

* Added `-s` option and overwhaul entire construction

* `-d` and `-s` can be both specified at once
2022-10-04 11:19:15 -05:00
Evan Graham
c3272fa84c
Write python version error to stderr (#11239)
Co-authored-by: wjblanke <wjb98672@gmail.com>
2022-05-14 02:04:18 -07:00
Kyle Altendorf
619c539e2a
Corect install.sh usage short options list (#11387) 2022-05-02 13:01:29 -07:00
Kyle Altendorf
9dc4e15905
Only Ubuntu 18 needs distutils (#11308)
Co-authored-by: wjblanke <wjb98672@gmail.com>
2022-04-28 09:15:31 -07:00
Kyle Altendorf
28d9dbfd3a
More general Ubuntu references in install.sh (#11325)
* More general Ubuntu references in install.sh

* oops
2022-04-27 11:37:21 -07:00
Kyle Altendorf
7892148bdc
Support for Python 3.10 (#9930)
* Support for Python 3.10

* Update install.sh to block Python 3.11

* websockets to 10.1

* Update workflows for Python 3.10

* single quote 3.10

* Enable fedora:35 (py3.10) installer script testing

* rebuild workflows

* fixup test-install-scripts.yml

* add ignore for distutils deprecation in tests for now

* asyncio.get_event_loop().run_until_complete() -> asyncio.run()

* aiohttp==3.8.1 for python 3.10 support

* use ssl.Purpose.CLIENT_AUTH for ssl_context_for_server()

* rebuild workflows

* use ssl_context_for_client() in BlockTools.get_daemon_ssl_context()

* create a client context for the RpcServer to connect to the daemon

* go back to asyncio.get_event_loop().run_until_complete() for now to recover 3.7

* ignore:There is no current event loop:DeprecationWarning

* Ms.plot load perf2 (#10978)

* 2.7 seconds -> 0.45 seconds

* Merge

* Work on create_plots refactor

* Try to fix tests

* Try to fix tests

* Use new functions

* Fix block_tools by adding dir

* Extra argument

* Try to fix cyclic import

* isort

* Drop warning

* Some cleanups around `exclude_final_dir` and directory adding

* Cleanup `min_mainnet_k_size` checks

* Drop unrelated changes

* Fixes after rebase

* Fix cyclic import

* Update tests/block_tools.py

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>

* Update tests/block_tools.py

Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>

Co-authored-by: xdustinface <xdustinfacex@gmail.com>
Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>

* remove 3.10 avoidance step from debian:bookworm installer testing

* add 3.10 to wheel availability check workflow

* add 3.10 to Install.ps1 supported Python versions for Windows

* add jammy jellyfish to the install script test matrix

* correct ubuntu:jammy job name

* add 22.04 with Python 3.10 to install.sh

Co-authored-by: Gene Hoffman <hoffmang@hoffmang.com>
Co-authored-by: Yostra <straya@chia.net>
Co-authored-by: Mariano Sorgente <3069354+mariano54@users.noreply.github.com>
Co-authored-by: xdustinface <xdustinfacex@gmail.com>
Co-authored-by: dustinface <35775977+xdustinface@users.noreply.github.com>
2022-04-26 12:37:01 -07:00
Kyle Altendorf
bcaa5e6088
simplify install.sh ubuntu version tracking (#11288)
* simplify install.sh ubuntu version tracking

* quotes for bash

* undo some unintended changes
2022-04-25 11:08:26 -07:00
Gene Hoffman
131bd4e2f3
install.sh is not upgrading OpenSSL on MacOS (#11003)
* MacOS isn't updating OpenSSL in install.sh

* Exit if no brew on MacOS

* Code the if tree like a pro instead.

Co-authored-by: Kyle Altendorf <sda@fstab.net>

Co-authored-by: Kyle Altendorf <sda@fstab.net>
2022-04-01 21:22:56 -07:00
Gene Hoffman
e3e814b9ec
Compile python 3.9.11 which is aware of the openssl issue (#11001) 2022-04-01 21:06:32 -07:00
Gene Hoffman
3e2b979751
install/upgrade openssl on Arch Linux also (#10999) 2022-04-01 19:28:20 -07:00
Gene Hoffman
14627d8a6e
apt show not needed (#10997) 2022-04-01 18:01:30 -07:00
Gene Hoffman
58abb35114
Check for vulnerable openssl (#10988)
* Check for vulnerable openssl

* Update OpenSSL on MacOS

* First attempt - openssl Ubuntu 18.04 and 20.04

* place local/bin ahead in PATH

* specify install openssl

* correct path

* run ldconfig

* stop building and check for patched openssl

* spell sudo right by removing it

* Remove openssl building - 1st attempt RHs

* Test Windows OpenSSL version HT @AmineKhaldi
2022-04-01 13:20:29 -07:00
William Allen
b1acb5597b
Adding check for python3.9 alongside python3.10 on Arch (#10363)
* Adding check for python3.9 alongside python3.10 on Arch

* Adjusting install.sh instructions for Arch

* Disabling prescribed python install for Arch

* Setting Arch install script to exit 0 to pass tests

* Adding workflow step for functional Arch install testing

* Adding noconfirm to pacman install command

* Relocating Arch support message for install.sh
2022-03-22 16:22:17 -07:00
Kyle Altendorf
161a838b6a
more set -o errexit (#10468)
* more set -o errexit -o pipefail

* no pipefail, too fancy for dash at least...
2022-03-17 09:13:27 -07:00
Gene Hoffman
f6af022728
Improve SQLite version string (#10387) 2022-02-23 00:39:31 -08:00
Kyle Altendorf
bd845f5d3a
Test CLI installer on Rocky (#10134)
* Test CLI installer on Rocky

* Add Rocky support to install.sh

* Update test-install-scripts.yml

* oops

* also sudo for rocky install.sh testing

* fix indentation

* oops
2022-02-14 22:24:19 -08:00
Kyle Altendorf
fc95c638a3
Update to handle the NodeJS 16 dependency (#9921)
* preliminary testing of in-directory n on ubuntu always

* Use more n chiaminejp (#9971)

* Added n as a local npm dependency

* Fixed an issue where `install.sh` always tried to run `sudo apt install bc -y` even if `bc` is installed already

* Added validations and useful outputs for `start-gui.sh`

* Fixed lint error and use shell functions for readability

* Replace tags with spaces

* Skip installing python39 on RH like OS if it is already installed

* Fixed an issue where start-gui.sh failed silently if venv is not activated

* Suppressed message from pacman

* Support CentOS7

* Fixed typo

* Reduced unnecessary install messages

* Fixed end of file

* Added npm_global/__init__.py to pass CI

* Fixed lint errors

* Install python/sqlite from source on AMZN2. Clear old venv when changing python version on install

* Suppress unnecessary command outputs

* Suppress outputs

* Added centos7/8 to install test

* A minor fix

* Fixed yaml syntax error

* Fixed an issue where test-install-scripts failed in CentOS

Co-authored-by: ChiaMineJP <admin@chiamine.jp>
2022-02-11 18:30:19 -08:00
Kyle Altendorf
405b7238e0
Revert "pip==21.3.1 for now (#10035)" (#10055)
This reverts commit fedae0cc97.
2022-02-01 10:26:08 -08:00
Kyle Altendorf
fedae0cc97
pip==21.3.1 for now (#10035)
* pip==21.3.1 for now

* More pip pinning

* Pip

* Pip
2022-01-30 16:05:34 -05:00
Kyle Altendorf
32a500a88e
Test installers in Dockers (#9896)
* Avoid issue with Ubuntu 21.10+ setuptools>=06

https://github.com/pypa/setuptools/issues/2956
https://gist.github.com/altendky/b852296ac520b343890c55eabc90c880

```
      File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 290, in set_undefined_options
        setattr(self, dst_option, getattr(src_cmd_obj, src_option))
      File "/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py", line 103, in __getattr__
        raise AttributeError(attr)
    AttributeError: install_layout
```

* corrections

* test installers in various Linux Dockers

* prep docker images with basic tools

* --no-confirm for pacman

* debug

* debug

* debug

* stop installing git

* Revert "stop installing git"

This reverts commit 4b19f1601d.

* checkout after installing git

* pacman wants --noconfirm

* Revert "debug"

This reverts commit e0a2aed041.

* Revert "debug"

This reverts commit 3833da281a.

* Revert "debug"

This reverts commit 705a3c5d6b.

* add bookworm

* add install.sh -a for pacman --noconfirm automated installs

* fix

* fix

* revert install_layout workaround

* Remove =3.9* from debian python3-venv installation

Already discussed this with @wallentx related to the addition in https://github.com/Chia-Network/chia-blockchain/pull/9633/files#diff-043df5bdbf6639d7a77e1d44c5226fd7371e5259a1e4df3a0dd5d64c30dca44fR85.

* add fedora 33 and 34

* nicer naming

* fedora not fedor

* add ubuntu:bionic

* also chia --help

* add amazon

* Amazon wants sudo

* .

* use git-core ppa for git in bionic

* less sudo

* oops
2022-01-23 21:46:16 -08:00
William Allen
1efdcd4551
Modifying install.sh to account for python3.10.x (#9633) 2021-12-21 10:14:16 -08:00
Kyle Altendorf
fbc6c738c8
Install .[dev] in CI tests (#9251)
* Install .[dev] in CI tests

* only install pytest-monitor on linux, as before

* add -d to install.sh for dev extras

* handle invalid options to install.sh

* rebuild workflows
2021-11-23 12:45:23 -08:00
Chris Marslender
1abfd4d3f4
Update channel to direct users to in install.sh (#8517) 2021-09-17 13:59:09 -07:00
Gene Hoffman
f18b217e5e
Search for python newest to oldest (#8244)
See https://github.com/Chia-Network/chia-blockchain/issues/8135
2021-08-31 10:22:27 -07:00
Gene Hoffman
dc781169b9
Update all platforms to miniupnpc 2.2.2 and Windows to Python 3.9 (#6703)
* Update all platforms to miniupnpc 2.2.2 and Windows to Python 3.9

* Actually use python 3.9 in Windows
2021-06-14 08:21:12 -07:00
dependabot[bot]
15f8724cae
Bump github/super-linter from 3.15.5 to 4.0.2 (#6209)
* Bump github/super-linter from 3.15.5 to 4.0.2

Bumps [github/super-linter](https://github.com/github/super-linter) from 3.15.5 to 4.0.2.
- [Release notes](https://github.com/github/super-linter/releases)
- [Commits](https://github.com/github/super-linter/compare/v3.15.5...v4.0.2)

Signed-off-by: dependabot[bot] <support@github.com>

* install.sh line 96:
if [ x"$INSTALL_PYTHON_VERSION" = x ]; then
     ^------------------------^ SC2268: Avoid x-prefix in comparisons as 
it no longer serves a purpose.

Did you mean: 
if [ "$INSTALL_PYTHON_VERSION" = "" ]; then

For more information:
  https://www.shellcheck.net/wiki/SC2268

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gene Hoffman <hoffmang@hoffmang.com>
2021-05-29 12:47:23 -07:00
Xinyue Lu
5f4b56757a
Fix install.sh for Debian (#4152) (#4867) 2021-05-14 09:42:30 -07:00
Nikolaj Kuntner
2faab1ea83
Improve style consistency in root directory docs files (#4493)
* Improve style consistency

* black python required blank

Co-authored-by: Nikolaj Kuntner <>
2021-05-12 13:12:30 -07:00
Dave Johnson
a2401ccfd4
Allow install as root on minimal attack surface OSes (#2871)
pip is not accessible to root on many limited core OS distros. Launching explicitly via python resolves for all
2021-04-27 01:24:24 -07:00
Gene Hoffman
8d7a667d7e Correctly get to Ubuntu 21.04 steps 2021-04-22 15:11:50 -07:00
Gene Hoffman
99c4ac3f09 Ubuntu 21.04 is out tomorrow 2021-04-20 16:29:30 -07:00
xorinox
8fb9cdaceb
Update install.sh (#1310)
Add testing for 'yum' && fedora-release. In a later step one could be testing 'dnf' and fedora separately.
2021-03-25 18:27:26 -07:00
Gene Hoffman
d77bc07ac4 move from download.chia to pypi.chia.net/simple/ 2021-03-08 15:32:00 -08:00
Gene Hoffman
8e40eb6ecf limit submodule update to mozilla-ca 2021-03-08 13:02:16 -08:00
Jesús Espino
e4322ec56f Adding Arch support for the install script 2021-03-08 07:10:17 -08:00
Yostra
da9b9ccf6f
Mozilla ca (#1155)
* include moz

* add mozzila submodule

* install script

* use file path

* update commit

* typo
2021-03-04 14:25:35 -08:00
Gene Hoffman
5c55875c43 Add URL 2021-02-20 18:57:25 -08:00
Gene Hoffman
628491fe3b Error out on 32 bit Pis 2021-02-20 18:57:25 -08:00
xorinox
5682f939f7
Update install.sh - some Ubuntu 20.04 LTS minimal need "bc" installed (#942) 2021-02-17 22:37:10 -08:00
Gene Hoffman
24964992ff Can't get the final binary arm64 whl so reverting and adding to wiki (#784) 2021-02-04 01:27:59 -08:00