aboutsummaryrefslogtreecommitdiff
path: root/contrib/devtools
Commit message (Collapse)AuthorAgeFilesLines
* Merge #13780: 0.17: Pre-branch maintenanceWladimir J. van der Laan2018-08-084-4/+4
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 3fc20632a3ad30809356a58d2cf0ea4a4ad4cec3 qt: Set BLOCK_CHAIN_SIZE = 220 (DrahtBot) 2b6a2f4a28792f2fe9dc1be843b1ff1ecae35e8a Regenerate manpages (DrahtBot) eb7daf4d600eeb631427c018a984a77a34aca66e Update copyright headers to 2018 (DrahtBot) Pull request description: Some trivial maintenance to avoid having to do it again after the 0.17 branch off. (The scripts to do this are in `./contrib/`) Tree-SHA512: 16b2af45e0351b1c691c5311d48025dc6828079e98c2aa2e600dc5910ee8aa01858ca6c356538150dc46fe14c8819ed8ec8e4ec9a0f682b9950dd41bc50518fa
| * Update copyright headers to 2018DrahtBot2018-07-274-4/+4
| |
* | contrib: Fix test-security-check fail in Ubuntu 18.04Chun Kuan Lee2018-07-262-9/+9
|/
* Tools: fix BIND_NOW check in security-check.pyConrado Gouvea2018-07-121-1/+1
| | | Previously, the BIND_NOW check would work only if it was the first value in FLAGS.
* Merge #13177: GCC-7 and glibc-2.27 back compat codeWladimir J. van der Laan2018-07-121-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | 253f5929097548fb10ef995002dedbb8dadb6a0d Add stdin, stdout, stderr to ignored export list (Chun Kuan Lee) fc6a9f2ab18ca8466d65d14c263c4f78f9ccebbf Use IN6ADDR_ANY_INIT instead of in6addr_any (Cory Fields) 908c1d7745f0ed117b0374fcc8486f83bf743bfc GCC-7 and glibc-2.27 compat code (Chun Kuan Lee) Pull request description: The `__divmoddi4` code was modified from https://github.com/gcc-mirror/gcc/blob/master/libgcc/libgcc2.c . I manually find the older glibc version of log2f by objdump, use `.symver` to specify the certain version. Tree-SHA512: e8d875652003618c73e019ccc420e7a25d46f4eaff1c7a1a6bfc1770b3b46f074b368b2cb14df541b5ab124cca41dede4e28fe863a670589b834ef6b8713f9c4
| * Add stdin, stdout, stderr to ignored export listChun Kuan Lee2018-06-021-1/+1
| |
* | Obsolete #!/bin/bash shebangDesWurstes2018-06-201-1/+1
| |
* | Merge #13454: Make sure LC_ALL=C is set in all shell scriptsWladimir J. van der Laan2018-06-181-0/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 47776a958b08382d76d69b5df7beed807af168b3 Add linter: Make sure all shell scripts opt out of locale dependence using "export LC_ALL=C" (practicalswift) 3352da8da1243c03fc83ba678d2f5d193bd5a0c2 Add "export LC_ALL=C" to all shell scripts (practicalswift) Pull request description: ~~Make sure `LC_ALL=C` is set when using `grep` range expressions.~~ Make sure `LC_ALL=C` is set in all shell scripts. From the `grep(1)` documentation: > Within a bracket expression, a range expression consists of two characters separated by a hyphen. It matches any single character that sorts between the two characters, inclusive, using the locale's collating sequence and character set. For example, in the default C locale, `[a-d]` is equivalent to `[abcd]`. Many locales sort characters in dictionary order, and in these locales `[a-d]` is typically not equivalent to `[abcd]`; it might be equivalent to `[aBbCcDd]`, for example. To obtain the traditional interpretation of bracket expressions, you can use the C locale by setting the `LC_ALL` environment variable to the value C. Context: [Locale issue found when reviewing #13450](https://github.com/bitcoin/bitcoin/pull/13450/files#r194877736) Tree-SHA512: fd74d2612998f9b49ef9be24410e505d8c842716f84d085157fc7f9799d40e8a7b4969de783afcf99b7fae4f91bbb4559651f7dd6578a6a081a50bdea29f0909
| * | Add "export LC_ALL=C" to all shell scriptspracticalswift2018-06-141-0/+1
| | |
* | | Explicitly specify encoding when opening text files in Python codepracticalswift2018-06-125-7/+7
|/ /
* / utils: checking for bitcoin addresses in translationsMax Kaplan2018-06-051-1/+9
|/ | | | Checking for and removing any bitcoin addresses in translations
* doc: remove leftover check-doc documentationfanquake2018-05-291-6/+0
|
* Merge #13281: test: Move linters to test/lint, add readmeWladimir J. van der Laan2018-05-2914-734/+0
|\ | | | | | | | | | | | | | | | | | | | | | | fa3c910bfeab00703c947c5200a64c21225b50ef test: Move linters to test/lint, add readme (MarcoFalke) Pull request description: This moves the checks and linters from `devtools` to a subfolder in `test`. (Motivated by my opinion that the dev tools are mostly for generating code and updating the repo whereas the linters are read-only checks.) Also, adds a readme to clarify that checks and linters are only meant to prevent bugs and user facing issues, not merely stylistic preference or inconsistencies. (This is motivated by the diversity in developers and work flows as well as existing code styles. It would be too disruptive to change all existing code to a single style or too burdensome to force all developers to adhere to a single style. Also note that our style guide is changing, so locking in at the wrong style "too early" would only waste resources.) Tree-SHA512: 9b10e89f2aeaf0c8a9ae248aa891d74e0abf0569f8e5dfd266446efa8bfaf19f0ea0980abf0b0b22f0d8416ee90d7435d21a9f9285b66df43f370b7979173406
| * test: Move linters to test/lint, add readmeMarcoFalke2018-05-2414-734/+0
| |
* | Merge #13228: Add script to detect circular dependencies between source modulesMarcoFalke2018-05-182-0/+90
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a7b295e91e Add circular dependencies script (Pieter Wuille) Pull request description: This script finds dependencies between source code modules, treating the `.cpp` and `.h` file as one unit (so it will detect `A.cpp` depending on `B.h` where `B.cpp` depends on `A.h`). This can be used to find out which modules cannot be used independently from each other. It is very simplistic at this point, and assumes that a `.cpp` file's corresponding header has the exact same name, with `.cpp` replaced by `.h`. Furthermore, it assumes all `#include`s are relative to the `src/` directory. This is not a linter, and is not enforced through Travis or otherwise. This is the current output: ``` $ ../contrib/devtools/circular-dependencies.py {*,*/*,*/*/*}.{h,cpp} Circular dependency: chain -> pow -> chain Circular dependency: chainparamsbase -> util -> chainparamsbase Circular dependency: checkpoints -> validation -> checkpoints Circular dependency: init -> index/txindex -> init Circular dependency: init -> validation -> init Circular dependency: init -> net_processing -> init Circular dependency: init -> rpc/server -> init Circular dependency: init -> txdb -> init Circular dependency: init -> validationinterface -> init Circular dependency: random -> util -> random Circular dependency: sync -> util -> sync Circular dependency: txmempool -> validation -> txmempool Circular dependency: txmempool -> policy/fees -> txmempool Circular dependency: validation -> index/txindex -> validation Circular dependency: validation -> policy/policy -> validation Circular dependency: validation -> validationinterface -> validation Circular dependency: qt/addresstablemodel -> qt/walletmodel -> qt/addresstablemodel Circular dependency: qt/bantablemodel -> qt/clientmodel -> qt/bantablemodel Circular dependency: qt/bitcoingui -> qt/walletview -> qt/bitcoingui Circular dependency: qt/bitcoingui -> qt/walletframe -> qt/bitcoingui Circular dependency: qt/bitcoingui -> qt/utilitydialog -> qt/bitcoingui Circular dependency: qt/clientmodel -> qt/peertablemodel -> qt/clientmodel Circular dependency: qt/paymentserver -> qt/walletmodel -> qt/paymentserver Circular dependency: qt/recentrequeststablemodel -> qt/walletmodel -> qt/recentrequeststablemodel Circular dependency: qt/sendcoinsdialog -> qt/walletmodel -> qt/sendcoinsdialog Circular dependency: qt/transactiontablemodel -> qt/walletmodel -> qt/transactiontablemodel Circular dependency: qt/walletmodel -> qt/walletmodeltransaction -> qt/walletmodel Circular dependency: rpc/rawtransaction -> wallet/rpcwallet -> rpc/rawtransaction Circular dependency: wallet/coincontrol -> wallet/wallet -> wallet/coincontrol Circular dependency: wallet/fees -> wallet/wallet -> wallet/fees Circular dependency: wallet/rpcwallet -> wallet/wallet -> wallet/rpcwallet Circular dependency: wallet/walletdb -> wallet/wallet -> wallet/walletdb Circular dependency: txmempool -> validation -> policy/rbf -> txmempool Circular dependency: txmempool -> validation -> validationinterface -> txmempool Circular dependency: qt/addressbookpage -> qt/bitcoingui -> qt/walletview -> qt/addressbookpage Circular dependency: qt/guiutil -> qt/walletmodel -> qt/optionsmodel -> qt/guiutil Circular dependency: qt/addressbookpage -> qt/bitcoingui -> qt/walletview -> qt/signverifymessagedialog -> qt/addressbookpage Circular dependency: qt/addressbookpage -> qt/bitcoingui -> qt/walletview -> qt/receivecoinsdialog -> qt/addressbookpage Circular dependency: qt/guiutil -> qt/walletmodel -> qt/optionsmodel -> qt/intro -> qt/guiutil Circular dependency: qt/addressbookpage -> qt/bitcoingui -> qt/walletview -> qt/sendcoinsdialog -> qt/sendcoinsentry -> qt/addressbookpage ``` Tree-SHA512: 29bc985b7a41699f4666b0aaa785ca63c2145e84c37458536f4dcf8e3de8f1312cf0323fe09cb8f348a9d363583f76eac2d5bee574bc6a9f9cc97a9b0aad406f
| * Add circular dependencies scriptPieter Wuille2018-05-162-0/+90
| |
* | Enable Travis checking for two Python linting rules we are currently not ↵practicalswift2018-05-111-1/+3
|/ | | | violating
* Enable W191 and W291 flake8 checks.John Bampton2018-05-114-12/+14
| | | | | Remove trailing whitespace from Python files. Convert tabs to spaces.
* Make gArgs aware of the argumentsAndrew Chow2018-05-091-1/+1
| | | | | gArgs knows what the available arguments are and their help. Getting the help message is moved to gArgs and HelpMessage() is removed
* Merge #13094: tests: Add test for 64-bit Windows PE, modify 32-bit test resultsWladimir J. van der Laan2018-05-071-3/+13
|\ | | | | | | | | | | | | | | | | | | ab3f4dd tests: Add test for 64-bit PE, modify 32-bit test results (Chun Kuan Lee) Pull request description: 9a75d29b6f0d6c4834e451b0fae2200786655a35 change the error result from `PIE` to `DYNAMIC_BASE`. And there are no test for 64-bit, so I made one Tree-SHA512: 9d5643dadf4d9fc34ea32d94655bfb98eec2f7bc2820b4b0f525d5acf1cd22f3acf38bf8904dda4f50fd9ca5a5e56d566a392e6f804eea6e50e03cba40048621
| * tests: Add test for 64-bit PE, modify 32-bit test resultsChun Kuan Lee2018-04-271-3/+13
| | | | | | | | 9a75d29b6f0d6c4834e451b0fae2200786655a35 change the error result from `PIE` to `DYNAMIC_BASE`. And there are no test for 64-bit, so I made one
* | devtools: Make linter check LogPrint callsMarcoFalke2018-05-021-2/+3
|/
* Merge #12972: Add python3 script shebang lintMarcoFalke2018-04-162-3/+13
|\ | | | | | | | | | | | | | | | | | | | | 2bff472992 [contrib] convert test-security-check to python3 (John Newbery) 958bf40489 add lint tool to check python3 shebang (practicalswift) Pull request description: base58.py can executed by python3 Tree-SHA512: 30511204feefd4ccd5b4bf698fb88e516633e692dc95d31fe957b1c0c4879de25906355b28a5a0522171887315c8464a611e601ff00540db172d5bd463ee13d9
| * [contrib] convert test-security-check to python3John Newbery2018-04-141-3/+2
| |
| * add lint tool to check python3 shebangpracticalswift2018-04-141-0/+11
| |
* | Enable additional flake8 rulespracticalswift2018-04-161-1/+11
| |
* | Minor Python cleanups to make flake8 pass with the new rules enabledpracticalswift2018-04-163-9/+10
|/
* Merge #12933: doc: Refine header include policyMarcoFalke2018-04-111-11/+0
|\ | | | | | | | | | | | | | | | | | | | | | | fad0fc3c9a Refine travis check for duplicate includes (MarcoFalke) Pull request description: Since there is no harm in having "duplicate" includes and it makes it obvious what are the dependencies of each file, without having to do static analysis or jumping between files, I'd suggest to revert the travis check for duplicate includes. Generally, I think that enforcing minor style preferences should not be done via travis. The cost of maintaining and the burden on other developers is too high. C.f discussion in https://github.com/bitcoin/bitcoin/pull/10973#discussion_r180142594 Tree-SHA512: 97ab0e769d457ccfb873fff6c99613f8b944cd7ef95bfdccb0e1bbe8f5df1f16548c658fa03af42516f806546e75646d338a061e7b057619490235d311ca21f1
| * Refine travis check for duplicate includesMarcoFalke2018-04-101-11/+0
| | | | | | | | This partially reverts commit c36b720d009f1ab1c3900750e05c1f17412e564d.
* | Add shell script linting: Check for shellcheck warnings in shell scriptspracticalswift2018-04-111-0/+27
|/
* Merge #12852: [doc] devtools: Setup ots git integrationWladimir J. van der Laan2018-04-101-0/+8
|\ | | | | | | | | | | | | | | | | | | fa385c3 [doc] devtools: Setup ots git integration (MarcoFalke) Pull request description: Document the simple steps on how to set up ots git integration. Tree-SHA512: 1b9f99bfaa6cd9dc581243d3a3584301645e95450acc3b5898dcdb53849569de16bb8ef2676b18f6b8dd402de10aee80119e15c1b28cef36f17ad121cbba2ba3
| * [doc] devtools: Setup ots git integrationMarcoFalke2018-04-091-0/+8
| |
* | Add Travis check for duplicate includespracticalswift2018-04-091-0/+43
| | | | | | | | This enforces parts of the project header include guidelines (added by @sipa in #10575).
* | Merge #12891: [logging] add lint-logs.sh to check for newline termination.Wladimir J. van der Laan2018-04-081-0/+25
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | d207207 [logging] add lint-logs.sh to check for newline termination. (John Newbery) 5c21e6c [logging] Comment all continuing logs. (John Newbery) Pull request description: Check that all calls to LogPrintf() are terminated by a newline, except those that are explicitly marked as 'continued' logs. Tree-SHA512: fe5162b2b2df1e8a4c807da87584fa9af97a6b8377e4090fe0caa136d90bf29a487a123cde94569bdce7101fee3478196d99aa13f1212e24bfe5f41c773604fc
| * | [logging] add lint-logs.sh to check for newline termination.John Newbery2018-04-071-0/+25
| | | | | | | | | | | | | | | Check that all calls to LogPrintf() are terminated by a newline, except those that are explicitly marked as 'continued' logs.
* | | tests: Add check for test suite name uniqueness in lint-tests.shpracticalswift2018-04-061-2/+17
|/ /
* | Merge #12757: Clarify include guard naming conventionMarcoFalke2018-04-011-0/+29
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3bcc0059b8 Add lint-include-guards.sh which checks include guard consistency (practicalswift) 8fd6af89a0 Fix missing or inconsistent include guards (practicalswift) 8af65d96f4 Document include guard convention (practicalswift) Pull request description: * **Documentation**: Document include guard convention * **Fix**: Fix missing or inconsistent include guards * **Regression test**: Add `lint-include-guards.sh` which checks include guard consistency Tree-SHA512: 8171878f60fd08ccbea943a11e835195750592abb9d7ab74eaa4265ae7fac523b1da9d31ca13d6ab73dd596e49986bfb7593c696e5f39567c93e610165bc2acc
| * | Add lint-include-guards.sh which checks include guard consistencypracticalswift2018-03-221-0/+29
| | |
* | | Merge #12719: tests: Add note about test suite naming convention in ↵MarcoFalke2018-04-011-0/+19
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | developer-notes.md db983beba6 tests: Add lint-tests.sh which checks the test suite naming convention (practicalswift) 5fd864fe8a tests: Rename test suits not following the test suite naming convention (practicalswift) 7b4a296a71 tests: Add note about test suite naming convention (practicalswift) Pull request description: Changes: * Add note about test suite naming convention * Fix exceptions * Add regression test Rationale: * Consistent naming of test suites makes programmatic test running of specific tests/subsets of tests easier * Explicit is better than implicit Before this commit: ``` $ contrib/devtools/lint-tests.sh The test suite in file src/test/foo_tests.cpp should be named "foo_tests". Please make sure the following test suites follow that convention: src/test/blockchain_tests.cpp:BOOST_FIXTURE_TEST_SUITE(blockchain_difficulty_tests, BasicTestingSetup) src/test/prevector_tests.cpp:BOOST_FIXTURE_TEST_SUITE(PrevectorTests, TestingSetup) src/wallet/test/coinselector_tests.cpp:BOOST_FIXTURE_TEST_SUITE(coin_selection_tests, WalletTestingSetup) src/wallet/test/crypto_tests.cpp:BOOST_FIXTURE_TEST_SUITE(wallet_crypto, BasicTestingSetup) $ ``` After this commit: ``` $ contrib/devtools/lint-tests.sh $ ``` Tree-SHA512: 7258ab9a6b9b8fc1939efadc619e2f2f02cfce8034c7f2e5dc5ecc769aa12e17f6fb8e363817feaf15c026c5b958b2574525b8d2d3f6be69658679bf8ceea9e9
| * | | tests: Add lint-tests.sh which checks the test suite naming conventionpracticalswift2018-03-191-0/+19
| |/ /
* | | Merge #12284: Remove assigned but never used local variables. Enable Travis ↵MarcoFalke2018-04-012-10/+11
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | checking for unused local variables. ea04bf7862 Enable flake8 warning F841 ("local variable 'foo' is assigned to but never used") (practicalswift) 169f3e8637 Remove assigned but never used local variables (practicalswift) Pull request description: Remove assigned but never used local variables. Enable Travis checking for unused local variables. Tree-SHA512: d6052ec9044c5d1f03d874ea3c8addd5a156779213ef9200f89d3ae53230f2fd1691aff405c3dae14178e5ef09912c4432e92f606ef4a5220ed9daa140cdee81
| * | Enable flake8 warning F841 ("local variable 'foo' is assigned to but never ↵practicalswift2018-03-291-1/+2
| | | | | | | | | | | | used")
| * | Remove assigned but never used local variablespracticalswift2018-03-291-9/+9
| | |
* | | Merge #12820: contrib: Fix check-doc script regexesMarcoFalke2018-03-301-20/+22
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0c17e27630 init: Remove help text for non-existent -fuzzmessagestest arg (MarcoFalke) 136084470c contrib: Fix check-doc script regexes (MarcoFalke) Pull request description: Fixup the regexes to properly find all used args. The regex should now match all of the getter and setter methods of the `ArgsManager`. See https://dev.visucore.com/bitcoin/doxygen/class_args_manager.html#pub-methods Before: ``` Args used : 159 Args documented : 188 Args undocumented: 0 Args unknown : 29 ``` After: ``` Args used : 183 Args documented : 188 Args undocumented: 0 Args unknown : 5 ``` Tree-SHA512: 1a7fb7ea55b2f6030358a1055d8f2c19b31f69d0603be0b009e6e603564014b4e2bb824357c9d43d0fba3ce7159b7c4e7eaa60b3f962053d94f73d0e626294fc
| * | | contrib: Fix check-doc script regexesMarcoFalke2018-03-281-20/+22
| | | |
* | | | Merge #12829: Python3 fixupWladimir J. van der Laan2018-03-292-55/+55
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | f50975b [contrib] fixup symbol-check.py Python3 support (John Newbery) 5de2b18 [contrib] fixup security-check.py Python3 support (John Newbery) Pull request description: security-check.py and symbol-check.py were broken by #11881. Fix them. Tree-SHA512: 86de3d6dc3292b1ae4cc04c2d7d7dbbf39c9270551d7b224b8d8b19e3184c30c897dbf823200403706d06bb405c0decad5cfd690cb2c0312992a235a4ffcf6bf
| * | | [contrib] fixup symbol-check.py Python3 supportJohn Newbery2018-03-281-33/+33
| | | |
| * | | [contrib] fixup security-check.py Python3 supportJohn Newbery2018-03-281-22/+22
| |/ /
* / / contrib: Remove unused import stringMarcoFalke2018-03-281-1/+0
|/ /
* / Change all python files to use Python3John Newbery2018-03-266-42/+40
|/