Nathan Hourt
99d6450473
[GUI] Implement transaction broadcasting
...
Still need to set expiration, so none of the transactions I broadcast
work yet... :( Sadly there is no testnet so I can't finish this. Oh well.
I'm sure it'll be much easier on Monday.
2015-07-31 17:56:27 -04:00
Vikram Rajkumar
8a8130f620
Fix genesis init bug; #17
2015-07-31 16:06:26 -04:00
Daniel Larimer
87d3d1a198
Update API and remove SPAM
...
subscribe_to_objects now returns the initial value of the objects, this
makes it easy for someone to fetch and subscribe in a single atomic step
rather than having to call get and then subscribe which could lead to
some inconsistencies if the object was modified after get but before
subscribe.
2015-07-31 09:53:49 -04:00
Daniel Larimer
39c99fd0a7
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-30 16:45:18 -04:00
Daniel Larimer
1b260ab37a
adding spam to detect bugs
2015-07-30 16:45:14 -04:00
theoreticalbts
9dfb0d9650
Refactor impacted_accounts into app #183
2015-07-30 12:38:59 -04:00
Daniel Larimer
8b0a22d849
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-30 09:20:51 -04:00
Daniel Larimer
15bcd5e2a7
optionally subscribe to full account
2015-07-30 09:20:49 -04:00
Nathan Hourt
82ea3c1edd
[GUI] Add transaction signing
...
TODO: encrypt the memo (some work to facilitate this is done in this
commit)
2015-07-29 17:56:37 -04:00
Vikram Rajkumar
4d05f09613
Update submodules
2015-07-29 13:53:21 -04:00
theoreticalbts
1b5a7cb213
Implement max_auth_exceeded exception, internal exc framework, small refactor
...
Refactor tasks:
- Delete obsolete, commented-out implementation of verify_authority
- Make verify_authority_accounts an implementation detail of account_evaluator.cpp
- Create internal_exception macros / header
- Implement max_auth_exceeded and auth_account_not_found exceptions
2015-07-28 17:10:52 -04:00
theoreticalbts
35ab119b26
Fix throwing incorrect exception type
2015-07-28 17:10:52 -04:00
theoreticalbts
36e155bc0c
Implement tx_duplicate_sig exception, fix committee_authority test
2015-07-28 17:10:52 -04:00
theoreticalbts
54103da9a8
Implement tx_irrelevant_sig exception, fix assert_op_test
2015-07-28 17:10:52 -04:00
theoreticalbts
5b9cd9122e
Implement skip_slots
2015-07-28 11:58:22 -04:00
theoreticalbts
66c8cedf52
db_block.cpp: Assert legal slot_num in generate_block() to match header validation assert
2015-07-28 11:58:22 -04:00
theoreticalbts
0d0be55e10
db_witness_schedule.cpp: Implement genesis as special case in get_slot_time()
2015-07-28 11:58:22 -04:00
theoreticalbts
f80219fd52
Implement maintenance_flag in dynamic_global_properties
2015-07-28 11:58:22 -04:00
Daniel Larimer
fa9b71a463
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-27 17:50:24 -04:00
Daniel Larimer
86564e2a1b
Resolve #207 Add API to get required fees.
2015-07-27 17:50:02 -04:00
Nathan Hourt
5d7ae4e6a8
[GUI] More work to support transactions
...
- Refactor GUI with FormBase.qml
- Fix memo handling in TransferOperation
- Add TransactionConfirmationForm.qml which will eventually display a
transaction for confirmation
2015-07-27 16:01:22 -04:00
Eric Frias
6d2b1a3648
Win32 compile fixes (missing includes, workaround for bugs in c++ parser)
2015-07-27 12:09:34 -04:00
Daniel Larimer
619e8dd3a7
updating fc with tap complete for cli wallet
2015-07-27 09:11:45 -04:00
Daniel Larimer
f371f98cd4
Fix #203 - market history plugin config supports multiple buckets
2015-07-27 08:19:27 -04:00
Daniel Larimer
662dd04e45
Fix #206 , adding api to return available vesting balance
2015-07-24 17:28:58 -04:00
Daniel Larimer
7e142eb4d6
Wallet Blind Transfer Implementation
...
Improve Pretty Printing of Operations
Fix bug preventing wallet from being unlocked after saving while locked.
Transfer from public to blind
Transfer from blind to blind
Transfer from blind to public
Blind Account History
2015-07-24 17:02:06 -04:00
Daniel Larimer
e4ff106cd4
Partial Wallet support for Blind Transfers
...
public->blind
blind->blind
TODO: blind->public
2015-07-24 11:37:37 -04:00
Daniel Larimer
c740d2b3c8
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-23 18:47:32 -04:00
Daniel Larimer
57ca0c0e39
Wallet Support for Some Confidential Transactions
...
Support public account to blinded balance
Support receiving blinded balance given confirmation
Implement but not test blind to blind transfers.
2015-07-23 18:46:06 -04:00
theoreticalbts
430bbe42ab
database.hpp: Make open() non-templated, move implementation out of header
2015-07-23 16:41:17 -04:00
Vikram Rajkumar
5d3bd282c8
Try to fix linking error; #202
2015-07-23 15:09:38 -04:00
Vikram Rajkumar
6be71b2975
Update fc submodule
2015-07-23 15:07:03 -04:00
Daniel Larimer
efe948ceaf
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-23 14:17:24 -04:00
Daniel Larimer
2aac4839ed
partial work on blinded balances in cli wallet
2015-07-23 13:57:18 -04:00
theoreticalbts
dab74132f2
CMakeLists.txt: Reorder so database is first to build
2015-07-23 13:37:06 -04:00
theoreticalbts
cd6b574141
types.hpp: Move voting stuff to separate header
2015-07-23 13:37:06 -04:00
Vikram Rajkumar
590f10a382
Add BTS1 key import format
2015-07-23 11:57:50 -04:00
Vikram Rajkumar
c4fa9de1f8
Fix build
2015-07-23 11:53:36 -04:00
Vikram Rajkumar
af3b7dd344
Unrevert fc submodule
2015-07-23 11:53:36 -04:00
Vikram Rajkumar
c14ac442f5
Simplify genesis state; #17
2015-07-23 11:53:36 -04:00
Daniel Larimer
36ba2e1d45
integrate wallet with GrapheneApplication and Account
2015-07-23 10:56:07 -04:00
Daniel Larimer
0911bb605c
Implement Wallet.hpp API
2015-07-23 09:32:29 -04:00
Daniel Larimer
c9688ae051
Fix #200 Fee Schedule is now validated when chain_paramters are validated
2015-07-22 18:40:12 -04:00
Nathan Hourt
bfa3e71393
Add return value to transaction::visit
2015-07-22 17:38:48 -04:00
theoreticalbts
44e7a8cb46
transaction.cpp: Make depth parameter uint32_t, silence compiler warning
2015-07-22 17:13:45 -04:00
theoreticalbts
83c8b4c5f9
transaction.cpp: Implement minimize_required_signatures and nonminimal_sig_test
2015-07-22 17:13:45 -04:00
Daniel Larimer
6f19268ffd
Merge branch 'confidential'
2015-07-22 16:24:07 -04:00
theoreticalbts
9b6998af6d
config.hpp: Increase GRAPHENE_MIN_ACCOUNT_NAME_LENGTH to 3
...
Length requirement is enforced by RFC 1035 grammar. Use a compiler
error to tell anyone changing config.hpp that any value for this
constant smaller than 3 is unsupported by the implementation.
2015-07-22 16:01:14 -04:00
theoreticalbts
de435d9d51
whitespace fixes
2015-07-22 16:01:13 -04:00
Daniel Larimer
be65c277c9
Implement and Test Confidential Transactions
...
This checkin contains a fully functional confidential transaction
integration with passing unit tests.
2015-07-22 14:45:13 -04:00
theoreticalbts
3e5d3495e1
Remove some dead code
2015-07-22 13:18:09 -04:00
Nathan Hourt
3196eb75a7
Fixes
2015-07-22 13:17:49 -04:00
Nathan Hourt
63222183cd
Resolve #146 in fc
2015-07-22 12:11:49 -04:00
Nathan Hourt
81d2679db9
Cut back on log spam during resyncing
2015-07-22 11:17:30 -04:00
Nathan Hourt
9a3a6a5234
Set core asset issuer to null account
...
No one should be able to interfere with the behavior of core asset, so
codify this.
2015-07-22 10:09:07 -04:00
Nathan Hourt
ce84de41be
[GUI] Fix object update notification handling
2015-07-21 17:56:52 -04:00
theoreticalbts
d343a71c56
asset_evaluator.cpp: Enforce issuer permissions #176
2015-07-21 16:07:14 -04:00
Daniel Larimer
3e41f726a7
Issue #45 Market Subscription Standardization
...
When subscribing to markets the callback will now receive something that
looks like this:
[ "REMOVED ID1", "REMOVED ID2", ...,
{ "id": "UPDATED ID3", data... },
{ "id": "UPDATED ID4", data... },
...
[ FILL_OPERATION_TYPE_ID, { fill order operation data } ],
[ FILL_OPERATION_TYPE_ID, { fill order operation data } ],
[ FILL_OPERATION_TYPE_ID, { fill order operation data } ],
[ FILL_OPERATION_TYPE_ID, { fill order operation data } ]
]
When ever an order is removed from the order book, its ID will be
included as a string. When an order is modified the new order data is included as
an object. And the operations describing how orders were matched and
what fees are paid will be included as an operation, aka array.
Also added means to unsubscribe from full account data (issue #166 )
2015-07-21 15:51:22 -04:00
Daniel Larimer
dffc83cca9
Refactor full account subscriptions
...
When subscribing to an account via the get_full_account API it will
start streaming any object relevant to the account that is added,
removed, or modified.
2015-07-21 15:19:52 -04:00
Daniel Larimer
b3d299d241
#170 Make sure accounts cannot be updated with impossible auhtority settings
2015-07-21 09:23:14 -04:00
Daniel Larimer
a55b348e6c
#170 Make sure TEMP ACCOUNT cannot be updated
2015-07-21 08:34:38 -04:00
Daniel Larimer
c77cb49cc2
adding new API calls that can be used to check required signatures on transactions
2015-07-20 18:27:09 -04:00
Vikram Rajkumar
d0b8c66aad
Fix Linux Clang build with missing includes; resolve #174
2015-07-20 14:57:08 -04:00
Daniel Larimer
e4c29cbe78
#166 Define type-safe API for get_full_account()
2015-07-17 22:58:36 -04:00
Daniel Larimer
517ea70c95
#169 - Removing Bulk Discounts
2015-07-17 22:07:07 -04:00
theoreticalbts
c67acc0cf5
uia_tests.cpp: Implement transfer_restricted_test
2015-07-17 20:48:49 -04:00
Eric Frias
7388a85cf2
Prevent the wallet from generating duplicate transactions when you
...
execute the same command twice in quick succession, Fix #165
2015-07-17 17:29:04 -04:00
Nathan Hourt
0fe9276c44
[GUI] Refactor ClientDataModel, implement account balances
2015-07-17 16:06:39 -04:00
theoreticalbts
d52461b77b
operation_tests.cpp: Implement reserve_asset_test
2015-07-17 15:54:18 -04:00
Daniel Larimer
46fae5cbbf
make max authority check depth configurable by delegates
2015-07-17 09:41:08 -04:00
Daniel Larimer
2492df752d
Merge branch 'auth_refactor'
2015-07-17 01:02:29 -04:00
Daniel Larimer
8c6e0b9e55
Refactor Authority Checking
...
transaction_evaluation_state no longer tracks authority validation.
Authority validation is now compeltely independent of the database.
2015-07-17 00:41:43 -04:00
Daniel Larimer
b08b6cb553
Partial work toward auth refactor
2015-07-16 18:13:11 -04:00
Nathan Hourt
723b11533b
Progress #166 : Initial implementation of get_full_accounts API call
2015-07-16 17:04:35 -04:00
Daniel Larimer
dc8849f23b
Active key is not required when owner key present
...
- when updating account there is no need to sign with the active key if
the owner has signed.
- when updating an account the active key is enough to update the
active key.
2015-07-16 16:09:32 -04:00
theoreticalbts
3cdcf5139f
market_evaluator.cpp: Fix call_order_update_evaluator exception logic
2015-07-16 15:32:58 -04:00
Eric Frias
11a5d2b620
When the p2p code processes a block that contains transactions
...
we haven't seen, avoid fetching those transactions separately
2015-07-16 15:31:52 -04:00
Daniel Larimer
8ff2c94c52
Update API to address #164
2015-07-16 14:28:23 -04:00
Vikram Rajkumar
46f35d0f89
Fix witness block production failure on block 1; resolve #163
2015-07-16 13:46:17 -04:00
Vikram Rajkumar
d9855f9023
Clean up some TODOs; #77
2015-07-15 18:15:41 -04:00
Nathan Hourt
b433f90a55
[GUI] Use assets and balances in transfer form
2015-07-15 17:55:16 -04:00
theoreticalbts
2ec17e2254
wallet.cpp: Use reflection in get_prototype_operation()
2015-07-15 17:52:57 -04:00
theoreticalbts
a4496eccb8
Fix #162 by adding an active authority to tests that use account_create_op directly
2015-07-15 17:22:47 -04:00
theoreticalbts
8aa048661f
Remove unused undo_block and undo_transaction skip flags
2015-07-15 17:09:53 -04:00
Eric Frias
b6a5119226
Allow using hostnames for seed nodes
2015-07-15 15:48:01 -04:00
Eric Frias
8944facd41
Fix signed/unsigned mismatch warning
2015-07-15 14:53:43 -04:00
Daniel Larimer
9671a92c43
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-15 14:18:32 -04:00
Daniel Larimer
7f54d3d077
Issue #160 - Dynamic Undo History / Minority Fork
...
The blockchain now has a minimal participation requirement that can only
be overridden with checkpoints. Any time participation falls below a
minimal level no new blocks may be added.
Currently it requires 66% participation and tolerates short periods of
time below 66% participation with a maximum of 500 consecutive blocks
missed. For every two blocks produced 1 can be missed with a slack of
999 bias.
2015-07-15 14:13:24 -04:00
theoreticalbts
a751d90e00
Move witness pay to VBO, update test #142
2015-07-15 12:36:26 -04:00
Daniel Larimer
e5f8d0f548
removing unecessary field
2015-07-14 18:50:03 -04:00
Daniel Larimer
cfa95a3f57
Issue #157 - make trx expiration absolute
...
This is done to comply with the policy that transactions should be self
describing and not depend upon implied state. This makes things easier
for everyone to understand exactly when a transaction will be invalid
without having to refer to chain state.
2015-07-14 18:46:58 -04:00
Daniel Larimer
da254cdbff
Fix #158 - block summary database now only has 2^16 entries
2015-07-14 17:56:42 -04:00
Daniel Larimer
b9f6ee4f2c
adding asset fetching
2015-07-14 17:36:18 -04:00
Daniel Larimer
d1c3c7a698
Issue #157 - TAPOS Refinements
...
1. Implement a TaPoS assert operation predicate that offers full block ID
validation for transactions that want the added security. This is only
required for transactions that are of high value and transfer control of
funds to a newly created identifier and where the witnesses cannot be
trusted.
2. Remove the full block ID from the transaction digest generation.
2015-07-14 17:28:26 -04:00
Vikram Rajkumar
04392d3598
Fix witness production with 1 second block intervals
2015-07-14 15:23:55 -04:00
Eric Frias
2f97a84cb2
Update fc submodule to fix win32 builds
2015-07-14 10:49:45 -04:00
Daniel Larimer
98e761c9c2
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-13 17:24:29 -04:00
theoreticalbts
c019f18bd4
Implement recent_slots_filled and use it to measure witness participation
2015-07-13 17:02:00 -04:00
theoreticalbts
78f0cfa5cc
account_evaluator.cpp: Remove unused global_property_object
2015-07-13 16:48:16 -04:00
Daniel Larimer
0beeac94aa
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-13 16:23:22 -04:00