This also reverts our local LevelDB modification to write to .sst files instead of .ldb files (done in order to retain backward compatibility). As all Bitcoin Core releases since 0.9 read from both .sst and .ldb, we can safely revert to the upstream behaviour now.
build: ensure the correct strip is used for osx/win32c4a10dbb22
build: hook up "make deploy" for cross osx builds01e5327cfc
Merge pull request #3885
01e5327 build: hook up "make deploy" for cross osx builds (Cory Fields)
c4a10db build: ensure the correct strip is used for osx/win32 (Cory Fields)
b62bbb1 build: if cross-compiling for an apple host, locate some additional tools (Cory Fields)
0f21d39 build: fix qt.conf case-sensitivity in the deployed dmg (Cory Fields)
275d6a3 build: allow correct tools to be used for dmg creation. (Cory Fields)
fac6bea8f0
Merge pull request #3917
5c80b9a build: build qt tests after qt libs/executable (Wladimir J. van der Laan)
6539cfc583
[QT] Fixes feel when resizing the last column on tables (issue #2862)
Re-submitting this pull request with a single commit.
This patch introduces a GUIUtil class that is used when setting up the 2 tables we have so far on the Qt-GUI.
In the past you could only resize the last column, which has BTC amounts from the right border of the column header, something that was rather unnatural.
If a new table were ever to be added to the interface, fixing the last columns resizing behavior is rather simple. Just look at how we initialize here a TableViewLastColumnResizingFixer object when setting up the table header's behavior, and then how we override the resize event of the component (can be the table, or the dialog) and we invoke columnResizingFixer->stretchColumnWidth(columnIndex);
8c29273ff0
Merge pull request #3920
8c29273 [QT] Fixes feel when resizing the last column on tables (issue #2862) (gubatron)
733a799218
Merge pull request #3906
7211bce Consistent use of 'sudo' in unix build doc (Mikael Wikman)
33207fc870
[Qt] remove space from translation of client bitness
- its rather easy to leave out the space on Transifex, so remove it from
the string
c17f0a58b4
Merge pull request #3892
b8edf6c Qt: Fix ESC in disablewallet mode (Wladimir J. van der Laan)
162c33d246
Merge pull request #3850
16d281b [Qt] add expert section to wallet tab in optionsdialog (Cozz Lovan)
be0afe238b
Merge pull request #3806
9e2872c Adjust branding in datadir lock error message (Michagogo)
d30d379 Slightly tweak error when unable to bind port (Michagogo)
fc5d85c4bb
qt: translation update788590736d
Merge pull request #3924
7885907 qt: translation update (Wladimir J. van der Laan)
178d6a1b65
Update gitian README.mdc337e2e905
Fix importwallet nTimeFirstKey4c35366bdc
doc: version bump Doxyfile
- bump version to 0.9.99
- exclude leveldb and json
- include call and caller graphs in the documentation.
6039196b57
Merge pull request #3926
c337e2e Update gitian README.md (Wladimir J. van der Laan)
0a3acf260a
[Qt] Fix enable/disable show and remove buttonsab1edd44d8
Ignore temporary object files
Prior to this change, `git status` would report untracked files of the
following sort if run during a build:
?? src/rpcprotocol.o-e628def3
These files should be explicitly ignored not only because they are a
nuisance, but given that they appear and disappear quickly, they may be
inadvertently added to the index even if one has been careful to check
for untracked files with `git status` prior to a `git add .`.
7b95c7be8d
Remove stale and redundant src/.gitignore file
This commit removes completely the src/.gitignore file, given that the
precedent for ignoring artifacts within the `src` directory is to
add entries for them to the root .gitignore file.
Note also that the lone entry in src/.gitignore is stale anyway. As of
the switch to Autotools in 35b8af9, the build no longer build creates
artifacts in `src/test_bitcoin`. They are now written to
`src/test/test_bitcoin`, and this latter path is already ignored in the
root .gitignore file.
6540025f10
Merge pull request #3938
6540025 Remove stale and redundant src/.gitignore file (Chris Beams)
9c6f707172
RPC command getmininginfo showing right genproclimitf61287c9b1
Merge pull request #3927
ab1edd4 [Qt] Fix enable/disable show and remove buttons (Cozz Lovan)
d3c3210fa3
fix permissions in application bundle
Use INSTALL_DATA rather than INSTALL for copying non executable files in
OS X application bundle.
Tested by running "all appbundle" make target and trying the resulting
application bundle, host system is OS X 10.9.2 .
76cee181d3
Fix regression tests
Taught bitcoind to close the HTTP connection after it gets a 'stop' command,
to make it easier for the regression tests to cleanly stop.
Move bitcoinrpc files to correct location.
Tidied up the python-based regression tests.
d138598f63
Update moved and dead links3cb1edbfb6
Fix test build after d138598
Building the tests was giving some vague error message about a doubly-defined
symbol.
The solution is to define ShutdownRequested in test_bitcoin.cpp as well
so that init.cpp does not get pulled in.
e3f5d4338d
qt: Do proper boost::path conversion
Convert from QString unicode from/to the OS-dependent locale
as used by boost::filesystem::path as needed.
Solves #3916.
7e591c19e7
qt: Only override -datadir if different from the default
Fixes #3905.
c61fe44194
improve command-line options output7398f4a796
gitian: add statically built variant of bitcoind/bitcoin-cliddcd1afc5f
Remove duplicate from src/makefile.am
chainparams.cpp should not be in both libbitcoin_common and
libbitcoin_server. Also re-sort the sources list.
dfd3996217
Merge pull request #3935
c61fe44 qt: Only override -datadir if different from the default (Wladimir J. van der Laan)
7e591c1 qt: Do proper boost::path conversion (Wladimir J. van der Laan)
f284b5998a
Merge pull request #3951
3cb1edb Update moved and dead links (Luke Dashjr)
95f0af5cb1
Merge pull request #3958
dfd3996 Remove duplicate from src/makefile.am (Wladimir J. van der Laan)
47ef190637
[Qt] fix style, formating, comment and indentation problems
3e0753b always show syncnode in getpeerinfo (fixes #2717) (Philip Kaufmann)
77eaa6fc45
Merge pull request #3603
a486abd replace custom GetFilesize() with boost::filesystem::file_size() (Philip Kaufmann)
ebb783a9f2
add constant for shared (GUI/core) -par settings
- introduce DEFAULT_SCRIPTCHECK_THREADS in main.h
- only show values from -"MAX_HW_THREADS" up to 16 for -par, as it
makes no sense to try to leave more "cores free" than the system
supports anyway
- use the new constant in optionsdialog and remove defaults from
.ui file
5409404d75
'sendrawtransaction' improvements
- Make it report the reject code and reason
- Make it possible to re-send transactions that are already in the mempool
1d46fe3327
Merge pull request #3698
5409404 add constant for shared (GUI/core) -par settings (Philip Kaufmann)
e33cc87212
Merge pull request #3730
1d46fe3 'sendrawtransaction' improvements (Wladimir J. van der Laan)
acac57b8af
remove an assignment which is never used.fbf617a5f1
Make GetAvailableCredit run GetHash() only once per transaction.
This makes the first getbalance/getinfo 63x faster on my wallet.
a60ab0ba89
Merge pull request #3922
c17f0a5 [Qt] remove space from translation of client bitness (Philip Kaufmann)
e9d2e6ed90
Merge pull request #3973
a60ab0b Make GetAvailableCredit run GetHash() only once per transaction. (Gregory Maxwell)
55027a8c85
Add nHighTransactionFeeWarning as per #3969.ffeb47366d
Fix `-printblocktree` output
PrintBlockTree output was broken starting from e010af70.
Everything appears on one line.
PrintWallet() added the newline after a block, but this functionality
was removed and no newline was added.
Seemingly, no one noticed. Add a newline after the block information
to fix this.
af4c2ac8ce
Merge pull request #3875
89d72f3 Add new DNS seed from bitnodes.io. (Addy Yeow)
8adb7bca21
Add Andreas Schildbach to gitian download scripts.5d433613e2
Remove weights from download config for now as it's unclear how it will be used in future.2a9edeb1c8
Merge pull request #3907 from schildbach/gitian-downloader-aschildbach-key
Add Andreas Schildbach to gitian download scripts.
b725af7599
Merge pull request #3980
af4c2ac Fix `-printblocktree` output (Wladimir J. van der Laan)
09b9c2fcd5
Merge pull request #3950
76cee18 fix permissions in application bundle (Andrea D'Amore)
Use sensible categories (overall control, P2P, blockchain/UTXO and
mining, wallet, wallet-enabled mining) and sort within each.
Also remove unnecessary #ifdef ENABLE_WALLET from `rpcnet.cpp`.
Functionality-neutral change.
ab88ed93ef
Merge pull request #3964
ab88ed9 Organize RPCCommands table (Wladimir J. van der Laan)
e18bc583d4
Merge pull request #3969
ffeb473 Add nHighTransactionFeeWarning as per #3969. (Bardi Harborow)
b86ed6ff23
Fix typo in `createmultisig` help
iCreateMultisig is not a thing.
e3e3728f46
Merge pull request #3987 from laanwj/2014_03_icreatemultisig
Fix typo in `createmultisig` help
5a2ed60a04
Wrap create_directory calls in try...catch blocks.
Ignores any exceptions thrown if directory exists, otherwise re-throws exception.
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
2b7709dc84
Use the new name Bitcoin Core Daemon instead of Bitcoin server
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From-Github-Pull: #3801
db3a5e4151
Add sighash tests from data file43cb41859e
Add code generating data/sighash.json test data232aa9e034
Add application category for OSX
In "View by Category" without this metadata the app gets sorted into "Other" at the bottom.
1204945742
add checks for deserialization errors81bfb5aebf
Merge pull request #3988
1204945 Add application category for OSX (duanemoody)
09a2f3e1d7
Merge pull request #3975
81bfb5a add checks for deserialization errors (Manuel Araoz)
232aa9e Add code generating data/sighash.json test data (Manuel Araoz)
43cb418 Add sighash tests from data file (Manuel Araoz)
d8dcfb9034
unified and better log/error messages for CDBEnv/CDBf7257cfbd9
[Qt] small cleanup of coincontroldialog
- use a little more Qt-style
- check for NULL pointers first and return in updateView()
- small space and formating changes
d34b958406
Merge pull request #3991
d34b958 [Qt] small cleanup of coincontroldialog (Philip Kaufmann)
8d5abd480b
Merge pull request #3986
65adc3a qt: Don't require db_cxx.h when wallet disabled (Wladimir J. van der Laan)
4babd08 doc: Add note about memory reqs for compilation (Wladimir J. van der Laan)
25333a2 build: improve missing boost error reporting (Wladimir J. van der Laan)
e5681a4fa8
Merge pull request #3931
f61287c RPC command getmininginfo showing right genproclimit (Isidoro Ghezzi)
397521d632
[Qt] rescan progress392783697c
Add gitian build guide
Work in progress...
2c47a00b5f
Edit subsidy_limit_test to account for BIP42
Because no one wants 4 gold mines being discovered every mibillenium.
5cfd3a70a6
Have pull-tester run the listtransactions.py regression test
This should show how to run a python-based regression test
successfully in the pull-tester environment.
cb4bdd18a7
Merge pull request #3842 from ditto-b/master
Fix for GetBlockValue() after block 13,440,000
8556b0298d
Merge pull request #3928
3927836 [Qt] rescan progress (Cozz Lovan)
9bd1bdd08c
Merge pull request #3998
cb4bdd1 Have pull-tester run the listtransactions.py regression test (Gavin Andresen)
2c47a00 Add gitian build guide (Wladimir J. van der Laan)
e4121981d4
Merge pull request #3572
f7257cf unified and better log/error messages for CDBEnv/CDB (Philip Kaufmann)
b12dcb2c9e
Update README.mdb598581bfd
Merge pull request #4005 from Telepatheic/patch-1
Update README.md
513412fd73
Added instructions for when wrong openssl detected after brew link73288982ad
Move assert(pindexNew); to above where we dereference pindexNew.94c8bfb23b
Merge pull request #4010
94c8bfb Move assert(pindexNew); to above where we dereference pindexNew. (Gregory Maxwell)
ef76f3d62c
Merge pull request #3972
fbf617a remove an assignment which is never used. (Yoichi Hirai)
f4e1c347cf
Doxygen-compatible comments in coding style8414cb0494
Show error message if ReadConfigFile fails
A runaway exception was raised if ReadConfigFile fails (usually
due to a parse error in bitcoin.conf). Show an error message instead.
Fixes #4013.
4ae5e72128
build: Sync ax_boost_base.m4 with upstream.
This should fix 32bit boost detection on Ubuntu Saucy+. Fixes #3945.
13a2283a6d
Restart-warning for spendZeroConfChange option
According to the options model, a restart is required after changing this option. So let's notify the user about it.
71f82bf2ab
Fixes the broken image in the Gitian Build Guide633bb8b0ae
gitian: upgrade openssl to 1.0.1g for both win and linux
OpenSSL 1.0.1g fixes CVE-2014-0160.
Also bump dependency versions.
4a811b0053
Merge pull request #4018
4ae5e72 Show error message if ReadConfigFile fails (Wladimir J. van der Laan)
f4bc2296a5
Merge pull request #4022
633bb8b Fixes the broken image in the Gitian Build Guide (Michael Ford)
e448959dfb
Merge pull request #4019
13a2283 build: Sync ax_boost_base.m4 with upstream. (Cory Fields)
a7101b13f7
Merge pull request #3914
ddcd1af gitian: add statically built variant of bitcoind/bitcoin-cli (Wladimir J. van der Laan)
dac4e2aebd
Merge pull request #4023
4a811b0 gitian: upgrade openssl to 1.0.1g for both win and linux (Wladimir J. van der Laan)
fa2b42533a
gitian: Version bump for Qt dependency
Bump Qt dependency version after OpenSSL update.
Very important. Thanks @michagogo for noting.
178825dec3
Fix a typo in RPC signrawtransaction helpab643811ea
Merge pull request #4020
71f82bf Restart-warning for spendZeroConfChange option (langerhans)
06d1fc6112
doc: remove versions from build-unix.md, just refer to release-process.md
No one bothers to keep this up to date.
Better to refer to another file than give wrong information.
f3f2cb736d
gitian: upgrade miniupnpc input to 1.9
Bumps deps-linux, deps-win dependency versions as well.
qt-win does not need to be bumped, as although it depends on deps-win,
Qt doesn't use miniupnp. I verified this by rebuilding the dependency
and checking the the output is the same. Not having to rebuild Qt is a
good thing as it is huge.
25d4911e86
Bugfix: configure: Look in libx32 subdirectory for boost librariesc0e0b05aec
Also move them to release-process.md from gitian-building.md for more
visibility.
219b512d72
Merge pull request #4031
f3f2cb7 doc: remove versions from build-unix.md, just refer to release-process.md (Wladimir J. van der Laan)
85bba09bfd
Changed bitrpc.py's raw_input to getpass for passwords to conceal characters during command line input. Getpass is in Python stdlib so no additional dependencies required.0f63504463
Merge pull request #4024
ab64381 Fix a typo in RPC signrawtransaction help (Hector Jusforgues)
20ecf5c27d
Prevent socket leak in ThreadSocketHandler.
When we are over our outbound limit ThreadSocketHandler would try to
keep the connection if the peer was addnoded.
This didn't actually work for two reasons: It didn't actually run
the accept code due to mistaken code flow, and because we have a
limited number of outbound semaphores it couldn't actually use the
connection.
Instead it leaked the socket, which might have caused issue #4034.
This patch just takes out the non-functioning white-listing for now.
d20791b0e5
Merge pull request #4033
219b512 doc: update expected intermediate dependency hashes (Wladimir J. van der Laan)
25d4911 gitian: upgrade miniupnpc input to 1.9 (Wladimir J. van der Laan)
4c6cab2c5d
Correct some proxy related socket leaks.0bd05b53b1
build: add glibc/libstdc++ back-compat stubs
glibc/libstdc++ have added new symbols in later releases. When running a new
binary against an older glibc, the run-time linker is unable to resolve the
new symbols and the binary refuses to run.
This can be fixed by adding our own versions of those functions, so that the
build-time linker does not emit undefined symbols for them.
This enables our binary releases to work on older Linux distros, while not
incurring the downsides of a fully static binary.
ffc6b678b9
build: add an option for enabling glibc back-compat
Using "./configure --enable-glibc-back-compat" will attempt to be
compatible with a target running glibc abi 2.9 and libstdc++ abi 3.4.
8414cb0 Doxygen-compatible comments in coding style (Wladimir J. van der Laan)
f406af3573
doc: add note about translations to README.md1528397135
Merge pull request #4041
1528397 doc: add note about translations to README.md (Wladimir J. van der Laan)
e3ce55fddb
Merge pull request #4009
7328898 Added instructions for when wrong openssl detected after brew link (olalonde)
9c749d608f
Merge pull request #3912
b1b9c76 Fix bloom filter not to use bit_mask (peryaudo)
8562179612
build: add symbol for upcoming gcc 4.9's libstdc++05c20a553a
Added Blockchain Bootstraping Tutorial
Per @laanwj request in #3724
Fixing Checkpoints Comment
Fixed Image Paths
Removed requirement.
Update Torrent Links.
Update Links 2
Link would not work.
2 Small Fixes
Changed in to from
@laanwj suggestion on safety
Cleaner and easier to read.
Reordered by functionality
494cbf8350
qt: remove de_AT translation
Got too many complaints that is was unserious and written by trolls.
I have also removed the translation from transifex.
Fixes #4054 and #3918.
74dd52a9fc
[Qt] catch Windows shutdown events while client is running
- prevents unsafe shutdowns on Windows, which is known to be
able to cause problems with wallet.dat
- if a users ends a Windows session, this will initiate a client shutdown
and show a Windows dialog, that tells the user what is going on (for
Windows Vista and higher it will even show a reason for blocking the
Windows session end)
d282c1fb64
VERSION obtained from source instead of the previous git tag.
Drawback: The version string is no longer a valid git identifier.
For this reason the 'g' short hash prefix has been removed.
Exception: When building directly from a tag this behaves exactly like the previous behavior.
This allows formatting release versions with precision i.e. v0.9.2
This also allows arbitrary topicbranch names i.e. v0.9.1-glibc-compat
3d20cd5f61
Merge pull request #4049
3d20cd5 VERSION obtained from source instead of the previous git tag. (Warren Togami)
31853a1517
Update doc/gitian-building.md for new gitian
The patch to make it possible to configure the LXC IPs has been merged
upstream. This means that it is no longer needed to patch gitian.
Remove that workaround.
5a79c65323
Pointed to location of BDB 4.8 in procedure for unix build.61d388d98d
Translation update 2014-04
Push new English translation, as well as pull other translations that
changed since last month.
2f3308f2d2
Add AssertLockHeld for cs_main to ChainActive-using functions
All functions that use ChainActive but do not aquire the cs_main
lock themselves, need to be called with the cs_main lock held.
This commit adds assertions to all externally callable functions
that use chainActive or chainMostWork.
This will flag usages when built with -DDEBUG_LOCKORDER.
e07c943ce8
Solve chainActive-related locking issues
- In wallet and GUI code LOCK cs_main as well as cs_wallet when
necessary
- In main.cpp SendMessages move the TRY_LOCK(cs_main) up, to encompass the call
to IsInitialBlockDownload.
- Make ActivateBestChain, AddToBlockIndex, IsInitialBlockDownload,
InitBlockIndex acquire the cs_main lock
Fixes #3997
55a1db4fa2
Merge pull request #4037 from gmaxwell/fdleaks
Prevent socket leak in ThreadSocketHandler.
fe451fe944
Merge pull request #3701
09ec3af AddToWallet implies BindWallet (Wladimir J. van der Laan)
913e90db9a
Merge pull request #4014
4e9667b Improve and expand base58 comments (rxl)
8da64ca47e
Merge pull request #4047
494cbf8 /contrib index reorg (super3)
4a102fa9d9
script: add CScriptNum class
This class holds an int64_t and replaces the use of CBigInt for script
integrals.
48d8eb1847
script: switch to CScriptNum usage for scripts27bff74e39
script: switch outside users to CScriptNum4f497cd97d
script: remove bignum dependency05e3ecffa4
script: add additional script tests90320d6777
script: Add test for CScriptNum
Because this class replaces some usages of CBigNum, tests have been added to
verify that they function the same way. The only difference in their usage is
the handling of out-of-range numbers.
While operands are constrained to [-0x7FFFFFFF,0x7FFFFFFF], the results may
overflow. The overflowing result is technically unbounded, but in practice
it can be no bigger than the result of an operation on two operands. This
implementation limits them to the size of an int64.
CBigNum was unaware of this constraint, so it allowed for unbounded results,
which were then checked before use. CScriptNum asserts if an arithmetic
operation will overflow an int64_t, since scripts are not able to reach those
numbers anyway. Additionally, CScriptNum will throw an exception when
constructed from a vector containing more than 4 bytes This mimics the previous
CastToBigNum behavior.
b1fdd5475d
Replace DecodeBase58/EncodeBase58 with direct implementation.
This removes the bignum/OpenSSL dependency.
The base58 transformation code is also moved to a separate .cpp file.
b58be132c9
Merge pull request #4048 from sipa/nobigb58
Remove dependency of base58 on OpenSSL
e2bff7df08
Merge pull request #4058
55a1db4 Solve chainActive-related locking issues (Wladimir J. van der Laan)
e07c943 Add AssertLockHeld for cs_main to ChainActive-using functions (Wladimir J. van der Laan)
2bbecc84e2
Merge pull request #4035
0f63504 Changed bitrpc.py's raw_input to getpass for passwords to conceal characters during command line input. Getpass is in Python stdlib so no additional dependencies required. (Eric S. Bullington)
91c601c54a
Merge pull request #4042
05c20a5 build: add symbol for upcoming gcc 4.9's libstdc++ (Cory Fields)
49a3352 gitian-linux: --enable-glibc-back-compat (Warren Togami)
d5aab70 build: add an option for enabling glibc back-compat (Cory Fields)
ffc6b67 build: add glibc/libstdc++ back-compat stubs (Cory Fields)
bbe53f61db
[Qt] importwallet progressbb1f1c90d6
Add required locks in tests
Unit tests with DEBUG_LOCKORDER were running into assertions.
ed67100565
qt: get required locks upfront in polling functions
This avoids the GUI from getting stuck on
periodical polls if the core is holding the locks for a longer time -
for example, during a wallet rescan.
41106a50d2
Add missing AssertLockHeld in ConnectBlockb39a07dc42
Merge pull request #4055
bb1f1c9 [Qt] importwallet progress (Cozz Lovan)
97730c9b7f
Merge pull request #4085
b39a07d Add missing AssertLockHeld in ConnectBlock (Wladimir J. van der Laan)
41106a5 qt: get required locks upfront in polling functions (Wladimir J. van der Laan)
ed67100 Add required locks in tests (Wladimir J. van der Laan)
89bbd54fbf
Add MESSAGE_START_SIZE from chainparams when loading blocks from external files.0caf2b187f
Merge pull request #4087
0caf2b1 Add MESSAGE_START_SIZE from chainparams when loading blocks from external files. (Simon de la Rouviere)
4765b8c116
Add CLIENT_VERSION_REVISION to mac osx info plist8abfb9905d
Split up CheckBlock in a block and header versionf457347053
Split AcceptBlockHeader from AcceptBlock.
Also modify some connection logic to deal with non-full blocks in the index.
942b33a19d
devtools: add script to check symbols from Linux gitian executables
Add a script to check that the (Linux) executables produced by gitian
only contain allowed gcc, glibc and libstdc++ version symbols. This
makes sure they are still compatible with the minimum supported Linux
distribution versions.
74fc254c2b
[Qt] Optionally add third party links to transaction context menu40c5b939f2
Update contrib/debian for autotools, among a few other tweaks6e40fcf455
Merge pull request #4098
6e40fcf Update contrib/debian for autotools, among a few other tweaks (Matt Corallo)
814df91269
Merge pull request #4089
74fc254 devtools: add script to check symbols from Linux gitian executables (Wladimir J. van der Laan)
7cbe636a23
Merge pull request #4043
d282c1f [Qt] catch Windows shutdown events while client is running (Philip Kaufmann)
c63b2e25a5
qt: Periodic translations update
Update English translation from source code, and pull other translations
from Transifex.
48be9ceaa0
Correct indentation6b29ccc9f9
use standard __func__ instead of __PRETTY_FUNCTION__1cc7f54a8d
gitian: build against Qt 4.6
Should make it possible to run the resulting GUI executable on
Linux distributions that use Qt 4.6, such as Debian Wheezy and Tails.
Builds a mini-SDK for building against Qt 4.6. This includes the headers
as well as host utilities such as `lrelease`, `qrc` and `moc`.
This speeds up the gitian build a bit - libqt4-dev pulled in a lot of packages,
and is no longer needed as this provides a replacement of our own.
Note: This does not replace the Qt build with at static library. After this
commit we still build dynamically against the system Qt library. The only
difference is that compatibility with an older version is maintained. This
loses minor GUI functionality (such as setPlaceholderText) but still
allows integration into the window management of the host OS, unlike
when statically linking.
3ab1664594
gitian: don't export any symbols from executable
This avoids conflicts between the libraries statically linked into bitcoin and any
libraries we may link dynamically (such as Qt and OpenSSL, see issue #4094).
It also avoids start-up overhead to not export any unnecessary symbols.
To do this, build a linker script that marks all symbols as local.
92e3022f88
devtools: have symbol check script check for exported symbols
After last commit, our executables should export no symbols anymore. To
make sure that this stays the case, verify this in the symbol checker
script.
202c95c216
Merge pull request #4111
1cc7f54 use standard __func__ instead of __PRETTY_FUNCTION__ (Philip Kaufmann)
b2ee43f126
Merge pull request #4109
6b29ccc Correct indentation (R E Broadley)
191b087e0e
Merge pull request #4092
40c5b93 [Qt] Optionally add third party links to transaction context menu (Cozz Lovan)
d69427a0c4
Merge pull request #4088
8abfb99 Add CLIENT_VERSION_REVISION to mac osx info plist (Michael Ford)
426dc16f7b
Log BerkeleyDB version at startup
Prints the actual version of BerkeleyDB that is linked against, if
wallet support is enabled.
Useful for troubleshooting.
For example:
2014-05-01 07:44:02 Using BerkeleyDB version Berkeley DB 4.8.30: (April 9, 2010)
2014-05-01 07:54:25 Using BerkeleyDB version Berkeley DB 5.1.29: (October 25, 20 11)
d0a2e2eb87
Update build instructions for Berkeley DB
- People were having problems with the .so when installing in
alternative locations.
Like gitian, build a static library with -fPIC that can
be embedded into the executables.
- Add some missing steps
- Add reminder that BerkeleyDB is only needed when wallet support is
enabled
bfb154e9fc
qt: add transifex configuration file
This is a project-wide configuration file and should be the same for
everyone.
Also remove mention of creating it yourself from the translation process.
58c01a376d
devtools: add a script to fetch and postprocess translations
Run this script from the root of the repository to update all translations from transifex.
It will do the following automatically:
- create a transifex configuration file
- fetch all translations
- post-process them into valid and committable format
9dd5d79244
Full translation update
Last update (48be9ce) missed quite a lot, for some reason.
This is also the first update done with the new script
`contrib/devtools/update-translations.py`
3a54ad9aba
Remove build-time no-IPv6 setting
The year is 2014. All supported operating systems have IPv6 support,
most certainly at build time (this doesn't mean that IPv6 is configured,
of course).
If noone is exercising the functionality to disable it, that means it
doesn't get tested, and IMO it's better to get rid of it.
(it's also not used consistently in RPC/boost and Net code...)
e27c4110d9
Removed LevelDB changes
Syntax Highlighting
d3081fa231
Wording
Cleaned up wording and spacing for readability.
188674de98
Merge pull request #4032
c0e0b05 Bugfix: configure: Look in libx32 subdirectory for boost libraries (Luke Dashjr)
83d7dc44ef
Merge pull request #4115
e27c411 Remove build-time no-IPv6 setting (Wladimir J. van der Laan)
bf35cae1ae
Merge pull request #4116
188674d Wording (richierichrawr)
18da57825e
Merge pull request #4094
202c95c devtools: have symbol check script check for exported symbols (Wladimir J. van der Laan)
92e3022 gitian: don't export any symbols from executable (Wladimir J. van der Laan)
3ab1664 gitian: build against Qt 4.6 (Wladimir J. van der Laan)
b397248436
Merge pull request #4110
3a54ad9 Full translation update (Wladimir J. van der Laan)
9dd5d79 devtools: add a script to fetch and postprocess translations (Wladimir J. van der Laan)
58c01a3 qt: add transifex configuration file (Wladimir J. van der Laan)
583df73acd
better std::exception logging for CAddrDb
- also small logging text changes
2fdd4c7933
gitian: use right qt tools in linux build
If the `libqt4-dev` package is installed it picks the moc executable
from the system instead of our custom-built one. This results in
compatibility errors.
This commit convinces configure to pick the right one.
51cb8fe870
Merge pull request #3602
2fdd4c7 better std::exception logging for CAddrDb (Philip Kaufmann)
9eb1e1e8ce
Merge pull request #4114
bfb154e Update build instructions for Berkeley DB (Wladimir J. van der Laan)
d0a2e2e Log BerkeleyDB version at startup (Wladimir J. van der Laan)
3e578aa9b9
stop bitcoind/bitcoin-cli processes that might have been left running3e7dac9dad
Merge pull request #4074
d3081fa Removed LevelDB changes (super3)
1ab62973d3
reorder includes to compile on OpenBSD
From getifaddr(3) manual:
"If both <net/if.h> and <ifaddrs.h> are being
included, <net/if.h> must be included before <ifaddrs.h>"
http://www.openbsd.org/cgi-bin/man.cgi?query=getifaddrs&apropos=0&sektion=0&manpath=OpenBSD+Current&arch=i386&format=html
2364b118f2
Merge pull request #4119
2364b11 reorder includes to compile on OpenBSD (Fabian Raetz)
ab4bd3bdbb
don't use sed's -i option to stay posix compliant
POSIX does not define sed's -i option. To stay as portable
as possible we should not relay on it.
dbe8f75262
doc: remove specific mention of boost 1.55
There is no need to use any specific version of boost on Linux/Unix.
Even 1.37 should still work.
Also the mention of boost-dev doesn't belong after adding oldstable.
Remove it. libboost-all-dev is already mentioned earlier.
4ff396e45d
Merge pull request #4120
dbe8f75 don't use sed's -i option to stay posix compliant (Fabian Raetz)
- as this is a shared Core/GUI setting, this makes it easier to keep them
in sync (also no new includes are needed)
3e1cf9b6f6
rpc: add `getblockchaininfo` and `getnetworkinfo`
Adds two new info query commands that take over information from
hodge-podge `getinfo`.
Also some new information is added:
- `getblockchaininfo`
- `chain`: (string) current chain (main, testnet3, regtest)
- `verificationprogress: (numeric) estimated verification progress
- `chainwork`
- `getnetworkinfo`
- `localaddresses`: (array) local addresses, from mapLocalHost (fixes #1734)
d387b8ec15
Remove NumBlocksOfPeers
Generally useless information. Only updates on connect time, not after
that. Peers can easily lie and the median filter is not effective in
preventing that.
In the past it was used for progress display in the GUI but
`CheckPoints::guessVerificationProgress` provides a better way that is now used.
It was too easy to mislead it. Peers do lie about it in practice, see issue #4065.
From the RPC, `getpeerinfo` gives the peer raw values, which are more
useful.
aa250f0453
qt: periodic translations updateb733288d95
[Qt] fix Qt slot problem in receivecoinsdialog
- fixes error from debug.log:
QMetaObject::connectSlotsByName: No matching signal for
on_recentRequestsView_selectionChanged(QItemSelection,QItemSelection)
- small style fixes (e.g. alphabetical ordering if includes etc.)
- fixes #3992
01ce711798
Merge pull request #4127
d387b8e rpc: add `getblockchaininfo` and `getnetworkinfo` (Wladimir J. van der Laan)
acc2d2ca5f
build: fix make clean on OSX
Rebased-From: 74df0f5
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
13d3adb651
ui: Check for !pixmap() before trying to export QR code
Adds null pointer checks as well as prevents the Save/Copy context
menu from appearing at all if no image is shown.
Fixes issue #4140
9d558e1c18
Add missing cs_main lock to VerifyDB
Fixes issue #4139.
a475285a53
[Qt] fix ugly typo in bitcoin.cpp
Closes #4145.
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 1e4b083
4629f95b22
Add rejection of non-null CHECKMULTISIG dummy values
This is a source of transaction mutability as the dummy value was
previously not checked and could be modified to something other than the
usual OP_0 value.
6380180821
Do not trigger a DoS ban if SCRIPT_VERIFY_NULLDUMMY failsf80cffa213
Increase IsStandard() scriptSig length
Removes the limits on number of pubkeys for P2SH CHECKMULTISIG outputs.
Previously with the 500 byte scriptSig limit there were odd restrictions
where even a 1-of-12 P2SH could be spent in a standard transaction(1),
yet multisig scriptPubKey's requiring more signatures quickly ran out of
scriptSig space.
From a "stuff-data-in-the-blockchain" point of view not much has changed
as with the prior commit now only allowing the dummy value to be null
the newly allowed scriptSig space can only be used for signatures. In
any case, just using more outputs is trivial and doesn't cost much.
1) See 779b519480d8c5346de6e635119c7ee772e97ec872240c45e558f582a37b4b73
Mined by BTC Guild.
4d79098ad5
Check redeemScript size does not exceed 520 byte limit
redeemScripts >520bytes can't be spent due to the
MAX_SCRIPT_ELEMENT_SIZE limit; previously the addmultisigaddress and
createmultisig RPC calls would let you violate that limit unknowingly.
Also made the wallet code itself check the redeemScript prior to adding
it to the wallet, which in the (rare) instance that a user has added an
invalid oversized redeemScript to their wallet causes an error on
startup. The affected key isn't added to the wallet; other keys are
unaffected.
787ee0c913
Merge pull request #4141
9d558e1 ui: Check for !pixmap() before trying to export QR code (Wladimir J. van der Laan)
69e264b6f8
Merge pull request #4131
3e1cf9b add DEFAULT_TRANSACTION_FEE constant in wallet (Philip Kaufmann)
0ecd8aae20
Typo Fix In decoderawtransaction Help: s/txid/hex/
Help text appears to have been copy/pasted from getrawtransaction,
so it erroneously asked for a txid where rawtransaction hex should appear.
Remove lines which were copy/pasted from getrawtransaction but which
aren't displayed by decoderawtransaction.
Rebased-By: Wladimir J. van der Laan <laanwj@gmail.com>
Rebased-From: 5cc0133 80c521e
Github-Pull: #4106
e0c06d2c49
qt: fix compile issue in Qt GUI
This was introduced in 3e1cf9b. Needs a cast to qint64.
9b4b3cf9cf
build: fix: remove error output
while git not found in path, error is output to console.
b1f0be0a05
Merge pull request #4136
01ce711 [Qt] fix Qt slot problem in receivecoinsdialog (Philip Kaufmann)
da257a7b36
Merge pull request #4155
b1f0be0 build: fix: remove error output (harry)
8b542d5874
Merge pull request #3860 from petertodd/test-checkmulti-n-m-zero
Test CHECKMULTISIG with m == 0 and/or n == 0
aaab675a78
Merge pull request #3884
942b33a Split AcceptBlockHeader from AcceptBlock. (Pieter Wuille)
f457347 Split up CheckBlock in a block and header version (Pieter Wuille)
d54985f3f1
Merge pull request #3965
b1fdd54 script: Add test for CScriptNum (Cory Fields)
90320d6 script: add additional script tests (Cory Fields)
05e3ecf script: remove bignum dependency (Cory Fields)
4f497cd script: switch outside users to CScriptNum (Cory Fields)
27bff74 script: switch to CScriptNum usage for scripts (Cory Fields)
48d8eb1 script: add CScriptNum class (Cory Fields)
1c0319bb2b
Merge pull request #3843
787ee0c Check redeemScript size does not exceed 520 byte limit (Peter Todd)
4d79098 Increase IsStandard() scriptSig length (Peter Todd)
f80cffa Do not trigger a DoS ban if SCRIPT_VERIFY_NULLDUMMY fails (Peter Todd)
6380180 Add rejection of non-null CHECKMULTISIG dummy values (Peter Todd)
29c1749 Let tx (in)valid tests use any SCRIPT_VERIFY flag (Peter Todd)
68f7d1d Create (MANDATORY|STANDARD)_SCRIPT_VERIFY_FLAGS constants (Peter Todd)
54f102248b
Merge pull request #3637
6fd7ef2 Also switch the (unused) verification code to low-s instead of even-s. (Pieter Wuille)
72f754cf51
Fix transaction tests
Conflict between low-s (6fd7ef2) and test updates in d3a33fc.
e443ed2462
Deduplicate shared code between uint160 and uint256eb2cbd754d
Exception instead of assigning 0 in case of wrong vector length4d480c8a3f
Add multiplication and division to uint160/uint256a7031507e6
Move {Get,Set}Compact from bignum to uint256df9eb5e14f
util: add parseint32 function with strict error reporting
None of the current integer parsing functions in util
check whether the result is valid and fits in the range
of the type. This is required for less sloppy error reporting.
0d4ea1cf8a
Use new function parseint32 in SplitHostPort
Use the new function parseint32 in SplitHostPort instead of calling
strtol directly.
d864275299
net: Add CSubNet class for subnet matchinge16be73753
rpc: Use netmasks instead of wildcards for IP address matching
`-rpcallowip` currently has a wacky wildcard-based format. After this
commit it will accept the more standard format, for example:
- Ranges with netmask 127.0.0.0/255.255.255.0, ::/0
- Ranges with cidr 12.3.4.5/24, 12:34:56:78:9a:bc:de:00/112
- Loose IPs ::1, 127.0.0.1
Trying to use the old *?-based format will result in an error message at
launch.
ee21912510
Remove unused function WildcardMatch
No longer necessary after implementing netmask-based matching.
Also remove a longer-unused function `skipspaces`.
fdbd7075ca
Add tests for BoostAsioToCNetAddr21bf3d257b
Merge pull request #4134
aa250f0 Remove NumBlocksOfPeers (Wladimir J. van der Laan)
82564e21e7
Merge pull request #4076
397668e Deduplicate uint* comparison operator logic (Pieter Wuille)
df9eb5e Move {Get,Set}Compact from bignum to uint256 (Pieter Wuille)
a703150 Add multiplication and division to uint160/uint256 (Pieter Wuille)
4d480c8 Exception instead of assigning 0 in case of wrong vector length (Pieter Wuille)
eb2cbd7 Deduplicate shared code between uint160 and uint256 (Pieter Wuille)
8bcfccbc2d
Merge pull request #4102
21bf3d2 Add tests for BoostAsioToCNetAddr (Wladimir J. van der Laan)
fdbd707 Remove unused function WildcardMatch (Wladimir J. van der Laan)
ee21912 rpc: Use netmasks instead of wildcards for IP address matching (Wladimir J. van der Laan)
e16be73 net: Add CSubNet class for subnet matching (Wladimir J. van der Laan)
d864275 Use new function parseint32 in SplitHostPort (Wladimir J. van der Laan)
0d4ea1c util: add parseint32 function with strict error reporting (Wladimir J. van der Laan)
605d5b5558
Merge src/leveldb changes for LevelDB 1.17.aca47d2a24
laanwj
commented at 7:12 am on May 10, 2014:
member
Diff looks good to me, and as this should increase the robustness of leveldb against corruption in crashes, it is very welcome.
laanwj added this to the milestone 0.9.2
on May 10, 2014
wtogami
commented at 7:18 am on May 12, 2014:
contributor
just ignore the entire logical record
Have you looked into what exactly this means to Bitcoin? Will it rollback and re-index that particular record or silently skip it and lead to a later consensus failure?
This is not about the table files but the log files. The log files just contain a log of modifications (updates and deletes) to be performed on the database. Not being able to read the last one is perfectly fine: it’s just as if we crashed a bit earlier (before we started writing a batch of changes).
wtogami
commented at 9:10 am on May 12, 2014:
contributor
Sounds good. We should merge this so it gets more testing ASAP.
Ok, some minimal testing indicates that currently this type of error is already being ignored in our setup as we don’t set options.paranoid_checks. That’s surprising to me, as these are errors that (beside the case modified now in 1.17) usually indicates actual database corruption.
Once this is merged I think we should experiment with setting paranoid_checks to true, so corruptions other than short writes actually get reported at startup, rather than during self check (or not at all, and cause failed validation).
laanwj merged this
on May 12, 2014
laanwj closed this
on May 12, 2014
laanwj referenced this in commit
029f4904d1
on May 12, 2014
This is a metadata mirror of the GitHub repository
bitcoin/bitcoin.
This site is not affiliated with GitHub.
Content is generated from a GitHub metadata backup.
generated: 2024-06-18 01:12 UTC
This site is hosted by @0xB10C More mirrored repositories can be found on mirror.b10c.me