Commit graph

234 commits

Author SHA1 Message Date
theoreticalbts
1d2dc6abda cli_wallet: Implement propose_parameter_change to more easily make proposals 2015-08-25 18:02:52 -04:00
Daniel Larimer
0532661937 extra performance while reindexing 2015-08-24 18:50:09 -04:00
Daniel Larimer
2464b788ad improve reindexing performance 2015-08-24 17:57:44 -04:00
Daniel Larimer
4228360409 adding extra indexing of accounts by address auths 2015-08-20 15:19:15 -04:00
Daniel Larimer
2f0065d593 genesis file specifies 101 min 2015-08-20 13:23:25 -04:00
Daniel Larimer
714261b02a merging changes 2015-08-20 08:49:18 -04:00
Daniel Larimer
8a9120e517 increasing the default minimum number of witnesses to 101 for testing 2015-08-20 08:47:38 -04:00
Nathan Hourt
eeeab17477 Polish out-of-order-block handling, write test case 2015-08-19 13:07:13 -04:00
Daniel Larimer
15c99bd65b Address #247 - out-of-order blocks in fork db
- with this change the fork database now caches blocks that do not link
 and attempts to link the unlinked blocks after every new block is
 successfully linked.

 - with this change the fork database only tracks blocks as far back as
 the undo history allows.  This significantly reduces memory usage when
 there is high witness participation.
2015-08-19 09:47:10 -04:00
Nathan Hourt
2244e467ed Fix whitespace 2015-08-17 16:38:55 -04:00
theoreticalbts
2212cfe95b config.hpp: Remove unused constants GRAPHENE_DEFAULT_NUM_WITNESSES, GRAPHENE_DEFAULT_NUM_COMMITTEE 2015-08-17 15:21:55 -04:00
theoreticalbts
4ecdea1ce2 Move min_witness_count and min_committee_member_count from config.hpp to chain_properties #235 2015-08-17 15:21:55 -04:00
theoreticalbts
a888c81ac4 worker_evaluator.hpp: Explicitly cast types in signed subtraction 2015-08-17 15:21:55 -04:00
theoreticalbts
29b7f343a6 Remove chain_id from global_property_object 2015-08-17 15:21:55 -04:00
theoreticalbts
3a7e65c888 chain_property_object: Implement chain_property_object as container for unchangeable properties set at genesis #238 2015-08-17 13:38:35 -04:00
Daniel Larimer
c0c36ca639 votable objects now keep track of their most recent vote count 2015-08-14 17:56:21 -04:00
Daniel Larimer
80602a1f7b adding api to query vote objects by id 2015-08-13 09:22:05 -04:00
theoreticalbts
96fb8f60c2 fee_tests.cpp: Make sure validation actually enforces nonzero fees 2015-08-12 14:26:48 -04:00
theoreticalbts
dffd010e8a Implement and expose get_config() to allow API access to compile constants #229 2015-08-11 15:22:12 -04:00
theoreticalbts
f6c99f96b7 genesis_state.hpp: Specify definite size for initial_active_witnesses 2015-08-11 15:22:12 -04:00
theoreticalbts
3eedabbac2 Compute scaled precision at compile time, use in tests (fixes failures by prev commit) 2015-08-11 15:04:48 -04:00
theoreticalbts
44c174ad4a config.hpp: Remove CORE constant 2015-08-11 13:14:57 -04:00
Nathan Hourt
a4e5a03973 Resolve #161: Fix account creation fee scaling 2015-08-10 16:39:09 -04:00
theoreticalbts
2d1e76aed0 Get rid of chain ID global, move chain_id_type to types.hpp 2015-08-06 12:56:40 -04:00
theoreticalbts
2e9876b557 Implement chain-locked transactions 2015-08-06 12:56:37 -04:00
theoreticalbts
9f9c1e7895 egenesis: Initial implementation of embedded genesis 2015-08-06 12:42:59 -04:00
theoreticalbts
4e3a27156e genesis_state.hpp: Fix missing include 2015-08-06 12:40:53 -04:00
theoreticalbts
9dfb0d9650 Refactor impacted_accounts into app #183 2015-07-30 12:38:59 -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
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
f80219fd52 Implement maintenance_flag in dynamic_global_properties 2015-07-28 11:58:22 -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
theoreticalbts
cd6b574141 types.hpp: Move voting stuff to separate header 2015-07-23 13:37:06 -04:00
Vikram Rajkumar
c14ac442f5 Simplify genesis state; #17 2015-07-23 11:53:36 -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
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
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