Commit graph

384 commits

Author SHA1 Message Date
Wladimir J. van der Laan
97a34c28d5
Merge pull request #5051
aedc74d contrib: make linearize-data.py cope with out-of-order blocks (Wladimir J. van der Laan)
2014-10-08 09:47:41 +02:00
Wladimir J. van der Laan
fb5fa86bb4
Merge pull request #5050
772ab0e contrib: use batched JSON-RPC in linarize-hashes (Wladimir J. van der Laan)
2014-10-08 08:54:18 +02:00
Wladimir J. van der Laan
cd3269e38e
contrib: revert changes to github-merge.sh in #5038 2014-10-07 10:00:12 +02:00
Wladimir J. van der Laan
aedc74dfa6 contrib: make linearize-data.py cope with out-of-order blocks
Make it possible to read blocks in any order. This will be required
after headers-first (#4468), so should be merged before that.

- Read block header. For expected blocks, continue, else skip.
- For in-order blocks: copy block contents directly. Write prior
  out-of-order blocks if this connects a consecutive span.
- For out-of-order blocks, store extents of block data for later
  retrieval. Cache out-of-order blocks in memory up to 100MB
  (configurable).
2014-10-06 18:30:12 +02:00
Wladimir J. van der Laan
772ab0ea98 contrib: use batched JSON-RPC in linarize-hashes
Batch up to 10000 requests for a ~30x speedup.
2014-10-06 13:27:13 +02:00
Luke Dashjr
0b17964131 Bugfix: Replace bashisms with standard sh in tests/tools 2014-10-03 23:45:26 +00:00
Luke Dashjr
ab72068565 Bugfix: Replace bashisms with standard sh in gitian descriptors 2014-10-03 23:45:26 +00:00
Cory Fields
dd367ff8c9 build: macdeploy: filter out irrelevant qt5 frameworks and dylibs 2014-10-01 19:26:29 -04:00
Gavin Andresen
965c306d6d
Keep symlinks when copying into .app bundle
Code signing failed for me on OSX 10.9.5 because the
Versions/Current symbolic links were being replaced
with a duplicate copy of the frameworks' code.

Releases were bigger than they needed to be, for the
same reason.
2014-10-01 09:58:00 -04:00
Wladimir J. van der Laan
437634a79e
Merge pull request #5005
af0bd5e osx: fix signing to make Gatekeeper happy (again) (Cory Fields)
2014-10-01 09:00:45 +02:00
Cory Fields
af0bd5ee7f osx: fix signing to make Gatekeeper happy (again)
The approach from 65f3fa8d1 worked for signing on 10.9.4, but not newer
versions. 10.9.5 (and up) want each framework to stand alone.

Now in addition to copying the plist's from Qt for each framework, we put them
in per-version dirs and only symlink to the latest, rather than using symlinks
for any contents.
2014-09-29 22:03:24 -04:00
Matt Corallo
0866948e18 Add 0.9.3 and fix control 2014-09-26 20:51:24 -07:00
Wladimir J. van der Laan
2d782ab2ce
Merge pull request #4611
234bfbf Add init scripts and docs for Upstart and OpenRC (Adam Weiss)
2014-09-16 11:05:38 +02:00
Wladimir J. van der Laan
e5fc6631b9
Merge pull request #4896
07d5287 Catch error when done reading files (Suhas Daftuar)
2014-09-12 19:04:53 +02:00
Gavin Andresen
6a830ec947 Merge pull request #4758 from theuni/osx-dmg-codesign-rebase
build: osx: Fix incomplete framework packaging for codesigning
2014-09-12 12:29:37 -04:00
Suhas Daftuar
07d5287f42 Catch error when done reading files 2014-09-11 09:22:39 -04:00
Adam Weiss
234bfbf6a5 Add init scripts and docs for Upstart and OpenRC 2014-09-09 16:58:06 -04:00
Wladimir J. van der Laan
d800dcc32a
Merge pull request #4762
399cdbc contrib/linearize: Add feature to set file's timestamp based on block header time. (Jeff Garzik)
8f5a423 contrib/linearize: split block files based on year-month, not just year (Jeff Garzik)
75400a2 contrib/linearize: Guarantee that output is generated in-order (Jeff Garzik)
2014-09-04 15:20:33 +02:00
Jeff Garzik
399cdbc700
contrib/linearize: Add feature to set file's timestamp based on block header time. 2014-09-04 15:13:37 +02:00
Wladimir J. van der Laan
da59f28335 Add deeper XML checking to update-translation script
- Catch problems such as mismatched formatting characters. Remove
  messages that can give problems at runtime.

- Also remove unfinished/untranslated messages, they just take up space
  in the ts and waste parsing time.

Fixes #4774.
2014-09-01 10:06:15 +02:00
Jeff Garzik
8f5a423344 contrib/linearize: split block files based on year-month, not just year 2014-08-24 01:40:40 -04:00
Jeff Garzik
75400a2a41 contrib/linearize: Guarantee that output is generated in-order
This was typically ensured implicitly by virtue of normal bitcoind
operation.  Adding an explicit check provides a stronger guarantee, and
it is cheap to add.
2014-08-24 01:18:24 -04:00
Jeff Garzik
b4a72a75b4 contrib/linearize: split output files based on new-timestamp-year or max-file-size 2014-08-23 22:59:16 -04:00
Jeff Garzik
476eb7eb53 Update linearize scripts.
Break into two steps:
* Generate hash list
* Build data file(s) from local bitcoind blocks/ directory.

This supports building one large bootstrap.dat, or multiple
smaller blocks/blkNNNNN.dat files.
2014-08-23 21:46:12 -04:00
Cory Fields
65f3fa8d11 build: osx: Fix incomplete framework packaging for codesigning
Starting with 10.9, Framework versions must be signed individually, rather
than as a single bundle version, in order to be properly codesigned. This
change ensures that the proper plist files and symlinks are present prior to
packaging.
2014-08-23 15:24:42 -04:00
Gavin Andresen
c53b1ece1b
Fix github-merge with git version 2.1.0
Running git version 2.1.0 on OSX (homebrew), I get
  fatal: '1q': not a non-negative integer

I'm guessing git command-line parsing got more strict recently?
2014-08-19 13:47:37 -04:00
Wladimir J. van der Laan
27116e87cc
devtools: Exclude default exports from symbol-checker script
See discussion in #4663.
2014-08-17 10:07:46 +02:00
Cory Fields
71941ce580 build: teach macdeploy the -translations-dir argument, for use with static qt
When QT is linked statically, macdeploy can't infer its paths. While plugins
and frameworks don't need to be packaged, translations still do (for now).
2014-08-06 19:29:19 -04:00
Wladimir J. van der Laan
1de2992e07
Merge pull request #4104
68aa01e Fixes error (Ian Carroll)
2014-07-30 11:45:41 +02:00
Wladimir J. van der Laan
51cb546886
Merge pull request #4577
0c3e101 Added systemd .service file in order to help distributions integrate bitcoind. (Aitor Pazos)
2014-07-30 10:08:43 +02:00
Aitor Pazos
0c3e101966 Added systemd .service file in order to help distributions integrate bitcoind. 2014-07-29 19:29:54 +02:00
Wladimir J. van der Laan
403c1bf0fb contrib: remove getwork-based pyminer
As the `getwork` API doesn't exist anymore, currently this script is useless.

It would be nice to have a `getblocktemplate`-based Python example of a
miner, but there is no point in keeping this one around except to
confuse people.
2014-07-29 09:58:14 +02:00
Clinton Christian
9192ca9e33 pyminer: Fix memory leak, refactor to be more pythonic, maintainable, and possibly faster
Pull #4483.

Note that pyminer is not currently functional due to the removal of
getwork in cf0c47b.
2014-07-25 10:58:00 +02:00
Wladimir J. van der Laan
59abcefc2e
doc: remove any mention of SOCKS4
SOCKS4 support was removed in 0127a9b, as well as the `-socks=` option.
2014-07-24 15:57:24 +02:00
Cory Fields
a7ec027311 gitian: remove unneeded option after last commit 2014-07-22 09:21:09 -04:00
Wladimir J. van der Laan
cdb4193a31
Merge pull request #4557
92b8587 Update README.md (elkingtowa)
2014-07-21 10:18:27 +02:00
Wladimir J. van der Laan
39d3f2cb40 Revert "Add -respendnotify option and new RPC data"
This reverts commit 9004798e62.
2014-07-21 07:46:33 +02:00
elkingtowa
92b8587e12 Update README.md
Added two modifications to make the descriptions more clear.
2014-07-18 15:04:54 -04:00
Zak Wilcox
6b407e4e56 -datadir is now allowed in config files 2014-07-12 02:05:09 +01:00
Wladimir J. van der Laan
f2286a69a9
Merge pull request #4190
502972f Fix Error: No file at @loader_path/libboost_system-mt.dylib (Federico Bond)
2014-07-10 08:04:59 +02:00
Federico Bond
502972f16b Fix Error: No file at @loader_path/libboost_system-mt.dylib 2014-07-09 20:50:30 -03:00
Johnathan Corgan
45abeb2112 Update Debian packaging description for new bitcoin-cli 2014-07-08 09:09:42 -07:00
Cory Fields
b150b09edc secp256k1: add libtool as a dependency 2014-07-01 12:27:15 -04:00
Gavin Andresen
8ceb28afc3 Merge pull request #3883 from dgenr8/first_double_spend
Relay and alert user to double spends
2014-06-30 08:35:12 -04:00
Michael Ford
ffebc1be43 Update verify.sh script to point to bitcoin.org
Now that downloads are no longer hosted on Sourceforge, update the
script to retrieve the binaries and signature file from bitcoin.org.
2014-06-29 13:20:19 +08:00
Tom Harding
9004798e62 Add -respendnotify option and new RPC data
-respendnotify=<cmd> Execute command when a network tx respends wallet
tx input (%s=respend TxID, %t=wallet TxID)

Add respendsobserved array to gettransaction, listtransactions, and
listsinceblock RPCs.  This omits the malleated clones that are included
in the walletconflicts array.

Add RPC help for respendsobserved and walletconflicts (help was missing
for the latter).
2014-06-27 07:54:21 -07:00
dllud
7ad720d890 Added encryptwallet call to bitrpc.py
This was the only call requiring password input which was still missing. Much useful to avoid leaving a plain text passphrase in the shell log.
2014-06-17 04:22:47 +01:00
Giuseppe Mazzotta
68ba85fd75 Updated Debian example bitcoin.conf with config from wiki + removed some cruft and updated comments 2014-06-11 07:29:35 +02:00
Wladimir J. van der Laan
6e7c4d17d8 gitian: upgrade OpenSSL to 1.0.1h
Upgrade for https://www.openssl.org/news/secadv_20140605.txt

Just in case - there is no vulnerability that affects ecdsa signing or
verification.

The MITM attack vulnerability (CVE-2014-0224) may have some effect on
our usage of SSL/TLS.

As long as payment requests are signed (which is the common case), usage
of the payment protocol should also not be affected.

The TLS usage in RPC may be at risk for MITM attacks. If you have
`-rpcssl` enabled, be sure to update OpenSSL as soon as possible.
2014-06-05 17:24:38 +02:00
Wladimir J. van der Laan
386e732a5f gitian: make linux qt intermediate deterministic
A qt installation date snuck into the host utils (lrelease etc)
This doesn't affect the end product, so no dependency version bump.

It also doesn't explain why gavin's and mine build is different
2014-06-02 09:46:59 +02:00
Wladimir J. van der Laan
b73dc953a8
Merge pull request #4187
d16f6f8 Remove unused imports in macdeploy script (Federico Bond)
2014-05-30 10:07:47 +02:00
Gavin Andresen
21790821da Fix name of Cory's pgp key 2014-05-29 12:51:14 -04:00
Cory Fields
58bfa79f0e gitian: Add cfields to gitian download scripts 2014-05-29 12:13:56 -04:00
Cory Fields
2869b1349b release: Bump the OSX SDK to 10.7 for gitian builds
This fixes the display on Retina Macbooks. It also moves us away from depending
on the ancient XCode3 sdk.
2014-05-24 11:47:08 -04:00
Cory Fields
1a97b22b9c
gitian: Add OSX build descriptors
Github-Pull: #4185
Rebased-By: Wladimir J. van der Laan
Rebased-From: bb5da27, 2288206, 7fe8fe6, f76db78, ebcf375, fa1ed7c, 397e9b8
2014-05-21 11:20:52 +02:00
Federico Bond
d16f6f87e1 Remove unused imports in macdeploy script 2014-05-20 10:28:16 -03:00
Federico Bond
c6e36b0492 Fix NameError in macdeploy script 2014-05-15 03:27:35 -03:00
Wladimir J. van der Laan
381b25dfde doc: remove mention of -rpctimeout from man page
That option hasn't existed for a long time.
2014-05-12 09:30:46 +02:00
Wladimir J. van der Laan
51cb8fe870
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.
2014-05-02 15:15:45 +02:00
Wladimir J. van der Laan
583df73acd
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)
2014-05-02 11:50:59 +02:00
Wladimir J. van der Laan
9dd5d79244 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
2014-05-01 10:16:06 +02:00
Wladimir J. van der Laan
202c95c216 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.
2014-04-30 15:30:39 +02:00
Wladimir J. van der Laan
92e3022f88 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.
2014-04-30 15:30:39 +02:00
Wladimir J. van der Laan
3ab1664594 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.
2014-04-30 15:30:39 +02:00
Ian Carroll
68aa01e51f Fixes error 2014-04-28 19:36:28 -04:00
Wladimir J. van der Laan
7cbe636a23
Merge pull request #4089
74fc254 devtools: add script to check symbols from Linux gitian executables (Wladimir J. van der Laan)
2014-04-27 17:08:41 +02:00
Matt Corallo
6e40fcf455 Update contrib/debian for autotools, among a few other tweaks 2014-04-26 20:18:18 -04:00
Wladimir J. van der Laan
74fc254c2b 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.
2014-04-25 12:19:37 +02:00
Wladimir J. van der Laan
bbe53f61db
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)
2014-04-22 16:24:43 +02:00
Wladimir J. van der Laan
91c601c54a
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)
2014-04-22 16:18:27 +02:00
super3
494cbf8350 /contrib index reorg
Cleaner and easier to read.

Reordered by functionality
2014-04-14 01:33:24 -04:00
Warren Togami
49a3352c1c gitian-linux: --enable-glibc-back-compat 2014-04-10 22:28:26 -04:00
Eric S. Bullington
0f63504463 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. 2014-04-09 10:01:47 -04:00
Wladimir J. van der Laan
25d4911e86 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.
2014-04-09 14:24:17 +02:00
Wladimir J. van der Laan
178825dec3
gitian: Version bump for Qt dependency
Bump Qt dependency version after OpenSSL update.
Very important. Thanks @michagogo for noting.
2014-04-08 11:51:59 +02:00
Wladimir J. van der Laan
fa2b42533a
Merge pull request #4023
4a811b0 gitian: upgrade openssl to 1.0.1g for both win and linux (Wladimir J. van der Laan)
2014-04-08 10:56:01 +02:00
Wladimir J. van der Laan
dac4e2aebd
Merge pull request #3914
ddcd1af gitian: add statically built variant of bitcoind/bitcoin-cli (Wladimir J. van der Laan)
2014-04-08 10:55:34 +02:00
Wladimir J. van der Laan
4a811b0053
gitian: upgrade openssl to 1.0.1g for both win and linux
OpenSSL 1.0.1g fixes CVE-2014-0160.

Also bump dependency versions.
2014-04-08 08:40:02 +02:00
Andreas Schildbach
2a9edeb1c8 Remove weights from download config for now as it's unclear how it will be used in future. 2014-03-30 14:24:16 +02:00
Andreas Schildbach
5d433613e2 Add Andreas Schildbach to gitian download scripts. 2014-03-30 14:24:16 +02:00
Wladimir J. van der Laan
ddcd1afc5f gitian: add statically built variant of bitcoind/bitcoin-cli 2014-03-26 09:48:22 +01:00
Wladimir J. van der Laan
c337e2e905 Update gitian README.md 2014-03-21 13:31:22 +01:00
Cory Fields
01e5327cfc build: hook up "make deploy" for cross osx builds 2014-03-20 13:06:17 -04:00
Cory Fields
0f21d39ffa build: fix qt.conf case-sensitivity in the deployed dmg
For qt5.2 on osx, the qcocoa plugin is mandatory. However, it fails to load
when qt.conf specifies the "plugin" path instead of the expected "Plugin". This
is in line with the documentation:
https://qt-project.org/doc/qt-5.0/qtdoc/qt-conf.html

I'm not sure how the plugins were loading before, unless the case-sensitivity
for OSX is new.
2014-03-20 13:06:16 -04:00
Cory Fields
275d6a3115 build: allow correct tools to be used for dmg creation.
These come from the enironment, which will be properly setup by Make with
the paths gleaned from configure.
Also don't crash if plugins are static.
2014-03-20 13:06:16 -04:00
Wladimir J. van der Laan
6041fc85ea
Merge pull request #3751
b881100 convert tabs to whitespace in bitrpc.py (Bryan Bishop)
2014-03-10 09:34:51 +01:00
Wladimir J. van der Laan
d33f69a447
Merge pull request #3796
16bfd68 update bash-completion for v0.9 (Christian von Roques)
2014-03-07 09:26:10 +01:00
Christian von Roques
16bfd689d0 update bash-completion for v0.9
Recognize completable arguments of new and expanded commands.
Now that bitcoin-cli(1) exists, add completion for it as well.
2014-03-04 14:10:35 -04:00
Wladimir J. van der Laan
93c3e21e92 Re-enable UPnP by default in gitian builds
IIRC this was the case with 0.8.6, so let's keep this to avoid the risk
of losing connectable nodes with 0.9 release.

Also our miniupnpc library was recently updated and I've heard
reports that it works better than before now.
2014-02-27 15:44:00 +01:00
Bryan Bishop
b881100aab convert tabs to whitespace in bitrpc.py
This is a minor change to bitrpc.py to conform with the formatting of
the other python source code in the repo.
2014-02-26 10:40:46 -06:00
Wladimir J. van der Laan
31b3d94ef5 gitian: Make protobuf win32 intermediate output deterministic
While building protobuf in different environments we noticed that
the host tool protoc was slightly different between builds (a symbol table
sorting issue).
Add a deterministic seed as well as disable zlib support.

Exected output is now:

    e2e403e1a08869c7eed4d4293bce13d51ec6a63592918b90ae215a0eceb44cb4 protobuf-win32-2.5.0-gitian-r4.zip
    a0999037e8b0ef9ade13efd88fee261ba401f5ca910068b7e0cd3262ba667db0 protobuf-win64-2.5.0-gitian-r4.zip

No effect on final executables so no version bump.
2014-02-25 07:58:11 +01:00
Wladimir J. van der Laan
0f0a70623d
Merge pull request #3728
6c0276a gitian: add libz-dev dependency package for linux boost (Wladimir J. van der Laan)
2014-02-23 09:02:13 +01:00
freewil
6fe6a448ea fix broken link to contrib/devtools 2014-02-22 23:26:11 -08:00
Wladimir J. van der Laan
6c0276ae69 gitian: add libz-dev dependency package for linux boost
Boost iostreams was picking up libz-dev in VirtualBox, as the recommended
way to build is now to make a VM with all dependency packages installed.

This caused a divergence between KVM/LXC build and VirtualBox
build results.

Fix this in the simplest possible way: add the libz-dev package.
2014-02-22 08:18:07 +01:00
Wladimir J. van der Laan
256a71b835
Merge pull request #3649
3078b58 linearize.py: Harmonize rpcpass to rpcpassword (Subo1978)
2014-02-17 10:52:41 +01:00
Wladimir J. van der Laan
b8d9058a4d
Merge pull request #3646
5770254 Copyright header updates s/2013/2014 on files whose last git commit was done in 2014. contrib/devtools/fix-copyright-headers.py script to be able to perform this maintenance task with ease during the rest of the year, every year. Modifications to contrib/devtools/README.md to document what fix-copyright-headers.py does. (gubatron)
2014-02-16 11:44:48 +01:00
Wladimir J. van der Laan
d5fa3eff03
Merge pull request #3622
c13a13e gitian: add -D flag to ar for deterministic output for linux deps (Wladimir J. van der Laan)
1552145 gitian: Sort generated source distribution archive (Wladimir J. van der Laan)
aabcd11 gitian: Make linux boost dependency completely deterministic (Wladimir J. van der Laan)
aa93485 gitian: Make linux build of OpenSSL deterministic (Wladimir J. van der Laan)
2014-02-10 18:35:04 +01:00
Wladimir J. van der Laan
4ce9106ff8 gitian: sort generated source distribution archive for windows
Make the bitcoin-X.X.X.tar.gz deterministic.
2014-02-10 17:07:36 +01:00
Wladimir J. van der Laan
6b55e6b97d gitian: Post-process .a libraries for win to be deterministic 2014-02-10 17:07:35 +01:00
Wladimir J. van der Laan
c13a13efec gitian: add -D flag to ar for deterministic output for linux deps
ar -D: Operate in deterministic mode. When adding files and the archive
index use zero for UIDs, GIDs, timestamps, and use consistent file modes
for all files.  When this option is used, if ar is used with identical
options and identical input files, multiple runs will create identical
output files regardless of the input files' owners, groups, file modes,
or modification times.
2014-02-10 16:20:13 +01:00