luniehq / lunie Goto Github PK
View Code? Open in Web Editor NEWLunie is staking, simplified ✨
Home Page: https://lunie.io
License: Apache License 2.0
Lunie is staking, simplified ✨
Home Page: https://lunie.io
License: Apache License 2.0
Version:
Tendermint: 0.11.1-d4634dc6
Basecoin: 0.7.1-6c667b8
Baseserver: 0.7.1-6c667b8
Cosmos-ui: 9f45165
Steps:
npm i
npm run local
Error:
➜ cosmos-ui git:(test-fix) ✗ npm run local
> [email protected] local /Users/adrian/Code/cosmos/cosmos-ui
> npm run testnet local
> [email protected] testnet /Users/adrian/Code/cosmos/cosmos-ui
> node tasks/testnet.js "local"
Starting webpack-dev-server...
webpack fallbackLoader option has been deprecated - replace with "fallback"
webpack loader option has been deprecated - replace with "use"
webpack Project is running at http://localhost:9080/
webpack webpack output is served from /
Content not from webpack is served from /Users/adrian/Code/cosmos/cosmos-ui/app/dist
webpack (node:499) DeprecationWarning: loaderUtils.parseQuery() received a non-string value which can be problematic, see https://github.com/webpack/loader-utils/issues/56
parseQuery() will be replaced with getOptions() in the next major version of loader-utils.
webpack Hash: 2ae48ca3a59297d28723
Version: webpack 2.7.0
Time: 14284ms
Asset Size Chunks Chunk Names
fonts/fontawesome-webfont.eot 166 kB [emitted]
imgs/fontawesome-webfont.svg 444 kB [emitted] [big]
fonts/MaterialIcons-Regular.ttf 128 kB [emitted]
fonts/MaterialIcons-Regular.woff 57.6 kB [emitted]
fonts/MaterialIcons-Regular.woff2 44.3 kB [emitted]
fonts/fontawesome-webfont.ttf 166 kB [emitted]
fonts/fontawesome-webfont.woff2 77.2 kB [emitted]
fonts/fontawesome-webfont.woff 98 kB [emitted]
renderer.js 11.2 MB 0 [emitted] [big] renderer
index.html 1.63 kB [emitted]
chunk {0} renderer.js (renderer) 3.87 MB [entry] [rendered]
[6] ./app/~/babel-runtime/helpers/extends.js 544 bytes {0} [built]
[46] ./app/~/babel-runtime/regenerator/index.js 49 bytes {0} [built]
[380] ./app/src/renderer/main.js 2.52 kB {0} [built]
[381] (webpack)-dev-server/client?http://localhost:9080 5.83 kB {0} [built]
[382] (webpack)/hot/dev-server.js 1.57 kB {0} [built]
[446] ./app/~/strip-ansi/index.js 161 bytes {0} [built]
[452] ./app/src/renderer/node.js 1.85 kB {0} [built]
[453] ./app/src/renderer/routes.js 3.01 kB {0} [built]
[611] ./~/loglevel/lib/loglevel.js 6.74 kB {0} [built]
[846] ./~/vuelidate/lib/index.js 14 kB {0} [built]
[863] (webpack)-dev-server/client/overlay.js 3.6 kB {0} [built]
[864] (webpack)-dev-server/client/socket.js 856 bytes {0} [built]
[866] (webpack)/hot nonrecursive ^\.\/log$ 160 bytes {0} [built]
[867] (webpack)/hot/log-apply-result.js 1.02 kB {0} [built]
[896] multi (webpack)-dev-server/client?http://localhost:9080 webpack/hot/dev-server ./app/src/renderer/main.js 52 bytes {0} [built]
+ 882 hidden modules
Child html-webpack-plugin for "index.html":
chunk {0} index.html 542 kB [entry] [rendered]
[0] ./~/lodash/lodash.js 540 kB {0} [built]
[1] ./~/html-webpack-plugin/lib/loader.js!./app/index.ejs 2.2 kB {0} [built]
[2] (webpack)/buildin/module.js 517 bytes {0} [built]
webpack webpack: Compiled successfully.
Starting electron...
(network path: ./app/networks/local)
electron root exists (/Users/adrian/.cosmos-ui-dev)
electron backing up data to "/Users/adrian/.cosmos-ui-dev_backup_1"
electron initializing data directory (/Users/adrian/.cosmos-ui-dev)
electron spawning /Users/adrian/go/bin/basecoin with args ""init" "1B1BE55F969F54064628A63B9559E7C21C925165" "--home" "/Users/adrian/.cosmos-ui-dev""
electron Error: Initialization of basecoint failed:
at /Users/adrian/Code/cosmos/cosmos-ui/app/src/main/index.js:384:13
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:109:7)
at Module.runMain (module.js:607:11)
at run (bootstrap_node.js:431:7)
at startup (bootstrap_node.js:155:9)
at bootstrap_node.js:551:3
exited electron app/src/main/index.dev.js 1
not certain this is a real issue but thought I would log it just in case. @mappum @faboweb
happens when running the tests.
(node:7407) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 uncaughtException listeners added. Use emitter.setMaxListeners() to increase limit
https://nodejs.org/docs/latest/api/events.html#events_emitter_setmaxlisteners_n
As a user
I want to have one source of information and interaction for all my blockchain relevant information
So that I take use of the full inter-blockchain communication capabilities cosmos provides.
Idea:
Questions:
As a user
I want to be able to send my tokens to a specified account
so that ... .
AC:
Idea:
We will eventually need to support running nodes on multiple zones. This will also involve updating the relevant UIs to work for multiple chains (e.g. showing sync progress for each chain in footer, selecting chain when delegating or sending, showing which chain different wallet balances are on, etc.)
Currently the application fails if the genesis.json provides another hash then tendermint expects. What should be the process if this happens?
Example commands to run with different genesis.json
files.
npm run local
npm run dev <link to json>
npm run testnet <name of testnet in testnets repo>
We'll need a UI for this later too, but it's not a priority.
As a user
I want to be able to see the status of the blockchain network
So that [I can see if there are enough nodes to securely facilitate my transaction?]
AC:
Notes:
I as user
Want to be on the production system
So that I can participate in the actual cosmos network.
AC:
The active denomination on the send page (even after clicking on the button) is not identifiable
The path for the genesis.json on GitHub is wrong for the light-client.
Removing folders on Windows sometimes fails for several reasons.
I created the method rmdir.js
to handle this better.
It should be checked if this is still needed and if it could be done cleaner.
As a user
I don't want to have long synchronization times when I open the app
So I that I can check balances or interact with the blockchain when I want to immediately.
AC:
Note
As a user
I want to have an overview of my balances in the cosmos network
so that I have easy access to the knowledge of my values/tokens in the network.
AC:
As a developer
I want to be able read consistent code
so that I can concentrate on creating value.
AC:
Had to switch to another page then switch back to update the balances.
I as a developer
Want to remove webpack from the project
So that I have less steps building the project and have better stacktraces leading to faster development.
AC:
The refresh button on the balance page was implemented, but there was no design applied.
$ node -v
v8.7.0
$ npm run local
> [email protected] local /home/ethan/vue/cosmos-ui
> npm run testnet local
> [email protected] testnet /home/ethan/vue/cosmos-ui
> node tasks/testnet.js "local"
module.js:529
throw err;
^
Error: Cannot find module 'event-to-promise'
at Function.Module._resolveFilename (module.js:527:15)
at Function.Module._load (module.js:476:23)
at Module.require (module.js:568:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (/home/ethan/vue/cosmos-ui/tasks/runner.js:7:15)
at Module._compile (module.js:624:30)
at Object.Module._extensions..js (module.js:635:10)
at Module.load (module.js:545:32)
at tryModuleLoad (module.js:508:12)
at Function.Module._load (module.js:500:3)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] testnet: `node tasks/testnet.js "local"`
npm ERR! Exit status 1
Title.
To not DDoS our services we should not poll information every second. The idea is to have either refresh buttons on the required views or poll slowly like every 5s.
To test compatibility we check the version in the app/package.json against a saved one. This will probably never change so we should check against the top-level package.json.
As a user
I want to be able to add multiple accounts to the wallet
so that I can be more anonymous.
AC:
Note:
As a user
I want to manually select to create a new account or restore an existing one
So that I feel secure about which account I am interacting with
AC
Currently the wallet doesn't run on windows.
Every second run of npm run testnet
I get a 'genesis has changed' and a new backup is created.
The back button behavior is not consistent in the application. Sometimes it is there, sometimes it isn't. It also does not work like expected (going back to the last view) in some cases.
We have node_modules in root and in app/. This creates overhead while installing and is unpractically for testing as testing is done from root.
As a user
I want to have access to my transaction history
So I am able to review past transactions for malicious transactions and to be able to tie transactions to a certain time and user/account.
AC:
Note:
I get this error in my terminal when I run
open cosmos-ui.app/Contents/MacOS/cosmos-ui
/Users/pz/Projects/cosmos-ui/builds/cosmos-ui-darwin-x64/cosmos-ui.app/Contents/MacOS/cosmos-ui; exit
Last login: Tue Nov 14 09:14:25 on ttys000
pz@mbp ~> /Users/pz/Projects/cosmos-ui/builds/cosmos-ui-darwin-x64/cosmos-ui.app/Contents/MacOS/cosmos-ui; exit
(node:6399) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 2): TypeError: Path must be a string. Received undefined
(node:6399) DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Functionality seems to be broken:
As a user
I want to be able use the wallet without obvious errors
so that I I don't feel frustrated using Cosmos.
AC:
We developers want to know if there is a baseserver update we are missing.
As a user
I don't want to have long synchronization times when I open the app
So I that I can check balances or interact with the blockchain when I want to immediately.
AC:
Note
We would like to get the status information of the connected remote node and its address from baseserver.
As a user
I want to be able to select a blockchain-network
So I am able switch between production- and test-networks.
AC:
Note:
As a user
I want to be able to delegate my atoms to a validator
so that I can support the network in validation and earn commission.
AC:
Note:
We need a CI to enforce tests being run and code to be well formatted.
As a developer
I want to have a persistent log
So that I can trace back errors in production
When the the light-client disconnects for some time we need to provide it again with information about the block-header. These information should probably come from several trusted sources. We should accept the new information if 2/3 of these trusted sources provide us with the same information.
Questions to @GaMarin
Errors in the renderer (the browser view) are not handled in any way by the electron main thread. If the view produces an error, the application fails silently.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.