8.6 KiB
8.6 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Deprecated features that will be removed in the next major version (12.X.X).
--local
will be removed fromsporestack server list
.
[Unreleased]
- Nothing yet.
[11.1.0 - 2024-03-16]
Added
Library
ssh_key
toclient.Client()
and toclient.Token()
. This acts as a default SSH key when launching servers this way.
CLI
- Support for automatic per-token SSH keys (can be overridden with
--ssh-key-file
still.) To generate, run:ssh-keygen -C "" -t ed25519 -f ~/.sporestack/sshkey/{token}/id_ed25519
- This means that you don't have to pass
--ssh-key-file
if you are using a token that has a locally associated SSH key. - When launching a server with
sporestack server launch
, it will suggest adding a readymade configuration to~/.ssh/config
to utilize whatever key you selected.
Summary
These changes should make it easier to stay private with SporeStack, conveniently, by utilizing a SSH key per token. In general, we recommend using one unique SSH key per token that you have.
[11.0.1 - 2024-02-29]
Fixed
- If a server is deleted during the launch wait phase, it will give up rather than trying to wait forever for an IP address that will never come.
--hostname
matching is smarter in case of duplicate hostnames.
[11.0.0 - 2024-02-26]
Changed
- Various command/help cleanups.
- If you want the CLI features, you will have to
pip install sporestack[cli]
instead of justpip install sporestack
. --no-local
is now the default forsporestack server list
.
Removed
- Deprecated fields from responses and requests.
legacy_polling=True
support for token add/topup.
[10.8.0 - 2024-01-03]
Added
- Support for paying invoices without polling.
--qr/--no-qr
tosporestack token topup
andsporestack token create
.--wait/--no-wait
tosporestack token topup
andsporestack token create
.sporestack token invoice
support to view an individual invoice.
Removed
- Python 3.7 support.
[10.7.0 - 2023-10-31]
Added
- Added
suspended_at
to server info response object. - Added
autorenew_servers
to token info response object. - Added
suspended_servers
to token info response object.
[10.6.3 - 2023-09-18]
Changed
- Bumped httpx timeouts from 5 seconds to 60 seconds (this may be fine-tuned in the future).
[10.6.2 - 2023-07-07]
Changed
- Make package compatible with Pydantic v1.10.x and v2.
[10.6.1 - 2023-07-07]
Changed
- Mark package as being compatible with Pydantic v1.10.X. It's not yet ready with v2. Does not seem to be possible to make the release compatible with both.
[10.6.0 - 2023-05-25]
Added
sporestack server update-hostname
command.
[10.5.0 - 2023-05-12]
Changed
- Use fancy table output for
sporestack server list
.
Added
sporestack token invoices
command.
[10.4.0 - 2023-05-12]
Changed
pip install sporestack[cli]
recommended if you wish to use CLI features. This will be required in version 11.- Implement Rich for much prettier output on
token info
,server regions
,server flavors
, andserver operating-systems
. Other commands to follow.
[10.3.0 - 2023-05-12]
Added
regions
toAPIClient
andClient
.sporestack server regions
command.
[10.2.0 - 2023-05-03]
Changed
- Updated client to support new
forgotten_at
field anddeleted_by
.
[10.1.2 - 2023-04-14]
Fixed
- HTTP 4XX errors now raise a
SporeStackUserError
instead ofSporeStackServerError
.
[10.1.1 - 2023-04-14]
Added
burn_rate_cents
toTokenInfo
to replaceburn_rate
.burn_rate_usd
toTokenInfo
.
Changed
sporestack token info
will now show burn rate in dollar amount ($0.00) instead of cents.
Fixed
sporestack server operating-systems
was updated to the new API behavior. (Unfortunately, was a breaking change.)
[10.1.0 - 2023-04-14]
Added
token_info()
toAPIClient
.info()
toClient.token
.changelog()
toAPIClient
.changelog()
toClient
.sporestack token info
command.
Improved
- Improved some docstrings and help messages.
[10.0.1 - 2023-04-13]
Fixed
- Fixed critical issue on Python versions earlier than 3.10.
[10.0.0 - 2023-04-12]
Changed
- No more
retry
options inapi_client
. Use try/except forSporeStackServerError
, instead, to retry on 500s. - Exception messages may be improved.
[9.1.1 - 2023-04-12]
Changed
- Bug fix with
default_factory
issue.
[9.1.0 - 2023-03-28]
Added
- Token messages support.
deleted_at
field in Server Info respones.
Changed
- Fixes to be compatible with API updates.
[9.0.0 - 2023-02-08]
Added
Client
added toclient
/server/quote
support--no-wait
option forsporestack server launch
to not wait for an IP address to be assigned.
Changed
- Now uses
httpx
instead ofrequests
[8.0.0 - 2023-02-07]
Changed
api_client
now exposes methods under APIClient()client
added with Server and Token.- CLI reworked some.
sporestack server info
now returns plain text info.sporestack server json
returns info in JSON format.
[7.3.0 - 2022-11-28]
Fixed
- Fixed broken
sporestack server topup
after API changes.
[7.2.1 - 2022-11-01]
Changed
- Fixed on Python 3.7 and 3.8.
[7.2.0 - 2022-11-01]
Changed
- Use new format for new tokens.
[7.1.2 - 2022-11-01]
Changed
- Fixed launch output with recent API changes.
[7.1.1 - 2022-09-29]
Changed
- Fixed hostname related bug when launching a server.
[7.1.0 - 2022-09-27]
Added
sporestack server autorenew-enable/disable
Changed
- Show autorenew status and associated token in
sporestack server list
(not in all cases, however)
[7.0.0 - 2022-09-07]
Added
sporestack server list
now accepts--local
or--no-local
.sporestack server operating-systems
Changed
sporestack server
subcommands take--hostname
or--machine-id
.sporestack server flavors
output is slightly more readable.
Removed
sporestack server delete
(in favor of:sporestack server destroy
)sporestack server get-attribute
[6.2.0 - 2022-09-07]
Added
- Allow for new beta
--autorenew
feature withsporestack server launch
.
Changed
- No longer save server JSON to disk for new servers.
[6.1.0 - 2022-06-14]
Changed
- Use servers launched by token endpoint in
sporestack server list
. - Send server hostname to SporeStack API at launch time.
[6.0.3 - 2022-04-22]
Changed
- Bug fixes.
[6.0.2 - 2022-04-22]
Changed
- Replace setuptools with flit.
[6.0.1 - 2022-04-22]
Changed
- Use
requests
session for improved performance, in particular forsporestack server list
.
[6.0.0 - 2022-04-14]
Fixed
- Use specified API endpoint for
sporestack server list
command.
[6.0.0a3 - 2022-04-05]
Removed
- Get rid of deprecated TokenEnable usage.
[6.0.0a2 - 2022-04-01]
Added
--quote
/--no-quote
to launch/topup. Prompt by default if price to draw from token is acceptable.
Removed
- affiliate_amount
Fixed
- Protect files in ~/.sporestack with aggressive
umask
.
[6.0.0a1 - 2022-03-31]
Remember to backup your ~/.sporestack folder as any tokens you generate will be stored there!
Changed
- Now token-centric. You can only use
sporestack
to launch or topup servers from a token. sporestack launch/info/topup
, etc, moved tosporestack server launch/info/topup
, etc.--token
argument takes the name of the token, and not the key. Defaults toprimary
.--ssh-key-file
now defaults to~/.ssh/id_rsa.pub
.- Import generated tokens from the key with:
sporestack token import (token reference name, default is primary) --key (the token key in hex format)
Added
- New token commands:
sporestack token create/list
[5.2.3 - 2022-03-30]
Added
- Use
~/.sporestack/servers
instead of~/.sporestack
. Will migrate existing servers automatically.
[5.2.2 - 2022-02-24]
Added
- Better
sporestack list
expired server handling.
[5.2.1 - 2022-02-10]
Added
- New, 32 character machine ID format. (Old, 64 hex character format still supported.)
- CHANGELOG.md in Keep a Changelog format.
[5.2.0 - 2022-01-31]
Added
sporestack rebuild
command.
[5.1.2 - 2021-10-18]
Added
- Send
sporestack-python/version
in Use-Agent header.