This change
- Removes interface `log.Format`,
- Removes method `log.FormatFunc`,
- unexports `TerminalHandler.TerminalFormat` formatting methods (renamed to `TerminalHandler.format`)
- removes the notion of `log.Lazy` values
The lazy handler was useful in the old log package, since it
could defer the evaluation of costly attributes until later in the
log pipeline: thus, if the logging was done at 'Trace', we could
skip evaluation if logging only was set to 'Info'.
With the move to slog, this way of deferring evaluation is no longer
needed, since slog introduced 'Enabled': the caller can thus do
the evaluate-or-not decision at the callsite, which is much more
straight-forward than dealing with lazy reflect-based evaluation.
Also, lazy evaluation would not work with 'native' slog, as in, these
two statements would be evaluated differently:
```golang
log.Info("foo", "my lazy", lazyObj)
slog.Info("foo", "my lazy", lazyObj)
```
|
||
|---|---|---|
| .github | ||
| accounts | ||
| assets/images | ||
| bmt | ||
| build | ||
| cicd | ||
| cmd | ||
| common | ||
| compression/rle | ||
| consensus | ||
| console | ||
| containers/docker | ||
| contracts | ||
| core | ||
| crypto | ||
| docker | ||
| eth | ||
| ethclient | ||
| ethdb | ||
| ethstats | ||
| event | ||
| genesis | ||
| internal | ||
| les | ||
| light | ||
| log | ||
| metrics | ||
| miner | ||
| mobile | ||
| node | ||
| p2p | ||
| params | ||
| rlp | ||
| rpc | ||
| swarm | ||
| tests | ||
| trie | ||
| XDCx | ||
| XDCxDAO | ||
| XDCxlending | ||
| .dockerignore | ||
| .gitattributes | ||
| .gitignore | ||
| .travis.yml.bak | ||
| COPYING | ||
| COPYING.LESSER | ||
| Dockerfile | ||
| Dockerfile.bootnode | ||
| Dockerfile.node | ||
| go.mod | ||
| go.sum | ||
| interfaces.go | ||
| Makefile | ||
| README.md | ||
XDPoSChain
XinFin XDPoSchain
Enterprise ready hybrid blockchain for global trade and finance
XinFin Hybrid Blockchain
XinFin Hybrid Blockchain is an Enterprise ready Blockchain for global trade and finance
Visit: XinFin.org Contribute: Developer Docs
XinFin Network XDPoS is community driven project to achieve the following
-
XinFin DPOS (XDPoS) consensus that selects 108 set of Masternodes to achieve a high throughput Energy efficient consensus with instant block finality
-
KYC Enforcement on Masternodes for Enterprise Adoption and compliance
-
Ability to port/relay limited set of data and transactions from privacy channels to public channel
-
Interoperability between applications hosted on Private Blockchains like Corda, Hyperledger, Quorum(JP Morgan) using relayers to XinFin Network
-
Customer Centric and consortium driven Governance to equally benefit the validators as well as providing comfort for large scale enterprise applications to be hosted on the Network. This achieves
-
Rapid Upgradability
-
DApps Standardisation for rapid commercialisation
-
Compliance with major global jurisdictions.
-
KYC for masternodes
OVERVIEW
To add a layer of KYC for masternodes in the current system and a sense of ownership amongst the masternodes hence tying such a cluster of masternodes to physical entity which can held accountable for its actions.
Design
We established a bidirectional connection between a candidate and its owner inorder to retrieve a candidate belonging to a specific owner & vice versa.
All the masternodes are recognized by the KYC of their owners and hence are considered as a single verified entity ( for eg. while voting for invalid KYC, only one vote is considered per such cluster )
The contract is very strict in handing out penalty for invalid KYC, it results loss of all funds invested in all of its candidates.
For eg. say A proposes condidates B,C,D by paying for its proposal cost. If at a later stage if some predecided amount of owners ( investors ) vote that a KYC for a A is invalid then A & all of its candidates (B,C,D) will lose their position & all their funds will be lost ( will remain with contract wallet ).
For developers
Continues integration & delivery
See https://github.com/XinFinOrg/XDPoSChain/tree/dev-upgrade/cicd
To contribute
Simple create a pull request along with proper reasoning, we'll get back to you.
Our Channels : Telegram Developer Group or XDC.Dev