Commit graph

117 commits

Author SHA1 Message Date
Daniel Larimer
d3391c0fe5 #98 Implement Balance Object and Evaluator 2015-06-27 11:49:41 -04:00
Nathan Hourt
baea85ea3a Resolve #97: Add exponentially growing fees on account creation
It scales up aggressively right now; this can be adjusted later. I just
wanted to demonstrate that it works.
2015-06-26 16:43:39 -04:00
Nathan Hourt
dba009da4d Resolve #83: core_exchange_rate in feed updates on maintenance 2015-06-26 15:46:16 -04:00
Nathan Hourt
dad1ca3bee Refactor: Move limit order execution to database
This logic was previously located in limit_order_create_evaluator, but
other code may need it in the future, so it should be made available at
the database level.
2015-06-26 15:11:46 -04:00
Nathan Hourt
5b55ab71ea Resolve #94
Core exchange rate is now redundantly stored in price feed for
bitassets, and updated when the median feed changes. This allows feed
producers to update the core exchange rate. Redundant storage is
necessary, because the core exchange rate is needed for user-issued
assets as well as market issued assets.
2015-06-26 10:53:12 -04:00
Eric Frias
714161c56c Fix integer overflow warnings (errors?) 2015-06-25 15:07:51 -04:00
Daniel Larimer
bf9f81a21d Fix #90 - Prediction Market Asset precision must match backing asset precision 2015-06-25 14:46:53 -04:00
Daniel Larimer
543959fa64 Fix #92 2015-06-25 14:33:46 -04:00
Daniel Larimer
fdf8d98953 Merge branch 'master' of https://github.com/cryptonomex/graphene 2015-06-25 14:14:33 -04:00
Daniel Larimer
c566687974 fix tests properly 2015-06-25 14:14:30 -04:00
Nathan Hourt
9e5297d6de Disable fees during genesis initialization
This should be a more reliable fix to #81
2015-06-25 12:58:50 -04:00
Daniel Larimer
342abe6ca1 Fix tests 2015-06-25 12:07:39 -04:00
Daniel Larimer
ff427c709f Merge branch 'master' of https://github.com/cryptonomex/graphene 2015-06-25 11:57:55 -04:00
Daniel Larimer
4e206d3c54 #66 tweak default fees 2015-06-25 11:57:50 -04:00
Eric Frias
49acfb3bd6 Fix up application_impl's has_item() which was throwing to indicate a
missing item instead of returning false.  #55
2015-06-25 10:36:28 -04:00
Daniel Larimer
bf0ab60ceb Fix #88 If pushing generated block fails, then re-push all transactions to remove the failing transaction 2015-06-25 10:03:18 -04:00
Daniel Larimer
c4b2bb443b #85 - changing key_object from simple_index to multi_index 2015-06-24 16:08:36 -04:00
theoreticalbts
08651fc045 db_debug.cpp: Fix witness index type in debug_dump() 2015-06-23 18:05:47 -04:00
theoreticalbts
f99b02ba58 config.hpp: Implement GRAPHENE_COLLATERAL_RATIO_DENOM #70 2015-06-23 18:05:47 -04:00
Vikram Rajkumar
b63de0ad29 Fix some compiler warnings 2015-06-23 17:54:59 -04:00
Vikram Rajkumar
1e62c749af Minor evaluator cleanup 2015-06-23 17:54:59 -04:00
Nathan Hourt
cfcafcb5c2 Progress #66: Set initial fees
There is now a default value for all fees
2015-06-23 17:09:55 -04:00
theoreticalbts
0d02361af0 Clean up names of assert ops and evaluation dispatch 2015-06-23 15:15:34 -04:00
theoreticalbts
c43c71372d assert_evaluator.cpp: Remove skip_unknown_predicate flag, add max_predicate_opcode check 2015-06-23 15:15:34 -04:00
theoreticalbts
548c760e46 wip burn worker 2015-06-23 15:13:01 -04:00
Nathan Hourt
08cba191c7 Progress #66: Audit calculate_fee implementations
I've audited all the calculate_fee impls and they all should be
reasonable at this point.

TODO: Set default fee values.
2015-06-23 14:19:39 -04:00
Daniel Larimer
a0d2b18959 Issue #70 - update docs 2015-06-23 14:05:07 -04:00
Daniel Larimer
8e9b2e8ebb Issue #68 - created simple secondary index for accounts 2015-06-23 13:33:13 -04:00
Daniel Larimer
b5b9d6d053 Issue #67 - add url to delegate/witness create operation 2015-06-23 11:08:12 -04:00
Daniel Larimer
da4bf0adc2 Issue #67 - add name/url to worker create operation 2015-06-23 10:33:11 -04:00
Daniel Larimer
06a9488f8b Issue #53 - flexible vesting balance creation
Use static variant to allow the types of vesting balances to be easily
extended and the creation operation allows for many different types of
initialization parameters.

Added a check that requires a minimum claim date which allows creating
of vesting balance objects with a cliff.
2015-06-23 10:14:40 -04:00
Daniel Larimer
8ac4bc1d58 Fix #39 Refactor assert_operation
Reasons:
  1. The protocol should not depend upon implementation details such as
  how the database objects are structured or reflected
  2. The protocol should deal in abstract concepts
  3. Should use fc::datastream rather than istringstream for performance
  and memory allocation reasons
  4. Fees should be charged proportional to the size of the operation
  5. Validate on the assert operation should also perform sanity checks
  on types
  6. Protocol definition objects should never depend upon the database
  because they may be used in situations where the database and
  evaluators are not present.
  7. Reflected field names should never have '_' in them because they
  become part of the *PUBLIC* json definition.
2015-06-23 09:14:18 -04:00
Daniel Larimer
d7f7d64352 notify observes of changed objects after every pushed transaction 2015-06-22 18:11:54 -04:00
Daniel Larimer
de99437be4 remove min_market_fee due to potential attack vector with many small partial matches 2015-06-22 17:29:40 -04:00
Daniel Larimer
a1601cbc0f fix bugs 2015-06-22 15:55:50 -04:00
Daniel Larimer
21bd520f9c Merge branch 'master' of github.com:cryptonomex/graphene 2015-06-22 15:08:24 -04:00
Daniel Larimer
758d588aa1 switch to rationals 2015-06-22 15:04:19 -04:00
Nathan Hourt
3eaec849eb Progress #61: Getting witnesses/delegates by owner
Support and API are now present for retrieving witnesses and delegates
by their owners.
2015-06-22 15:03:24 -04:00
Eric Frias
db85d35b19 Fix out-of-source builds, make field_reflector report errors finding template file 2015-06-22 14:57:43 -04:00
Eric Frias
52a72cdd9f Fix win64 compile errors (ambiguous comparisons between unsigned_int and uint16) 2015-06-22 14:56:40 -04:00
theoreticalbts
da77990b72 Implement field_reflector and assert_op 2015-06-22 13:26:08 -04:00
theoreticalbts
e9acc40a7d operation_history_object.hpp: Include operations.hpp 2015-06-22 13:26:08 -04:00
theoreticalbts
9e46ed80a0 Reflect many more types 2015-06-22 13:26:08 -04:00
theoreticalbts
e934b9cf44 key_object.hpp: Move address_or_key variant to header, reflect it 2015-06-22 13:26:08 -04:00
theoreticalbts
e814c4dbeb type_id.cpp: Define space_id and type_id for all object types 2015-06-22 13:26:07 -04:00
Daniel Larimer
49b2ce8094 Merge branch 'callprice'
Conflicts:
	tests/common/database_fixture.hpp
2015-06-21 19:41:32 -04:00
Daniel Larimer
177950b791 Fix margin call price calculation 2015-06-21 19:37:14 -04:00
Daniel Larimer
08bf4ec3fe progress 2015-06-19 18:49:32 -04:00
Nathan Hourt
127ca9f8de WIP: Remove call price from call_order_update_operation 2015-06-19 18:14:23 -04:00
Daniel Larimer
f88a7682dd cheap names must have a number, dot, dash or slash 2015-06-19 16:21:47 -04:00