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
Daniel Larimer
8faec763c8
Names must now be unique.
2015-07-13 16:23:12 -04:00
Vikram Rajkumar
2f429e07f1
Rename bad references to delegate -> committee member; #147
2015-07-13 16:08:17 -04:00
Vikram Rajkumar
6043586d15
Rename bad references to delegate -> witness; #147
2015-07-13 16:08:17 -04:00
Vikram Rajkumar
70b77be3bc
Rename bad references to genesis account -> committee account; #147
2015-07-13 16:08:16 -04:00
Vikram Rajkumar
12d8f3732e
Minor
2015-07-13 16:08:16 -04:00
Vikram Rajkumar
cc300937c7
Update submodules
2015-07-13 16:08:16 -04:00
theoreticalbts
e876c5fb81
Organize temporary files under GRAPHENE_TEMPDIR (or /tmp/graphene-tmp if undefined)
2015-07-13 15:15:55 -04:00
theoreticalbts
eb4f39e78c
wallet.cpp: Set correct expiration in register_account
2015-07-13 12:33:52 -04:00
theoreticalbts
38c68e1f5d
wallet.cpp: Implement suggest_brain_key
2015-07-13 12:33:52 -04:00
theoreticalbts
e201e59b3d
Define GRAPHENE_MIN_BLOCK_INTERVAL and use it to fix minimum_time_of_last_offered_block logic #154
2015-07-13 12:33:52 -04:00
Daniel Larimer
a05d88b044
Fix #151 - Witnesses do not produce consecutively
...
- added an option (on by default) to prevent a witness from signing two
blocks in a row because this most likely indicates they have been cut
off from the network.
- added an option where a witness will not produce a block if the
witness participation rate is below a configurable threshold (default
to 33%)
2015-07-13 09:47:03 -04:00
Daniel Larimer
068e579a5f
Update error message for #156
...
Made the error more human friendly.
2015-07-13 08:23:51 -04:00
Daniel Larimer
e8d2b45d67
improve authority checking performance, adding automatic transaction signing helpers
2015-07-10 15:56:44 -04:00
Nathan Hourt
0f6e5a74cd
Progress #148 : early implementation of solution 2
...
Needs testing in all the different scenarios, but we no longer fail to
start when resyncing.
2015-07-10 14:17:16 -04:00
Daniel Larimer
c0da987b02
This file is no longer needed!
2015-07-10 14:08:31 -04:00
Eric Frias
8245b18c98
Win32 compile fixes
2015-07-10 11:55:12 -04:00
Daniel Larimer
49937daeb8
Rename delegate_signature->witness_signature #147
...
- changed secret hash of block headers from 224 to 160 to save 16 bytes
per header which will add up to 1 MB per day in savings.
2015-07-09 18:11:52 -04:00
Daniel Larimer
a799f064d4
Adding extension points #141
2015-07-09 17:29:30 -04:00
Daniel Larimer
04b8820b3b
Merge branch 'master' into fee_refactor
2015-07-09 16:34:56 -04:00
Daniel Larimer
10bd652168
fix uia_transfer test, update transfer error messages
2015-07-09 16:21:40 -04:00
Daniel Larimer
014e6e7b79
fix uia_fees test
2015-07-09 16:05:57 -04:00
Daniel Larimer
9e150df605
Fix withdraw_witness_pay test
2015-07-09 15:55:10 -04:00
Daniel Larimer
48797c6e93
updating error messages
2015-07-09 15:40:19 -04:00
Daniel Larimer
1fbdbc50e0
fix balance claim authority requirements
2015-07-09 15:28:39 -04:00
Daniel Larimer
a164fbe8fa
fix proposal authority
2015-07-09 15:14:44 -04:00
theoreticalbts
a41384d4b1
asset_ops.hpp: Change bitasset_options member name to bitasset_opts to fix gcc compile
2015-07-09 14:52:22 -04:00
theoreticalbts
6899202892
config.hpp: Fix warning
2015-07-09 14:52:22 -04:00
Daniel Larimer
7ead4f3b2d
adding checkpoints #121 to application config
2015-07-09 14:19:47 -04:00
Daniel Larimer
c49fbd87e7
adding checkpoints #121 to database
2015-07-09 14:09:21 -04:00
theoreticalbts
ae7b904e4a
Clean up some unused files
2015-07-09 11:59:06 -04:00
Daniel Larimer
9699be84e6
Progress on #144
2015-07-09 11:40:37 -04:00
Daniel Larimer
c8f200868c
fix zero all fees #144
2015-07-09 10:15:53 -04:00
Daniel Larimer
c8f0ea4abe
It now builds #144
2015-07-09 09:56:50 -04:00
Eric Frias
5dea2825b5
Win32 compile fixes
2015-07-09 09:51:15 -04:00
Daniel Larimer
786c65d4b4
Merge branch 'master' into fee_refactor
2015-07-09 08:43:45 -04:00
Daniel Larimer
fdcf821c41
Progress on #144 - refactoring fee schedule
2015-07-08 18:45:53 -04:00
Vikram Rajkumar
629d884b84
Share some private keys for testnet balances
2015-07-08 18:10:38 -04:00
Vikram Rajkumar
1023ddee92
Fix genesis account memo key init; #17
2015-07-08 18:10:38 -04:00
Nathan Hourt
d64c9154a7
Progress #17 : Lazy load genesis state
...
This speeds up startup for witness_node when starting on a database
which is already initialized.
2015-07-08 17:39:34 -04:00
theoreticalbts
9c4ac2e064
exceptions: Add some exceptions
2015-07-08 16:48:24 -04:00
Nathan Hourt
8d3fd20db2
Progress #17 : Fix account key genesis initialization
2015-07-08 16:45:02 -04:00
Daniel Larimer
baf5531238
Refactored chain library
...
- remove circular dependency with fee_schedule
- unitiy build db_* as database.cpp
- move protocol definitions in separate directory
- combined some objects/evaluators
- combined limit/call evaluator/objects into market_evaluator.*
2015-07-08 16:39:23 -04:00
Nathan Hourt
6436f0142f
Fix witness/delegate count voting; fix unclean witness shutdown on mac
2015-07-08 16:00:22 -04:00
theoreticalbts
2f9e636618
db_maint.cpp: Avoid implementation-defined ordering when votable objects tie for votes
2015-07-08 15:01:25 -04:00
Nathan Hourt
5a01e255e2
Progress #17 : Fix genesis witness list
2015-07-08 14:55:51 -04:00
theoreticalbts
d4e4854eb6
exceptions: Implement missing_auth exceptions
2015-07-08 14:29:07 -04:00
theoreticalbts
8ff25b813f
Begin implementation of new exception framework #113
2015-07-08 13:53:08 -04:00
Vikram Rajkumar
a735198ac0
Update submodules
2015-07-08 11:32:15 -04:00
theoreticalbts
7bb608a305
types.hpp: Remove parameter_extension as it breaks js_operation_serializer
2015-07-07 22:28:43 -04:00
Nathan Hourt
ed38488155
Fix witness_node
2015-07-07 19:35:33 -04:00
Daniel Larimer
90e04d0290
Refactoring fee schedule to make things more flex
...
- this code does not compile, there are now circular references that
need to be resolved.
2015-07-07 18:46:27 -04:00
Nathan Hourt
3d60449c6e
Progress #8 : Test shorts and force settles
2015-07-07 17:39:45 -04:00
theoreticalbts
d31e0108b4
app: Implement username / password based API access #139
2015-07-07 16:04:22 -04:00
theoreticalbts
1dd7316d44
Split network API into network_broadcast_api and network_node_api #118
2015-07-07 16:04:04 -04:00
Vikram Rajkumar
9b5bd12c67
Add genesis_state_type::initial_timestamp; #17
2015-07-07 15:37:31 -04:00
Vikram Rajkumar
38956692ee
Fix a couple misleading names
2015-07-07 15:06:06 -04:00
Vikram Rajkumar
2241fda3af
Add genesis_state_type::initial_worker_type; #17
2015-07-07 14:02:18 -04:00
Nathan Hourt
e6e7f70ff9
Resolve #98 : Finish testing of genesis balances
2015-07-07 13:59:07 -04:00
theoreticalbts
efc1505612
application.cpp: Remove commented-out duplicate of create_example_genesis() logic
2015-07-07 13:07:39 -04:00
Vikram Rajkumar
68744c9de0
Initialize genesis witnesses with default secret commitment; #17 , #23
2015-07-07 12:36:31 -04:00
Vikram Rajkumar
70b34aa5d8
Unrevert submodules
2015-07-07 12:36:30 -04:00
Daniel Larimer
e873d3e650
Update balance evaluator / authority checks
...
- move balance_claim_evalautor implementation from header
- remove authority check from balance_claim evaluator, added to
other_auths defined by the operation
2015-07-07 11:39:16 -04:00
Daniel Larimer
93aff09685
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-07 10:57:29 -04:00
Daniel Larimer
b1dd41ff3a
Refactor get_required_auths on operations
2015-07-07 10:57:01 -04:00
Vikram Rajkumar
d240b6737f
Unrevert submodules
2015-07-07 10:40:34 -04:00
Eric Frias
beb2e47832
Prevent deref of invalid optional on wallet import of malformed WIF key
2015-07-07 09:22:15 -04:00
Eric Frias
ce729ba9f9
Add wallet api function to vote for number of witnesses/delegates
2015-07-07 09:22:15 -04:00
Eric Frias
b9b4aa08de
Add command to print display raw operation structures
2015-07-07 09:22:15 -04:00
Daniel Larimer
86df9c04fd
Progress #141 - defining extension parameters
2015-07-07 09:02:36 -04:00
Daniel Larimer
1eb273118b
Fix #136 add serialization to blockchain params
2015-07-07 08:31:47 -04:00
Nathan Hourt
24496932d4
Progress #98 : add some vesting genesis balance testing
2015-07-06 17:40:23 -04:00
Nathan Hourt
ab740d6aaa
Make memo_test fail if serialization format changes
...
If this happens, the web guys need to be notified of the new format.
2015-07-06 17:40:23 -04:00
Daniel Larimer
7d6d7066c2
merge
2015-07-06 16:55:28 -04:00
Daniel Larimer
c537e41fcb
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-06 16:50:36 -04:00
theoreticalbts
f175b4561c
Properly re-initialize witness scheduler state after a long block gap
2015-07-06 15:51:43 -04:00
Vikram Rajkumar
81df85aed7
Fix BTS genesis import error; #17
2015-07-06 15:00:56 -04:00
Vikram Rajkumar
df03598be9
Do not capture genesis_state on exception
2015-07-06 15:00:52 -04:00
Vikram Rajkumar
fc7fb86cd2
Temporarily allow import BTS address/pubkey prefixes; #17
2015-07-06 15:00:52 -04:00
Vikram Rajkumar
4a7cbaf610
Set default genesis fees to 1 GPH; #17
2015-07-06 15:00:48 -04:00
Daniel Larimer
8ccafe0f03
Refactor fee schedule for extensibility
2015-07-06 14:56:35 -04:00
Vikram Rajkumar
b89ff4e6b1
Some {asset, price} operator cleanup; fix #134
2015-07-06 14:18:47 -04:00
Nathan Hourt
c00e20268d
Tweaks circa genesis, should not affect behavior
2015-07-06 14:00:39 -04:00
Nathan Hourt
6ab59f63a7
Resolve #133 : allow creation of example genesis json
2015-07-06 14:00:39 -04:00
theoreticalbts
7c30e44dc9
Fix is_valid_name() bugs, make it RFC 1035 compliant, update unit test, fix #15
2015-07-06 13:01:24 -04:00
Vikram Rajkumar
9e820c648b
Update submodules
2015-07-06 12:17:18 -04:00
Eric Frias
423eccf4a4
Win32 compile fixes, no functional changes
2015-07-05 17:58:24 -04:00
Eric Frias
3ee8b0c2a4
Prevent duplicate signatures when importing balances #129
2015-07-05 16:04:00 -04:00
Daniel Larimer
c0c6022338
Fix #130 Black Swans Settle at Price Feed
2015-07-03 17:07:24 -04:00
Eric Frias
cc1348bf91
Prevent the wallet from complaining when creating a new account, it
...
was falsely reporting that someone else had registered your account
first. I still don't think it's working correctly, but it's
better than it was.
2015-07-02 20:05:31 -04:00
Nathan Hourt
9cb9d2e07f
Progress #98 : restrict withdrawal rate of vesting genesis balances
2015-07-02 15:40:04 -04:00
theoreticalbts
256b95ac5e
use FC for endian reversal to avoid Boost 1.58
2015-07-02 15:33:15 -04:00
Vikram Rajkumar
4a84892981
Fix build errors
2015-07-02 13:04:28 -04:00
Vikram Rajkumar
4d176e73b2
Some linear vesting cleanup
2015-07-02 12:30:11 -04:00
Daniel Larimer
5a41114d94
#125 Replace ntohl with boost::endian::endian_reverse
2015-07-02 12:28:15 -04:00
Daniel Larimer
871aa734ae
Update documentation and fix error messages, Fix #127
2015-07-02 12:11:43 -04:00
Daniel Larimer
68fabe1464
Progress #127 - importing balances
2015-07-02 11:18:52 -04:00
Daniel Larimer
3d220e0df6
removing platform specific header, see #125
2015-07-02 10:55:31 -04:00
Eric Frias
a480912110
Add missing include for htonl on linux, #125
2015-07-02 10:49:13 -04:00
Daniel Larimer
d66ee4c8cc
remove htonl from memo checksum when it appears to provide no obvious benefit
2015-07-02 10:04:07 -04:00
Daniel Larimer
fefa0f65f8
Issue #106 - Removing KeyObject
...
- this is a major refactor of the code and may have broken some behavior
in the wallet or witness nodes.
- this commit changes the serialization of operations
- the chain_tests pass
2015-07-02 01:52:45 -04:00
Daniel Larimer
07f621cd65
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-01 18:17:55 -04:00
Daniel Larimer
8efa2e6738
Progress auditing TODOs #108 , upgrade boost 1.58
2015-07-01 18:17:49 -04:00
Eric Frias
acd595f889
Add missing functions for registering delegates
2015-07-01 17:47:39 -04:00
Nathan Hourt
e9b015b768
Add missing header. Derp
2015-07-01 17:25:06 -04:00
Nathan Hourt
66c9606652
Progress #17 : Add assets, initial witness count to genesis state
2015-07-01 17:18:53 -04:00
Daniel Larimer
bb71e1933b
Implement #103 - Override Transfers by Issuer
2015-07-01 16:21:18 -04:00
Daniel Larimer
17c999ecd5
temporary hack to resolve #118
2015-07-01 15:42:21 -04:00
Daniel Larimer
2257e5da6c
#108 Rename Burn to Reserve
2015-07-01 14:43:17 -04:00
Daniel Larimer
683fb6fe32
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-01 14:05:48 -04:00
Daniel Larimer
4bbaad02a7
Progress on Burn, Reserve, Issue, Retire #108
2015-07-01 14:05:42 -04:00
Nathan Hourt
f29eaa92e2
Fix all outstanding unexpected test failures
2015-07-01 13:53:07 -04:00
Daniel Larimer
e336691e59
Fix #116 and fix build
2015-07-01 13:51:35 -04:00
Daniel Larimer
1d18fe58be
Merge branch 'master' of github.com:cryptonomex/graphene
2015-07-01 12:25:41 -04:00
Daniel Larimer
be9c771254
Fix #116 Verify Database Serialization Version
2015-07-01 12:25:39 -04:00
Nathan Hourt
5f5d819a1f
Progress #98 : Add public key to balance_claim_operation
2015-07-01 12:10:21 -04:00
Nathan Hourt
1c8e31c34a
Fix 2 of the failing tests
2015-07-01 12:10:20 -04:00
Eric Frias
609f5a746e
Quiet harmless compiler warnings
2015-07-01 11:16:25 -04:00
Eric Frias
d04e452266
Prevent writing past the end of an array when tallying witness/delegate votes
2015-07-01 09:56:37 -04:00
Eric Frias
fd94046eb6
Fix integer overflow errors, work around msvc parser bugs.
2015-06-30 18:50:58 -04:00
Daniel Larimer
ce3fbbf93e
Add checks to verify fill_orders #105
2015-06-30 18:48:40 -04:00
Daniel Larimer
18a99584a2
Start #116 Index Version Checking
...
- adding changes for #115 that didn't make the last commit
2015-06-30 18:40:46 -04:00
Daniel Larimer
187ceb28b6
Merge branch 'master' of github.com:cryptonomex/graphene
2015-06-30 18:22:25 -04:00
Daniel Larimer
70964b55e5
Fix #115 Claiming BTC and PTS balances
2015-06-30 18:20:12 -04:00
Eric Frias
9856d5e8fd
Fix CLI commands for creating witnesses, add commands for listing
...
witnesses, registering witness url.
Derive memo, witness, etc. keys from the active key.
Make witness_create_operation accept relative key identifiers.
Prevent wif_to_key from throwing on invalid base58 input.
Make witness_node accept witness keys in WIF format.
2015-06-30 17:54:19 -04:00
Eric Frias
6aa9264477
Make asset precision uint8 everywhere (it was defined as a uint64 and
...
referenced as a signed short in some places, I think these were
artifacts from when precision was stored as 10^x instead of x.
2015-06-30 17:54:19 -04:00
Nathan Hourt
210c109acf
Progress #17 : Create vesting balances in genesis
2015-06-30 17:47:40 -04:00
Daniel Larimer
c41f1057d5
Merge branch 'master' of github.com:cryptonomex/graphene
2015-06-30 17:34:49 -04:00
Daniel Larimer
ede41d6f99
fix warning, add debug for svk
2015-06-30 17:34:46 -04:00
Vikram Rajkumar
49d5d276a1
Fix compiler warning
2015-06-30 17:28:45 -04:00
Daniel Larimer
9dc7189dd6
adding ability to receive a callback when a broadcast transaction is actually included in a block
2015-06-30 17:28:16 -04:00
theoreticalbts
5f5e761ca8
db_block.cpp: Fix tapos rollover logic
2015-06-30 17:07:21 -04:00
Nathan Hourt
c530867933
Progress #17
...
- Add initial support for vesting genesis balances
- Add owner/active keys to genesis accounts
- Cleanup circa balance_object and evaluator
2015-06-30 17:05:17 -04:00
Daniel Larimer
a05a13b20e
Merge branch 'master' of github.com:cryptonomex/graphene
2015-06-30 15:13:23 -04:00
Daniel Larimer
e161e5a9fc
Issues #112 Verifying all signatures are used
...
- refactor how signatures are stored on the transaction, removing key_id
and extra_signatures maps and replacing with a vector
- verify that each key only signs one time
- update tests to handle stricter policies on signatures
2015-06-30 15:11:26 -04:00