Minisky Changelog β
[0.5.0] - 2024-12-27 π β
hostparam in the initializer can be passed with ahttps://prefix (useful if you're passing it directly from a DID document, e.g. using DIDKit)- added validation of the
methodparameter in request calls: it needs to be either a proper NSID, or a full URL as a string or a URI object - added new optional
paramskeyword argument inpost_request, which lets you append query parameters to the URL if a POST endpoint requires passing them this way default_progressis set by default to show progress using dots (.) if Minisky is loaded inside an IRB or Pry context- when experimenting with Minisky in the console, you can now skip the
field:parameter tofetch_allif you don't remember the expected key name in the response, and the method will make a request and return an error which tells you the list of available keys - added
access_token_expired?helper method - moved
token_expiration_dateto public methods check_accessnow returns a result symbol::logged_in,:refreshedor:ok- fixed
method_missingsetter onUser
[0.4.0] - 2024-03-31 π£ β
- allow passing non-JSON body to requests (e.g. when uploading blobs)
- allow passing custom headers to requests, including overriding
Content-Type - fixed error when the response is success but not JSON (e.g. an empty body like in deleteRecord)
- allow passing options to the client in the initializer
- aliased
default_progresssetting asprogress - added
base64dependency explicitly to the gemspec - fixes a warning in Ruby 3.3, since it will be extracted as an optional gem in 3.4
[0.3.1] - 2023-10-10 β
- fixed Minisky not working on Ruby 2.x
[0.3.0] - 2023-10-05 β
- authentication improvements & changes:
- Minisky now automatically manages access tokens, calling
check_accessmanually is not necessary (setauto_manage_tokenstofalseto disable this) check_accessnow just checks token's expiry time instead of making a request togetSession- added
send_auth_headersoption - set tofalseto not set auth header automatically, which is the default - removed default config file name - explicit file name is now required
- Minisky can now be used in unauthenticated mode - pass
nilas the config file name - added
reset_tokenshelper method
- Minisky now automatically manages access tokens, calling
- refactored response handling - typed errors are now raised on non-success response status
userwrapper can also be used for writing fields to the config- improved error handling
[0.2.0] - 2023-09-02 β
- more consistent handling of parameters in the main methods:
authis now a named parameter- access token is used by default, pass
nilor an explicit token asauthto override paramsis always optional
- progress dots in
#fetch_all:- default is now to not print anything
- pass
'.'or any other character/string to show progress - set
default_progresson the client object to use for all#fetch_allcalls
- added
max_pagesoption to#fetch_all #loginand#perform_token_refreshmethods use the JSON response as return value- renamed
identfield in the config hash toid - config is now accessed in
Requestsfrom the client object as aconfigproperty instead of@configivar - config fields are exposed as a
userwrapper object, e.g.user.diddelegates to@config['did']
[0.1.0] - 2023-09-01 β
- extracted most code to a
Requestsmodule that can be included into a different client class with custom config handling - added
#check_accessmethod - hostname is now passed as a parameter
- config file name can be passed as a parameter
- added tests
[0.0.1] - 2023-08-30 β
Initial release - extracted from original gist:
- logging in and refreshing the token
- making GET & POST requests
- fetching paginated responses
