eduffield
Core Developer
Introduction
As you are likely aware, development has been progressing rapidly in 2016 as we pursue the next set of objectives on the 2016 roadmap. Because of the multitude of changes needed to facilitate the radical enhancements envisioned to our network’s capabilities and our user experience, we have divided development efforts into two main working groups - Core and Evolution. Today, I am excited to announce that the next set of Core capabilities are ready to begin testing of our 12.1 release.
Before I provide more details on the extensive changes included in 12.1, I’d like to explain some of the reasoning behind the changes. It is frequently not immediately obvious to outside observers how many of these changes contribute toward the Evolution strategy, so it is helpful to review some of the challenges we’ve faced with our current governance and budgeting system, as well as the foundational capabilities we will need to support a system as complex as Evolution.
I am very proud of the progress we’ve made up through 12.0. We have established an incredibly powerful set of differentiators using our governance and blockchain-based funding model. We were the first cryptocurrency to recognize the now-obvious idea that transactional security is only one of a multitude of needs the network has - first by incentivizing full nodes and later by providing funding for other critical needs like development, marketing, legal, infrastructure, business partnerships, and so much more.
However, as could be expected, there are a number of flaws in the first iteration of the budgeting system. Let me provide just two examples. First, we’ve discovered the risks of multi-month proposals being defunded before completed. That might be acceptable in some situations, but we recognize the need in other cases for the network to be able to guarantee its commitments. Another example has been the lack of control proposal owners have once a proposal is submitted. When a proposal is no longer valid or needs to be changed or replaced, the owner is currently unable to cancel or even reduce the requested funding. We have managed to deal with most of the issues that have arisen so far, but clearly improvements are needed to make the entire system more effective.
Because 12.1 will fix many of these issues, it is understandable that many people immediately conclude (incorrectly) that we’ve been working on governance for the last few months, instead of working toward Evolution. While the benefits to our funding and governance mechanisms are very real, the real development focus has been on foundational elements needed to enable Dash Evolution. Enhanced governance and funding mechanisms are simply the first beneficiaries of this new capability, mainly because the underlying components were already built… 12.1 simply allows us to enhance them easily.
With that background, allow me to explain in greater detail what we’ve been building. 12.1 is really all about the delivering the foundational components of Dash Evolution in a new and improved network API interface known as Sentinel. 12.1 includes these changes and many other improvements for a brand new and improved user experience.
Sentinel enables massive flexibility when designing a decentralized application, including massive storage capacity, custom object creation capability, and friendly data query access through a normalized database (mysql in this case). To demonstrate the capabilities of this new type of software, we are going to implement simple governance contracts to start. After 12.1 is released we will begin creating new primitives for users, businesses, projects, milestones, reports, etc.
What does all this mean for the delivery of Dash Evolution? There are several main benefits. First, it will allow us to iterate software changes extremely rapidly. It also allows much greater flexibility in the types of objects and functionality we want to deploy. We will be able to query the network data with industry standard database and visualization tools so we can understand the activity taking place on the network. And finally, we will have the ability to support API functionality, a requirement for the third network tier.
Besides the changes required for Dash Evolution, we also have good news for masternode operators. We will now officially support masternodes which are directly ran from hardware wallets. Presently, masternodes are run from cold wallets, which are already quite secure. This new feature will allow our masternode operators an even higher security environment for their masternode collateral and infrastructure.
You will also notice a new theme engine, a new masternode GUI, and a rebranding of InstantX (now InstantSend) and DarkSend (now PrivateSend).
Thank you to everyone involved in helping develop 12.1!
Partial Changelog
Thx Udjin, Crowning, Tyler, Flare, TheLazier and everyone who contributed!
Wallet Updates
Here are some screenshots of the new improved experience.
Masternode Hardware Wallet support
This highly anticipated feature allows masternode operators to start and stop their masternode from the Trezor hardware wallet. This allows us a great deal more security for our masternode operators to secure their highly valuable collateral.
** NOTE: This feature requires a trezor and our dash-electrum client. It's not available via the core-qt wallet **
For more information about how to use this, please see the guide here:
https://github.com/dashpay/electrum-dash/blob/develop/docs/masternodes.md
Testnet Agenda
We’re opening testing to the public and are going to be testing everything in the following order:
Linux --> https://dashpay.atlassian.net/builds/browse/DASHL-DEV-535/artifact/JOB1/gitian-linux-dash-dist/
Windows --> https://dashpay.atlassian.net/builds/browse/DASHW-DEV-484/artifact/JOB1/gitian-win-dash-dist/
MacOS X --> https://dashpay.atlassian.net/builds/browse/DASHM-DEV-492/artifact/JOB1/gitian-osx-dash-dist/
Raspberry --> https://dashpay.atlassian.net/builds/browse/DASHP-DEV-488/artifact/JOB1/gitian-RPi2-dash-dist/
Changelog:
- QT: right-click to start alias in "My Masternodes": https://github.com/dashpay/dash/pull/786
- QT: fix truncation in Masternodes tab: https://github.com/dashpay/dash/pull/787
- DB: fix FlatDB: https://github.com/dashpay/dash/pull/785
- fix voting: https://github.com/dashpay/dash/pull/783
Testnet tools (explorers, faucets, pools) --> https://www.dash.org/forum/threads/testnet-tools-resources.1768/
Please direct your bugreporting to: https://github.com/dashpay/dash/issues/new
As you are likely aware, development has been progressing rapidly in 2016 as we pursue the next set of objectives on the 2016 roadmap. Because of the multitude of changes needed to facilitate the radical enhancements envisioned to our network’s capabilities and our user experience, we have divided development efforts into two main working groups - Core and Evolution. Today, I am excited to announce that the next set of Core capabilities are ready to begin testing of our 12.1 release.
Before I provide more details on the extensive changes included in 12.1, I’d like to explain some of the reasoning behind the changes. It is frequently not immediately obvious to outside observers how many of these changes contribute toward the Evolution strategy, so it is helpful to review some of the challenges we’ve faced with our current governance and budgeting system, as well as the foundational capabilities we will need to support a system as complex as Evolution.
I am very proud of the progress we’ve made up through 12.0. We have established an incredibly powerful set of differentiators using our governance and blockchain-based funding model. We were the first cryptocurrency to recognize the now-obvious idea that transactional security is only one of a multitude of needs the network has - first by incentivizing full nodes and later by providing funding for other critical needs like development, marketing, legal, infrastructure, business partnerships, and so much more.
However, as could be expected, there are a number of flaws in the first iteration of the budgeting system. Let me provide just two examples. First, we’ve discovered the risks of multi-month proposals being defunded before completed. That might be acceptable in some situations, but we recognize the need in other cases for the network to be able to guarantee its commitments. Another example has been the lack of control proposal owners have once a proposal is submitted. When a proposal is no longer valid or needs to be changed or replaced, the owner is currently unable to cancel or even reduce the requested funding. We have managed to deal with most of the issues that have arisen so far, but clearly improvements are needed to make the entire system more effective.
Because 12.1 will fix many of these issues, it is understandable that many people immediately conclude (incorrectly) that we’ve been working on governance for the last few months, instead of working toward Evolution. While the benefits to our funding and governance mechanisms are very real, the real development focus has been on foundational elements needed to enable Dash Evolution. Enhanced governance and funding mechanisms are simply the first beneficiaries of this new capability, mainly because the underlying components were already built… 12.1 simply allows us to enhance them easily.
With that background, allow me to explain in greater detail what we’ve been building. 12.1 is really all about the delivering the foundational components of Dash Evolution in a new and improved network API interface known as Sentinel. 12.1 includes these changes and many other improvements for a brand new and improved user experience.
Sentinel enables massive flexibility when designing a decentralized application, including massive storage capacity, custom object creation capability, and friendly data query access through a normalized database (mysql in this case). To demonstrate the capabilities of this new type of software, we are going to implement simple governance contracts to start. After 12.1 is released we will begin creating new primitives for users, businesses, projects, milestones, reports, etc.
What does all this mean for the delivery of Dash Evolution? There are several main benefits. First, it will allow us to iterate software changes extremely rapidly. It also allows much greater flexibility in the types of objects and functionality we want to deploy. We will be able to query the network data with industry standard database and visualization tools so we can understand the activity taking place on the network. And finally, we will have the ability to support API functionality, a requirement for the third network tier.
Besides the changes required for Dash Evolution, we also have good news for masternode operators. We will now officially support masternodes which are directly ran from hardware wallets. Presently, masternodes are run from cold wallets, which are already quite secure. This new feature will allow our masternode operators an even higher security environment for their masternode collateral and infrastructure.
You will also notice a new theme engine, a new masternode GUI, and a rebranding of InstantX (now InstantSend) and DarkSend (now PrivateSend).
Thank you to everyone involved in helping develop 12.1!
Partial Changelog
- Generic object storage (network primitives) with attached generic data format
- Sentinel Implementation
- UI enhancements
- Masternode list with start/stop support
- Merged upstream changes
- Reset testnet
- Improved flatfile storage mechanism for data
- Cleaned up/Refactored InstantSend implementation
- Masternodebroadcast raw function for hardware wallet support
- Vote by alias for randomized, more private budget voting
- Fixed lockup issues
- New theme support (light theme)
- Independant Dash icon depending on network and theme
- Improved dash-syncing code
- DS Speed Improvements
- Rebranded Darksend to PrivateSend
- Rebanded InstantX to InstantSend
- Fancy new masternode-trezor wallet
Thx Udjin, Crowning, Tyler, Flare, TheLazier and everyone who contributed!
Wallet Updates
Here are some screenshots of the new improved experience.
Masternode Hardware Wallet support
This highly anticipated feature allows masternode operators to start and stop their masternode from the Trezor hardware wallet. This allows us a great deal more security for our masternode operators to secure their highly valuable collateral.
** NOTE: This feature requires a trezor and our dash-electrum client. It's not available via the core-qt wallet **
For more information about how to use this, please see the guide here:
https://github.com/dashpay/electrum-dash/blob/develop/docs/masternodes.md
Testnet Agenda
We’re opening testing to the public and are going to be testing everything in the following order:
- Phase 1: Configuration / Syncing / Message Propagation
- Phase 2: Normal Network Functionality (DS/IX)
- Phase 3: Masternode Trezor Support
- Phase 4: Enhanced Budget System | Sentinel
- Phase 5: Pre-launch
- Phase 6: Launch
Linux --> https://dashpay.atlassian.net/builds/browse/DASHL-DEV-535/artifact/JOB1/gitian-linux-dash-dist/
Windows --> https://dashpay.atlassian.net/builds/browse/DASHW-DEV-484/artifact/JOB1/gitian-win-dash-dist/
MacOS X --> https://dashpay.atlassian.net/builds/browse/DASHM-DEV-492/artifact/JOB1/gitian-osx-dash-dist/
Raspberry --> https://dashpay.atlassian.net/builds/browse/DASHP-DEV-488/artifact/JOB1/gitian-RPi2-dash-dist/
Changelog:
- QT: right-click to start alias in "My Masternodes": https://github.com/dashpay/dash/pull/786
- QT: fix truncation in Masternodes tab: https://github.com/dashpay/dash/pull/787
- DB: fix FlatDB: https://github.com/dashpay/dash/pull/785
- fix voting: https://github.com/dashpay/dash/pull/783
Testnet tools (explorers, faucets, pools) --> https://www.dash.org/forum/threads/testnet-tools-resources.1768/
Please direct your bugreporting to: https://github.com/dashpay/dash/issues/new
Last edited: