nanook 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -1
- data/Gemfile.lock +5 -1
- data/README.md +34 -22
- data/bin/console +2 -6
- data/docs/1.0.0/classes/Nanook/Account.html +50 -32
- data/docs/1.0.0/classes/Nanook/Block.html +202 -32
- data/docs/1.0.0/classes/Nanook/Wallet.html +95 -67
- data/docs/1.0.0/created.rid +13 -13
- data/docs/1.0.0/files/README_md.html +43 -23
- data/docs/1.0.0/files/lib/nanook/account_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/block_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/key_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/node_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/rpc_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/util_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/version_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/wallet_account_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/wallet_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook/work_peer_rb.html +1 -1
- data/docs/1.0.0/files/lib/nanook_rb.html +1 -1
- data/docs/1.0.0/js/search_index.js +1 -1
- data/lib/nanook/account.rb +1 -0
- data/lib/nanook/block.rb +128 -5
- data/lib/nanook/version.rb +1 -1
- data/lib/nanook/wallet.rb +11 -11
- data/nanook.gemspec +1 -0
- metadata +16 -2
@@ -1 +1 @@
|
|
1
|
-
var search_data = {"index":{"searchIndex":["nanook","account","block","error","key","node","rpc","util","wallet","walletaccount","workpeer","nano_to_raw()","account()","account()","account()","account_id()","accounts()","add()","balance()","balance()","block()","block_count()","block_count_type()","bootstrap()","bootstrap_any()","call()","cancel_work()","chain()","change_password()","change_seed()","clear()","coerce_empty_string_to_type()","contains?()","create()","create()","delegators()","destroy()","destroy()","exists?()","export()","frontier_count()","generate()","generate_work()","history()","history()","id()","id()","id()","id()","info()","info()","info()","inspect()","is_valid_work?()","key()","ledger()","list()","locked?()","method_missing()","new()","new()","new()","new()","new()","new()","new()","new()","new()","node()","pay()","pay()","peers()","pending()","pending?()","process()","public_key()","raw_to_nano()","receive()","receive()","representative()","representatives()","republish()","stop()","successors()","sync_progress()","synced?()","unlock()","version()","wallet()","wallet_id()","weight()","work_peers()","readme"],"longSearchIndex":["nanook","nanook::account","nanook::block","nanook::error","nanook::key","nanook::node","nanook::rpc","nanook::util","nanook::wallet","nanook::walletaccount","nanook::workpeer","nanook::util::nano_to_raw()","nanook#account()","nanook::block#account()","nanook::wallet#account()","nanook::walletaccount#account_id()","nanook::wallet#accounts()","nanook::workpeer#add()","nanook::account#balance()","nanook::wallet#balance()","nanook#block()","nanook::node#block_count()","nanook::node#block_count_type()","nanook::node#bootstrap()","nanook::node#bootstrap_any()","nanook::rpc#call()","nanook::block#cancel_work()","nanook::block#chain()","nanook::wallet#change_password()","nanook::wallet#change_seed()","nanook::workpeer#clear()","nanook::util::coerce_empty_string_to_type()","nanook::wallet#contains?()","nanook::wallet#create()","nanook::walletaccount#create()","nanook::account#delegators()","nanook::wallet#destroy()","nanook::walletaccount#destroy()","nanook::account#exists?()","nanook::wallet#export()","nanook::node#frontier_count()","nanook::key#generate()","nanook::block#generate_work()","nanook::account#history()","nanook::block#history()","nanook::account#id()","nanook::block#id()","nanook::key#id()","nanook::wallet#id()","nanook::account#info()","nanook::block#info()","nanook::key#info()","nanook#inspect()","nanook::block#is_valid_work?()","nanook#key()","nanook::account#ledger()","nanook::workpeer#list()","nanook::wallet#locked?()","nanook::walletaccount#method_missing()","nanook::new()","nanook::account::new()","nanook::block::new()","nanook::key::new()","nanook::node::new()","nanook::rpc::new()","nanook::wallet::new()","nanook::walletaccount::new()","nanook::workpeer::new()","nanook#node()","nanook::wallet#pay()","nanook::walletaccount#pay()","nanook::node#peers()","nanook::account#pending()","nanook::block#pending?()","nanook::block#process()","nanook::account#public_key()","nanook::util::raw_to_nano()","nanook::wallet#receive()","nanook::walletaccount#receive()","nanook::account#representative()","nanook::node#representatives()","nanook::block#republish()","nanook::node#stop()","nanook::block#successors()","nanook::node#sync_progress()","nanook::node#synced?()","nanook::wallet#unlock()","nanook::node#version()","nanook#wallet()","nanook::walletaccount#wallet_id()","nanook::account#weight()","nanook#work_peers()",""],"info":[["Nanook","","classes/Nanook.html","","<p>Initializing\n<p>Connect to the default RPC host at localhost:7076 and with a timeout of 500\nseconds:\n\n<pre><code>nanook ...\n</code></pre>\n"],["Nanook::Account","","classes/Nanook/Account.html","","<p>The <code>Nanook::Account</code> class contains methods to discover\npublicly-available information about accounts …\n"],["Nanook::Block","","classes/Nanook/Block.html","","<p>The <code>Nanook::Block</code> class contains methods to discover\npublicly-available information about blocks on the …\n"],["Nanook::Error","","classes/Nanook/Error.html","",""],["Nanook::Key","","classes/Nanook/Key.html","",""],["Nanook::Node","","classes/Nanook/Node.html","",""],["Nanook::Rpc","","classes/Nanook/Rpc.html","",""],["Nanook::Util","","classes/Nanook/Util.html","",""],["Nanook::Wallet","","classes/Nanook/Wallet.html","","<p>The <code>Nanook::Wallet</code> class lets you manage your nano wallets, as\nwell as some account-specific things like …\n"],["Nanook::WalletAccount","","classes/Nanook/WalletAccount.html","",""],["Nanook::WorkPeer","","classes/Nanook/WorkPeer.html","",""],["NANO_to_raw","Nanook::Util","classes/Nanook/Util.html#method-c-NANO_to_raw","(nano)",""],["account","Nanook","classes/Nanook.html#method-i-account","(account=nil)","<p>Returns a Nanook::Account instance.\n\n<pre><code>nanook = Nanook.new\n\naccount = nanook.account\naccount = nanook.account("xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000")\n</code></pre>\n"],["account","Nanook::Block","classes/Nanook/Block.html#method-i-account","()",""],["account","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-account","(account=nil)","<p>A convenient method that returns an account in your wallet, allowing you to\nperform all the actions in …\n"],["account_id","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-account_id","()",""],["accounts","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-accounts","()","<p>Returns an Array with Strings of all account ids in the wallet.\n<p>Example response\n\n<pre><code>[\n "xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000", ...\n</code></pre>\n"],["add","Nanook::WorkPeer","classes/Nanook/WorkPeer.html#method-i-add","(address:, port:)",""],["balance","Nanook::Account","classes/Nanook/Account.html#method-i-balance","(unit: Nanook::WalletAccount::DEFAULT_UNIT)","<p>Returns a Hash containing the account's balance. Units are in raw.\n<p><code>:balance</code> — Account balance\n<p><code>:pending</code> … — "],["balance","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-balance","(account_break_down: false, unit: Nanook::WalletAccount::DEFAULT_UNIT)",""],["block","Nanook","classes/Nanook.html#method-i-block","(block=nil)",""],["block_count","Nanook::Node","classes/Nanook/Node.html#method-i-block_count","()",""],["block_count_type","Nanook::Node","classes/Nanook/Node.html#method-i-block_count_type","()",""],["bootstrap","Nanook::Node","classes/Nanook/Node.html#method-i-bootstrap","(address:, port:)",""],["bootstrap_any","Nanook::Node","classes/Nanook/Node.html#method-i-bootstrap_any","()",""],["call","Nanook::Rpc","classes/Nanook/Rpc.html#method-i-call","(action, params={})",""],["cancel_work","Nanook::Block","classes/Nanook/Block.html#method-i-cancel_work","()",""],["chain","Nanook::Block","classes/Nanook/Block.html#method-i-chain","(limit: 1000)",""],["change_password","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-change_password","(password)","<p>Changes the password for a wallet. Returns a boolean to indicate if the\naction was successful.\n<p>Example …\n"],["change_seed","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-change_seed","(seed)",""],["clear","Nanook::WorkPeer","classes/Nanook/WorkPeer.html#method-i-clear","()",""],["coerce_empty_string_to_type","Nanook::Util","classes/Nanook/Util.html#method-c-coerce_empty_string_to_type","(response, type)",""],["contains?","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-contains-3F","(account)","<p>Returns boolean indicating if the wallet contains an account.\n<p>Arguments\n<p><code>account</code> — String account id (will …\n"],["create","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-create","()","<p>Creates a new wallet.\n\n<pre><code>Nanook.new.wallet.create\n</code></pre>\n<p>Very important\n"],["create","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-create","()",""],["delegators","Nanook::Account","classes/Nanook/Account.html#method-i-delegators","()","<p>Example response\n\n<pre><code>{\n "xrb_13bqhi1cdqq8yb9szneoc38qk899d58i5rcrgdk5mkdm86hekpoez3zxw5sd": "500000000000000000000000000000000000", ...\n</code></pre>\n"],["destroy","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-destroy","()","<p>Destroy the wallet. Returns a boolean indicating whether the action was\nsuccessful or not.\n<p>Example Response …\n"],["destroy","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-destroy","()",""],["exists?","Nanook::Account","classes/Nanook/Account.html#method-i-exists-3F","()","<p>Returns a boolean indicating if account is known. Note, the reliability of\nthe check depends on the node …\n"],["export","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-export","()","<p>Generates a String containing a JSON representation of your wallet.\n<p>Example response\n\n<pre><code>"{\\n \\"0000000000000000000000000000000000000000000000000000000000000000\\": ...\n</code></pre>\n"],["frontier_count","Nanook::Node","classes/Nanook/Node.html#method-i-frontier_count","()",""],["generate","Nanook::Key","classes/Nanook/Key.html#method-i-generate","(seed: nil, index: nil)",""],["generate_work","Nanook::Block","classes/Nanook/Block.html#method-i-generate_work","()",""],["history","Nanook::Account","classes/Nanook/Account.html#method-i-history","(limit: 1000)","<p>Returns an account's history of send and receive payments. Amounts are\nin raw.\n<p>Arguments\n<p><code>limit:</code> — Integer …\n"],["history","Nanook::Block","classes/Nanook/Block.html#method-i-history","(limit: 1000)",""],["id","Nanook::Account","classes/Nanook/Account.html#method-i-id","()",""],["id","Nanook::Block","classes/Nanook/Block.html#method-i-id","()",""],["id","Nanook::Key","classes/Nanook/Key.html#method-i-id","()",""],["id","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-id","()",""],["info","Nanook::Account","classes/Nanook/Account.html#method-i-info","(detailed: false)","<p>Returns a Hash containing the following information about an account:\n<p><code>:frontier</code> — The latest block hash …\n"],["info","Nanook::Block","classes/Nanook/Block.html#method-i-info","(allow_unchecked: false)",""],["info","Nanook::Key","classes/Nanook/Key.html#method-i-info","()",""],["inspect","Nanook","classes/Nanook.html#method-i-inspect","()",""],["is_valid_work?","Nanook::Block","classes/Nanook/Block.html#method-i-is_valid_work-3F","(work)",""],["key","Nanook","classes/Nanook.html#method-i-key","(key=nil)",""],["ledger","Nanook::Account","classes/Nanook/Account.html#method-i-ledger","(limit: 1)","<p>Returns information about the given account as well as other accounts up\nthe ledger. The number of accounts …\n"],["list","Nanook::WorkPeer","classes/Nanook/WorkPeer.html#method-i-list","()",""],["locked?","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-locked-3F","()","<p>Returns a boolean to indicate if the wallet is locked.\n<p>Example response\n\n<pre><code>true\n</code></pre>\n"],["method_missing","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-method_missing","(m, *args, &block)","<p>Any method of Nanook::Account can be called on this class too\n"],["new","Nanook","classes/Nanook.html#method-c-new","(uri=Nanook::Rpc::DEFAULT_URI, timeout:Nanook::Rpc::DEFAULT_TIMEOUT)","<p>Arguments\n<p><code>uri</code> - RPC host to connect to (default is “localhost:7076”)\n<p><code>timeout:</code> - Connection timeout …\n"],["new","Nanook::Account","classes/Nanook/Account.html#method-c-new","(rpc, account)",""],["new","Nanook::Block","classes/Nanook/Block.html#method-c-new","(rpc, block)",""],["new","Nanook::Key","classes/Nanook/Key.html#method-c-new","(rpc, key=nil)",""],["new","Nanook::Node","classes/Nanook/Node.html#method-c-new","(rpc)",""],["new","Nanook::Rpc","classes/Nanook/Rpc.html#method-c-new","(uri=DEFAULT_URI, timeout:DEFAULT_TIMEOUT)",""],["new","Nanook::Wallet","classes/Nanook/Wallet.html#method-c-new","(rpc, wallet)",""],["new","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-c-new","(rpc, wallet, account)",""],["new","Nanook::WorkPeer","classes/Nanook/WorkPeer.html#method-c-new","(rpc)",""],["node","Nanook","classes/Nanook.html#method-i-node","()",""],["pay","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-pay","(from:, to:, amount:, unit: Nanook::WalletAccount::DEFAULT_UNIT, id:)","<p>Make a payment from an account in your wallet to another account on the\nnano network. Returns a <em>send</em> …\n"],["pay","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-pay","(to:, amount:, unit: DEFAULT_UNIT, id:)",""],["peers","Nanook::Node","classes/Nanook/Node.html#method-i-peers","()",""],["pending","Nanook::Account","classes/Nanook/Account.html#method-i-pending","(limit: 1000, detailed: false)","<p>Returns information about pending block hashes that are waiting to be\nreceived by the account.\n<p>The default …\n"],["pending?","Nanook::Block","classes/Nanook/Block.html#method-i-pending-3F","()",""],["process","Nanook::Block","classes/Nanook/Block.html#method-i-process","()",""],["public_key","Nanook::Account","classes/Nanook/Account.html#method-i-public_key","()","<p>Returns the public key belonging to an account.\n<p>Example response\n\n<pre><code>"3068BB1CA04525BB0E416C485FE6A67FD52540227D267CC8B6E8DA958A7FA039"\n</code></pre>\n"],["raw_to_NANO","Nanook::Util","classes/Nanook/Util.html#method-c-raw_to_NANO","(raw)",""],["receive","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-receive","(block=nil, into:)","<p>Receives a pending payment into an account in the wallet.\n<p>When called with no <code>block</code> argument, the latest …\n"],["receive","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-receive","(block=nil)","<p>Returns false if no block to receive\n"],["representative","Nanook::Account","classes/Nanook/Account.html#method-i-representative","()","<p>Returns a String of the representative account for the account.\nRepresentatives are accounts which cast …\n"],["representatives","Nanook::Node","classes/Nanook/Node.html#method-i-representatives","()",""],["republish","Nanook::Block","classes/Nanook/Block.html#method-i-republish","(destinations:nil, sources:nil)",""],["stop","Nanook::Node","classes/Nanook/Node.html#method-i-stop","()",""],["successors","Nanook::Block","classes/Nanook/Block.html#method-i-successors","(limit: 1000)",""],["sync_progress","Nanook::Node","classes/Nanook/Node.html#method-i-sync_progress","()",""],["synced?","Nanook::Node","classes/Nanook/Node.html#method-i-synced-3F","()",""],["unlock","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-unlock","(password)","<p>Unlocks a previously locked wallet. Returns a boolean to indicate if the\naction was successful.\n<p>Example …\n"],["version","Nanook::Node","classes/Nanook/Node.html#method-i-version","()",""],["wallet","Nanook","classes/Nanook.html#method-i-wallet","(wallet=nil)",""],["wallet_id","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-wallet_id","()",""],["weight","Nanook::Account","classes/Nanook/Account.html#method-i-weight","()","<p>Returns the account's weight. Weight is determined by the account's\nbalance, and represents the …\n"],["work_peers","Nanook","classes/Nanook.html#method-i-work_peers","()",""],["README","","files/README_md.html","","<p>Nanook\n<p>This is a Ruby library for managing a nano currency node, including making\nand receiving payments, …\n"]]}}
|
1
|
+
var search_data = {"index":{"searchIndex":["nanook","account","block","error","key","node","rpc","util","wallet","walletaccount","workpeer","nano_to_raw()","account()","account()","account()","account_id()","accounts()","add()","balance()","balance()","block()","block_count()","block_count_type()","bootstrap()","bootstrap_any()","call()","cancel_work()","chain()","change_password()","clear()","coerce_empty_string_to_type()","contains?()","create()","create()","delegators()","destroy()","destroy()","exists?()","export()","frontier_count()","generate()","generate_work()","history()","history()","id()","id()","id()","id()","info()","info()","info()","inspect()","is_valid_work?()","key()","ledger()","list()","locked?()","method_missing()","new()","new()","new()","new()","new()","new()","new()","new()","new()","node()","pay()","pay()","peers()","pending()","pending?()","process()","public_key()","publish()","raw_to_nano()","receive()","receive()","representative()","representatives()","republish()","stop()","successors()","sync_progress()","synced?()","unlock()","version()","wallet()","wallet_id()","weight()","work_peers()","readme"],"longSearchIndex":["nanook","nanook::account","nanook::block","nanook::error","nanook::key","nanook::node","nanook::rpc","nanook::util","nanook::wallet","nanook::walletaccount","nanook::workpeer","nanook::util::nano_to_raw()","nanook#account()","nanook::block#account()","nanook::wallet#account()","nanook::walletaccount#account_id()","nanook::wallet#accounts()","nanook::workpeer#add()","nanook::account#balance()","nanook::wallet#balance()","nanook#block()","nanook::node#block_count()","nanook::node#block_count_type()","nanook::node#bootstrap()","nanook::node#bootstrap_any()","nanook::rpc#call()","nanook::block#cancel_work()","nanook::block#chain()","nanook::wallet#change_password()","nanook::workpeer#clear()","nanook::util::coerce_empty_string_to_type()","nanook::wallet#contains?()","nanook::wallet#create()","nanook::walletaccount#create()","nanook::account#delegators()","nanook::wallet#destroy()","nanook::walletaccount#destroy()","nanook::account#exists?()","nanook::wallet#export()","nanook::node#frontier_count()","nanook::key#generate()","nanook::block#generate_work()","nanook::account#history()","nanook::block#history()","nanook::account#id()","nanook::block#id()","nanook::key#id()","nanook::wallet#id()","nanook::account#info()","nanook::block#info()","nanook::key#info()","nanook#inspect()","nanook::block#is_valid_work?()","nanook#key()","nanook::account#ledger()","nanook::workpeer#list()","nanook::wallet#locked?()","nanook::walletaccount#method_missing()","nanook::new()","nanook::account::new()","nanook::block::new()","nanook::key::new()","nanook::node::new()","nanook::rpc::new()","nanook::wallet::new()","nanook::walletaccount::new()","nanook::workpeer::new()","nanook#node()","nanook::wallet#pay()","nanook::walletaccount#pay()","nanook::node#peers()","nanook::account#pending()","nanook::block#pending?()","nanook::block#process()","nanook::account#public_key()","nanook::block#publish()","nanook::util::raw_to_nano()","nanook::wallet#receive()","nanook::walletaccount#receive()","nanook::account#representative()","nanook::node#representatives()","nanook::block#republish()","nanook::node#stop()","nanook::block#successors()","nanook::node#sync_progress()","nanook::node#synced?()","nanook::wallet#unlock()","nanook::node#version()","nanook#wallet()","nanook::walletaccount#wallet_id()","nanook::account#weight()","nanook#work_peers()",""],"info":[["Nanook","","classes/Nanook.html","","<p>Initializing\n<p>Connect to the default RPC host at localhost:7076 and with a timeout of 500\nseconds:\n\n<pre><code>nanook ...\n</code></pre>\n"],["Nanook::Account","","classes/Nanook/Account.html","","<p>The <code>Nanook::Account</code> class contains methods to discover\npublicly-available information about accounts …\n"],["Nanook::Block","","classes/Nanook/Block.html","","<p>The <code>Nanook::Block</code> class contains methods to discover\npublicly-available information about blocks on the …\n"],["Nanook::Error","","classes/Nanook/Error.html","",""],["Nanook::Key","","classes/Nanook/Key.html","",""],["Nanook::Node","","classes/Nanook/Node.html","",""],["Nanook::Rpc","","classes/Nanook/Rpc.html","",""],["Nanook::Util","","classes/Nanook/Util.html","",""],["Nanook::Wallet","","classes/Nanook/Wallet.html","","<p>The <code>Nanook::Wallet</code> class lets you manage your nano wallets, as\nwell as some account-specific things like …\n"],["Nanook::WalletAccount","","classes/Nanook/WalletAccount.html","",""],["Nanook::WorkPeer","","classes/Nanook/WorkPeer.html","",""],["NANO_to_raw","Nanook::Util","classes/Nanook/Util.html#method-c-NANO_to_raw","(nano)",""],["account","Nanook","classes/Nanook.html#method-i-account","(account=nil)","<p>Returns a Nanook::Account instance.\n\n<pre><code>nanook = Nanook.new\n\naccount = nanook.account\naccount = nanook.account("xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000")\n</code></pre>\n"],["account","Nanook::Block","classes/Nanook/Block.html#method-i-account","()","<p>Returns a String of the account id of the block.\n<p>Example\n\n<pre><code>block.account # => "xrb_3x7c..."\n</code></pre>\n"],["account","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-account","(account=nil)","<p>A convenient method that returns an account in your wallet, allowing you to\nperform all the actions in …\n"],["account_id","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-account_id","()",""],["accounts","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-accounts","()","<p>Returns an Array with Strings of all account ids in the wallet.\n<p>Example response\n\n<pre><code>[\n "xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000", ...\n</code></pre>\n"],["add","Nanook::WorkPeer","classes/Nanook/WorkPeer.html#method-i-add","(address:, port:)",""],["balance","Nanook::Account","classes/Nanook/Account.html#method-i-balance","(unit: Nanook::WalletAccount::DEFAULT_UNIT)","<p>Returns a Hash containing the account's balance. Units are in raw.\n<p><code>:balance</code> — Account balance\n<p><code>:pending</code> … — "],["balance","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-balance","(account_break_down: false, unit: Nanook::WalletAccount::DEFAULT_UNIT)","<p>Returns a Hash containing the balance of all accounts in the wallet,\noptionally breaking the balances …\n"],["block","Nanook","classes/Nanook.html#method-i-block","(block=nil)",""],["block_count","Nanook::Node","classes/Nanook/Node.html#method-i-block_count","()",""],["block_count_type","Nanook::Node","classes/Nanook/Node.html#method-i-block_count_type","()",""],["bootstrap","Nanook::Node","classes/Nanook/Node.html#method-i-bootstrap","(address:, port:)",""],["bootstrap_any","Nanook::Node","classes/Nanook/Node.html#method-i-bootstrap_any","()",""],["call","Nanook::Rpc","classes/Nanook/Rpc.html#method-i-call","(action, params={})",""],["cancel_work","Nanook::Block","classes/Nanook/Block.html#method-i-cancel_work","()","<p>Stop generating work for a block.\n<p>Returns boolean signalling if the action was successful.\n<p>Example\n"],["chain","Nanook::Block","classes/Nanook/Block.html#method-i-chain","(limit: 1000)","<p>Returns an Array of block hashes in the account chain starting at this\nblock.\n<p>See also #successors.\n<p>Arguments …\n"],["change_password","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-change_password","(password)","<p>Changes the password for a wallet. Returns a boolean to indicate if the\naction was successful.\n<p>Example …\n"],["clear","Nanook::WorkPeer","classes/Nanook/WorkPeer.html#method-i-clear","()",""],["coerce_empty_string_to_type","Nanook::Util","classes/Nanook/Util.html#method-c-coerce_empty_string_to_type","(response, type)",""],["contains?","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-contains-3F","(account)","<p>Returns boolean indicating if the wallet contains an account.\n<p>Arguments\n<p><code>account</code> — String account id (will …\n"],["create","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-create","()","<p>Creates a new wallet.\n\n<pre><code>Nanook.new.wallet.create\n</code></pre>\n<p>Very important\n"],["create","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-create","()",""],["delegators","Nanook::Account","classes/Nanook/Account.html#method-i-delegators","()","<p>Example response\n\n<pre><code>{\n "xrb_13bqhi1cdqq8yb9szneoc38qk899d58i5rcrgdk5mkdm86hekpoez3zxw5sd": "500000000000000000000000000000000000", ...\n</code></pre>\n"],["destroy","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-destroy","()","<p>Destroy the wallet. Returns a boolean indicating whether the action was\nsuccessful or not.\n<p>Example Response …\n"],["destroy","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-destroy","()",""],["exists?","Nanook::Account","classes/Nanook/Account.html#method-i-exists-3F","()","<p>Returns a boolean indicating if account is known. Note, the reliability of\nthe check depends on the node …\n"],["export","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-export","()","<p>Generates a String containing a JSON representation of your wallet.\n<p>Example response\n\n<pre><code>"{\\n \\"0000000000000000000000000000000000000000000000000000000000000000\\": ...\n</code></pre>\n"],["frontier_count","Nanook::Node","classes/Nanook/Node.html#method-i-frontier_count","()",""],["generate","Nanook::Key","classes/Nanook/Key.html#method-i-generate","(seed: nil, index: nil)",""],["generate_work","Nanook::Block","classes/Nanook/Block.html#method-i-generate_work","()","<p>Generate work for a block.\n<p>Returns the work id of the work completed.\n\n<pre><code>block.generate_work # => "2bf29ef00786a6bc"\n</code></pre>\n"],["history","Nanook::Account","classes/Nanook/Account.html#method-i-history","(limit: 1000)","<p>Returns an account's history of send and receive payments. Amounts are\nin raw.\n<p>Arguments\n<p><code>limit:</code> — Integer …\n"],["history","Nanook::Block","classes/Nanook/Block.html#method-i-history","(limit: 1000)","<p>Returns Array of Hashes containing information about a chain of\nsend/receive blocks, starting from this …\n"],["id","Nanook::Account","classes/Nanook/Account.html#method-i-id","()","<p>Returns the id of the account\n"],["id","Nanook::Block","classes/Nanook/Block.html#method-i-id","()","<p>Returns the block hash\n\n<pre><code>block.id #=> "FBF8B0E..."\n</code></pre>\n"],["id","Nanook::Key","classes/Nanook/Key.html#method-i-id","()",""],["id","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-id","()",""],["info","Nanook::Account","classes/Nanook/Account.html#method-i-info","(detailed: false)","<p>Returns a Hash containing the following information about an account:\n<p><code>:frontier</code> — The latest block hash …\n"],["info","Nanook::Block","classes/Nanook/Block.html#method-i-info","(allow_unchecked: false)","<p>Returns a Hash of information about the block.\n<p>Arguments\n<p><code>allow_unchecked:</code> — Boolean (default is <code>false</code>). …\n"],["info","Nanook::Key","classes/Nanook/Key.html#method-i-info","()",""],["inspect","Nanook","classes/Nanook.html#method-i-inspect","()",""],["is_valid_work?","Nanook::Block","classes/Nanook/Block.html#method-i-is_valid_work-3F","(work)","<p>Returns boolean signalling if work is valid for the block.\n\n<pre><code>block.is_valid_work?("2bf29ef00786a6bc") # ...\n</code></pre>\n"],["key","Nanook","classes/Nanook.html#method-i-key","(key=nil)",""],["ledger","Nanook::Account","classes/Nanook/Account.html#method-i-ledger","(limit: 1)","<p>Returns information about the given account as well as other accounts up\nthe ledger. The number of accounts …\n"],["list","Nanook::WorkPeer","classes/Nanook/WorkPeer.html#method-i-list","()",""],["locked?","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-locked-3F","()","<p>Returns a boolean to indicate if the wallet is locked.\n<p>Example response\n\n<pre><code>true\n</code></pre>\n"],["method_missing","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-method_missing","(m, *args, &block)","<p>Any method of Nanook::Account can be called on this class too\n"],["new","Nanook","classes/Nanook.html#method-c-new","(uri=Nanook::Rpc::DEFAULT_URI, timeout:Nanook::Rpc::DEFAULT_TIMEOUT)","<p>Arguments\n<p><code>uri</code> - RPC host to connect to (default is “localhost:7076”)\n<p><code>timeout:</code> - Connection timeout …\n"],["new","Nanook::Account","classes/Nanook/Account.html#method-c-new","(rpc, account)",""],["new","Nanook::Block","classes/Nanook/Block.html#method-c-new","(rpc, block)",""],["new","Nanook::Key","classes/Nanook/Key.html#method-c-new","(rpc, key=nil)",""],["new","Nanook::Node","classes/Nanook/Node.html#method-c-new","(rpc)",""],["new","Nanook::Rpc","classes/Nanook/Rpc.html#method-c-new","(uri=DEFAULT_URI, timeout:DEFAULT_TIMEOUT)",""],["new","Nanook::Wallet","classes/Nanook/Wallet.html#method-c-new","(rpc, wallet)",""],["new","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-c-new","(rpc, wallet, account)",""],["new","Nanook::WorkPeer","classes/Nanook/WorkPeer.html#method-c-new","(rpc)",""],["node","Nanook","classes/Nanook.html#method-i-node","()",""],["pay","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-pay","(from:, to:, amount:, unit: Nanook::WalletAccount::DEFAULT_UNIT, id:)","<p>Make a payment from an account in your wallet to another account on the\nnano network. Returns a <em>send</em> …\n"],["pay","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-pay","(to:, amount:, unit: DEFAULT_UNIT, id:)",""],["peers","Nanook::Node","classes/Nanook/Node.html#method-i-peers","()",""],["pending","Nanook::Account","classes/Nanook/Account.html#method-i-pending","(limit: 1000, detailed: false)","<p>Returns information about pending block hashes that are waiting to be\nreceived by the account.\n<p>The default …\n"],["pending?","Nanook::Block","classes/Nanook/Block.html#method-i-pending-3F","()","<p>Returns boolean <code>true</code> if the block is a pending block.\n\n<pre><code>block.pending? #=> false\n</code></pre>\n"],["process","Nanook::Block","classes/Nanook/Block.html#method-i-process","()",""],["public_key","Nanook::Account","classes/Nanook/Account.html#method-i-public_key","()","<p>Returns the public key belonging to an account.\n<p>Example response\n\n<pre><code>"3068BB1CA04525BB0E416C485FE6A67FD52540227D267CC8B6E8DA958A7FA039"\n</code></pre>\n"],["publish","Nanook::Block","classes/Nanook/Block.html#method-i-publish","()","<p>Publish the block to the nano network.\n<p>Note, if block has previously been published, use #republish instead. …\n"],["raw_to_NANO","Nanook::Util","classes/Nanook/Util.html#method-c-raw_to_NANO","(raw)",""],["receive","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-receive","(block=nil, into:)","<p>Receives a pending payment into an account in the wallet.\n<p>When called with no <code>block</code> argument, the latest …\n"],["receive","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-receive","(block=nil)","<p>Returns false if no block to receive\n"],["representative","Nanook::Account","classes/Nanook/Account.html#method-i-representative","()","<p>Returns a String of the representative account for the account.\nRepresentatives are accounts which cast …\n"],["representatives","Nanook::Node","classes/Nanook/Node.html#method-i-representatives","()",""],["republish","Nanook::Block","classes/Nanook/Block.html#method-i-republish","(destinations:nil, sources:nil)","<p>Republish blocks starting at this block up the account chain back to the\nnano network.\n<p>Returns an Array …\n"],["stop","Nanook::Node","classes/Nanook/Node.html#method-i-stop","()",""],["successors","Nanook::Block","classes/Nanook/Block.html#method-i-successors","(limit: 1000)","<p>Returns an Array of block hashes in the account chain ending at this block.\n<p>See also #chain.\n<p>Arguments …\n"],["sync_progress","Nanook::Node","classes/Nanook/Node.html#method-i-sync_progress","()",""],["synced?","Nanook::Node","classes/Nanook/Node.html#method-i-synced-3F","()",""],["unlock","Nanook::Wallet","classes/Nanook/Wallet.html#method-i-unlock","(password)","<p>Unlocks a previously locked wallet. Returns a boolean to indicate if the\naction was successful.\n<p>Example …\n"],["version","Nanook::Node","classes/Nanook/Node.html#method-i-version","()",""],["wallet","Nanook","classes/Nanook.html#method-i-wallet","(wallet=nil)",""],["wallet_id","Nanook::WalletAccount","classes/Nanook/WalletAccount.html#method-i-wallet_id","()",""],["weight","Nanook::Account","classes/Nanook/Account.html#method-i-weight","()","<p>Returns the account's weight. Weight is determined by the account's\nbalance, and represents the …\n"],["work_peers","Nanook","classes/Nanook.html#method-i-work_peers","()",""],["README","","files/README_md.html","","<p>Nanook\n<p>This is a Ruby library for managing a nano currency node, including making\nand receiving payments, …\n"]]}}
|
data/lib/nanook/account.rb
CHANGED
data/lib/nanook/block.rb
CHANGED
@@ -3,17 +3,19 @@ class Nanook
|
|
3
3
|
# The <tt>Nanook::Block</tt> class contains methods to discover
|
4
4
|
# publicly-available information about blocks on the nano network.
|
5
5
|
#
|
6
|
-
# A block is represented by a unique
|
6
|
+
# A block is represented by a unique id like this:
|
7
|
+
#
|
8
|
+
# "FBF8B0E6623A31AB528EBD839EEAA91CAFD25C12294C46754E45FD017F7939EB"
|
7
9
|
#
|
8
10
|
# Initialize this class through the convenient Nanook#block method:
|
9
11
|
#
|
10
12
|
# nanook = Nanook.new
|
11
|
-
# account = nanook.block("
|
13
|
+
# account = nanook.block("FBF8B0E...")
|
12
14
|
#
|
13
15
|
# Or compose the longhand way like this:
|
14
16
|
#
|
15
17
|
# rpc_conn = Nanook::Rpc.new
|
16
|
-
# block = Nanook::Block.new(rpc_conn, "
|
18
|
+
# block = Nanook::Block.new(rpc_conn, "FBF8B0E...")
|
17
19
|
class Block
|
18
20
|
|
19
21
|
def initialize(rpc, block)
|
@@ -22,31 +24,109 @@ class Nanook
|
|
22
24
|
block_required! # All methods expect a block
|
23
25
|
end
|
24
26
|
|
27
|
+
# Returns a String of the account id of the block.
|
28
|
+
#
|
29
|
+
# ==== Example
|
30
|
+
#
|
31
|
+
# block.account # => "xrb_3x7c..."
|
25
32
|
def account
|
26
33
|
rpc(:block_account, :hash)[:account]
|
27
34
|
end
|
28
35
|
|
36
|
+
# Stop generating work for a block.
|
37
|
+
#
|
38
|
+
# Returns boolean signalling if the action was successful.
|
39
|
+
#
|
40
|
+
# ==== Example
|
41
|
+
#
|
42
|
+
# block.cancel_work # => true
|
29
43
|
def cancel_work
|
30
44
|
rpc(:work_cancel, :hash).empty?
|
31
45
|
end
|
32
46
|
|
47
|
+
# Returns an Array of block hashes in the account chain starting at
|
48
|
+
# this block.
|
49
|
+
#
|
50
|
+
# See also #successors.
|
51
|
+
#
|
52
|
+
# ==== Arguments
|
53
|
+
#
|
54
|
+
# [+limit:+] Maximum number of block hashes to return (default is 1000)
|
55
|
+
#
|
56
|
+
# ==== Example
|
57
|
+
#
|
58
|
+
# block.chain(limit: 2)
|
59
|
+
#
|
60
|
+
# ==== Example reponse
|
61
|
+
#
|
62
|
+
# [
|
63
|
+
# "36A0FB717368BA8CF8D255B63DC207771EABC6C6FFC22A7F455EC2209464897E",
|
64
|
+
# "FBF8B0E6623A31AB528EBD839EEAA91CAFD25C12294C46754E45FD017F7939EB"
|
65
|
+
# ]
|
33
66
|
def chain(limit: 1000)
|
34
67
|
response = rpc(:chain, :block, count: limit)[:blocks]
|
35
68
|
Nanook::Util.coerce_empty_string_to_type(response, Array)
|
36
69
|
end
|
37
70
|
|
71
|
+
# Generate work for a block.
|
72
|
+
#
|
73
|
+
# Returns the work id of the work completed.
|
74
|
+
#
|
75
|
+
# block.generate_work # => "2bf29ef00786a6bc"
|
38
76
|
def generate_work
|
39
77
|
rpc(:work_generate, :hash)[:work]
|
40
78
|
end
|
41
79
|
|
80
|
+
# Returns Array of Hashes containing information about a chain of
|
81
|
+
# send/receive blocks, starting from this block.
|
82
|
+
#
|
83
|
+
# ==== Arguments
|
84
|
+
#
|
85
|
+
# [+limit:+] Maximum number of send/receive block hashes to return
|
86
|
+
# in the chain (default is 1000)
|
87
|
+
#
|
88
|
+
# ==== Example
|
89
|
+
#
|
90
|
+
# block.history(limit: 1)
|
91
|
+
#
|
92
|
+
# ==== Example response
|
93
|
+
#
|
94
|
+
# [
|
95
|
+
# {
|
96
|
+
# :account=>"xrb_3x7cjioqahgs5ppheys6prpqtb4rdknked83chf97bot1unrbdkaux37t31b",
|
97
|
+
# :amount=>539834279601145558517940224,
|
98
|
+
# :hash=>"36A0FB717368BA8CF8D255B63DC207771EABC6C6FFC22A7F455EC2209464897E",
|
99
|
+
# :type=>"send"
|
100
|
+
# }
|
101
|
+
# ]
|
42
102
|
def history(limit: 1000)
|
43
103
|
rpc(:history, :hash, count: limit)[:history]
|
44
104
|
end
|
45
105
|
|
106
|
+
# Returns the block hash
|
107
|
+
#
|
108
|
+
# block.id #=> "FBF8B0E..."
|
46
109
|
def id
|
47
110
|
@block
|
48
111
|
end
|
49
112
|
|
113
|
+
# Returns a Hash of information about the block.
|
114
|
+
#
|
115
|
+
# ==== Arguments
|
116
|
+
#
|
117
|
+
# [+allow_unchecked:+] Boolean (default is +false+). If +true+,
|
118
|
+
# information can be returned about blocks that
|
119
|
+
# are unchecked (unverified).
|
120
|
+
# ==== Example response
|
121
|
+
#
|
122
|
+
# {
|
123
|
+
# :type=>"send",
|
124
|
+
# :previous=>"FBF8B0E6623A31AB528EBD839EEAA91CAFD25C12294C46754E45FD017F7939EB",
|
125
|
+
# :destination=>"xrb_3x7cjioqahgs5ppheys6prpqtb4rdknked83chf97bot1unrbdkaux37t31b",
|
126
|
+
# :balance=>"00000000000000000000000000000000",
|
127
|
+
# :work=>"44cc24b60705083a",
|
128
|
+
# :signature=>"42ADFEFE7C3FFF188AE92A202F8A5734DE91779C454613E446EEC93D001D6C953E9FD16730AF32C891791BA8EDAECEB059A213E2FE1EEB7ADF9D5D0815464D06"
|
129
|
+
# }
|
50
130
|
def info(allow_unchecked: false)
|
51
131
|
if allow_unchecked
|
52
132
|
# TODO not actually sure what this response looks like when it's not an unchecked block, assuming its blank
|
@@ -61,11 +141,25 @@ class Nanook
|
|
61
141
|
_parse_info_response(response)
|
62
142
|
end
|
63
143
|
|
144
|
+
# Returns boolean signalling if work is valid for the block.
|
145
|
+
#
|
146
|
+
# block.is_valid_work?("2bf29ef00786a6bc") # => true
|
64
147
|
def is_valid_work?(work)
|
65
148
|
response = rpc(:work_validate, :hash, work: work)
|
66
149
|
!response.empty? && response[:valid] == 1
|
67
150
|
end
|
68
151
|
|
152
|
+
# Republish blocks starting at this block up the account chain
|
153
|
+
# back to the nano network.
|
154
|
+
#
|
155
|
+
# Returns an Array of block hashes that were republished.
|
156
|
+
#
|
157
|
+
# ==== Example
|
158
|
+
#
|
159
|
+
# block.republish
|
160
|
+
#
|
161
|
+
# ==== Example response
|
162
|
+
# ["36A0FB717368BA8CF8D255B63DC207771EABC6C6FFC22A7F455EC2209464897E"]
|
69
163
|
def republish(destinations:nil, sources:nil)
|
70
164
|
if !destinations.nil? && !sources.nil?
|
71
165
|
raise ArgumentError.new("You must provide either destinations or sources but not both")
|
@@ -80,15 +174,44 @@ class Nanook
|
|
80
174
|
rpc(:republish, :hash, params)[:blocks]
|
81
175
|
end
|
82
176
|
|
177
|
+
# Returns boolean +true+ if the block is a pending block.
|
178
|
+
#
|
179
|
+
# block.pending? #=> false
|
83
180
|
def pending?
|
84
181
|
response = rpc(:pending_exists, :hash)
|
85
182
|
!response.empty? && response[:exists] == 1
|
86
183
|
end
|
87
184
|
|
88
|
-
|
185
|
+
# Publish the block to the nano network.
|
186
|
+
#
|
187
|
+
# Note, if block has previously been published, use #republish instead.
|
188
|
+
#
|
189
|
+
# Returns the block hash, or false.
|
190
|
+
#
|
191
|
+
# block.publish # => "FBF8B0E..."
|
192
|
+
def publish
|
193
|
+
# TODO I think this can return false or error or something?
|
89
194
|
rpc(:process, :block)[:hash]
|
90
195
|
end
|
91
|
-
|
196
|
+
alias_method :process, :publish
|
197
|
+
|
198
|
+
# Returns an Array of block hashes in the account chain ending at
|
199
|
+
# this block.
|
200
|
+
#
|
201
|
+
# See also #chain.
|
202
|
+
#
|
203
|
+
# ==== Arguments
|
204
|
+
#
|
205
|
+
# [+limit:+] Maximum number of send/receive block hashes to return
|
206
|
+
# in the chain (default is 1000)
|
207
|
+
#
|
208
|
+
# ==== Example
|
209
|
+
#
|
210
|
+
# block.successors
|
211
|
+
#
|
212
|
+
# ==== Example response
|
213
|
+
#
|
214
|
+
# ["36A0FB717368BA8CF8D255B63DC207771EABC6C6FFC22A7F455EC2209464897E"]
|
92
215
|
def successors(limit: 1000)
|
93
216
|
response = rpc(:successors, :block, count: limit)[:blocks]
|
94
217
|
Nanook::Util.coerce_empty_string_to_type(response, Array)
|
data/lib/nanook/version.rb
CHANGED
data/lib/nanook/wallet.rb
CHANGED
@@ -113,16 +113,16 @@ class Nanook
|
|
113
113
|
#
|
114
114
|
# Example response:
|
115
115
|
#
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
116
|
+
# {
|
117
|
+
# "xrb_3e3j5tkog48pnny9dmfzj1r16pg8t1e76dz5tmac6iq689wyjfpi00000000"=>{
|
118
|
+
# "balance"=>2.5,
|
119
|
+
# "pending"=>1
|
120
|
+
# },
|
121
|
+
# "xrb_1e5aqegc1jb7qe964u4adzmcezyo6o146zb8hm6dft8tkp79za3sxwjym5rx"=>{
|
122
|
+
# "balance"=>51.4,
|
123
|
+
# "pending"=>0
|
124
|
+
# },
|
125
|
+
# }
|
126
126
|
def balance(account_break_down: false, unit: Nanook::WalletAccount::DEFAULT_UNIT)
|
127
127
|
wallet_required!
|
128
128
|
|
@@ -135,7 +135,7 @@ class Nanook
|
|
135
135
|
if unit == :nano
|
136
136
|
r.each do |account, balances|
|
137
137
|
r[account][:balance] = Nanook::Util.raw_to_NANO(r[account][:balance])
|
138
|
-
r[account][:pending] = Nanook::Util.raw_to_NANO(r[account][:
|
138
|
+
r[account][:pending] = Nanook::Util.raw_to_NANO(r[account][:pending])
|
139
139
|
end
|
140
140
|
end
|
141
141
|
end
|
data/nanook.gemspec
CHANGED
@@ -27,6 +27,7 @@ Gem::Specification.new do |spec|
|
|
27
27
|
spec.add_development_dependency "rspec", "~> 3.2"
|
28
28
|
spec.add_development_dependency "rspec-collection_matchers", "~> 1.1"
|
29
29
|
spec.add_development_dependency "rspec_junit_formatter", "~> 0.3"
|
30
|
+
spec.add_development_dependency "sdoc", "~> 1.0"
|
30
31
|
spec.add_development_dependency "webmock", "~> 3.3"
|
31
32
|
|
32
33
|
spec.add_dependency "symbolized", "~> 0.0.1"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nanook
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luke Duncalfe
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-03-
|
11
|
+
date: 2018-03-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -94,6 +94,20 @@ dependencies:
|
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0.3'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: sdoc
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '1.0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '1.0'
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: webmock
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|