-
Notifications
You must be signed in to change notification settings - Fork 128
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Insight API broadcast_tx [17] #481
Conversation
api/insight/apiroutes.go
Outdated
err = json.Unmarshal(body, &req) | ||
if err != nil { | ||
apiLog.Errorf("Failed to parse request: %v", err) | ||
writeError(w, r.URL.RequestURI(), "Not found", c.getIndentQuery(r)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one is more of a 400 Bad Request: https://httpstatuses.com/400
api/insight/apiroutes.go
Outdated
return | ||
} | ||
// Successful extraction of Body JSON | ||
rawHexTx = req.Rawtx | ||
} | ||
|
||
txid, err := c.BlockData.SendRawTransaction(rawHexTx) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's check that rawHexTx does not exceed the max allowable size.
api/insight/apiroutes.go
Outdated
} | ||
|
||
txid, err := c.BlockData.SendRawTransaction(rawHexTx) | ||
if err != nil { | ||
apiLog.Errorf("Unable to send transaction %s", rawHexTx) | ||
http.Error(w, http.StatusText(422), 422) | ||
// Write the raw error out for display | ||
writeError(w, r.URL.RequestURI(), fmt.Sprintf("SendRawTransaction failed: %v", err), c.getIndentQuery(r)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one would be a 422 (unprocessable entity), but the message is OK.
We'll also want to have a clear plan for rate limiting on the insight API worked out. There are plenty of middlewares out there that should fit the bill. |
Updated error response strategy. Moved rawtx body extraction to middleware.
d9bd852
to
e963795
Compare
Nice work. I'll try to get this in tonight |
Great! I'll rebase and re-align the other Insight PR's later today. |
This adds broadcast_tx to the Insight API: [decred#17](decred#400) * Updated error response strategy. Moved rawtx body extraction to middleware. * Add rate limiter. Check for max size limits on rawtx.
This adds broadcast_tx to the Insight API: [decred#17](decred#400) * Updated error response strategy. Moved rawtx body extraction to middleware. * Add rate limiter. Check for max size limits on rawtx.
This adds broadcast_tx to the Insight API: [decred#17](decred#400) * Updated error response strategy. Moved rawtx body extraction to middleware. * Add rate limiter. Check for max size limits on rawtx.
This adds broadcast_tx to the Insight API: [decred#17](decred#400) * Updated error response strategy. Moved rawtx body extraction to middleware. * Add rate limiter. Check for max size limits on rawtx.
commit 07691c4982261d97ab87c5c2b6acc5241b060717 Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Sun Sep 30 16:13:08 2018 -0700 -u ui updates (pt 6) created trimmed decimal display func commit f67e8e024162979b109892604d9295bd67491b00 Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Thu Sep 27 18:25:34 2018 -0700 -u ui updates (pt 5) commit 8d6aa8e84746d06483e1b1ff614e03e2ae66fb31 Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Thu Sep 27 16:26:49 2018 -0700 -u ui updates (pt 4) commit f7edf3e4f5ac23f30e26e72369b85dab2285cee8 Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Tue Sep 25 16:59:46 2018 -0700 -u ui updates (pt3) commit ea528540819b09cb49349aece63e2c9b106288bd Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Mon Sep 24 21:37:23 2018 -0700 -u ui updates (pt 2) commit c3b0b32eadf451b184e3a31c07315a3cbe39366e Merge: a4297a1 b01860b Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Mon Sep 24 15:52:13 2018 -0700 Merge branch 'stats_page' of https://github.com/McEdward/dcrdata into stats_page commit a4297a1a6a650744db2d72cd2f3aaede88e9b4cc Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Mon Sep 24 14:03:57 2018 -0700 -u ui updates commit b01860bca38b88c469ab23718b3bcade61322ad4 Author: Macaulay Daives <mac114.md@gmail.com> Date: Mon Sep 24 22:15:19 2018 +0200 some of the items on the todo commit 8a8113d0b1c0846a9a9b5350e42200f1130c53af Author: Macaulay Daives <mac114.md@gmail.com> Date: Wed Sep 19 01:04:14 2018 +0200 making all requested changes so far commit aa36846d8d06c3eb3d2d0bf5893c59d37fe33e62 Author: Macaulay Daives <mac114.md@gmail.com> Date: Tue Sep 18 12:56:16 2018 +0200 ultimate supply changes commit 43fe82a8523e9ecb1e7977e6a95c4e1cbb50257b Author: Macaulay Daives <mac114.md@gmail.com> Date: Fri Sep 14 01:54:33 2018 +0200 requested changes to the page commit 7771700eca5ea5f89a8d047a4eb6e0220a010149 Author: Macaulay Daives <mac114.md@gmail.com> Date: Sun Sep 2 19:07:27 2018 +0200 rebase and adjustments commit 7912bb89dce5bc6623ebcb8aead6aa41d9541720 Author: Macaulay Daives <mac114.md@gmail.com> Date: Tue Aug 28 02:44:17 2018 +0200 changes to url and page name commit 852ee90cbe5b0c9342398a0c103d71cd4ac95e4d Author: Macaulay Daives <mac114.md@gmail.com> Date: Tue Aug 28 02:08:51 2018 +0200 UI changes for the stats page commit 46168c0c3c6573ef62705b2f141325633a5cb324 Author: Macaulay Daives <mac114.md@gmail.com> Date: Wed Aug 1 10:12:57 2018 +0200 adding new stats page commit 8d924bf8e669ad5bd55568f8f68a241f5b08c469 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Sep 4 19:31:48 2018 -0700 views: style invalidated transactions on block page. (#663) This styles invalidated transactions on the block and transactions pages. Create an invalidated-tx CSS style to gray out and change background color of regular transaction table data, including the coinbase, on a block's page. On the blocks list page, indicate invalidated blocks. When not in lite mode, get the Valid and MainChain status from PG. Also change maxExplorerRows to 400 (from 2000). commit 40e118b6c52b4228b85447bc412f9b4123da1cbc Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Wed Sep 5 01:33:16 2018 +0300 Current Ticket Pool Visualization (#542) This add current ticket pool visualization graphs to /ticketpool page. This also adds handling for the new getticketpooldata websocket messages. TicketGrouping type and an enumeration is used to improve readability. Rename 1d/1wk/1m to day/wk/mo. The "1" looks too much like an "l". Use chaincfg.TicketMaturity for computing ticket maturity block. The dcrpg table version is bumped to 3.5.2 with the addition of an index on pool_status in the tickets table. commit d105024ef53cc5945644d7a226a429ebbcc79070 Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Tue Sep 4 18:38:29 2018 +0300 Fix issues on address page (#633) This ensures the group by interval selected is the most meaningful for the user. The RegularTx bars are now split into SentRtx and ReceivedRtx for the transactions types chart. This also adds the pagesize drop down options back in. Disable the charts view mode when on lite mode. commit 3ae6c99e54aab2dda1c60a63b9bc5525b38109fb Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sat Sep 1 23:34:43 2018 -0500 explorer: address multiple deadlocks and data races Home page was requesting a full read-write lock when it only needed a read lock. Similarly, RootWebsocket was requesting full unneeded full locks in both the send and receive loops, which caused a deadlock. Add (*explorerUI).Height() for thread-safe access to NewBlockData.Height. Remove several pointless closures. commit 10fccfc6a6e8f86b255107ca75486a6af699db1d Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 31 17:23:46 2018 -0700 special handling for genesis block coinbase transaction (#657) This changes the block page to recognize the genesis block and handle the (invalid) coinbase transaction differently. Show a UTF8 attention symbol in red next to the tx hash. Add a title (hover text) explaining why it is special. Change the link to point to code (chaincfg/genesis.go). This also adds a function GenesisTxHash in package txhelpers to retrieve the expected hash of the genesis coinbase transaction for the given network. commit b15916635b71959b599d988e086cbc2fdac491ce Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Thu Aug 30 10:23:29 2018 -0700 dcrpg/views: add side chain queries and side chain blocks page (#654) This adds side chain queries and a side chain blocks page. Add BlockStatus struct to describe the status of a block in the block chain in terms of main/side, validity, height, and hashes of self and next and previous blocks. Add RetrieveSideChainBlocks to retrieve a slice of []BlockStatus for all side chain blocks. While here, stop shadowing the named return err everywhere in queries.go. Also remove redundant rows.Close(). Mounted on /side is a list of side chain blocks with links to them, their parents, and their children, if any. Update /block page to indicate if the block is a side chain block, and if it is approved by stakeholders. Add MainChain to explorer.BlockBasic. When looking up a block from hash while in full mode, use the ChainDB query instead of an RPC so that reorganized/orphaned blocks may be located. commit 71c1d033445bd7c450928b29ba6ffe7a35382e43 Author: SeaLightHouse <39948685+SeaLightHouse@users.noreply.github.com> Date: Thu Aug 30 22:29:17 2018 +0530 For future blocks show a time estimate (#653) block page: provide an ETA for blocks not yet mined When visiting /block/{n} where {n} is a block height beyond the current best block, provide an ETA for the arrival of the block assuming the target block time. commit 70ed11e77de5c5e9712e3a7c06bf81d64345faad Author: Corey Osman <corey@logicminds.biz> Date: Wed Aug 29 20:00:22 2018 -0700 Updates README for golang 1.11 (#647) This updates the README.md for Go 1.11 changes, including modules. This also adds additional instructions for building with docker. commit 37b7150a99daca975ed192136f6474b3b6f27a8f Author: gozart1 <gozart1@users.noreply.github.com> Date: Wed Aug 29 19:58:14 2018 -0700 add some bottom padding to main container to prevent footer overlap (#648) This adds padding at the bottom of the main container to prevent the footer from covering up anything in the body. commit ee54aec3232270a090b88fc6bb2ddfe9a43d7000 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Aug 28 13:43:40 2018 -0500 begin 3.1 release cycle Address doctoc weirdness. commit aac0885ccf1990d53a7d7eabc1cb83125375cf41 Author: mikefullman <mikef@zenshows.com> Date: Mon Aug 27 21:20:37 2018 -0700 insight api sync status and cleanup commit ba0f9ee7067e56b061bb34612cf1f1dc3b5bc0d7 Author: codemaestro64 <42093751+codemaestro64@users.noreply.github.com> Date: Tue Aug 28 19:02:33 2018 +0100 Display the next expected ticket price and bounds (#617) This shows the expected ticket price for the next price window, along with the min/max bounds, which narrow as the current windows progresses. commit 61a38fbaa2fc95dbc3e7a2ec2b7be1102eeeec79 Author: Corey Osman <corey@logicminds.biz> Date: Tue Aug 28 10:21:30 2018 -0700 Adds basic docker support (#632) This adds dockerfile support. It allows the user to build a dockerfile from within the repo. The README.md is updated with docker instructions, anda table of contents via doctoc. The code of conduct is also renamed for github. commit 4b074b326bae6aa04adb86cf20256fb072b18e47 Author: codemaestro64 <42093751+codemaestro64@users.noreply.github.com> Date: Mon Aug 27 15:42:56 2018 +0100 Make agendadb filename configurable and house it in datadir folder (#631) This adds a configuration option that make the agendadb filename configurable at runtime. It also ensures that the file location is housed in the datadir. commit b4ae964d93e230acc6e47032073dab4b5c7cf8fd Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Thu Aug 23 14:21:08 2018 -0500 explorer/mempool: validation Create type TicketIndex map[string]int. Create type BlockValidatorIndex map[string]TicketIndex. Replace map[int64]map[string]int with BlockValidatorIndex. Now block is referenced by hash so that side chains do not get combined with the main chain. Remove notions of validity from VotingInfo, and only count tickets voted and max votes per block. Note that tickets voted is different from number of votes seen since ticket double spends are common. views/mempool: column names best block values Best block column values should be true/false, not valid/invalid. Always link to /block/hash instead of /block/height. sortVotesTable is using td:nth-child to pick the column, so height is the second column and ticket index is the 4th. explorer: do not rebroadcast votes Do not rebroadcast votes already recorded during initial mempool inventory after the last block was mined. Also track all unique stake and regular transactions to prevent dups. explorer: work around js race Votes for a block that explorer has yet to (is about to) see can come through the new tx channel and are broadcast to the clients. The full mempool update will come immediately after and that, broadcasting the new mempool data. However, on the client, in js, the full refresh of the table from the new block can be processed before the early votes. Then when the early votes are processed, they appear as duplicates in the votes table since the backend processed them in the opposite order. As a workaround, modify the explorers mempool monitor to refuse to broadcast such votes, identified as validators for a block > last known. Last known refers to the last block that triggered a full mempool update. This is OK since on the backend, the full mempool update will contain this vote and it will be included in the client signal html table rebuild. explorer: avoid RPC in storeMempoolInfo and lock earlier make Hash part of explorer.BlockBasic, and use exp.NewBlockData.Hash instead of RPC. When fetching mempool, ensure block hash/height is the same before and after the RPC so the best block at the time of the call is known with certainty. Lock exp.MempoolData without delay in storeMempoolInfo. commit 8a2e2ad351ae3467d3e64a029b5b048b5446781b Author: mikefullman <mikef@zenshows.com> Date: Tue Jul 24 09:31:41 2018 -0700 7/5 confirmed ok. fixed columns to valid for last block. new tx on upcoming block not painted pink. make upcoming votes light grey background commit 93b578877a16e0b92ac968a07913c46a84d0a97f Author: Alawode Oluwandabira <dabiraalawode@yahoo.com> Date: Thu Mar 15 07:25:53 2018 +0100 explorer: votes filter now flags votes instead of excluding them. commit f2903f1a822267521f2237e07717567250c3d9ce Author: Corey Osman <corey@logicminds.biz> Date: Thu Aug 23 09:39:28 2018 -0700 add the ability to use environment variables for configuration (#629) main: Add the ability to use environment variables to set configuration. The ability to set app configuration via environment variables makes this more compatible with 12 factor app design, in addition to docker and docker-compose. A simple config test file is also added. A new import, the env package, is added that allows declaration of environment variables via struct tag. The go module files, and dep files are updated to include the dependency. commit a0378ed50769d503f265c889fc1aae94853a1879 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Wed Aug 22 15:40:08 2018 -0500 dcrpg: fix upgrade to 3.5.1 from <3.5.0 A missing fallthrough statement ad the end of the 3.4.1 -> 3.5.0 upgrade broke upgrading to 3.5.1 from any version but 3.5.0. commit e54cfa10a7f700b069bc8e6fabbc4dbaa7c39cf4 Author: dmigwi <migwi.ndungu@andela.com> Date: Wed Aug 22 04:47:54 2018 +0300 Fix bugs appearing on agenda page Update agenda voting milestone with data migration running from scratch commit cc0e85c12f570fa553f08fb6160d5a1d6fac3431 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Aug 21 16:29:53 2018 -0500 rework version scheme with appBuild commit 2f683513e4a613401131a7fc4c607f56a6696d77 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Aug 21 11:14:46 2018 -0500 go mod: Use go modules Specify dcrd and dcrwallet module versions. Remove dcrwallet/netparams import. Update all other deps. commit 8b16836835b872f3d05124ae11729fc6f5218fb2 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Aug 21 08:01:23 2018 -0700 README: update for 3.0 (#625) This updates the README.md for features added to 3.0, and other cleanup. - Remove github release badge (only tags matter). - Update repository overview with new folders and better descriptions. - Update required dcrd to 1.3 (testnet3). - Clean up and clarify Upgrading Instructions. - Add more about PostgreSQL tuning. - Add System hardware requirements section. - Update JSON API tables with new endpoints (block subsidy, tx vinfo, tx hex, tx decoded, address totals). - fix typos, add tips about permissions and dcrd settings - note experimental Insight API support commit 6ca963dbb1ef2edfe491a4d8d836cc99bb043dfd Author: codemaestro64 <42093751+codemaestro64@users.noreply.github.com> Date: Tue Aug 21 15:24:11 2018 +0100 Add color themes for different networks (#605) This adds distinct day color themes for different networks (simnet, testnet, mainnet). All networks have the same background color except for the header and footer, which are different. A new template function `theme` is added that returns current theme used to set the <body> class. commit 91a3249a3e6c42b718cd7ca6f2c75b75003941f2 Author: Mike <mikef@zenshows.com> Date: Tue Aug 21 06:12:34 2018 -0700 [WIP] Insight API fixes for upgraded tables (#572) This fixes several Insight API endpoints that were broken when the addresses table upgraded to 3.3.0. commit 11147ba63a5d28ef496a5abff9a861af9291d198 Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Mon Aug 20 23:07:00 2018 +0300 address page: Add charts (#597) This bumps the dcrpg tables version to 3.5.0 from 3.4.1 with the addition of the tx_type column to the addresses table, and the vins table. The upgrade is automatic and takes about 1 hr depending on hardware. This adds charts on the address page to display the following data over time for the given address, and binned by several selectable time frames: - transaction type - sent and received amounts - unspent amount (a.k.a. balance) The graphs use the standard Decred color scheme. API endpoints are added for types and amount distribution charts. The required data is retrieved by AJAX requests. commit 0920a45d8b516a42b0b043bf21c2935336171ebd Author: gozart1 <gozart1@users.noreply.github.com> Date: Mon Aug 20 02:02:24 2018 -0700 chart theming, url backed state & universal zoom (#598) Add theming, url backed state, universal zoom & moving average to /charts commit 180c7636e3a0fdc3dce760d4df41791f85f890c5 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Aug 16 22:26:49 2018 -0500 dcrpg: the 3.2.0 -> 3.3.0 upgrade was failing The HashDB function required the is_mainchain column, but it did not yet exist at the time of upgrade. This was added to the query after the upgrade was initially tested. commit 4622a99876ddaae2310cc23feb017889b6c7b0ae Author: J Fixby <JFixby@users.noreply.github.com> Date: Thu Aug 16 21:53:28 2018 +0200 Update README.md on dep ensure -vendor-only (#621) This instructs to use the -vendor-only flag with dep ensure to not modify the Gopkg files. Instructions for updating dependencies and info on dep are also provided. commit 01d9e0be706d38c947268da2548be9016594b285 Author: CodeMaestro <code.maestro64@gmail.com> Date: Thu Aug 16 19:13:39 2018 +0100 Show proper message when no agendas commit e9533aa8a7f601e5d8f417a9224eab345a6d21a3 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Wed Aug 15 23:26:59 2018 -0500 stakedb: Close badger iterator after View commit d9cf525773982e23c5faebc90a30f7a7f433b9a1 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Aug 15 12:57:41 2018 -0700 increase node notification buffer sizes (#616) With more transactions coming at once, and the possibility of very large reorgs on testnet, larger channel buffers are useful. This makes it happen. commit a281cf7ea945898570561785f0c221b1d3b77eb2 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Wed Aug 15 14:05:36 2018 -0500 fix another lite mode crash commit 93749cb3dcf0b0ebe2f56fb9a011df882e2e6afb Author: J Fixby <JFixby@users.noreply.github.com> Date: Wed Aug 15 18:11:02 2018 +0200 avoid pointless query for dummy sstxchange address This detects when the dummy (zero pubkey hash) address is requested on the address page, skips the queries, and shows a message. commit f3c5c046222a8800e206ac3ff89e2c7a71ee34a9 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Aug 14 12:21:05 2018 -0500 dcrpg/main: enable upserts after indexing (#613) * dcrpg/main: enable upserts after indexing commit e41e9d19e2ca97f7f81c6471ab7163064ae8d6a6 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Mon Aug 13 13:00:55 2018 -0500 lite mode fixes with new ChainDBRPC struct commit caf2a8315eb2a743176a9f0cfc7f69cce6677195 Author: SeaLightHouse <39948685+SeaLightHouse@users.noreply.github.com> Date: Mon Aug 13 20:20:16 2018 +0530 added TargetTimePerBlock in views/parameters.tmpl (#606) This adds TargetTimePerBlock in on the chain Parameters page. commit 81d965d5721a9ad7cc2d6578ca5f41693dcaeacb Author: SeaLightHouse <swarupghosh123@gmail.com> Date: Mon Aug 13 16:12:45 2018 +0530 changed mainnet.decred.org to explorer.dcrdata.org in main menu commit c8c12c76d3a416568b50b57d92fefc5907b6065d Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 10 14:03:19 2018 -0500 keep spaces out of the url (#602) * keep spaces out of the url Change "merged debit" to "merged_debit" so we don't get ?txntype=merged%20debit in the url. * recognize old links commit 029e74c2f4bcd4ff5def8cad2550e9d47e5b41dc Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Fri Aug 10 18:15:10 2018 +0300 Display the tiny qr code thumbnail by default (#583) This restores the javascript on the address page that shows the qr code icon. commit 2614a4e3c0e65120f3746672e8cbfe6d15469d5d Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 10 08:51:37 2018 -0500 dcrpg: reorg handling (#580) This adds a ChainMonitor to dcrpg and implements switchToSideChain. Add (*ChainDB).TipToSideChain, used by switchToSideChain to move blocks from mainchain to sidechain, updating all related tables. Add (*ChainDB).SetVinsMainchainByBlock, used by TipToSideChain, and add other mainchain queries for txns, votes, tickets, and addresses tables. notification: create block connected and reorg channels for dcrpg Embed ChainDB in ChainDBRPC instead of having named field. Add ChainDB.bestBlockHash to avoid unnecessary RPC. Upgrade tickets table with is_mainchain column, forgotten in last PR. This bumps the db scheme from 3.3.0 --> 3.4.0. Added new index uix_votes_block_hash to votes table for block_hash to reduce the index size for this column (there is a two column unique index that is 4x larger in size), and speed up scans. This bumps table version from 3.4.0 --> 3.* dcrpg: add ChainMonitor. commit 056527ec623926f69c8f5e53ec941141548c82ec Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Aug 8 11:39:25 2018 -0500 missing defer in sqlite, lots of linting (#596) * missing defer in sqlite, lots of linting * disable gofmt since 1.11 has no ideas about things commit d43de2fd1684ba0a4fbcb6561f36edd6b00e56c4 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Wed Aug 8 10:36:29 2018 -0500 testnet3 Update deps for dcrd, dcrwallet. Also update golang.org/x/... Remove all reference to params.TestNet2 as it was removed from chaincfg. Deprecate netName() in config.go. Change explorer.netName to work for any numbered testnet by stripping suffix after "testnet". Add tests for explorer.netName. commit a000082da3c4623e6ee60f9e01652e1297a3c3e1 Author: J Fixby <github@jfixby.com> Date: Tue Aug 7 00:51:29 2018 +0200 dcrsqlite: test GetBestBlockHash, GetBestBlockHeight, GetStakeInfoHeight commit e92b449957de7f0cb8f9617e0b2f4e6ef08c7b45 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Aug 7 09:44:25 2018 -0500 main: show golang version commit 8639f6eb21a90b229bd9336efb4fe241ee18637d Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Tue Aug 7 01:37:32 2018 +0300 agendadb: Fix unhandled errors while fetching all agendas (#594) * Fix the unhandled error while fetching all agendas * Improve on the error messages commit 6aa3651ee29ac09438785060a88785e01ebe796a Author: J Fixby <JFixby@users.noreply.github.com> Date: Mon Aug 6 23:26:47 2018 +0200 dcrsqlite: test RetrieveAllPoolValAndSize and RetrieveBlockFeeInfo (#563) commit 4a8449e7b25049289f8608eb554ff566f98cb878 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Fri Aug 3 16:43:23 2018 -0500 txhelpers/explorer: move and test CalcMeanVotingBlocks commit 7bc16a2fbf13e6f1fb9dbec039c19d7bf94733ca Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 3 14:36:11 2018 -0500 api: add block rewards endpoints (#592) * api: add /block/.../subsidy endpoint txhelpers: add RewardsAtBlock api/types: add BlockSubsidies JSON-tagged type api: add VotesInBlock(string) to DataSourceAux interface api: add *chaincfg.Params to appContext api: and add (*appContext).blockSubsidies dcrpg: add (*ChainDB).VotesInBlock, and RetrieveBlockVoteCount & query * api: allow ./subsidy for future blocks Just omit the block hash, and assume all voters * don't ignore indent commit a18e97cfa92cf89eac81fbc08c5adb453fab9c86 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 3 12:43:28 2018 -0500 config: disable dev balance prefetch with invalid fund (#589) * config: disable dev balance prefetch with invalid fund dbtypes: DevSubsidyAddress now returns a non-nil error in special cases (e.g. testnet2). When parsing config, check chain params via DevSubsidyAddress to automatically disable the dev fund prefetch when it would not be possible to fetch a non-zero balance. * move to after log init, fix printf commit 2a555814bd2dd91e4ace50d2d91e542fecefb474 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Jul 31 14:24:33 2018 -0500 dcrpg: provide error context in handleBlocksTableMainchainUpgrade commit 148ed2f52bdac18f50656ad7d53ddddf02437e4e Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Mon Jul 30 21:36:31 2018 -0500 explorer: limit logging about websocket updates to zero clients commit c9f6cdebc94a9abb6c4dc18131f27cfb3e0b4aed Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Mon Jul 30 13:35:18 2018 -0500 dcrpg: support side chain tracking, upgrades (#552) This bumps the dcrpg DB table version to 3.3.0 and requires an automatic upgrade. The upgrade can take hours however. The table upgrade process has been refactored. A new TableUpgradeType type is added, and addNewColumnsIfNotFound takes default value. TableUpgradesRequired always returns a result for each table, ok being one of the results. Version check succeeds when all tables "ok" Prior to InsertAddressRows, ensure ValidMainChain is set properly for each row. Improve documentation for storeTxns. dbtypes: set Tx.IsValidBlock and .IsMainchainBlock When processing block transactions in processTransactions, set IsValidBlock and IsMainchainBlock for each Tx. Improve addresses statements readibility. commit 01d4c9516ef6686acf4bb7513996bab67a58f2fb Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Sat Jul 28 21:19:43 2018 +0300 Fix bugs in addresses page view (#570) * Improve on logic checking if all transactions were fetched * Make the default page size to be 20 commit 3d3cbb4dfb6a5cc2dc63d81b76dcb8ae5f7b3da3 Author: J Fixby <github@jfixby.com> Date: Fri Jul 27 20:53:12 2018 +0200 testutil: fix error message formatting and ignore test data folder commit ad1a91c3da8f7598cb98ff0e4b2902ceba833f4c Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Fri Jul 27 01:56:39 2018 -0500 main: always show dcrsqlite sync error without waiting on dcrpg commit 03548fa85d5c85dd367fe61ce297703c191b4b0b Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Thu Jul 26 20:19:02 2018 -0500 config: add --sync-and-quit flag to only sync (#573) This adds the flag --sync-and-quit to the dcrdata executable that will caus dcrdata to sync to the best block and then exit. It will not start the explorer or API. commit 0c48bcce707618dbd3aecd5e2a1a78595cdd0815 Author: Mike <mikef@zenshows.com> Date: Wed Jul 25 12:27:28 2018 -0700 Unconfirmed tx in address list and input amounts on unconfirmed tx (#489) This addresses the unconfirmed transactions not visible in address view and input amounts not visible in transaction view. There were two major areas of work: * Blending unconfirmed transactions with confirmed transactions in the current address view. Mostly extending what @chappjc already started. * Compensating for AmountIn values not set in dcrd calls to mempool transactions. commit 8519328d563b714c9749b8a7e100ca54e16691fb Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Wed Jul 25 21:54:01 2018 +0300 Consolidated debit view (#524) This introduces a new "merged debit" view on the addresses history page that lists only unique transactions. The Debit DCR amount is the sum of all outpoints corresponding to the given address that are spent in a transaction. It also fixes a bug with the next button on the same page. commit c4864424c5156c8c40983867a8d1a623cbed60e0 Author: J Fixby <JFixby@users.noreply.github.com> Date: Mon Jul 23 18:49:47 2018 +0200 testutil: refactor test setup (#559) This refactors the test setup and introduces a number of helper functions as "testutil". This also includes minor refactoring of the dcrsqlite/sqlite.go. commit 2010d5a9ba0ce218ea9cc0f7632619e761b58b03 Author: Sebastian Nadorp <snadorp@users.noreply.github.com> Date: Mon Jul 23 18:22:48 2018 +0200 Add message for no votes on a block. (#560) This removes the table and displays a nice message if there are no agenda choices in a vote transaction. commit 721e4da15947b4f27dd134372ad154c29ee03ca9 Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Mon Jul 23 07:11:22 2018 +0300 Replace the error page with a status page (#551) This enables the status page to be used for a wide variety of case scenarios one being Errors, Functionality limitations and also can be used to show a deprecated page or feature. commit 850df44bf26e551eb5de9bcf068e7afec9da8d90 Author: Mike <mikef@zenshows.com> Date: Fri Jul 20 11:29:28 2018 -0700 fix luck (#558) This PR address a small issue with the variable TicketExpiry initialization resulting in improper luck calculations. commit 021cf0754e6d328cbf48caa40a21b1b0b0b07531 Author: J Fixby <JFixby@users.noreply.github.com> Date: Thu Jul 19 17:33:47 2018 +0200 dcrsqlite: correctly splits given string into array of strings (#555) dcrsqlite: correctly splits given string into array of strings commit ebc6cb91646a556c43ba71376e9f7a1b7ac2042c Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Jul 17 16:23:16 2018 -0500 travis/docker: do not update Gopkg.lock, only /vendor commit 152e5f85175b5f8b3eea7f62ef74e3f0361e3179 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Mon Jul 16 20:09:48 2018 -0500 explorer/main: add no-dev-prefetch option (#547) * explorer/main: add no-dev-prefetch option (#546) The no-dev-prefetch flag does the following: Disable automatic dev fund balance query on new blocks. When true, the query will still be run on demand, but not automatically after new blocks are connected. * dcrpg: respect noDevPrefetch * rebuilddb2: no dev fund prefetch commit 79aee4bf68064cde74bceeb643125b1c7eb6abe7 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Sat Jul 14 23:43:40 2018 -0500 dep: update lock for dep's new format commit 079c1d46226a3230394ae77038007f7e268cca9e Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Jul 13 07:24:25 2018 -0700 explorer: do not fetch charts data in lite mode commit 25d880ef60cf43a4dd59d30be2e98df120794383 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Jul 13 00:22:24 2018 -0500 version: instructions to put git commit in version string commit 041c7c7ab07c2597a4df472376c66b5d0f121f58 Author: swghsh <39948685+SeaLightHouse@users.noreply.github.com> Date: Thu Jul 12 10:00:02 2018 +0530 views: hide missed table when empty" (#537) views: hide missed table when empty commit c1ddd5eb31406d9f6d232caf3c4ebb1cf4aad21e Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Thu Jul 12 06:50:05 2018 +0300 Add charts (#463) * Add Historical charts that will appear on the explorer's charts page * Automate the vins table upgrade (Coin Supply Upgrade) commit c79ca99e09eba1a0405b370449a045e2c65d295f Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Wed Jul 11 03:09:44 2018 +0300 Agendas DB table and html pages (#523) This creates an agendas DB, and adds an agendas page to the explorer. The agendas page uses dygraph to show cumulative vote counts as the vote period progresses. commit 548affc1c339b467dba88d67deec4b1fb6674cf8 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue Jul 10 14:07:32 2018 -0700 dcrpg: fix genesis error in block_chain lookup commit 0cfca964e0c2791debb90d32d4e6026deb6d87e7 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Jul 3 22:10:02 2018 -0400 stakedb: recovery and robustness with upserts (#527) Add stakedb.LoadAndRecover, which NewStakeDatabase returns the height where it stopped loading. If there is an error, the height may be passed to LoadAndRecover. InsertVin[s] now has upsert option (dupcheck=true) to avoid failures requiring recovery procedures. Also have dupcheck option with SetSpendingForFundingOP / insertSpendingTxByPrptStmt and SetSpendingByVinID. Add MakeAddressRowInsertStatement to greate the upsert statement if checkdups=true; InsertVotes and MakeVoteInsertStatement similarly take dupCheck option. Fix incorrect parameter numbers in upsertVoteRow and insertVoteRowReturnId. AdvanceToTip now returns the last valid diff index (cursor - 1). commit 552ea24ad992f1fba9993d634f736e9e8f7c855d Author: J Fixby <github@jfixby.com> Date: Mon Jul 2 21:14:47 2018 +0200 dcrsqlite: fix RetrievePoolInfo empty result Fixes #532 commit d7ef93bd2aa77020c40ed9387912cc517f7e150d Author: J Fixby <github@jfixby.com> Date: Tue Jul 3 11:39:53 2018 +0200 dcrsqlite: remove dead code and swap wrongly positioned args commit c6359b596ce92713ccdcad50f3e7e46ab18e8fe3 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Jul 1 18:05:32 2018 -0700 dcrpg: fix empty prev_hash in block_chain In StoreBlock, if pgb.lastBlock does not contain the previous block row ID, look it up in the block_chain table. Add RetrieveBlockChainDbID to get the row id in the block_chain table for the block with a given hash. commit 886025a4f665b5a6eef73bb2f9872714fddb06a7 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Jul 1 17:48:02 2018 -0700 stakedb: fix loading bug in ticket pool db Fix bug in LoadAllPoolDiffs where multiple diff sets for the same height were loaded due to badger storing multiple value versions. commit 75f18a3d7f10ebcca7d43ec59945d72d52f74aa8 Author: J Fixby <JFixby@users.noreply.github.com> Date: Sat Jun 30 18:43:32 2018 +0200 dcrsqlite: create DB-file parent directory when necessary (#516) * dcrsqlite: add test to reproduce the issue #515 https://github.com/decred/dcrdata/issues/515 * dcrsqlite: create DB-file parent directory when necessary Fixes https://github.com/decred/dcrdata/issues/515 * dcrsqlite: move test helpers to a testutil package * testutil functions take *testing.T (#1) commit 5e31c5058c1820d25f0fb5bc91edc72151628272 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sat Jun 30 08:33:22 2018 -0700 explorer: compute ticket matruity times in lite mode (#525) * explorer: compute ticket matruity times in lite mode Intoduces (*TxInfo).IsTicket/IsVote * views: hide POOL STATUS in lite mode In lite mode, SpendStatus is unknown. commit 006685be846ac9cfe7b9b76eebabdb7bffdaad18 Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Sat Jun 30 01:11:28 2018 +0300 dcrpg: new adresses table format (#427) * Implement the new proposed Addresses table format * Improve the explorer address page view with the spent tx and funding tx relationship * Change in_out_row_id (uint64) column to matching_tx_hash (text) column in the addresses table * Index column matching_tx_hash * Update the README.md file with the upgrading instructions * Update table maintenance require message * Fix bug on how non-alphanumeric characters are split from the address fetched * bump to 3.0 commit c7f065d389860eebb40f016e05b0062f5a196295 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Wed Jun 27 14:26:26 2018 -0700 html: update header descriptions commit 30e31c954dccbfcdbd54c33ab81138ed1034acc6 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Jun 28 10:04:28 2018 -0700 html/tx: unconfirmed tickets/votes have no maturity status (db *wiredDB) GetExplorerTx: set Mature="false" when confirmations==0 tx.tmpl: Unconfirmed tickets and votes read "N/A" for MATURITY, must be confirmed to show progress meter. commit 4faae92abc2c1536c067e033a08b0f4384611095 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Jun 21 09:55:10 2018 -0700 bump dcrdata to v2.1.0 commit 79ef24db53fed066f4fc62cd38ef3a20b06e57cc Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Jun 28 10:17:25 2018 -0700 rebuilddb2: consider batch sync and avoid constant dev fund update commit 679e8bcd81a78dd0da83314934af65ff9c31a94f Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Thu Jun 28 10:21:24 2018 -0700 stakedb: switch from storm to badger for ticket db (#465) * stakedb: switch from storm to badger for ticket db * stakedb: update ticketpool tests, regen test data * stakedb: test with full pool diffs * provide upgrade/recovery instructions * stakedb: migrate from storm to badger If badger DB not found or is empty, attempt to load existing diffs from a storm DB, if found. * Add storeDiffs to write many PoolDiffs in a batch txn * Inform the user they can delete the storm db. * dcrsqlite: in sync log every 1000 blocks * dcrpg: in sync log every 500 blocks * travis: add xz-utils apt package commit b23e52339b3453f1ee4fa93f05940e095b0de44c Author: J Fixby <github@jfixby.com> Date: Mon Jun 25 12:22:10 2018 +0200 multi: show maturity ETA in hours Change ticket ETAs to use hours. Examples: "Immature, spendable in 28 blocks (2.2 hours remaining)" "Immature, eligible to vote in 145 blocks (12.0 hours remaining)" commit 1d9405aca5c05baea34b11f3c10d521bbddab7b9 Author: Timilehin Olatunbosun <38729914+timi-ola@users.noreply.github.com> Date: Wed Jun 27 23:06:48 2018 +0200 Err message page clean up (#484) This removes the error code and message from the error page. commit 69bf97b12b3808797f21c53e53fa9c33364bbb7e Author: gozart1 <gozart1@users.noreply.github.com> Date: Thu Jun 21 08:46:34 2018 -0700 refactor home page and mempool javascript with stimulus (WIP) (#498) This introduces the Stimulus JavaScript framework: https://github.com/stimulusjs/stimulus * refactor age computation with stimulus * rework mempool with stimulus wip * hookup mempool & getmempooltxsResp events to homepageMempool controller * dry mempool table row generation * make sure there's always a table to render txns or empty message in mempool commit 41d8c3e753f24bbf1ff4ea9a483377096091e3ff Author: Mike <mikef@zenshows.com> Date: Thu Jun 21 08:42:49 2018 -0700 Insight API [13] [14] [19] [20] [20.1] [20.2] [20.3] [20.4] [21] [21.1] (#506) This implements the following Insight API endpoints (listed in https://github.com/decred/dcrdata/issues/400): [13] [14] [19] [20] [21] commit 119c1541be50cd4de5392779d54e782db4ce9f09 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Jun 20 16:54:51 2018 -0700 api: add /txs route for batch request (#510) * api: add /txs route for batch request This adds the /txs and /txs/trimmed routes for batch requesting transaction details. The transaction hashes are transmitted in the http request body as JSON. The structure is api/types.Txns. The request Content-Type must be "application/json". The return type for /txs is []*types.Tx. The return type for /txs/trimmed is []*types.TrimmedTx. version: bump to 2.0.1 * update README with new /txs endpoint commit e080b7c52bfdf3377d118033200aafe7553e7c58 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue Jun 12 13:23:54 2018 -0700 dcrpg: prevent stacking multiple calls to updateDevFund commit 76be996a72e7b6df77e12472e5930ae0372e0691 Author: Mike <mikef@zenshows.com> Date: Thu Jun 14 11:11:29 2018 -0700 Insight API - Misc cleanup [1], [2], [5], [5.1], [8], [8.1], [8.2], [9.1], [9.2], [9.3], [9.4] (#483) Cleanup and work on Insight API endpoints: [1] [2] [5] [5.1] [8] [8.1] [8.2] [9.1] [9.2] [9.3] [9.4] commit ad899b874956b837350bff4442b834044fb20aac Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Jun 12 18:56:17 2018 -0700 stakedb: accelerate StakeDatabase.ConnectBlock (#499) This changes how StakeDatabase gets the live ticket pool and the diffs (in/out) for each block in ConnectBlock. The liveTicketCache in StakeDatabase is now a faithful representation of the live ticket pool at the current best block. So when the live ticket list is needed, it is no longer necessary to use the stake.Node (BestNode.LiveTickets()). Add poolValue int64 to StakeDatabase, updating it on connect/disconnect via += / -+ for the pool in/out tickets. A major optimization in ConnectBlock is using the new ExpiredByBlock function in dcrd/stake instead of the much more costly ExistsExpiredTicket and ExistsRevokedTicket. This requires dcrd PR decred/dcrd#1221. Improve the process of "Pre-populating live ticket cache..." by prefetching the tickets from the stake BestNode (dcrdata's best node) rather than asking dcrd for it's idea of the live ticket pool. This ensures liveTicketCache will always contain an accurate ticket pool. Avoid LiveTickets() during sync. Add FilterHashSlice utility function. Update test data for new stakedb_ticket_pool.db disconnectBlock applies diffs in reverse -Keep liveTicketCache and poolValue correct when disconnecting a block. -Recovery from mismatching stake DB and ticket pool heights now can roll back stake DB in addition to trimming the ticket pool. -Extract code into (db *StakeDatabase).applyDiff, and crate undoDiff that applies a PoolDiff in reverse via applyDiff. -No longer use BestNode.LiveTickets() in PoolInfoBest. Use makePoolInfo and db.poolValue. -(tp *TicketPool).Trim and trim now also return the trimmed PoolDiff. update Gopkg.lock for dcrd with ExpiredByBlock commit a73f7ac3a08306c2b521776136d55f2cb3e595ae Author: mikefullman <mikef@zenshows.com> Date: Mon Jun 11 07:35:58 2018 -0700 Only run ASR on mainnet commit 9af03b2e15a0f3fdd732605052510e5f97d8153f Author: mikefullman <mikef@zenshows.com> Date: Fri Jun 8 10:58:26 2018 -0700 fresh coinbase tx fix commit e1e195ab4b952926e91355b630f17941d6ea507c Author: Mike <mikef@zenshows.com> Date: Fri Jun 8 11:21:36 2018 -0700 Insight API UTXO+ [10] [11] [12] [3] [4] (#479) Insight endpoints listed in https://github.com/decred/dcrdata/issues/400: [10] [11] [12] [3] [4] commit 2f256cac21ea68919c6f2b933bfb1e57eb59a58b Author: Mike <mikef@zenshows.com> Date: Thu Jun 7 17:31:58 2018 -0700 Insight API [6], [6.1], [15], [15.1], [16], [16.1], [16.2], [16.3], [16.4] (#493) Insight endpoints listed in https://github.com/decred/dcrdata/issues/400: [6], [6.1], [15], [15.1], [16], [16.1], [16.2], [16.3], [16.4] * CtxAddress, ValidatePost middleware, check content type, Remove unecessary log entries, Compress output commit 08e104747da9c94bf2089c6468a07ee73c794c29 Author: lte13 <lars.nordmark@gmail.com> Date: Thu Jun 7 14:23:32 2018 +0800 Update configuration file description (#496) Instruct to edit dcrdata.conf in the `appdata` folder, rather than the folder with the dcrdata binary. commit f011d567f01778dbc46b807f3407fe130c2d017b Author: orthomind <35336207+orthomind@users.noreply.github.com> Date: Thu Jun 7 16:17:23 2018 +1000 Docker tests (#497) * Use standard docker image for tests * added files committed to git already as part of the copy, since some needed for tests are in gitignore * added Go version 1.9 to travis file * fixed filter to include all git tracked files and then exclude any from gitignore * update dep lockfile test commit 3b674eebca5af8f19813b705658c48e39446a317 Author: Mike <mikef@zenshows.com> Date: Wed Jun 6 21:25:18 2018 -0700 ASR Calculation on home page (#468) * ASR on main page * calculate mean block vote time commit ed831389cea676940131e0da26801e4530e5419f Author: J Fixby <JFixby@users.noreply.github.com> Date: Wed Jun 6 04:29:35 2018 +0200 replace loggers: /btcsuite/btclog > decred/slog (#486) commit 27478696392825fd0cd58c8c266ab11c56436782 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Mon Jun 4 19:13:55 2018 -0700 update lock for tollbooth (#491) commit 090bf42dd7172187e7f75736a71f96ae7652b999 Author: Mike <mikef@zenshows.com> Date: Mon Jun 4 10:30:17 2018 -0700 Insight API broadcast_tx [17] (#481) This adds broadcast_tx to the Insight API: [#17](https://github.com/decred/dcrdata/issues/400) * Updated error response strategy. Moved rawtx body extraction to middleware. * Add rate limiter. Check for max size limits on rawtx. commit 1435dd92a9f4c15d167cb0bd23f3b683a8eb5caf Author: Mike <mikef@zenshows.com> Date: Mon Jun 4 10:19:52 2018 -0700 explorer: show miner fees in coinbase transaction (#456) * coinbase fees displayed * review changes * fix for inadvertant fees created by pool txs commit d23a91f6d5d667952080905b6bbcd10ab6185db8 Author: Josh Rickmar <jrick@devio.us> Date: Mon May 28 16:33:02 2018 -0400 Replace "deCRED" occurences with "Decred". (#487) The name of the currency is Decred and the logo stylization does not change that. commit 9c46fb937f759911c27a461c7ea517d71b328748 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sun May 27 10:57:46 2018 -0700 rename dev fund to project fund (#482) * rename dev fund to project fund * the rewards too commit 645a285e8b94781d07bc314613dfbb52f486ff35 Author: gozart1 <gozart1@users.noreply.github.com> Date: Sun May 27 10:55:07 2018 -0700 refine keyboard nav and make it optional via menu toggle (#476) * refine keyboard nav and make it optional via menu toggle * improve transition to keyboard controls during feature activation & menu open/close * move /blocks pagination link logic serverside & maintain key nav index * add '/' hot key for toggling search * switch to \ instead of / for menu toggle hot key, add [ & ] as alternate left & right * limit /blocks pagination height, so that height - rows cant go past 0 commit 2d78ca14a743a9c3e6552699d79626551f7cea84 Author: Omidiora Samuel <samparsky@gmail.com> Date: Tue May 22 19:46:47 2018 +0100 Show net on home page and Reorder menu items (#478) This reorders the menu items, and adds the network name before "Chain State" - added Title that currently says Chain State to say MainNet Chain State - added menu switch between testnet and mainnet - reordered menu items commit f4d1ac32f3b227aab26ef0b3629cfe0df2e630cd Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue May 15 22:34:36 2018 -0700 update deps commit 88a41243fcb18080e40b7e7c74b644f5d0007766 Author: Alawode Oluwandabira <dabiraalawode@yahoo.com> Date: Tue May 22 20:28:47 2018 +0200 Add support for insight socket.io api (inv and dcrAddress rooms) (#405) This implements the websocket api described in https://github.com/bitpay/insight-api#web-socket-api. The objects used in this PR however are based on the results of the current insight server on mainnet.decred.org. Currently implemented: - tx event in inv room. - block event in inv room. - <dcrAddress> event in <dcrAddress> room. commit 8c0308ed083bc8ac1dbdbfd03ab33aeccf028c57 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sat May 19 01:01:25 2018 -0700 main: add optional gops agent and instrumentation commit e22ff164f2e24e11c2b2fecd712821d008db7a43 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Thu May 10 18:49:41 2018 -0700 notification: make each reorg handler indicate when it is finished Do not leave OnReorganization before each handler sets the reorg flag. Make reorg channels unbuffered. commit e8239e94c16c27da4c84ab8f1e9a989d4c5b2b2e Author: gozart1 <gozart1@users.noreply.github.com> Date: Sat May 12 01:52:18 2018 -0700 add keyboard navigation commit 2671e4c640b9b82bdebc2504a3c73d4357752833 Author: Mike <mikef@zenshows.com> Date: Fri May 11 11:38:45 2018 -0700 dev funds zero (#461) This fixes dev funds on the main web page going to zero on websocket update. * Update rather than Re-instantiate ExtraInfo commit 1bb5fb11b2efa701639666e41b7678e315c3b656 Author: gozart1 <gozart1@users.noreply.github.com> Date: Fri May 4 12:27:23 2018 -0700 add missing night mode styling for flex table header bg & row borders commit 7b90f2e2e1b1c2f08982d318588cf26c4c9fe4d1 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Thu May 3 11:18:44 2018 -0700 README/dcrpg: update tuning info for PostgreSQL commit 16af133b99880e643420b8fb8ad3bb05057c2abe Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Thu May 3 18:33:24 2018 -0700 api: add coin supply (#458) This adds the /supply API endpoint and apitypes.CoinSupply. txhelpers/subsidy.go is added with the function UltimateSubsidy. commit d3288e7ea631f3ad9fdadaec9005530f8083c435 Author: Mike <mikef@zenshows.com> Date: Tue May 1 19:30:41 2018 -0700 Ticket Luck/Expiry/Probability Fixes (#436) * various updates and fixes to ticket probability * formatting updates and removing hard coded reference to 5 in ROI calculation * possible vs final luck tweaks * Chance -> chance * Remove Luck from missed tickets, coinbase transactions maturity, vote days until mature commit 64c410844d8763c06963d7b43953a3daa2614b64 Author: gozart1 <gozart1@users.noreply.github.com> Date: Tue May 1 19:14:22 2018 -0700 refine hamburger menu style & animation (#454) This tweaks the hamburger menu style. * location of menu is aligned with page content * animation is changed * patty lengths tweaked * add global click handler to close hamburger menu when clicking off of it commit e1c4f606aeab37e6171ee2677f701b89970c4c69 Author: gozart1 <gozart1@users.noreply.github.com> Date: Thu Apr 26 00:10:37 2018 -0700 use flexbox & tx hash truncation for more compact mempool table on home page commit 211773057c1caf5355c22a80da70e98e33e91dfc Author: Macaulay Davies <mac114.md@gmail.com> Date: Tue May 1 00:46:47 2018 +0200 Creating a chainparameters page (#397) This PR adds a "chain parameters" page that displays the data from dcrd's chaincfg/params.go. commit 49b78722882ee865a9fa6e17ce2146097baaaa07 Author: gozart1 <gozart1@users.noreply.github.com> Date: Sun Apr 29 18:25:11 2018 -0700 darken progress bar background for dark theme (#443) commit 67402098fa9945a1a9f01f7ba2881330ce4cf482 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Apr 20 22:14:35 2018 -0700 Add db_block_time to API JSON status response (#439) * Add db_block_time to API JSON status response * This also creates a version package for dcrdata, uses the proper app version in the status response, and bumps APIVersion to 1. commit 97d31d619e2252bb951b11e0a96e094a45f81965 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Apr 20 21:24:12 2018 -0700 api: Make full DB available, add address totals endpoint (#432) * add /address/{addr}/totals API endpoint The totals endpoint returns a 422 in lite mode. Add AddressTotals to api.DataSourceAux interface, and implement it in ChainDB via dcrpg.RetrieveAddressSpentUnspent. Add json tags to explorer.AddressBalance struct fields. Make a stub and TODO for the /address/.../raw/... endpoints. * Add apitypes.AddressTotals * add (pgb *ChainDB).addressBalance to check and update address cache Use addressBalance in AddressTotals to take advantage of general cache. * Use ChainDB.AddressTransactionDetails when not in lite mode * Avoid UpdateDevBalance during batch sync * cleanup, comments * fix "ready" field of StatusNtfnHandler * Add (d *DevFundBalance).Balance * Add DevFundBalance field to ChainDB * update license, remove refs to APIDataSource * Make explorer.sigNewTx event a Tracef commit 8b8f60121a7d94d64cbbc4ae5e7576d7e1a01546 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Apr 20 21:07:20 2018 -0700 do not drop URL query params (#430) * fixes #408, dropped URL query params Use r.URL.RequestURI * ensure page parameters are set in AddressInfo even in lite mode * fix sent/received/unspent amounts in lite mode * get balance by db query if not using AddrTxnAll type * fix NumTransactions commit 31f96a9d869e30960717b24c14135f94f65dc852 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Apr 20 11:43:11 2018 -0700 views: delay websocket connection to mitigate churn commit c3032fc0407c85161e6fbe28d9ca44ac47e422c4 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Apr 18 10:17:03 2018 -0700 Unconfirmed transaction helpers, reworked CountUnconfirmedTransactions (#422) * Unconfirmed transaction helpers, reworked CountUnconfirmedTransactions Add func UnconfirmedTxnsForAddress. Updated AddressInfo type. commit d74d00712e2b684fd4b315c13d75ac61af834e30 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Wed Apr 18 08:47:48 2018 -0700 explorer: do not block Store() when websocket hub is stuck commit b205b76028c9310b6d70ca5a4d022e4b0d407997 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue Apr 17 09:12:08 2018 -0700 prevent deadlock of websocked event loop The channel send on sendBufferChan after addTxToBuffer were sending back to the event loop. commit cfb2763a6c8e657dfe5556a7622e933418791b9c Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sat Apr 14 17:50:09 2018 -0700 fix prepend to LatestTransactions (#428) fix indexing of LatestTransactions in mempoolMonitor handle non-nil, zero-length txns slice in storeMempoolInfo document mempoolMonitor create explorer.NumLatestMempoolTxns constant commit c933ac431324001d382b541f7a13906296cf3c4c Author: gozart1 <gozart1@users.noreply.github.com> Date: Wed Apr 4 01:05:15 2018 -0700 restyle progress bars commit a356c1f247a8424eb23d5f47759f47d0dbc7d1ad Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Apr 4 14:36:25 2018 -0700 address page: credit/debit txn filter (#385) Support for credit/debit txn filter. * Create AddrTxnType, a Stringer. * separate TxnsFunding and TxnsSpending slices * Depending on URL query param value for txntype, use all or one of credits or debits txns slices. * refactor page size selector logic, fix txntype selection * explorer: set "Turbolinks-Location" header to include all URL queries using URL.RequestURI(). * explorer: set addrData.TxnType. * address page: Add txntype={{.TxnType}} to forms that set the href. * address page: Still show, but disable, page size selector when too few txns. * explorer: add TxnCount method to AddressInfo to return either KnownTransactions or KnownFundingTxns depending on Fullmode. * Reorganize AddressInfo struct, document, and add KnownSpendingTxns * Add to AddressTx the field InOutID for the input or output index of the relevant transaction input/output. * Add (a *AddressTx).IOID() to format a string for the tx input/output. * fix address credit query * Update TxnCount to return KnownTransactions, KnownFundingTxns, or KnownSpendingTxns depending on TxnType. * Minimize use of .FullMode in address.tmpl * set ConfirmHeight in lite mode for address page * txhelpers: test for zero hash before getrawtransaction * add txhelpers.TxTree * no transaction type filter for address page when in lite mode commit 6383c50f61e7742c096dc9bb13842132451e72b9 Author: Mike <mikef@zenshows.com> Date: Wed Apr 4 12:59:02 2018 -0700 Hint for the index settings of dcrd.conf to work with dcrdata (#421) * Hint for the index settings of dcrd.conf to work with dcrdata commit 757962a4966a0e366914ba0be486cac982d6cec8 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Apr 3 16:00:32 2018 -0700 add corresponding type names to API docs (#417) * README: add types to API endpoint tables api/types: apitypes.BlockTransactionCounts api: use apitypes.BlockTransactionCountsin getBlockTransactionsCount commit a3c621fd98056284c8d38d261c269e61c6fb05d1 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Mar 30 23:08:53 2018 -0700 explorer: close websocket include number of websocket clients in registering message do not log error when ws is just closed create explorer.ErrWsClosed string check in deferred closeWS, and in both send and receive loops commit 8dbd44283cc561ae07d6d0cc0f0e1129535442b9 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Mar 29 14:12:37 2018 -0700 notification: setup log, and document functions commit d20645f4a18ea018c415f6c13affa1ebfa5115b2 Author: gozart1 <gozart1@users.noreply.github.com> Date: Thu Mar 29 12:01:35 2018 -0700 update colors, table styles and header/footer in move towards new design (#403) * update colors, table styles and header/footer in move towards new design * hamburger menu * wire up menu links, dark theme menu, animate out commit 4634901f8da3698dcb4c8104225b2a8293c1a374 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Wed Mar 28 09:44:18 2018 -0700 explorer: avoid concurrent map access Each connection's (exp *explorerUI).RootWebsocket now stores a pointer to it's own client data. Previously each connection had to look up this object in the WebSockethub client map, which was not thread-safe. Add type clientHubSpoke, which wraps the *client and the corresponding *hubSpoke. Change WebsocketHub.Register from chan *hubSpoke to chan *clientHubSpoke Update (wsh *WebsocketHub).RegisterClient to return the *client, and send a *clientHubSpoke to the event loop, where registerClient will actually insert the client into the WebSockethub's client map. commit 89f34b763842b27be212ee065a817aa0cbfcdf10 Author: girino <girino@users.noreply.github.com> Date: Mon Mar 26 21:18:54 2018 -0300 Adds pagination to /address API (#412) Added pagination to /address/ API in the form /address/count/N/skip/M. NOTE: Still only using RPC. commit fceece3987aaf2ab33593d33f9157575e9df6927 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Mon Mar 26 11:23:11 2018 -0700 explorer/websocket: fix insane ping loop that was in websocket handler Remove the ping loop from each websocket connection handler, and create (wsh *WebsocketHub).pingClients() that is started from run(). It returns a channel that stops the loop when closed. commit 8984212e27e66685394b8248e56ae0355892e06b Author: Macaulay Davies <mac114.md@gmail.com> Date: Sun Mar 25 18:33:28 2018 +0200 Page size selector feature (#411) Only show valid options. When Limit is equal to number of txns, handle the selection box. commit bdcded664a1081c3d83953bfef0659e438b97bf8 Author: Macaulay Davies <mac114.md@gmail.com> Date: Sun Mar 25 18:29:27 2018 +0200 pool status bug fix (#410) * pool status bug fix -- Do NOT show POOL STATUS for unconfirmed tickets (mempool tickets) commit 1d927b959f856a6aa3dc8cf6dd60ff71532cbf9a Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Mar 22 20:39:57 2018 -0700 add goreportcard.com badge commit 1d3a285c0fd075150ad07b211381a78a831de6a0 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Mar 22 20:33:37 2018 -0700 README.md updates for 2.0 commit 2959d1151d971546479d9dec1937e23f56ccb325 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sat Mar 24 22:31:11 2018 -0700 main: configure http.Server with ReadTimeout and WriteTimeout (#407) * main: configure http.Server with ReadTimeout and WriteTimeout * update copyright and comment wording commit 1e8dbff83b2c99fed3d432ab058c308eef4e34c0 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sat Mar 24 18:13:23 2018 -0700 insight: rawblock endpoint (#402) * insight: implement rawblock doc reformatting * middleware: rewrite docs, simplifications remove GetBlockHashOnlyCtx since it was identical to GetBlockHashCtx rewrite more docs CRs * insight: organize router commit c17aa352ee182f5649d430c9562f58519e2954a2 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sat Mar 17 11:54:47 2018 -0700 html templates: Do not automatically request to enable desktop ntfns To enable desktop notifications, the user must click the connection indicator at the bottom right. commit 6469f9223a924523e7a232961b8e7df33fd7750c Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Mar 11 08:37:46 2018 -0700 main: check network is the expected one commit d495aee8c4b500ec98d0ac60e9135716166b19f2 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue Mar 6 14:18:40 2018 -0800 name go-humanize import Some linters are confused by the go-humanize import when it is missing an explicit name of the package, humanize. commit a68fad99ecea0c723672a6efe21ae2b57b17a8dc Author: Omidiora Samuel <samparsky@gmail.com> Date: Tue Mar 20 05:00:42 2018 +0100 Insight api endpoints (#350) implmented insight api routes implemented transaction hex routes, blocksummary, blockhash in insight api package implemented txns routes for multiple addresses, by block, address, post method for multiple addresses added log file to insight api package implemented get blocks routes. Implemented get address info routes added insightaddress info json struct updated the implementation of retreiving blocks based on time range implemented psql queries for rawtx, blockhash implemented rpc calls for postgres implementation implemented get address info on, retrieve block summary using time range, address utxo on postgresql created api package implemented notification package updated implementation of middleware package commit 3dc9d94def3a4dc9779726c6627dceadbdeeca50 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Mar 18 16:12:11 2018 -0700 fix ShowVersion (V/version) flag add copyright notices commit 113a83489b1aa2ad40ff16137fc3dcd4f47279a9 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Mar 16 16:22:10 2018 -0700 ChainDB/rebuilddb2: add to ChainDB the ability to set a StakeDatabase Modify rebuilddb2 to load the stake db (and ticket pool db) *after* creating the ChainDB so that it is not necessary to load the ticket pool db when only using ChainDB to drop tables. Add "rebuild_data/" to .gitignore. commit d3e87cfbcf546b9640e99b117f922cdb3e412c89 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Mar 11 09:17:02 2018 -0700 Update README.md files for syntax changes There is no longer a -u flag for rebuilddb2. dcrdata.conf lives in appdata now. Remind developers to update dep prior to committing changes to Gopkg.lock Cleanup and wrapping commit 2297e0b208d82a3dd73325b051f18e0d888356fd Author: Alawode Oluwandabira <dabiraalawode@yahoo.com> Date: Fri Mar 16 02:23:25 2018 +0100 explorer: refactor the explorer templates so they are easier to manage (#395) This simplifies the way the template files are handled by explorerUI by moving all the current template logic and types to templates.go where the templates are handled by the templates and pageTemplate types. Now adding a new template should be as simple as adding an name of the file sans "tmpl" extension into the tmpl slice in explorer.New. commit d2886d57701b1ce2022b4454eabc91206cb8cbac Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Mar 14 22:40:19 2018 -0700 main: prevent hang after reindex (#391) commit 322ac503864babda26a1f9a24d2d17ac83ecd1b0 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Mar 14 21:30:23 2018 -0700 do not request previous vout extra data when just counting transactions (#394) commit f2d65af0a4b838ab94fc7ad59cfc681ef2bbb94d Author: Macaulay Davies <mac114.md@gmail.com> Date: Wed Mar 14 00:25:50 2018 +0100 ticket page: luck and additional data (#361) Add a LUCK data item for each ticket, on a scale from 0 to 5, 5 being best, 0 worst, 4 average. Update decred deps in Gopkg.lock. commit 81e4a8f70c146a374e0810c3a4c2dedbb710133d Author: Alawode Oluwandabira <dabiraalawode@yahoo.com> Date: Mon Mar 12 22:37:09 2018 +0100 …
commit 07691c4982261d97ab87c5c2b6acc5241b060717 Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Sun Sep 30 16:13:08 2018 -0700 -u ui updates (pt 6) created trimmed decimal display func commit f67e8e024162979b109892604d9295bd67491b00 Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Thu Sep 27 18:25:34 2018 -0700 -u ui updates (pt 5) commit 8d6aa8e84746d06483e1b1ff614e03e2ae66fb31 Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Thu Sep 27 16:26:49 2018 -0700 -u ui updates (pt 4) commit f7edf3e4f5ac23f30e26e72369b85dab2285cee8 Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Tue Sep 25 16:59:46 2018 -0700 -u ui updates (pt3) commit ea528540819b09cb49349aece63e2c9b106288bd Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Mon Sep 24 21:37:23 2018 -0700 -u ui updates (pt 2) commit c3b0b32eadf451b184e3a31c07315a3cbe39366e Merge: a4297a1 b01860b Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Mon Sep 24 15:52:13 2018 -0700 Merge branch 'stats_page' of https://github.com/McEdward/dcrdata into stats_page commit a4297a1a6a650744db2d72cd2f3aaede88e9b4cc Author: Jujhar Singh <jujhar.pannu@gmail.com> Date: Mon Sep 24 14:03:57 2018 -0700 -u ui updates commit b01860bca38b88c469ab23718b3bcade61322ad4 Author: Macaulay Daives <mac114.md@gmail.com> Date: Mon Sep 24 22:15:19 2018 +0200 some of the items on the todo commit 8a8113d0b1c0846a9a9b5350e42200f1130c53af Author: Macaulay Daives <mac114.md@gmail.com> Date: Wed Sep 19 01:04:14 2018 +0200 making all requested changes so far commit aa36846d8d06c3eb3d2d0bf5893c59d37fe33e62 Author: Macaulay Daives <mac114.md@gmail.com> Date: Tue Sep 18 12:56:16 2018 +0200 ultimate supply changes commit 43fe82a8523e9ecb1e7977e6a95c4e1cbb50257b Author: Macaulay Daives <mac114.md@gmail.com> Date: Fri Sep 14 01:54:33 2018 +0200 requested changes to the page commit 7771700eca5ea5f89a8d047a4eb6e0220a010149 Author: Macaulay Daives <mac114.md@gmail.com> Date: Sun Sep 2 19:07:27 2018 +0200 rebase and adjustments commit 7912bb89dce5bc6623ebcb8aead6aa41d9541720 Author: Macaulay Daives <mac114.md@gmail.com> Date: Tue Aug 28 02:44:17 2018 +0200 changes to url and page name commit 852ee90cbe5b0c9342398a0c103d71cd4ac95e4d Author: Macaulay Daives <mac114.md@gmail.com> Date: Tue Aug 28 02:08:51 2018 +0200 UI changes for the stats page commit 46168c0c3c6573ef62705b2f141325633a5cb324 Author: Macaulay Daives <mac114.md@gmail.com> Date: Wed Aug 1 10:12:57 2018 +0200 adding new stats page commit 8d924bf8e669ad5bd55568f8f68a241f5b08c469 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Sep 4 19:31:48 2018 -0700 views: style invalidated transactions on block page. (#663) This styles invalidated transactions on the block and transactions pages. Create an invalidated-tx CSS style to gray out and change background color of regular transaction table data, including the coinbase, on a block's page. On the blocks list page, indicate invalidated blocks. When not in lite mode, get the Valid and MainChain status from PG. Also change maxExplorerRows to 400 (from 2000). commit 40e118b6c52b4228b85447bc412f9b4123da1cbc Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Wed Sep 5 01:33:16 2018 +0300 Current Ticket Pool Visualization (#542) This add current ticket pool visualization graphs to /ticketpool page. This also adds handling for the new getticketpooldata websocket messages. TicketGrouping type and an enumeration is used to improve readability. Rename 1d/1wk/1m to day/wk/mo. The "1" looks too much like an "l". Use chaincfg.TicketMaturity for computing ticket maturity block. The dcrpg table version is bumped to 3.5.2 with the addition of an index on pool_status in the tickets table. commit d105024ef53cc5945644d7a226a429ebbcc79070 Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Tue Sep 4 18:38:29 2018 +0300 Fix issues on address page (#633) This ensures the group by interval selected is the most meaningful for the user. The RegularTx bars are now split into SentRtx and ReceivedRtx for the transactions types chart. This also adds the pagesize drop down options back in. Disable the charts view mode when on lite mode. commit 3ae6c99e54aab2dda1c60a63b9bc5525b38109fb Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sat Sep 1 23:34:43 2018 -0500 explorer: address multiple deadlocks and data races Home page was requesting a full read-write lock when it only needed a read lock. Similarly, RootWebsocket was requesting full unneeded full locks in both the send and receive loops, which caused a deadlock. Add (*explorerUI).Height() for thread-safe access to NewBlockData.Height. Remove several pointless closures. commit 10fccfc6a6e8f86b255107ca75486a6af699db1d Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 31 17:23:46 2018 -0700 special handling for genesis block coinbase transaction (#657) This changes the block page to recognize the genesis block and handle the (invalid) coinbase transaction differently. Show a UTF8 attention symbol in red next to the tx hash. Add a title (hover text) explaining why it is special. Change the link to point to code (chaincfg/genesis.go). This also adds a function GenesisTxHash in package txhelpers to retrieve the expected hash of the genesis coinbase transaction for the given network. commit b15916635b71959b599d988e086cbc2fdac491ce Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Thu Aug 30 10:23:29 2018 -0700 dcrpg/views: add side chain queries and side chain blocks page (#654) This adds side chain queries and a side chain blocks page. Add BlockStatus struct to describe the status of a block in the block chain in terms of main/side, validity, height, and hashes of self and next and previous blocks. Add RetrieveSideChainBlocks to retrieve a slice of []BlockStatus for all side chain blocks. While here, stop shadowing the named return err everywhere in queries.go. Also remove redundant rows.Close(). Mounted on /side is a list of side chain blocks with links to them, their parents, and their children, if any. Update /block page to indicate if the block is a side chain block, and if it is approved by stakeholders. Add MainChain to explorer.BlockBasic. When looking up a block from hash while in full mode, use the ChainDB query instead of an RPC so that reorganized/orphaned blocks may be located. commit 71c1d033445bd7c450928b29ba6ffe7a35382e43 Author: SeaLightHouse <39948685+SeaLightHouse@users.noreply.github.com> Date: Thu Aug 30 22:29:17 2018 +0530 For future blocks show a time estimate (#653) block page: provide an ETA for blocks not yet mined When visiting /block/{n} where {n} is a block height beyond the current best block, provide an ETA for the arrival of the block assuming the target block time. commit 70ed11e77de5c5e9712e3a7c06bf81d64345faad Author: Corey Osman <corey@logicminds.biz> Date: Wed Aug 29 20:00:22 2018 -0700 Updates README for golang 1.11 (#647) This updates the README.md for Go 1.11 changes, including modules. This also adds additional instructions for building with docker. commit 37b7150a99daca975ed192136f6474b3b6f27a8f Author: gozart1 <gozart1@users.noreply.github.com> Date: Wed Aug 29 19:58:14 2018 -0700 add some bottom padding to main container to prevent footer overlap (#648) This adds padding at the bottom of the main container to prevent the footer from covering up anything in the body. commit ee54aec3232270a090b88fc6bb2ddfe9a43d7000 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Aug 28 13:43:40 2018 -0500 begin 3.1 release cycle Address doctoc weirdness. commit aac0885ccf1990d53a7d7eabc1cb83125375cf41 Author: mikefullman <mikef@zenshows.com> Date: Mon Aug 27 21:20:37 2018 -0700 insight api sync status and cleanup commit ba0f9ee7067e56b061bb34612cf1f1dc3b5bc0d7 Author: codemaestro64 <42093751+codemaestro64@users.noreply.github.com> Date: Tue Aug 28 19:02:33 2018 +0100 Display the next expected ticket price and bounds (#617) This shows the expected ticket price for the next price window, along with the min/max bounds, which narrow as the current windows progresses. commit 61a38fbaa2fc95dbc3e7a2ec2b7be1102eeeec79 Author: Corey Osman <corey@logicminds.biz> Date: Tue Aug 28 10:21:30 2018 -0700 Adds basic docker support (#632) This adds dockerfile support. It allows the user to build a dockerfile from within the repo. The README.md is updated with docker instructions, anda table of contents via doctoc. The code of conduct is also renamed for github. commit 4b074b326bae6aa04adb86cf20256fb072b18e47 Author: codemaestro64 <42093751+codemaestro64@users.noreply.github.com> Date: Mon Aug 27 15:42:56 2018 +0100 Make agendadb filename configurable and house it in datadir folder (#631) This adds a configuration option that make the agendadb filename configurable at runtime. It also ensures that the file location is housed in the datadir. commit b4ae964d93e230acc6e47032073dab4b5c7cf8fd Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Thu Aug 23 14:21:08 2018 -0500 explorer/mempool: validation Create type TicketIndex map[string]int. Create type BlockValidatorIndex map[string]TicketIndex. Replace map[int64]map[string]int with BlockValidatorIndex. Now block is referenced by hash so that side chains do not get combined with the main chain. Remove notions of validity from VotingInfo, and only count tickets voted and max votes per block. Note that tickets voted is different from number of votes seen since ticket double spends are common. views/mempool: column names best block values Best block column values should be true/false, not valid/invalid. Always link to /block/hash instead of /block/height. sortVotesTable is using td:nth-child to pick the column, so height is the second column and ticket index is the 4th. explorer: do not rebroadcast votes Do not rebroadcast votes already recorded during initial mempool inventory after the last block was mined. Also track all unique stake and regular transactions to prevent dups. explorer: work around js race Votes for a block that explorer has yet to (is about to) see can come through the new tx channel and are broadcast to the clients. The full mempool update will come immediately after and that, broadcasting the new mempool data. However, on the client, in js, the full refresh of the table from the new block can be processed before the early votes. Then when the early votes are processed, they appear as duplicates in the votes table since the backend processed them in the opposite order. As a workaround, modify the explorers mempool monitor to refuse to broadcast such votes, identified as validators for a block > last known. Last known refers to the last block that triggered a full mempool update. This is OK since on the backend, the full mempool update will contain this vote and it will be included in the client signal html table rebuild. explorer: avoid RPC in storeMempoolInfo and lock earlier make Hash part of explorer.BlockBasic, and use exp.NewBlockData.Hash instead of RPC. When fetching mempool, ensure block hash/height is the same before and after the RPC so the best block at the time of the call is known with certainty. Lock exp.MempoolData without delay in storeMempoolInfo. commit 8a2e2ad351ae3467d3e64a029b5b048b5446781b Author: mikefullman <mikef@zenshows.com> Date: Tue Jul 24 09:31:41 2018 -0700 7/5 confirmed ok. fixed columns to valid for last block. new tx on upcoming block not painted pink. make upcoming votes light grey background commit 93b578877a16e0b92ac968a07913c46a84d0a97f Author: Alawode Oluwandabira <dabiraalawode@yahoo.com> Date: Thu Mar 15 07:25:53 2018 +0100 explorer: votes filter now flags votes instead of excluding them. commit f2903f1a822267521f2237e07717567250c3d9ce Author: Corey Osman <corey@logicminds.biz> Date: Thu Aug 23 09:39:28 2018 -0700 add the ability to use environment variables for configuration (#629) main: Add the ability to use environment variables to set configuration. The ability to set app configuration via environment variables makes this more compatible with 12 factor app design, in addition to docker and docker-compose. A simple config test file is also added. A new import, the env package, is added that allows declaration of environment variables via struct tag. The go module files, and dep files are updated to include the dependency. commit a0378ed50769d503f265c889fc1aae94853a1879 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Wed Aug 22 15:40:08 2018 -0500 dcrpg: fix upgrade to 3.5.1 from <3.5.0 A missing fallthrough statement ad the end of the 3.4.1 -> 3.5.0 upgrade broke upgrading to 3.5.1 from any version but 3.5.0. commit e54cfa10a7f700b069bc8e6fabbc4dbaa7c39cf4 Author: dmigwi <migwi.ndungu@andela.com> Date: Wed Aug 22 04:47:54 2018 +0300 Fix bugs appearing on agenda page Update agenda voting milestone with data migration running from scratch commit cc0e85c12f570fa553f08fb6160d5a1d6fac3431 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Aug 21 16:29:53 2018 -0500 rework version scheme with appBuild commit 2f683513e4a613401131a7fc4c607f56a6696d77 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Aug 21 11:14:46 2018 -0500 go mod: Use go modules Specify dcrd and dcrwallet module versions. Remove dcrwallet/netparams import. Update all other deps. commit 8b16836835b872f3d05124ae11729fc6f5218fb2 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Aug 21 08:01:23 2018 -0700 README: update for 3.0 (#625) This updates the README.md for features added to 3.0, and other cleanup. - Remove github release badge (only tags matter). - Update repository overview with new folders and better descriptions. - Update required dcrd to 1.3 (testnet3). - Clean up and clarify Upgrading Instructions. - Add more about PostgreSQL tuning. - Add System hardware requirements section. - Update JSON API tables with new endpoints (block subsidy, tx vinfo, tx hex, tx decoded, address totals). - fix typos, add tips about permissions and dcrd settings - note experimental Insight API support commit 6ca963dbb1ef2edfe491a4d8d836cc99bb043dfd Author: codemaestro64 <42093751+codemaestro64@users.noreply.github.com> Date: Tue Aug 21 15:24:11 2018 +0100 Add color themes for different networks (#605) This adds distinct day color themes for different networks (simnet, testnet, mainnet). All networks have the same background color except for the header and footer, which are different. A new template function `theme` is added that returns current theme used to set the <body> class. commit 91a3249a3e6c42b718cd7ca6f2c75b75003941f2 Author: Mike <mikef@zenshows.com> Date: Tue Aug 21 06:12:34 2018 -0700 [WIP] Insight API fixes for upgraded tables (#572) This fixes several Insight API endpoints that were broken when the addresses table upgraded to 3.3.0. commit 11147ba63a5d28ef496a5abff9a861af9291d198 Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Mon Aug 20 23:07:00 2018 +0300 address page: Add charts (#597) This bumps the dcrpg tables version to 3.5.0 from 3.4.1 with the addition of the tx_type column to the addresses table, and the vins table. The upgrade is automatic and takes about 1 hr depending on hardware. This adds charts on the address page to display the following data over time for the given address, and binned by several selectable time frames: - transaction type - sent and received amounts - unspent amount (a.k.a. balance) The graphs use the standard Decred color scheme. API endpoints are added for types and amount distribution charts. The required data is retrieved by AJAX requests. commit 0920a45d8b516a42b0b043bf21c2935336171ebd Author: gozart1 <gozart1@users.noreply.github.com> Date: Mon Aug 20 02:02:24 2018 -0700 chart theming, url backed state & universal zoom (#598) Add theming, url backed state, universal zoom & moving average to /charts commit 180c7636e3a0fdc3dce760d4df41791f85f890c5 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Aug 16 22:26:49 2018 -0500 dcrpg: the 3.2.0 -> 3.3.0 upgrade was failing The HashDB function required the is_mainchain column, but it did not yet exist at the time of upgrade. This was added to the query after the upgrade was initially tested. commit 4622a99876ddaae2310cc23feb017889b6c7b0ae Author: J Fixby <JFixby@users.noreply.github.com> Date: Thu Aug 16 21:53:28 2018 +0200 Update README.md on dep ensure -vendor-only (#621) This instructs to use the -vendor-only flag with dep ensure to not modify the Gopkg files. Instructions for updating dependencies and info on dep are also provided. commit 01d9e0be706d38c947268da2548be9016594b285 Author: CodeMaestro <code.maestro64@gmail.com> Date: Thu Aug 16 19:13:39 2018 +0100 Show proper message when no agendas commit e9533aa8a7f601e5d8f417a9224eab345a6d21a3 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Wed Aug 15 23:26:59 2018 -0500 stakedb: Close badger iterator after View commit d9cf525773982e23c5faebc90a30f7a7f433b9a1 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Aug 15 12:57:41 2018 -0700 increase node notification buffer sizes (#616) With more transactions coming at once, and the possibility of very large reorgs on testnet, larger channel buffers are useful. This makes it happen. commit a281cf7ea945898570561785f0c221b1d3b77eb2 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Wed Aug 15 14:05:36 2018 -0500 fix another lite mode crash commit 93749cb3dcf0b0ebe2f56fb9a011df882e2e6afb Author: J Fixby <JFixby@users.noreply.github.com> Date: Wed Aug 15 18:11:02 2018 +0200 avoid pointless query for dummy sstxchange address This detects when the dummy (zero pubkey hash) address is requested on the address page, skips the queries, and shows a message. commit f3c5c046222a8800e206ac3ff89e2c7a71ee34a9 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Aug 14 12:21:05 2018 -0500 dcrpg/main: enable upserts after indexing (#613) * dcrpg/main: enable upserts after indexing commit e41e9d19e2ca97f7f81c6471ab7163064ae8d6a6 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Mon Aug 13 13:00:55 2018 -0500 lite mode fixes with new ChainDBRPC struct commit caf2a8315eb2a743176a9f0cfc7f69cce6677195 Author: SeaLightHouse <39948685+SeaLightHouse@users.noreply.github.com> Date: Mon Aug 13 20:20:16 2018 +0530 added TargetTimePerBlock in views/parameters.tmpl (#606) This adds TargetTimePerBlock in on the chain Parameters page. commit 81d965d5721a9ad7cc2d6578ca5f41693dcaeacb Author: SeaLightHouse <swarupghosh123@gmail.com> Date: Mon Aug 13 16:12:45 2018 +0530 changed mainnet.decred.org to explorer.dcrdata.org in main menu commit c8c12c76d3a416568b50b57d92fefc5907b6065d Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 10 14:03:19 2018 -0500 keep spaces out of the url (#602) * keep spaces out of the url Change "merged debit" to "merged_debit" so we don't get ?txntype=merged%20debit in the url. * recognize old links commit 029e74c2f4bcd4ff5def8cad2550e9d47e5b41dc Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Fri Aug 10 18:15:10 2018 +0300 Display the tiny qr code thumbnail by default (#583) This restores the javascript on the address page that shows the qr code icon. commit 2614a4e3c0e65120f3746672e8cbfe6d15469d5d Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 10 08:51:37 2018 -0500 dcrpg: reorg handling (#580) This adds a ChainMonitor to dcrpg and implements switchToSideChain. Add (*ChainDB).TipToSideChain, used by switchToSideChain to move blocks from mainchain to sidechain, updating all related tables. Add (*ChainDB).SetVinsMainchainByBlock, used by TipToSideChain, and add other mainchain queries for txns, votes, tickets, and addresses tables. notification: create block connected and reorg channels for dcrpg Embed ChainDB in ChainDBRPC instead of having named field. Add ChainDB.bestBlockHash to avoid unnecessary RPC. Upgrade tickets table with is_mainchain column, forgotten in last PR. This bumps the db scheme from 3.3.0 --> 3.4.0. Added new index uix_votes_block_hash to votes table for block_hash to reduce the index size for this column (there is a two column unique index that is 4x larger in size), and speed up scans. This bumps table version from 3.4.0 --> 3.* dcrpg: add ChainMonitor. commit 056527ec623926f69c8f5e53ec941141548c82ec Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Aug 8 11:39:25 2018 -0500 missing defer in sqlite, lots of linting (#596) * missing defer in sqlite, lots of linting * disable gofmt since 1.11 has no ideas about things commit d43de2fd1684ba0a4fbcb6561f36edd6b00e56c4 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Wed Aug 8 10:36:29 2018 -0500 testnet3 Update deps for dcrd, dcrwallet. Also update golang.org/x/... Remove all reference to params.TestNet2 as it was removed from chaincfg. Deprecate netName() in config.go. Change explorer.netName to work for any numbered testnet by stripping suffix after "testnet". Add tests for explorer.netName. commit a000082da3c4623e6ee60f9e01652e1297a3c3e1 Author: J Fixby <github@jfixby.com> Date: Tue Aug 7 00:51:29 2018 +0200 dcrsqlite: test GetBestBlockHash, GetBestBlockHeight, GetStakeInfoHeight commit e92b449957de7f0cb8f9617e0b2f4e6ef08c7b45 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Aug 7 09:44:25 2018 -0500 main: show golang version commit 8639f6eb21a90b229bd9336efb4fe241ee18637d Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Tue Aug 7 01:37:32 2018 +0300 agendadb: Fix unhandled errors while fetching all agendas (#594) * Fix the unhandled error while fetching all agendas * Improve on the error messages commit 6aa3651ee29ac09438785060a88785e01ebe796a Author: J Fixby <JFixby@users.noreply.github.com> Date: Mon Aug 6 23:26:47 2018 +0200 dcrsqlite: test RetrieveAllPoolValAndSize and RetrieveBlockFeeInfo (#563) commit 4a8449e7b25049289f8608eb554ff566f98cb878 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Fri Aug 3 16:43:23 2018 -0500 txhelpers/explorer: move and test CalcMeanVotingBlocks commit 7bc16a2fbf13e6f1fb9dbec039c19d7bf94733ca Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 3 14:36:11 2018 -0500 api: add block rewards endpoints (#592) * api: add /block/.../subsidy endpoint txhelpers: add RewardsAtBlock api/types: add BlockSubsidies JSON-tagged type api: add VotesInBlock(string) to DataSourceAux interface api: add *chaincfg.Params to appContext api: and add (*appContext).blockSubsidies dcrpg: add (*ChainDB).VotesInBlock, and RetrieveBlockVoteCount & query * api: allow ./subsidy for future blocks Just omit the block hash, and assume all voters * don't ignore indent commit a18e97cfa92cf89eac81fbc08c5adb453fab9c86 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Aug 3 12:43:28 2018 -0500 config: disable dev balance prefetch with invalid fund (#589) * config: disable dev balance prefetch with invalid fund dbtypes: DevSubsidyAddress now returns a non-nil error in special cases (e.g. testnet2). When parsing config, check chain params via DevSubsidyAddress to automatically disable the dev fund prefetch when it would not be possible to fetch a non-zero balance. * move to after log init, fix printf commit 2a555814bd2dd91e4ace50d2d91e542fecefb474 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Jul 31 14:24:33 2018 -0500 dcrpg: provide error context in handleBlocksTableMainchainUpgrade commit 148ed2f52bdac18f50656ad7d53ddddf02437e4e Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Mon Jul 30 21:36:31 2018 -0500 explorer: limit logging about websocket updates to zero clients commit c9f6cdebc94a9abb6c4dc18131f27cfb3e0b4aed Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Mon Jul 30 13:35:18 2018 -0500 dcrpg: support side chain tracking, upgrades (#552) This bumps the dcrpg DB table version to 3.3.0 and requires an automatic upgrade. The upgrade can take hours however. The table upgrade process has been refactored. A new TableUpgradeType type is added, and addNewColumnsIfNotFound takes default value. TableUpgradesRequired always returns a result for each table, ok being one of the results. Version check succeeds when all tables "ok" Prior to InsertAddressRows, ensure ValidMainChain is set properly for each row. Improve documentation for storeTxns. dbtypes: set Tx.IsValidBlock and .IsMainchainBlock When processing block transactions in processTransactions, set IsValidBlock and IsMainchainBlock for each Tx. Improve addresses statements readibility. commit 01d4c9516ef6686acf4bb7513996bab67a58f2fb Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Sat Jul 28 21:19:43 2018 +0300 Fix bugs in addresses page view (#570) * Improve on logic checking if all transactions were fetched * Make the default page size to be 20 commit 3d3cbb4dfb6a5cc2dc63d81b76dcb8ae5f7b3da3 Author: J Fixby <github@jfixby.com> Date: Fri Jul 27 20:53:12 2018 +0200 testutil: fix error message formatting and ignore test data folder commit ad1a91c3da8f7598cb98ff0e4b2902ceba833f4c Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Fri Jul 27 01:56:39 2018 -0500 main: always show dcrsqlite sync error without waiting on dcrpg commit 03548fa85d5c85dd367fe61ce297703c191b4b0b Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Thu Jul 26 20:19:02 2018 -0500 config: add --sync-and-quit flag to only sync (#573) This adds the flag --sync-and-quit to the dcrdata executable that will caus dcrdata to sync to the best block and then exit. It will not start the explorer or API. commit 0c48bcce707618dbd3aecd5e2a1a78595cdd0815 Author: Mike <mikef@zenshows.com> Date: Wed Jul 25 12:27:28 2018 -0700 Unconfirmed tx in address list and input amounts on unconfirmed tx (#489) This addresses the unconfirmed transactions not visible in address view and input amounts not visible in transaction view. There were two major areas of work: * Blending unconfirmed transactions with confirmed transactions in the current address view. Mostly extending what @chappjc already started. * Compensating for AmountIn values not set in dcrd calls to mempool transactions. commit 8519328d563b714c9749b8a7e100ca54e16691fb Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Wed Jul 25 21:54:01 2018 +0300 Consolidated debit view (#524) This introduces a new "merged debit" view on the addresses history page that lists only unique transactions. The Debit DCR amount is the sum of all outpoints corresponding to the given address that are spent in a transaction. It also fixes a bug with the next button on the same page. commit c4864424c5156c8c40983867a8d1a623cbed60e0 Author: J Fixby <JFixby@users.noreply.github.com> Date: Mon Jul 23 18:49:47 2018 +0200 testutil: refactor test setup (#559) This refactors the test setup and introduces a number of helper functions as "testutil". This also includes minor refactoring of the dcrsqlite/sqlite.go. commit 2010d5a9ba0ce218ea9cc0f7632619e761b58b03 Author: Sebastian Nadorp <snadorp@users.noreply.github.com> Date: Mon Jul 23 18:22:48 2018 +0200 Add message for no votes on a block. (#560) This removes the table and displays a nice message if there are no agenda choices in a vote transaction. commit 721e4da15947b4f27dd134372ad154c29ee03ca9 Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Mon Jul 23 07:11:22 2018 +0300 Replace the error page with a status page (#551) This enables the status page to be used for a wide variety of case scenarios one being Errors, Functionality limitations and also can be used to show a deprecated page or feature. commit 850df44bf26e551eb5de9bcf068e7afec9da8d90 Author: Mike <mikef@zenshows.com> Date: Fri Jul 20 11:29:28 2018 -0700 fix luck (#558) This PR address a small issue with the variable TicketExpiry initialization resulting in improper luck calculations. commit 021cf0754e6d328cbf48caa40a21b1b0b0b07531 Author: J Fixby <JFixby@users.noreply.github.com> Date: Thu Jul 19 17:33:47 2018 +0200 dcrsqlite: correctly splits given string into array of strings (#555) dcrsqlite: correctly splits given string into array of strings commit ebc6cb91646a556c43ba71376e9f7a1b7ac2042c Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Tue Jul 17 16:23:16 2018 -0500 travis/docker: do not update Gopkg.lock, only /vendor commit 152e5f85175b5f8b3eea7f62ef74e3f0361e3179 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Mon Jul 16 20:09:48 2018 -0500 explorer/main: add no-dev-prefetch option (#547) * explorer/main: add no-dev-prefetch option (#546) The no-dev-prefetch flag does the following: Disable automatic dev fund balance query on new blocks. When true, the query will still be run on demand, but not automatically after new blocks are connected. * dcrpg: respect noDevPrefetch * rebuilddb2: no dev fund prefetch commit 79aee4bf68064cde74bceeb643125b1c7eb6abe7 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Sat Jul 14 23:43:40 2018 -0500 dep: update lock for dep's new format commit 079c1d46226a3230394ae77038007f7e268cca9e Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Jul 13 07:24:25 2018 -0700 explorer: do not fetch charts data in lite mode commit 25d880ef60cf43a4dd59d30be2e98df120794383 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Jul 13 00:22:24 2018 -0500 version: instructions to put git commit in version string commit 041c7c7ab07c2597a4df472376c66b5d0f121f58 Author: swghsh <39948685+SeaLightHouse@users.noreply.github.com> Date: Thu Jul 12 10:00:02 2018 +0530 views: hide missed table when empty" (#537) views: hide missed table when empty commit c1ddd5eb31406d9f6d232caf3c4ebb1cf4aad21e Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Thu Jul 12 06:50:05 2018 +0300 Add charts (#463) * Add Historical charts that will appear on the explorer's charts page * Automate the vins table upgrade (Coin Supply Upgrade) commit c79ca99e09eba1a0405b370449a045e2c65d295f Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Wed Jul 11 03:09:44 2018 +0300 Agendas DB table and html pages (#523) This creates an agendas DB, and adds an agendas page to the explorer. The agendas page uses dygraph to show cumulative vote counts as the vote period progresses. commit 548affc1c339b467dba88d67deec4b1fb6674cf8 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue Jul 10 14:07:32 2018 -0700 dcrpg: fix genesis error in block_chain lookup commit 0cfca964e0c2791debb90d32d4e6026deb6d87e7 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Jul 3 22:10:02 2018 -0400 stakedb: recovery and robustness with upserts (#527) Add stakedb.LoadAndRecover, which NewStakeDatabase returns the height where it stopped loading. If there is an error, the height may be passed to LoadAndRecover. InsertVin[s] now has upsert option (dupcheck=true) to avoid failures requiring recovery procedures. Also have dupcheck option with SetSpendingForFundingOP / insertSpendingTxByPrptStmt and SetSpendingByVinID. Add MakeAddressRowInsertStatement to greate the upsert statement if checkdups=true; InsertVotes and MakeVoteInsertStatement similarly take dupCheck option. Fix incorrect parameter numbers in upsertVoteRow and insertVoteRowReturnId. AdvanceToTip now returns the last valid diff index (cursor - 1). commit 552ea24ad992f1fba9993d634f736e9e8f7c855d Author: J Fixby <github@jfixby.com> Date: Mon Jul 2 21:14:47 2018 +0200 dcrsqlite: fix RetrievePoolInfo empty result Fixes #532 commit d7ef93bd2aa77020c40ed9387912cc517f7e150d Author: J Fixby <github@jfixby.com> Date: Tue Jul 3 11:39:53 2018 +0200 dcrsqlite: remove dead code and swap wrongly positioned args commit c6359b596ce92713ccdcad50f3e7e46ab18e8fe3 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Jul 1 18:05:32 2018 -0700 dcrpg: fix empty prev_hash in block_chain In StoreBlock, if pgb.lastBlock does not contain the previous block row ID, look it up in the block_chain table. Add RetrieveBlockChainDbID to get the row id in the block_chain table for the block with a given hash. commit 886025a4f665b5a6eef73bb2f9872714fddb06a7 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Jul 1 17:48:02 2018 -0700 stakedb: fix loading bug in ticket pool db Fix bug in LoadAllPoolDiffs where multiple diff sets for the same height were loaded due to badger storing multiple value versions. commit 75f18a3d7f10ebcca7d43ec59945d72d52f74aa8 Author: J Fixby <JFixby@users.noreply.github.com> Date: Sat Jun 30 18:43:32 2018 +0200 dcrsqlite: create DB-file parent directory when necessary (#516) * dcrsqlite: add test to reproduce the issue #515 https://github.com/decred/dcrdata/issues/515 * dcrsqlite: create DB-file parent directory when necessary Fixes https://github.com/decred/dcrdata/issues/515 * dcrsqlite: move test helpers to a testutil package * testutil functions take *testing.T (#1) commit 5e31c5058c1820d25f0fb5bc91edc72151628272 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sat Jun 30 08:33:22 2018 -0700 explorer: compute ticket matruity times in lite mode (#525) * explorer: compute ticket matruity times in lite mode Intoduces (*TxInfo).IsTicket/IsVote * views: hide POOL STATUS in lite mode In lite mode, SpendStatus is unknown. commit 006685be846ac9cfe7b9b76eebabdb7bffdaad18 Author: Migwi Ndung'u <22055953+dmigwi@users.noreply.github.com> Date: Sat Jun 30 01:11:28 2018 +0300 dcrpg: new adresses table format (#427) * Implement the new proposed Addresses table format * Improve the explorer address page view with the spent tx and funding tx relationship * Change in_out_row_id (uint64) column to matching_tx_hash (text) column in the addresses table * Index column matching_tx_hash * Update the README.md file with the upgrading instructions * Update table maintenance require message * Fix bug on how non-alphanumeric characters are split from the address fetched * bump to 3.0 commit c7f065d389860eebb40f016e05b0062f5a196295 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Wed Jun 27 14:26:26 2018 -0700 html: update header descriptions commit 30e31c954dccbfcdbd54c33ab81138ed1034acc6 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Jun 28 10:04:28 2018 -0700 html/tx: unconfirmed tickets/votes have no maturity status (db *wiredDB) GetExplorerTx: set Mature="false" when confirmations==0 tx.tmpl: Unconfirmed tickets and votes read "N/A" for MATURITY, must be confirmed to show progress meter. commit 4faae92abc2c1536c067e033a08b0f4384611095 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Jun 21 09:55:10 2018 -0700 bump dcrdata to v2.1.0 commit 79ef24db53fed066f4fc62cd38ef3a20b06e57cc Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Jun 28 10:17:25 2018 -0700 rebuilddb2: consider batch sync and avoid constant dev fund update commit 679e8bcd81a78dd0da83314934af65ff9c31a94f Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Thu Jun 28 10:21:24 2018 -0700 stakedb: switch from storm to badger for ticket db (#465) * stakedb: switch from storm to badger for ticket db * stakedb: update ticketpool tests, regen test data * stakedb: test with full pool diffs * provide upgrade/recovery instructions * stakedb: migrate from storm to badger If badger DB not found or is empty, attempt to load existing diffs from a storm DB, if found. * Add storeDiffs to write many PoolDiffs in a batch txn * Inform the user they can delete the storm db. * dcrsqlite: in sync log every 1000 blocks * dcrpg: in sync log every 500 blocks * travis: add xz-utils apt package commit b23e52339b3453f1ee4fa93f05940e095b0de44c Author: J Fixby <github@jfixby.com> Date: Mon Jun 25 12:22:10 2018 +0200 multi: show maturity ETA in hours Change ticket ETAs to use hours. Examples: "Immature, spendable in 28 blocks (2.2 hours remaining)" "Immature, eligible to vote in 145 blocks (12.0 hours remaining)" commit 1d9405aca5c05baea34b11f3c10d521bbddab7b9 Author: Timilehin Olatunbosun <38729914+timi-ola@users.noreply.github.com> Date: Wed Jun 27 23:06:48 2018 +0200 Err message page clean up (#484) This removes the error code and message from the error page. commit 69bf97b12b3808797f21c53e53fa9c33364bbb7e Author: gozart1 <gozart1@users.noreply.github.com> Date: Thu Jun 21 08:46:34 2018 -0700 refactor home page and mempool javascript with stimulus (WIP) (#498) This introduces the Stimulus JavaScript framework: https://github.com/stimulusjs/stimulus * refactor age computation with stimulus * rework mempool with stimulus wip * hookup mempool & getmempooltxsResp events to homepageMempool controller * dry mempool table row generation * make sure there's always a table to render txns or empty message in mempool commit 41d8c3e753f24bbf1ff4ea9a483377096091e3ff Author: Mike <mikef@zenshows.com> Date: Thu Jun 21 08:42:49 2018 -0700 Insight API [13] [14] [19] [20] [20.1] [20.2] [20.3] [20.4] [21] [21.1] (#506) This implements the following Insight API endpoints (listed in https://github.com/decred/dcrdata/issues/400): [13] [14] [19] [20] [21] commit 119c1541be50cd4de5392779d54e782db4ce9f09 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Jun 20 16:54:51 2018 -0700 api: add /txs route for batch request (#510) * api: add /txs route for batch request This adds the /txs and /txs/trimmed routes for batch requesting transaction details. The transaction hashes are transmitted in the http request body as JSON. The structure is api/types.Txns. The request Content-Type must be "application/json". The return type for /txs is []*types.Tx. The return type for /txs/trimmed is []*types.TrimmedTx. version: bump to 2.0.1 * update README with new /txs endpoint commit e080b7c52bfdf3377d118033200aafe7553e7c58 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue Jun 12 13:23:54 2018 -0700 dcrpg: prevent stacking multiple calls to updateDevFund commit 76be996a72e7b6df77e12472e5930ae0372e0691 Author: Mike <mikef@zenshows.com> Date: Thu Jun 14 11:11:29 2018 -0700 Insight API - Misc cleanup [1], [2], [5], [5.1], [8], [8.1], [8.2], [9.1], [9.2], [9.3], [9.4] (#483) Cleanup and work on Insight API endpoints: [1] [2] [5] [5.1] [8] [8.1] [8.2] [9.1] [9.2] [9.3] [9.4] commit ad899b874956b837350bff4442b834044fb20aac Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Jun 12 18:56:17 2018 -0700 stakedb: accelerate StakeDatabase.ConnectBlock (#499) This changes how StakeDatabase gets the live ticket pool and the diffs (in/out) for each block in ConnectBlock. The liveTicketCache in StakeDatabase is now a faithful representation of the live ticket pool at the current best block. So when the live ticket list is needed, it is no longer necessary to use the stake.Node (BestNode.LiveTickets()). Add poolValue int64 to StakeDatabase, updating it on connect/disconnect via += / -+ for the pool in/out tickets. A major optimization in ConnectBlock is using the new ExpiredByBlock function in dcrd/stake instead of the much more costly ExistsExpiredTicket and ExistsRevokedTicket. This requires dcrd PR decred/dcrd#1221. Improve the process of "Pre-populating live ticket cache..." by prefetching the tickets from the stake BestNode (dcrdata's best node) rather than asking dcrd for it's idea of the live ticket pool. This ensures liveTicketCache will always contain an accurate ticket pool. Avoid LiveTickets() during sync. Add FilterHashSlice utility function. Update test data for new stakedb_ticket_pool.db disconnectBlock applies diffs in reverse -Keep liveTicketCache and poolValue correct when disconnecting a block. -Recovery from mismatching stake DB and ticket pool heights now can roll back stake DB in addition to trimming the ticket pool. -Extract code into (db *StakeDatabase).applyDiff, and crate undoDiff that applies a PoolDiff in reverse via applyDiff. -No longer use BestNode.LiveTickets() in PoolInfoBest. Use makePoolInfo and db.poolValue. -(tp *TicketPool).Trim and trim now also return the trimmed PoolDiff. update Gopkg.lock for dcrd with ExpiredByBlock commit a73f7ac3a08306c2b521776136d55f2cb3e595ae Author: mikefullman <mikef@zenshows.com> Date: Mon Jun 11 07:35:58 2018 -0700 Only run ASR on mainnet commit 9af03b2e15a0f3fdd732605052510e5f97d8153f Author: mikefullman <mikef@zenshows.com> Date: Fri Jun 8 10:58:26 2018 -0700 fresh coinbase tx fix commit e1e195ab4b952926e91355b630f17941d6ea507c Author: Mike <mikef@zenshows.com> Date: Fri Jun 8 11:21:36 2018 -0700 Insight API UTXO+ [10] [11] [12] [3] [4] (#479) Insight endpoints listed in https://github.com/decred/dcrdata/issues/400: [10] [11] [12] [3] [4] commit 2f256cac21ea68919c6f2b933bfb1e57eb59a58b Author: Mike <mikef@zenshows.com> Date: Thu Jun 7 17:31:58 2018 -0700 Insight API [6], [6.1], [15], [15.1], [16], [16.1], [16.2], [16.3], [16.4] (#493) Insight endpoints listed in https://github.com/decred/dcrdata/issues/400: [6], [6.1], [15], [15.1], [16], [16.1], [16.2], [16.3], [16.4] * CtxAddress, ValidatePost middleware, check content type, Remove unecessary log entries, Compress output commit 08e104747da9c94bf2089c6468a07ee73c794c29 Author: lte13 <lars.nordmark@gmail.com> Date: Thu Jun 7 14:23:32 2018 +0800 Update configuration file description (#496) Instruct to edit dcrdata.conf in the `appdata` folder, rather than the folder with the dcrdata binary. commit f011d567f01778dbc46b807f3407fe130c2d017b Author: orthomind <35336207+orthomind@users.noreply.github.com> Date: Thu Jun 7 16:17:23 2018 +1000 Docker tests (#497) * Use standard docker image for tests * added files committed to git already as part of the copy, since some needed for tests are in gitignore * added Go version 1.9 to travis file * fixed filter to include all git tracked files and then exclude any from gitignore * update dep lockfile test commit 3b674eebca5af8f19813b705658c48e39446a317 Author: Mike <mikef@zenshows.com> Date: Wed Jun 6 21:25:18 2018 -0700 ASR Calculation on home page (#468) * ASR on main page * calculate mean block vote time commit ed831389cea676940131e0da26801e4530e5419f Author: J Fixby <JFixby@users.noreply.github.com> Date: Wed Jun 6 04:29:35 2018 +0200 replace loggers: /btcsuite/btclog > decred/slog (#486) commit 27478696392825fd0cd58c8c266ab11c56436782 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Mon Jun 4 19:13:55 2018 -0700 update lock for tollbooth (#491) commit 090bf42dd7172187e7f75736a71f96ae7652b999 Author: Mike <mikef@zenshows.com> Date: Mon Jun 4 10:30:17 2018 -0700 Insight API broadcast_tx [17] (#481) This adds broadcast_tx to the Insight API: [#17](https://github.com/decred/dcrdata/issues/400) * Updated error response strategy. Moved rawtx body extraction to middleware. * Add rate limiter. Check for max size limits on rawtx. commit 1435dd92a9f4c15d167cb0bd23f3b683a8eb5caf Author: Mike <mikef@zenshows.com> Date: Mon Jun 4 10:19:52 2018 -0700 explorer: show miner fees in coinbase transaction (#456) * coinbase fees displayed * review changes * fix for inadvertant fees created by pool txs commit d23a91f6d5d667952080905b6bbcd10ab6185db8 Author: Josh Rickmar <jrick@devio.us> Date: Mon May 28 16:33:02 2018 -0400 Replace "deCRED" occurences with "Decred". (#487) The name of the currency is Decred and the logo stylization does not change that. commit 9c46fb937f759911c27a461c7ea517d71b328748 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sun May 27 10:57:46 2018 -0700 rename dev fund to project fund (#482) * rename dev fund to project fund * the rewards too commit 645a285e8b94781d07bc314613dfbb52f486ff35 Author: gozart1 <gozart1@users.noreply.github.com> Date: Sun May 27 10:55:07 2018 -0700 refine keyboard nav and make it optional via menu toggle (#476) * refine keyboard nav and make it optional via menu toggle * improve transition to keyboard controls during feature activation & menu open/close * move /blocks pagination link logic serverside & maintain key nav index * add '/' hot key for toggling search * switch to \ instead of / for menu toggle hot key, add [ & ] as alternate left & right * limit /blocks pagination height, so that height - rows cant go past 0 commit 2d78ca14a743a9c3e6552699d79626551f7cea84 Author: Omidiora Samuel <samparsky@gmail.com> Date: Tue May 22 19:46:47 2018 +0100 Show net on home page and Reorder menu items (#478) This reorders the menu items, and adds the network name before "Chain State" - added Title that currently says Chain State to say MainNet Chain State - added menu switch between testnet and mainnet - reordered menu items commit f4d1ac32f3b227aab26ef0b3629cfe0df2e630cd Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue May 15 22:34:36 2018 -0700 update deps commit 88a41243fcb18080e40b7e7c74b644f5d0007766 Author: Alawode Oluwandabira <dabiraalawode@yahoo.com> Date: Tue May 22 20:28:47 2018 +0200 Add support for insight socket.io api (inv and dcrAddress rooms) (#405) This implements the websocket api described in https://github.com/bitpay/insight-api#web-socket-api. The objects used in this PR however are based on the results of the current insight server on mainnet.decred.org. Currently implemented: - tx event in inv room. - block event in inv room. - <dcrAddress> event in <dcrAddress> room. commit 8c0308ed083bc8ac1dbdbfd03ab33aeccf028c57 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sat May 19 01:01:25 2018 -0700 main: add optional gops agent and instrumentation commit e22ff164f2e24e11c2b2fecd712821d008db7a43 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Thu May 10 18:49:41 2018 -0700 notification: make each reorg handler indicate when it is finished Do not leave OnReorganization before each handler sets the reorg flag. Make reorg channels unbuffered. commit e8239e94c16c27da4c84ab8f1e9a989d4c5b2b2e Author: gozart1 <gozart1@users.noreply.github.com> Date: Sat May 12 01:52:18 2018 -0700 add keyboard navigation commit 2671e4c640b9b82bdebc2504a3c73d4357752833 Author: Mike <mikef@zenshows.com> Date: Fri May 11 11:38:45 2018 -0700 dev funds zero (#461) This fixes dev funds on the main web page going to zero on websocket update. * Update rather than Re-instantiate ExtraInfo commit 1bb5fb11b2efa701639666e41b7678e315c3b656 Author: gozart1 <gozart1@users.noreply.github.com> Date: Fri May 4 12:27:23 2018 -0700 add missing night mode styling for flex table header bg & row borders commit 7b90f2e2e1b1c2f08982d318588cf26c4c9fe4d1 Author: Jonathan Chappelow <chappjc@protonmail.com> Date: Thu May 3 11:18:44 2018 -0700 README/dcrpg: update tuning info for PostgreSQL commit 16af133b99880e643420b8fb8ad3bb05057c2abe Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Thu May 3 18:33:24 2018 -0700 api: add coin supply (#458) This adds the /supply API endpoint and apitypes.CoinSupply. txhelpers/subsidy.go is added with the function UltimateSubsidy. commit d3288e7ea631f3ad9fdadaec9005530f8083c435 Author: Mike <mikef@zenshows.com> Date: Tue May 1 19:30:41 2018 -0700 Ticket Luck/Expiry/Probability Fixes (#436) * various updates and fixes to ticket probability * formatting updates and removing hard coded reference to 5 in ROI calculation * possible vs final luck tweaks * Chance -> chance * Remove Luck from missed tickets, coinbase transactions maturity, vote days until mature commit 64c410844d8763c06963d7b43953a3daa2614b64 Author: gozart1 <gozart1@users.noreply.github.com> Date: Tue May 1 19:14:22 2018 -0700 refine hamburger menu style & animation (#454) This tweaks the hamburger menu style. * location of menu is aligned with page content * animation is changed * patty lengths tweaked * add global click handler to close hamburger menu when clicking off of it commit e1c4f606aeab37e6171ee2677f701b89970c4c69 Author: gozart1 <gozart1@users.noreply.github.com> Date: Thu Apr 26 00:10:37 2018 -0700 use flexbox & tx hash truncation for more compact mempool table on home page commit 211773057c1caf5355c22a80da70e98e33e91dfc Author: Macaulay Davies <mac114.md@gmail.com> Date: Tue May 1 00:46:47 2018 +0200 Creating a chainparameters page (#397) This PR adds a "chain parameters" page that displays the data from dcrd's chaincfg/params.go. commit 49b78722882ee865a9fa6e17ce2146097baaaa07 Author: gozart1 <gozart1@users.noreply.github.com> Date: Sun Apr 29 18:25:11 2018 -0700 darken progress bar background for dark theme (#443) commit 67402098fa9945a1a9f01f7ba2881330ce4cf482 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Apr 20 22:14:35 2018 -0700 Add db_block_time to API JSON status response (#439) * Add db_block_time to API JSON status response * This also creates a version package for dcrdata, uses the proper app version in the status response, and bumps APIVersion to 1. commit 97d31d619e2252bb951b11e0a96e094a45f81965 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Apr 20 21:24:12 2018 -0700 api: Make full DB available, add address totals endpoint (#432) * add /address/{addr}/totals API endpoint The totals endpoint returns a 422 in lite mode. Add AddressTotals to api.DataSourceAux interface, and implement it in ChainDB via dcrpg.RetrieveAddressSpentUnspent. Add json tags to explorer.AddressBalance struct fields. Make a stub and TODO for the /address/.../raw/... endpoints. * Add apitypes.AddressTotals * add (pgb *ChainDB).addressBalance to check and update address cache Use addressBalance in AddressTotals to take advantage of general cache. * Use ChainDB.AddressTransactionDetails when not in lite mode * Avoid UpdateDevBalance during batch sync * cleanup, comments * fix "ready" field of StatusNtfnHandler * Add (d *DevFundBalance).Balance * Add DevFundBalance field to ChainDB * update license, remove refs to APIDataSource * Make explorer.sigNewTx event a Tracef commit 8b8f60121a7d94d64cbbc4ae5e7576d7e1a01546 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Fri Apr 20 21:07:20 2018 -0700 do not drop URL query params (#430) * fixes #408, dropped URL query params Use r.URL.RequestURI * ensure page parameters are set in AddressInfo even in lite mode * fix sent/received/unspent amounts in lite mode * get balance by db query if not using AddrTxnAll type * fix NumTransactions commit 31f96a9d869e30960717b24c14135f94f65dc852 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Apr 20 11:43:11 2018 -0700 views: delay websocket connection to mitigate churn commit c3032fc0407c85161e6fbe28d9ca44ac47e422c4 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Apr 18 10:17:03 2018 -0700 Unconfirmed transaction helpers, reworked CountUnconfirmedTransactions (#422) * Unconfirmed transaction helpers, reworked CountUnconfirmedTransactions Add func UnconfirmedTxnsForAddress. Updated AddressInfo type. commit d74d00712e2b684fd4b315c13d75ac61af834e30 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Wed Apr 18 08:47:48 2018 -0700 explorer: do not block Store() when websocket hub is stuck commit b205b76028c9310b6d70ca5a4d022e4b0d407997 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue Apr 17 09:12:08 2018 -0700 prevent deadlock of websocked event loop The channel send on sendBufferChan after addTxToBuffer were sending back to the event loop. commit cfb2763a6c8e657dfe5556a7622e933418791b9c Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sat Apr 14 17:50:09 2018 -0700 fix prepend to LatestTransactions (#428) fix indexing of LatestTransactions in mempoolMonitor handle non-nil, zero-length txns slice in storeMempoolInfo document mempoolMonitor create explorer.NumLatestMempoolTxns constant commit c933ac431324001d382b541f7a13906296cf3c4c Author: gozart1 <gozart1@users.noreply.github.com> Date: Wed Apr 4 01:05:15 2018 -0700 restyle progress bars commit a356c1f247a8424eb23d5f47759f47d0dbc7d1ad Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Apr 4 14:36:25 2018 -0700 address page: credit/debit txn filter (#385) Support for credit/debit txn filter. * Create AddrTxnType, a Stringer. * separate TxnsFunding and TxnsSpending slices * Depending on URL query param value for txntype, use all or one of credits or debits txns slices. * refactor page size selector logic, fix txntype selection * explorer: set "Turbolinks-Location" header to include all URL queries using URL.RequestURI(). * explorer: set addrData.TxnType. * address page: Add txntype={{.TxnType}} to forms that set the href. * address page: Still show, but disable, page size selector when too few txns. * explorer: add TxnCount method to AddressInfo to return either KnownTransactions or KnownFundingTxns depending on Fullmode. * Reorganize AddressInfo struct, document, and add KnownSpendingTxns * Add to AddressTx the field InOutID for the input or output index of the relevant transaction input/output. * Add (a *AddressTx).IOID() to format a string for the tx input/output. * fix address credit query * Update TxnCount to return KnownTransactions, KnownFundingTxns, or KnownSpendingTxns depending on TxnType. * Minimize use of .FullMode in address.tmpl * set ConfirmHeight in lite mode for address page * txhelpers: test for zero hash before getrawtransaction * add txhelpers.TxTree * no transaction type filter for address page when in lite mode commit 6383c50f61e7742c096dc9bb13842132451e72b9 Author: Mike <mikef@zenshows.com> Date: Wed Apr 4 12:59:02 2018 -0700 Hint for the index settings of dcrd.conf to work with dcrdata (#421) * Hint for the index settings of dcrd.conf to work with dcrdata commit 757962a4966a0e366914ba0be486cac982d6cec8 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Tue Apr 3 16:00:32 2018 -0700 add corresponding type names to API docs (#417) * README: add types to API endpoint tables api/types: apitypes.BlockTransactionCounts api: use apitypes.BlockTransactionCountsin getBlockTransactionsCount commit a3c621fd98056284c8d38d261c269e61c6fb05d1 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Mar 30 23:08:53 2018 -0700 explorer: close websocket include number of websocket clients in registering message do not log error when ws is just closed create explorer.ErrWsClosed string check in deferred closeWS, and in both send and receive loops commit 8dbd44283cc561ae07d6d0cc0f0e1129535442b9 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Mar 29 14:12:37 2018 -0700 notification: setup log, and document functions commit d20645f4a18ea018c415f6c13affa1ebfa5115b2 Author: gozart1 <gozart1@users.noreply.github.com> Date: Thu Mar 29 12:01:35 2018 -0700 update colors, table styles and header/footer in move towards new design (#403) * update colors, table styles and header/footer in move towards new design * hamburger menu * wire up menu links, dark theme menu, animate out commit 4634901f8da3698dcb4c8104225b2a8293c1a374 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Wed Mar 28 09:44:18 2018 -0700 explorer: avoid concurrent map access Each connection's (exp *explorerUI).RootWebsocket now stores a pointer to it's own client data. Previously each connection had to look up this object in the WebSockethub client map, which was not thread-safe. Add type clientHubSpoke, which wraps the *client and the corresponding *hubSpoke. Change WebsocketHub.Register from chan *hubSpoke to chan *clientHubSpoke Update (wsh *WebsocketHub).RegisterClient to return the *client, and send a *clientHubSpoke to the event loop, where registerClient will actually insert the client into the WebSockethub's client map. commit 89f34b763842b27be212ee065a817aa0cbfcdf10 Author: girino <girino@users.noreply.github.com> Date: Mon Mar 26 21:18:54 2018 -0300 Adds pagination to /address API (#412) Added pagination to /address/ API in the form /address/count/N/skip/M. NOTE: Still only using RPC. commit fceece3987aaf2ab33593d33f9157575e9df6927 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Mon Mar 26 11:23:11 2018 -0700 explorer/websocket: fix insane ping loop that was in websocket handler Remove the ping loop from each websocket connection handler, and create (wsh *WebsocketHub).pingClients() that is started from run(). It returns a channel that stops the loop when closed. commit 8984212e27e66685394b8248e56ae0355892e06b Author: Macaulay Davies <mac114.md@gmail.com> Date: Sun Mar 25 18:33:28 2018 +0200 Page size selector feature (#411) Only show valid options. When Limit is equal to number of txns, handle the selection box. commit bdcded664a1081c3d83953bfef0659e438b97bf8 Author: Macaulay Davies <mac114.md@gmail.com> Date: Sun Mar 25 18:29:27 2018 +0200 pool status bug fix (#410) * pool status bug fix -- Do NOT show POOL STATUS for unconfirmed tickets (mempool tickets) commit 1d927b959f856a6aa3dc8cf6dd60ff71532cbf9a Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Mar 22 20:39:57 2018 -0700 add goreportcard.com badge commit 1d3a285c0fd075150ad07b211381a78a831de6a0 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Thu Mar 22 20:33:37 2018 -0700 README.md updates for 2.0 commit 2959d1151d971546479d9dec1937e23f56ccb325 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sat Mar 24 22:31:11 2018 -0700 main: configure http.Server with ReadTimeout and WriteTimeout (#407) * main: configure http.Server with ReadTimeout and WriteTimeout * update copyright and comment wording commit 1e8dbff83b2c99fed3d432ab058c308eef4e34c0 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Sat Mar 24 18:13:23 2018 -0700 insight: rawblock endpoint (#402) * insight: implement rawblock doc reformatting * middleware: rewrite docs, simplifications remove GetBlockHashOnlyCtx since it was identical to GetBlockHashCtx rewrite more docs CRs * insight: organize router commit c17aa352ee182f5649d430c9562f58519e2954a2 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sat Mar 17 11:54:47 2018 -0700 html templates: Do not automatically request to enable desktop ntfns To enable desktop notifications, the user must click the connection indicator at the bottom right. commit 6469f9223a924523e7a232961b8e7df33fd7750c Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Mar 11 08:37:46 2018 -0700 main: check network is the expected one commit d495aee8c4b500ec98d0ac60e9135716166b19f2 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Tue Mar 6 14:18:40 2018 -0800 name go-humanize import Some linters are confused by the go-humanize import when it is missing an explicit name of the package, humanize. commit a68fad99ecea0c723672a6efe21ae2b57b17a8dc Author: Omidiora Samuel <samparsky@gmail.com> Date: Tue Mar 20 05:00:42 2018 +0100 Insight api endpoints (#350) implmented insight api routes implemented transaction hex routes, blocksummary, blockhash in insight api package implemented txns routes for multiple addresses, by block, address, post method for multiple addresses added log file to insight api package implemented get blocks routes. Implemented get address info routes added insightaddress info json struct updated the implementation of retreiving blocks based on time range implemented psql queries for rawtx, blockhash implemented rpc calls for postgres implementation implemented get address info on, retrieve block summary using time range, address utxo on postgresql created api package implemented notification package updated implementation of middleware package commit 3dc9d94def3a4dc9779726c6627dceadbdeeca50 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Mar 18 16:12:11 2018 -0700 fix ShowVersion (V/version) flag add copyright notices commit 113a83489b1aa2ad40ff16137fc3dcd4f47279a9 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Fri Mar 16 16:22:10 2018 -0700 ChainDB/rebuilddb2: add to ChainDB the ability to set a StakeDatabase Modify rebuilddb2 to load the stake db (and ticket pool db) *after* creating the ChainDB so that it is not necessary to load the ticket pool db when only using ChainDB to drop tables. Add "rebuild_data/" to .gitignore. commit d3e87cfbcf546b9640e99b117f922cdb3e412c89 Author: Jonathan Chappelow <jonathan.chappelow@gmail.com> Date: Sun Mar 11 09:17:02 2018 -0700 Update README.md files for syntax changes There is no longer a -u flag for rebuilddb2. dcrdata.conf lives in appdata now. Remind developers to update dep prior to committing changes to Gopkg.lock Cleanup and wrapping commit 2297e0b208d82a3dd73325b051f18e0d888356fd Author: Alawode Oluwandabira <dabiraalawode@yahoo.com> Date: Fri Mar 16 02:23:25 2018 +0100 explorer: refactor the explorer templates so they are easier to manage (#395) This simplifies the way the template files are handled by explorerUI by moving all the current template logic and types to templates.go where the templates are handled by the templates and pageTemplate types. Now adding a new template should be as simple as adding an name of the file sans "tmpl" extension into the tmpl slice in explorer.New. commit d2886d57701b1ce2022b4454eabc91206cb8cbac Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Mar 14 22:40:19 2018 -0700 main: prevent hang after reindex (#391) commit 322ac503864babda26a1f9a24d2d17ac83ecd1b0 Author: Jonathan Chappelow <chappjc@users.noreply.github.com> Date: Wed Mar 14 21:30:23 2018 -0700 do not request previous vout extra data when just counting transactions (#394) commit f2d65af0a4b838ab94fc7ad59cfc681ef2bbb94d Author: Macaulay Davies <mac114.md@gmail.com> Date: Wed Mar 14 00:25:50 2018 +0100 ticket page: luck and additional data (#361) Add a LUCK data item for each ticket, on a scale from 0 to 5, 5 being best, 0 worst, 4 average. Update decred deps in Gopkg.lock. commit 81e4a8f70c146a374e0810c3a4c2dedbb710133d Author: Alawode Oluwandabira <dabiraalawode@yahoo.com> Date: Mon Mar 12 22:37:09 2018 +0100 …
This adds broadcast_tx to the Insight API: [decred#17](decred#400) * Updated error response strategy. Moved rawtx body extraction to middleware. * Add rate limiter. Check for max size limits on rawtx.
This PR is ready for testing on the broadcast Tx endpoint
[17] send_tx
Also a new standard API failure packet was included as described in PR #479.
Valid Successful Response
Failure Response
Creating a raw transaction for testing
Below is a powershell script for creating a new raw transaction using dcrctl. YMMV.