Updated Details lisk

  • Development Update — Road to Core 1.0 Mainnet: August 23, 2018

    Hello Lisk Community,

    Here at LiskHQ, we’re buckled down and working hard in preparation for the upcoming Lisk 1.0.0 migration on Mainnet on August 29. All of the components of the Lisk ecosystem — Lisk Core, Lisk Elements, Lisk Commander and Lisk Hub — are all being updated and aligned with one another for the big migration. In addition to this, the Lisk Core team is also working on future releases.

    The Lisk Core 1.1.0 quality assurance (QA) phase is now complete. It was a smooth process with no issues.

    Our progress on Lisk Core 1.2.0 is also going very well. Here is a brief overview of the work we’ve done on this release:

    Issue #2201: We identified an issue related to the performance of the /api/transactions endpoint. Previously, in database queries used by this endpoint, we sorted the results by one column only (timestamp, amount, fee or type), but we had to add another column to ORDER BY clause (rowId) due to issue #1884. Because of these changes, the PostgreSQL server stopped using indexes and this resulted in significant performance degradation (~20 seconds to get results) while querying the transactions (trs) table. Following performance benchmarks, we replaced two existing indexes with eight new ones — which finally decreases queries’ execution time to ~2 milliseconds.

    Issue #2320: We replaced IP addresses with FQDN for seed nodes in config.json. We decided to do this because FQDNs are not bound to a particular service provider, therefore this approach gives us more flexibility. For example, we replaced with mainnet-seed-01.lisk.io.

    Issue #2323: We made a small change in the Swagger schema for the /api/node/status endpoint. We made the recently-added property secondsSinceEpoch mandatory in the API response.

    Issue #2261: This issue was already closed, but we identified one case in which we don’t need to update the node’s system headers — snapshotting. It is unnecessary during this process because the node is isolated from the network. For this reason, we removed the call to the modules.system.update in the corresponding logic.

    We also wanted to take this opportunity to point out that last week, community members running RC2, the latest version of Lisk Core 1.0.0 on Testnet, reported that the memory consumption of their nodes was slowly increasing over time. This caused some child processes within their nodes to crash. The issue was related to peer rejection during the socket handshake phase. Lisk Core is designed to handle such child process crashes, meaning it didn’t have an impact on the overall stability of the Testnet network.

    Our development team traced this issue back to the socketcluster-server dependency of Lisk Core. It was related to an advanced feature of SocketCluster which allows the Lisk nodes to quickly and efficiently close connections with bad peers (e.g. blacklisted IPs). The SocketCluster server was holding on to memory when the connection was killed at a specific point while in the middle of a handshake operation.

    We are recommending all Testnet nodes operators who haven’t upgraded their node’s dependencies yet to make sure to do so and check that the socketcluster-server version is 11.2.2. Lisk Core 1.0.0 is not affected as all of our builds already contain the fixed versions of the dependency.

    Next steps

    There are only two pending pull requests left in Lisk Core 1.2.0. They are currently under review. We expect them to be merged this week. Following its completion, we will freeze Lisk Core 1.2.0 and start its QA phase next week.

    We have already begun planning the next release. The corresponding milestone, Lisk Core 1.3.0, is already open on GitHub where issues are being added.

    -The Lisk Team

  • Tech Evangelist Rachel Black Joins Lightcurve

    Much has changed at Lisk over the last year. What began as a small project with only a handful of developers and visionaries has grown into a movement — a team of over 50 people and a huge, dedicated community. In this spirit, we’d like to welcome Tech Evangelist Rachel Black to the Lightcurve team. With her great expertise in both development and community-building, she will work closely with our technology, developers, and the community to educate and inform individuals around the world about Lisk. You’ll be seeing and hearing a lot from her in the future. To better acquaint you with Rachel, we took the opportunity to sit down and chat with her about her previous experiences, how she feels about blockchain and much more.

    Jennifer: Tell me a bit about yourself.

    Rachel: I’ve just moved over to Berlin from London, where I grew up. I’ve moved around a fair bit, having lived in a number of places in the UK. I also spent a year in South Korea! I’m really excited to be here in Berlin, especially given its growing reputation as a blockchain hub.

    J: When did you begin your journey that led you to tech evangelism?

    R: I have a background in web development, having worked with React and Node. On the technical side, I really like finding out how things work and learning about new technologies. I’ve been following blockchain for a while, but after partaking in a hackathon last year with people who were working in blockchain, my interest escalated. Since then, I have been really fascinated with the technology and have certainly bored all my friends back home talking about it nonstop! I also began getting more involved with helping organize, and later speaking at events in London. Stepping into the role of Tech Evangelist feels like a natural progression, one that will combine my interest in technology with my involvement with events and communication. Also, as I already mentioned, I really like talking about blockchain, so it is amazing to find a role where it is actually a part of my job!

    J: Why should people care about decentralization and blockchain?

    R: For so many reasons! With the rise of ICOs (initial coin offerings), we have already seen the potential power of blockchain to disrupt traditional funding methods. I think that as the technology becomes more established and widely-adopted, we will continue to see this disruption across many different sectors. Decentralization is important, but I also like the term “internet of value” as one of the key differences between the internet as we know it and what blockchain offers is the ability to transmit things of value through the network itself. This really changes the nature of how we interact with the internet, and paves the way for innovation. Currently, we are at the beginning of this journey, so it’s difficult to predict exactly what form this innovation will take, but it will certainly be game-changing.

    J: How would you describe Lisk?

    R: Lisk is a third generation blockchain, whose goal is to build technologies that are accessible for both developers (to build on) and users. For blockchain technologies to have a real impact, we need an ecosystem that can support quality DAPPs (decentralized apps). Lisk is third generation as it builds on the decentralization of Bitcoin (first generation) and Ethereum’s programmability (second generation). Lisk’s area of innovation is building a blockchain which utilizes sidechains to tackle the problem of scalability.

    J: What makes Lisk different from other blockchain projects?

    R: Sidechains are important — last year, we saw how the Ethereum network was overloaded by the CryptoKitties app. For blockchain technology to gain mainstream adoption, solving scalability issues are key. By using sidechains, Lisk can allow DAPP developers to run their app in a more isolated environment (within their own sidechain), but one that also benefits from using the lisk mainchain. For one this means that users will be able to use lisk tokens to pay for goods, services or other transactions in their DAPP (no need get a chain specific token from an exchange). Lisk also focuses on making blockchains as accessible for developers to build on as possible. Part of this is through its choice of language (JavaScript being the native language of the web), but also through Lisk’s commitment to open source. Lisk is also dedicated to increasing blockchain comprehension outside of development, with the Lisk Academy as an informative place to start for anyone new to the industry, whether they come from a technical background or not.

    J: Tell me about a day in the life of a Tech Evangelist.

    R: I’m new to this role, having transitioned from web development. Currently, I am learning as much as I can about the Lisk products, especially Core. This means a lot of reading Github, attending development meetings and getting familiar with running a node. All of this knowledge is then used to help inform the community via blog posts, events and communication on our social media channels with the Lisk developer community. My role is to bridge the understanding across tech and marketing.

    J: What are you currently working on?

    R: I’m learning as much as I can about the Lisk blockchain. With the upcoming Lisk Core 1.0.0 release, there is certainly lots going on! I’m also in the process of preparing for some events, blog and vlog posts.

    J: What skills and technologies are you the most interested in learning or improving upon?

    R: I really want to learn as much as I can about Lisk’s blockchain, from learning the more technical side (how to run a node, its API, the consensus mechanism) to the role crypto economics play in the ecosystem. I am also really keen to be part of the Lisk community, particularly by attending and speaking at events — it’s great to meet people in person! Overall, I feel really excited to be part of the Lisk journey!

    J: What industry sites and blogs do you read regularly?

    R: For blockchain news, CoinDesk is good. I am also subscribed to the Token Economy, and pretty much all of my Twitter is awash with blockchain content. To keep up with things from a more development-focused perspective, I also look at Hackernews and Hackernoon (in addition to Twitter as well).

    J: What do you like to do in your free time?

    R: Outside of tech, I really enjoy traveling and visiting new places. I’m also into fitness, in particular yoga and spinning. But I also enjoy my fair amount of nightlife and eating out, to counterbalance that!

    J: What is your favorite book and why?

    R: My favorite book is The Unstoppable Power of Leaderless Organizations by Oru Brafman, which is a really insightful read on the power of decentralized organizations (interestingly published in 2006, so pre-Bitcoin). Definitely worth a read for anyone who is interested in the space. I’m also getting my teeth into some books on the history of Berlin!

  • Lisk Core 1.0.1 Patch Release

    Hey Lisk Community,

    We wanted to give node operators, exchanges and other service operators a quick update regarding the migration of Lisk Core 1.0 to Mainnet. We have decided to release a patch, Lisk Core 1.0.1. It is fully compatible with Lisk Core 1.0.0. It is not mandatory to use the 1.0.1 version for the migration if you are not affected by the issues described below. However, for node operators that are willing to migrate using the Docker image, version 1.0.1 is required.

    We also highly recommend that all exchanges and other service operators (tools, explorers, etc.) use Lisk Core version 1.0.1 rather than version 1.0.0.

    Lisk Core 1.0.1 brings with it two solved issues:

    Issue #2336: The Docker configuration file was outdated, resulting in an inability to migrate using the Docker container platform. For this reason, we fixed the Docker configuration template. We have also updated the relevant section in our documentation — Lisk Core Docker Installation.

    Issue #2201: This issue (which was described in detail in the last development update) was solved in version 1.2.0, but we decided to include it in this patch release. The /api/transactions endpoint is incredibly important and is used by various third-party applications using the Lisk Core API. The performance of this endpoint is crucial, especially for exchanges and Lisk Explorer as they heavily utilize this endpoint. The corresponding Lisk Core v1.0.0-rc.3 patch only improving the described performance is available to install on Testnet.

    We’re looking forward to the migration on Wednesday, August 29. The Mainnet migration block height will remain the same — 6,901,027.

    -The Lisk Team

  • Lisk (LSK) Release nano Wallet 


    Source Code 


    Change Log

    v2.0.0Full Changelog

    Implemented enhancements:

    • Add support for optional data field #595#1070
    • Remove error toast after auto-update and auto-restart #1062#1061
    • Some E2E tests are failing on Jenkins#1055#1046
    • Creating a new account on testnet, defaults back to mainnet #1031#990
    • Can't fetch the fact user is delegate#1080#1078

    Closed issues:

    Merged pull requests:

  • Everything You Need to Know About the Successful Release of Core 1.0 to Mainnet

    The Lisk project has reached its most important and exciting milestone to date! Following a rigorous period of development, testing and quality assurance to guarantee the release of only the best possible product, Lisk Core 1.0 is now on Mainnet! All 101 Lisk delegates migrated in less than 24 hours and are successfully forging and securing the network. The majority of nodes before the migration have already migrated and 8252 transactions have been executed so far.

    Our development team has worked incredibly hard to bring the project to this point. We also want to thank everyone — our community and delegates — who helped make this migration a big success.

    Along with the release of Lisk Core 1.0, we have released Lisk Elements 1.0, Lisk Commander 1.0, Lisk Hub 1.0, Lisk Explorer 2.1.4 and Lisk Nano 2.0 over the last few weeks. All of the various components of the Lisk ecosystem have evolved to maintain compatibility with one another. Each product brings about its own major updates, further functionalities and advanced features. Read on to learn more about them all.

    Lisk Core 1.0

    The Lisk Core product was first created in February 2016 and has since seen 41 iterations — the most recent version prior to Lisk Core 1.0 was Lisk Core 0.9.16. Getting to this point in our development involved making over 8,000 commits and closing over 1,000 issues with thousands of peer reviews. Lisk Core 1.0 also included the implementation of an improved Quality Assurance (QA) process. In the future, all releases will include this process.

    Introducing the Five Most Important New Features of Lisk Core 1.0:

    1. New API & Design

    In an effort to lower the entry barriers to Lisk and increase user adoption, we are utilizing REST, a widely-used standard. REST makes our API simple, intuitive and expressive, therefore user-friendly, for all developers.

    2. New P2P Communication Layer (also known as Real-Time Peers)

    We redesigned our P2P layer to maximize performance and improve the reliability of the network. Peers are now able to stay connected to each other and exchange data using a real-time framework provided by SocketCluster. SocketCluster is a fast, highly-scalable, HTTP and real-time server engine. It removes the limitations of having to run your Node.js server as a single thread and can utilize all of the CPU cores available on a machine. It can scale easily by splitting work between multiple processes. It also helps to make your backend system resilient by automatically recovering workers’ threads in the case of crashes.

    3. Transaction Memo

    With our brand new data field, you now have the option to attach a custom message of up to 64 bytes to your transaction.

    4. Fully Atomic Block Writes

    Fully atomic block writes guarantee proper data integrity across the network’s nodes when writing to the database, together with greatly improved processing efficiency.

    5. Structured and Rewritten Test Suites

    Having a proper test suite is very important for the security of the network, as those efforts will guarantee the appropriate behavior of the application in the future. During the road to Lisk Core 1.0.0, we have written more than 80,000 lines of different test types. We have also completely rewritten most of them to ensure that they can scale further.

    Watch Lisk Core in 1 Minute!

    Lisk Elements 1.0

    In early August, we released Lisk Elements 1.0, the latest general-purpose JavaScript library. Formerly known as “LiskJS” it is our go-to resource for Lisk-related JavaScript functionality. It is intended primarily for JavaScript developers and we currently use it in several of our own products, including Lisk Hub and Lisk Commander.

    Lisk Elements 1.0 Introduces Five New Key Features:

    1. Complete codebase rewrite and redesign

    We are now dividing functionality into distinct areas with clear dependencies on each other:

    • Constants relating to the Lisk protocol or our Mainnet and Testnet networks.
    • Cryptographic functions required by the Lisk protocol or otherwise recommended by LiskHQ.
    • Mnemonic passphrase management, aligning with the BIP39 wordlists.
    • Transaction creators for each transaction type in the Lisk protocol.
    • An API client for communication with nodes on the Lisk network.

    2. New API client

    The new API client for Lisk Elements has been designed to work with the new public API available in Lisk Core 1.0. We have structured the API-client resource-based so that it is extensible and adjustable to changes in the Lisk Core API.

    3. New protocol for signing messages using Lisk passphrase

    We have made protocol level improvements on the signing message feature in order to make it more secure. By adding the Lisk protocol-specific header into the message, the message can be differentiated from other protocols and users will be prevented from mis-signing unintended messages.

    4. More utility functions

    Along with creating transaction functions, we have created utility functions that can also be used independently.

    5. Renaming of exposed functions and variables

    This makes the purposes of the functions and variables much clearer, making it easier for developers to find the functionalities they are looking for.

    Watch Lisk Elements in 1 Minute!

    Lisk Commander 1.0

    We recently released the latest version of our command line interface tool, Lisk Commander 1.0. Previously known as “Lisky” Lisk Commander is a tool for advanced users of the Lisk network and uses our general-purpose JavaScript library, Lisk Elements. It also provides the functionality to interact with Lisk Core with the use of a command line.

    Lisk Commander 1.0 Introduces Four New Key Features:

    1. Access more information

    The Lisk Commander functions get and list are compatible with the new Lisk Core 1.0 API. This means that Lisk Commander can obtain information related to the blockchain from a particular network.

    2. Create, sign, verify and broadcast transactions and signature

    With the latest version of Lisk Commander, users can create type 0 to type 4 transactions, which are transfer, register second signature, register a delegate, vote for delegates and register a multisignature account. Separately or with command line pipe in interactive mode, users can sign and broadcast the transaction to the network. If a user receives a transaction, the user can also check to see if it contains a valid signature.

    3. Encrypt passphrase and Decrypt passphrase commands now compatible with Lisk Core 1.0

    This feature is particularly important for delegates as a delegate needs to encrypt their passphrase locally and insert the encrypted passphrase in the configuration of the node to enable forging. Only the password used to create the encrypted passphrase is sent over the API endpoint provided by Lisk Core.

    4. Sign message and verify message

    The sign message and verify message commands are often used to prove the ownership of a particular account. Now Commander supports creating such a message and verifies whether or not the signature and message are from the correct owner.

    Watch Lisk Commander in 1 Minute!

    Lisk Hub 1.1

    Lisk Hub is an all-in-one solution to manage your Lisk ID, access and send LSK tokens, as well as vote for delegates. To accommodate the release of Lisk Core 1.0, a great deal of work was done in Lisk Hub 1.0 and Lisk Hub 1.1 to ensure that its entire code base is compatible with the new API and Lisk Elements. For end users, this means that the auto updater will skip version 1.0 and go directly to 1.1.

    The latest releases include support for the main Lisk transaction types — send LSK tokens, vote for delegates, register a delegate and register a second passphrase. Each of the transaction types has its own page and sending process tailored for specifics of the particular type. It also includes all the functionalities for browsing and searching the Lisk blockchain. Users can search by delegate names, Lisk IDs, and transaction IDs to find delegates, accounts and transactions. All the search results then link to other relevant objects (e.g. a transaction links to its sender and recipient) to accommodate a seamless browsing experience.

    Lisk Hub 1.0 and Lisk Hub 1.1 Introduce Four New Key Features:

    1. Reference Field

    Lisk Core 1.0 brings about a data field for token transfer transactions. This feature allows users to attach a message of up to 64 bytes when transferring LSK tokens. Lisk Hub makes use of this feature to allow users to write text in a reference field when making transactions. This reference can be seen by the recipient to allow for easier identification and distinction of transactions.

    2. Help Page

    In Lisk Hub 1.1, we wanted to give users an easy way to get help if they need it. We created a new Help page in the Lisk Hub with links to existing sources — the Lisk Help Center, Lisk Academy, Lisk Chat and specific pages within those sources. The Help page can be easily accessed from the sidebar menu.

    3 & 4. Menu highlight and network switcher designs

    We also strived to improve the appearance of existing features for aesthetics and usability. The active page is highlighted by a blue stripe on the right side of the menu item. It turns out that this was not sufficient in some user tests. Therefore, in addition to the blue stripe, we also added also a gray background gradient. In addition, we updated the network switcher on the login page. The network switcher was first created as an advanced/developer utility without any regard for the design, because it is not displayed automatically. Eventually, we decided to make this feature discoverable through a switcher in settings. For this reason, we went back to the design table to give the account switcher a proper design that is aligned with the rest of the application.

    Watch Lisk Hub in 1 Minute!

    As previously announced, we are working on a mobile version of the Lisk app. To learn more about our plans for Lisk Mobile, watch Lisk Mobile in 1 Minute!

    Lisk Explorer 2.1.4

    Lisk Explorer 2.1.4 is compatible with Lisk Core 1.0. However, there are many exciting plans in the works for the future of Lisk Explorer. Please stay tuned for related announcements.

    Watch Lisk Explorer in 1 Minute!

    Lisk Nano to Be Discontinued in 2019

    As the Lisk ecosystem continues to evolve, we’re striving to create the most modern and dynamic versions of all of our products. For this reason, following the release of Lisk Nano 2.0.0, we will not put forth any follow-up releases aside from security patch releases, if necessary. On January 1, 2019, support for this product will no longer be available. However, the repository will remain public and the community will be able to fork it and implement their own features.

    The reason we decided to discontinue Lisk Nano is because we would like to shift our focus exclusively to the new Lisk Hub wallet, which is currently undergoing many improvements. This requires the full, undivided attention from the Lisk Hub team.

    Our official documentation is a great resource for learning all about the Lisk products, how to use them, how to set up a Lisk node on the network, and much more.

    The road to innovation is rarely smooth — our approach has been methodical and measured, taking no shortcuts along the way. We want to give a huge thank you to our incredible community for supporting us through it all. We will continue delivering only the most secure and high-quality products on our journey towards a fully fledged Lisk ecosystem.

    -The Lisk Team

  • Lisk (LSK) Release Wallet Version 1.0.2

    v1.0.2 (2018-09-02)

    Full Changelog

    Source Code:


  • Development Update — September 6, 2018

    Hello Lisk Community,

    With the incredibly eventful network migration week behind us, we’re continuing to swiftly move forward with all of the latest versions of our products. If you somehow missed our major blog post from last week describing them all in detail, be sure to check it out. We would also like to announce that going forward, we will include all of the products of the Lisk ecosystem in the development update. Therefore, these development updates will no longer be weekly, but biweekly. This will be the last weekly development update — the next development update will come out on September 20. We really look forward to giving you a much more thorough analysis of Lisk’s progress going forward!

    Lisk Core 1.0.2 Patch Release

    Issue #2370: On Saturday, September 1, there was a network incident on our Testnet. During his tests, community member Andrea sent a transaction with data field (an optional message that you can include in your transaction) set to \u0000hey:). His tests weren’t targeted to find a bug, as \u0000 is a valid Unicode character NULL (U+0000). However, in the database, we store this data field as type BYTEA and were retrieving it in SQL queries through CONVERT_FROM. Unfortunately, PostgreSQL doesn’t support converting NULL bytes to UTF-8 and therefore returns an error. This resulted in nodes crashing when database queries involving this transaction were executed. The Mainnet network wasn’t affected, but it was our top priority to get this fixed as soon as possible. Several members of our dedicated development team — François, Manu, Mariusz, and Shu — went into the office to work on the fix while other team members supported them remotely. Given that the issue was identified fast, the solution was also implemented and tested very quickly. After just a few hours, we released the patch.

    Lisk Core 1.1.0

    Following the release of Lisk Core 1.0.1, we identified several issues regarding the performance of API endpoints. Instead of fixing them in a patch release, we decided to reopen and make the fixes in version 1.1.0.

    Issue #2348: In the /api/node/status endpoint, we are returning the total count of confirmed transactions. Under the hood, the count was retrieved using a SQL query that performed COUNT on the transactions (trs) table. This operation is heavy to execute, as this table contains millions of records. We fixed the performance by caching the count.

    Issue #2352: We found the performance of another API endpoint, the /api/delegates/<address>/forging_statistics, as unsatisfactory. The main reason for introducing this endpoint was to allow one to retrieve forging statistics for a period of time, such as one month or one week, etc. This endpoint is not reliable for getting total forging statistics (from all time), as the underlying query is performing aggregate function SUM on two columns over a large data set (~6M records and growing). We fixed the performance by using data from the mem_accounts table when statistics from all time are requested (thus no time filter is provided).

    Issue #2351: We were getting the performance hit in the /api/delegates API endpoint because one of the fields, rank, was a dynamic field. To get this field, we had to execute a subquery for every delegate that is registered, therefore for mainnet ~1700 times. We fixed the performance by storing rank as a normal column in the database and continue to update it every time a round is changed (every 101 blocks).

    Issue #2350: We had a similar case with the /api/accounts endpoint. Two subqueries were being executed for every row touched by the main SQL query. For example, when providing limit 100 and offset 1000, those subqueries were executed 1100 times. However, data retrieved from those subqueries wasn’t used for generating the API response. The fix was to just require fields that we need for the API response so those subqueries are not executed anymore.

    Issue #2330: Opened by our community member Corsaro, this issue was previously assigned to Version 1.3.0. We decided to include it in 1.1.0 as it affects delegates running pools (sharing rewards with their voters). The issue was regarding an incorrect results order when using sorting in the /api/voters API endpoint. We fixed this by adding proper logic to the underlying SQL query that is responsible for getting the results from the database.

    Next steps

    Because the Lisk Core 1.1.0 version was extended by additional issues, we need to perform another QA round to ensure the highest quality possible for this release. We’ve already begun and expect to finish by next week.

    Over the last week, we were also focused on Version 1.3.0, which will be one of our next releases. We’re progressing very well — we have already solved several issues and have pull requests opened for another four.

    Thank you again to our all-star community. We look forward to the Reddit AMA on September 18 and to updating you more comprehensively in the next Biweekly Development Update.

    -The Lisk Team

  • Lisk-hub Pre Release Version 1.3.0-rc.1

    Fixed bugs:

    • Pending transaction details missing #1269#1259
    • Network indicator is not shown if 'Switch Networks' is off #1251#1189

    Closed issues:


  • Lisk -  New Relic instrumentation of Lisk Core

    A newrelic custom instrumentation for Lisk Core


    $ npm install --save newrelic
    $ npm install --save https://github.com/LiskHQ/lisk-newrelic.git


    You have to create your own copy of newrelic configuration. NewRelicLisk just instrument using available newrelic object.

    const newrelic = require('newrelic');
    const newrelicLisk = require('lisk-newrelic')(newrelic, {
    	exitOnFailure: true,
    	rootPath: process.cwd(),


    Following options can be passed to create the lisk instrumentation object.

    Type Description
    Boolean Exit the main process if any error occurred during instrument initialization.
    String Absolute path of the lisk core directory


    Instrument web requests to show the request path exactly defined in swagger by Lisk Core.
    Instrument some functions of pg-promise to get good insight of database transactions.
    Instrument every job in the jobQueue in Lisk Core
    Instrument methods of modules which have defined callback.

    Instrumenting a module

    If you have a module to instrument, with following details:

    1. A module named node
    2. It is require in the app with exactly the path ./modules/node.js
    3. And you want to instrument two methods internal.getForgingStatus and shared.getConstants You can instrument this:
    	['internal.getForgingStatus', 'shared.getConstants']




    Copyright © 2017 Lisk Foundation

    This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

    This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

    You should have received a copy of the [GNU General Public License][license] along with this program. If not, see http://www.gnu.org/licenses/.



  • Lisk (LSK) Release v1.1.0-rc.0

    Fix differences in vote column in mem_accounts while syncing from scratch - Closes #2420


  • Lisk (LSK) Release v1.1.0-alpha.5

    Version 1.1.0-alpha.5

    Source Code:


  • Lisk (LSK) Release v1.1.0-alpha.8

    Source Code:


  • Development Update — October 18, 2018

    Hello Lisk Community,

    It has been a busy couple of weeks for Lightcurve development teams. Among key achievements we have the release of Lisk Core 1.1.0 to Testnet and a new version of Lisk Hub, while crucial development has continued across our full suite of products. Find a full rundown of what each team has been working on below.

    Lisk Core

    1.1.0 — Yesterday we released 1.1.0 to Testnet. This release intentionally introduced a hard fork to limit versions that are to be accepted. Full information can be found about why we did this here. To quickly summarise, this was caused by the following problem: release versions containing suffixes (like ‘rc’ or ‘beta’) which were identified as incompatible by v1.0.0-rc.* Testnet nodes. More importantly, this hard fork will only be introduced for this release on Testnet. Mainnet will not be effected for the 1.1.0 release as there are no such suffixes.

    With 1.1.0, the following features will be introduced:

    • The ability to switch between networks without the need to build releases separately for individuals ones i.e. Betanet, Testnet and Mainnet. For us, this will mean improved test processes. This is because we will be testing against the same builds, which will reduce the chance of inconsistencies occurring between networks. People running from source can also use single codebase to run multiple networks without switching branches. Read more here, or find more details in our readme and documentation.
    • An upgrade to Postgres 10 will introduce improved performance and increased security.
    • Implementing consistent use of BigNumber for handling large numbers across the project.
    • Replaced libsodium with sodium-native to use updated and secure cryptographic implementation together with improved performance.
    • Improved performance of various HTTP API endpoints.
    • A full list of all the issues tackled as part of v1.1.0 can be found here.

    1.2.0 — Lisk Core 1.2.0 is currently in the QA phase. Once 1.1.0 is released to Mainnet, we will be able to announce when the release to Testnet will occur. 1.2.0 will include the following changes:

    • An update Node.js to 8.12.0, allowing more recent features of Node.
    • Use of DNS names instead of IPs for seed nodes.
    • Updated HTTP API to allow filtering and sorting transactions by height.
    • Support of many new environment variables for configuration.
    • Many more fixes and improvements.

    1.3.0 — Development on 1.3.0 has finished, and once 1.2.0 has been released to Testnet, we will begin the QA process. In this version, we will allow the optional benchmarking of nodes with NewRelic. Using NewRelic will allow Node operators greater insight in the the performance of various layers of the application e.g. the SQL queries. For more detailed reasoning behind this feature, please see here.

    1.4.0 — We have already begun work on 1.4.0. This development phase will stay open for longer than 2 weeks, and will remain open for non-critical bugs discovered as part of 1.2.0/1.3.0 releases.

    Lisk Elements

    1.1.0 — We continue work on 1.1, finalizing child package names on NPM, as well as pushing on with 2.0.0. As mentioned in previous blogs, 1.1 will cover a move to a mono-repo structure, allowing individual subpackages to be downloaded. 2.0 entails migrating all packages to typescript, which will allow type checking, and therefore removes the occurrence of type errors.

    Lisk Commander

    2.0.0 — We have released Lisk Commander 2.0 Beta. To see the full changelog for this visit here. With this release, we have added the signature create command and the option to create multiple accounts. Before 2.0 release candidate, we will also add transaction validation from Elements 1.1.

    Lisk Hub

    1.4.0— We have released version 1.4 of Hub, which included a number of bug fixes, code refactors and test improvements. A full version of the changelog can be found here.

    1.5.0 — QA, and the associated bug fixes, continue on 1.5. This version of Hub will allow users to bookmark Lisk accounts for future transactions. More information on this feature can be found here.

    Lisk Mobile

    0.4.0 — We have been working on a number of new features for Lisk Mobile, including:

    • Implementing biometric authentication, to allow users to login with their fingerprint or face.
    • Added pull-to-refresh feature, making it easier for users to refresh and view the latest information.
    • A redesign of the login page and transaction detail page.
    • Added ‘backup your passphrase at anytime’ option to the settings page.

    Thanks for keeping up with the latest developments here at Lightcurve. We look forward to sharing with you what the next two weeks will bring in early November.

    The Lisk Team

  • Lisk (LSK) Release Version 1.1.0

    Change Log

    v1.1.0 (2018-10-22)

    Full Changelog

    Closed issues:

    • Cover system.versionCompatible unit tests with Testnet, Betanet and Mainnet scenarios #2473
    • Supply calculation bug in block reward #2471
    • Rollback version patching mechanism #2466
    • Allow block to be backward compatible with 1.0.x node while broadcasting #2464
    • Update script adds null value to api whitelist array #2459
    • Frequent peer removal and inserting #2455
    • Vote verify function should call waterfall callback instead of main callback #2450
    • Patching system headers should be logged as debug #2439
    • Update config don't check LISK_NETWORK env variable #2437
    • Change of vote processing logic ignore address collision scenario #2434
    • Wrong block height for block version 0 for testnet #2433
    • Wrong amount check in verify function of logic/In_transfer and logic/out_transfer #2430
    • Differences in vote column in mem_accounts while syncing from scratch #2420
    • Intentionally disconnecting and removing peer #2410
    • Update P2P layer connection logic so it can work with 1.0.0-rc.* releases #2389
    • /api/delegates/{address}/forging_statistics returns different results compared to v0.9.16 #2367
    • Poor performance of GET /api/delegates/[address]/forging_statistics #2352
    • Poor performance of GET /api/delegates #2351
    • Poor performance of GET /api/accounts in case of some few parameters #2350
    • Poor performance of GET /api/node/status #2348
    • bad sorting when using balance:asc #2330
    • Wrong wsPort number in mainnet/config.json #2329
    • Set default db user to 'lisk' #2248
    • Change the precedence of configurations to override custom configuration #2231
    • Worker controller needs to adopted to use the new configs #2216
    • Fix randomness for unit logic vote test #2207
    • Update configuration migration script from 1.0.x to 1.1.x #2202
    • Fix failing tests in Jenkins for 1.1.0 #2192
    • Clean constants, exceptions and config files from all networks folders #2186
    • Clean the version and minVersion config from all config files #2184
    • Update jenkins integration to use the dedicated build server #2182
    • Fix docker container workflow in 1.1 #2180
    • forge should be called after fillPool and not before #2170
    • Improve vote transaction verification/processing efficiency #2168
    • Cleanup tests to use "devnet" configuration files to run all tests #2156
    • Merge helpers/milestones.js to network specific exceptions #2155
    • Block verification functional test for fork2 is failing #2152
    • Blocks verify functional test is not covered in Jenkins parallel test #2151
    • Update PostgreSQL to version 10 #2147
    • Delegates endpoint should sort by rank:asc #2138
    • Remove dependency of "round" from "summedRound" #2129
    • Review integration test suite #2125
    • npm install failed on Mac os 10.13.4 #2082
    • Send back better error when disconnecting because of invalid peer headers #2068
    • Forging status broken after resync with beta7 #2058
    • Refactor generateDelegateList to accept round as parameter #2014
    • Log level of "Inserted new peer" and "Removed peer" should be symmetric #1992
    • GET api/peers doesn't return the peer when WebSocket process restarted #1814
    • Update libsodium #1797
    • Incorrect missedBlocks update after delete last block of round #1783
    • It's not possible to sort delegates by 'producedblocks'/'missedblocks' with api/delegates #1716
    • Different datatype for round number among different tables #1647
    • Separate VCS config file from live config file #1421
    • Store amounts as strings #716
    • Implement ForgingEnable flag #647
    • Implement SyncOnly flag for firewalled clients #646
    • Improve sync speed #498
    • Support multiple networks with one installation #398

    Merged pull requests:

  • Lisk Hub  Release Version 1.5.0-rc.1

    Implemented enhancements:

    • Implement Bookmark accounts #1100

    Fixed bugs:

    • Account: When opened by direct link shows empty activity #1339
    • Wallet Activity tab doesn't show delegate statistics #1336
    • Custom node login fails randomly with currentNode of undefined error #1398
    • Follow: 'Add to followed accounts' button is present after voting step #1373
    • Search: No results found in id search suggestion when address is >20 chars #1352
    • Only first 10 voters are displayed #1344

    Closed issues:

    • Improve design alignment of bookmarks #1375

    • Alignment of bottom sidebar navigation elements #1195

    • Jenkins build Xvfb plugin fails #1366

    • Prevent too many builds of the same PR in parallel #1358

    • Update e2e test README.md #1329

    • Update Jenkins to run against lisk-core 1.1.0 #1202

    • Create e2e tests for activity #1335

    • Create e2e tests for search #1314

    • Change Jest in Jenkins to fail the build #1302

    • Use Declarative Pipeline syntax in Jenkinsfile #1300

    • Setup parallel Jenkins stages for unit and e2e tests #1139

    • Enable Mocha and Jest stages on jenkins build #1133

    • Refactor and move API calls in login middleware #934

    • Create e2e tests for transfer #1332

    • Create e2e tests for following #1313

    • Create e2e tests for registration #1311

    • "Confirm transfer" truncates the reference field #1285

    • Stop passing activePeer into actions #1129

    Source code 


    Merged pull requests:

  • Announcing Lisk’s Bug Bounty Program

    Here at Lisk, we take the security of our network with the highest possible priority. As an open-source project, we greatly value our community’s contributions to the mission of building and maintaining a secure network. This is why we are pleased to announce the start of our official Bug Bounty Program as of November 1. The more eyes on the code the better!

    From today, we will start offering rewards for bugs or security flaws identified on Lisk Core and reported to us according to the guidelines included in this blog post. Bug bounty tiers will be assessed and rated by our security team along the following scale (all bounties are priced in Euros, but paid out in LSK):


    • LOW: €200
    • MEDIUM: €1500
    • HIGH: €2500–5000
    • CRITICAL: Determined on a case-by-case basis

    In order to be eligible for the Bug Bounty Program:

    • Send an in-depth explanation via email to [email protected], along with your estimation of the severity of the bug based on the tiers above. We will only accept submissions through this email — bugs reported via GitHub, or any other channel will not be accepted.
    • Do not maliciously initiate an exploit on the Lisk network.
    • Do not disclose the vulnerability publicly on any channels prior to authorization from the Lisk team.

    Please note, the Lisk Bounty Program is not open to current or previous Lightcurve employees or their associates, we may require additional information from the bounty applicant to verify this.

    Be aware that this segment of the Bug Bounty Program concerns issues identified in Lisk Core. In 2019 we will extend it further to accommodate the full suite of our products. Let’s build the future together!

    The Lisk Team

  • Lisk (LSK) Release v1.2.0-rc.2

    Source Code:


  • Lisk (LSK) Release Version 1.3.0-rc.0



  • Lisk-hub Pre Release Version 1.7.0-beta.1

    Closed issues:

    • Update package.json to include node v6.15.0 #1526
    • Test against lisk/core:1.3.0 #1519
    • Login: Cant login to custom node if no changes in url has been made #1513
    • Change snapshoted database owner to lisk #1509
    • Update/fix send/steps component with the changes made in Hub 1.6.0 #1501
    • Implement bright and monochrome background #1494
    • Create standalone Request page #1493
    • Set discard old builds property in Jenkinsfile #1488
    • Add engines property to pacake.json to avoid using a problematic node version #1487
    • Enable component tests in Jest #1479
    • Comma in vote weight #1477
    • Setup coverage checks for Jest tests #1464
    • Remove all references to karma/mocha tests #1463
    • Fix src/components/referenceInput/index.css file, variables doesn't exist #1460
    • Refactor hardware wallet login #1438
    • Migrate tests from Mocha to Jest #1429
    • Add feedback to the sidebar #1410
    • Rename activePeer to liskAPIClient #1404
    • Setup eslint checks for code complexity #1383
    • Support send transaction with HW wallet - Child of #1101 #1317
    • Create new set of e2e tests #1305
    • delegateCache in localStorage have undefined object property #1296
    • Refactor TransactionsDetailView component #1282
    • Second passphrase registration: Ugly timestamp error #1278
    • Goal e2e-test should fail with error message in case dev goal was not started #881
    • Typo "regiser-delegate" should be "register-delegate" #840
    • Old assets not cleaned up in Jenkins runs #1480
    • Enable component tests in Jest L106-L115 #1471
    • Enable redux tests in Jest #1461
    • Enable component tests in Jest L86-L95 #1441
    • Enable component tests in Jest L76-L85 #1437
    • Enable component tests in Jest L66-L75 #1436
    • Enable component tests in Jest L56-L65 #1435
    • Enable component tests in Jest L46-L55 #1434
    • Enable component tests in Jest L36-L45 #1433
    • Enable api utils tests in Jest #1432
    • Enable electron-related tests in Jest #1431
    • Enable util tests in Jest #1430
    • Move send component steps into one folder #1419
    • Passphrase Creation unit tests fail randomly #1402
    • Ensure that all component names match their file/folder name #1395
    • boolean in place of function onClick and userAgent console errors #1263

    Merged pull requests:

    Source Code:


  • Lisk (LSK) Release Version 1.3.1

    Full Changelog

    Closed issues:

    • Update NodeJS to v8.14.0 #2601
    • DoS attack leads to exhaust node's memory, P2P layer #2611
    • Update lisk-newrelic version its Node.js update to v8.14.0 #2610
    • Update SocketCluster to version 14.3.3 #2609

    Merged pull requests:

    Source Code:


Log in to reply

Looks like your connection to Cryptocentral was lost, please wait while we try to reconnect.