EOS WiKi Bilingual News & Info Of EOS, Vote for us: eosdotwikibp

EOSIO1.4.3版本及EOSIO.CDT 1.4.0版本发布/EOSIO Version 1.4.3 and EOSIO.CDT Version 1.4.0 Release

E

译文/Translated:

今天我们很高兴发布EOSIO1.4.3版本和EOSIO.CDT 1.4.0版本

我们正持续收集社区成员在EOSIO构建应用的反馈,并将继续优化平台的开发者体验。

除了版本说明和文档,Block.one开发者关系团队与C++发展及公共传播团队合作,共同提供简单易懂的版本总结,囊括每个版本的特点及优势,以及对于我们平台的目标而言都含有哪些深意。

EOSIO1.4.3版本亮点:

EOSIO1.4.3版本是一次小型版本发布,包含对1.4版本的数个优化和漏洞修补。

失败的延迟交易在history_plugin结果中(#6220)
– 请注意,history_plugin在版本1.2.0中已过时,并正在接受此次修正,以部分支撑其生命周期
– history_plugin的搜索结果中有时包含了失败的延迟交易。由于它并没有保存收据状态,因此对历史API用户而言,并没有可靠的方式获知哪一种操作正在执行。查看#6214,了解详细讨论内容。
– 对于必须使用history_plugin的节点而言,这类交易可能发生误导结果,鼓励使用“重放区块链”,重新生成该插件数据库
– 这并不影响链的状态。这些错误的延迟交易仅通过此插件被误报。现已正确地从区块链的任一中间状态中移除了这些附加影响

如上述提及,若您担心history_plugin中延迟交易的误报,请使用“重放区块链”重新构建插件状态,详情参考:https://developers.eos.io/eosio-nodeos/docs/troubleshooting

EOSIO.CDT 1.4.0版本亮点:

生成ABI的Ricardian合约(#229)

目前,Ricardian合约的生成在EOSIO.CDT工具箱中是人工处理,非自动操作。EOSIO 1.4.0版本的发布以及Ricardian合约的革新让我们能为您提供一款简化的工具,自动抽取生成Ricardian合约所需的信息,以及特定智能合约的条款。此标准会不断演进,欢迎各位为我们提供此项功能的反馈。

内联操作的操作包装器(#229)

采用内联操作的最初方式是通过宏指令,但就开发者体验而言,它并非最理想的方式。在EOSIO.CDT 1.4.0中,您可以使用内联操作的简化语法,类似于常规函数调用。未来,它将让您能够公开头文件中的操作包装器,允许跨智能合约的简单交互。其他智能合约开发者将能够简单地参考和调用这些操作包装器。

新类型(#229#236

EOSIO.CDT 1.4.0引用了二进制扩展类型。作为智能合约开发者,您有时或许需要为您的智能合约操作添加新的参数或提高稳定结构,但您或许希望保持已与智能合约交互但尚未更新的应用程序的向后兼容性。

在EOSIO.CDT 1.4.0版本之前,您可以添加新的参数并将您的智能合约重新上传到链上。但它会破坏不遵循更新参数集的应用程序。

二进制扩展让需要不断进行体系结构更新的操作和表结构不断演进自身结构。我们使用abigen为二进制扩展添加了ABI支持(将自动识别abigen)。

同时添加了eosio::fixed_bytes<T>和aliases eosio::digest160/256/512类型。这些用以功能性替换 eosio::fixed_key<T>(已被标记为弃用)和替代capi_checksum160/256/512的C++。

EOSIO.CDT的其他Dockerfile(#206)

我们为EOSIO.CDT容器添加了Dockerfile的支持。

Eosio-abidiff(#229)

我们正继续引进新型工具,让您能够用此功能提供追踪生成的ABI文件中的差异。该工具将为您提供一份有关ABI文件不同版本之间结构性差异的报告。

EOSIO.CDT 1.4.0版本发布完整列表:

保持连接

若您有兴趣提供反馈,并与我们的团队更加密切合作,共同改善EOSIO,请向我们开发者团队发送邮件: developers@block.one。您也可以在EOSIO开发者门户订阅我们的邮件列表,获得更多更新信息。我们很高兴将继续为EOSIO的开发者们完善软件的使用,我们将持续为最具可扩展性的区块链开发奠定坚实的基础。

原文/Original:

Today we are pleased to announce the release of EOSIO V1.4.3 and EOSIO.CDT V1.4.0.

We are continually collecting feedback from community members who are building applications on EOSIO and are constantly seeking to improve the developer experience on the platform.

In addition to release notes and documentation, the Block.one Developer Relations team — in coordination with the C++ Development and Public Communications teams — will provide easy-to-digest summaries of the features and benefits of each release and their implications on our goals for the platform.

Highlights of EOSIO V1.4.3:

EOSIO V1.4.3 is a scheduled minor release containing various improvements and bug fixes for EOSIO V1.4.

  • Failed deferred transactions were in history plugin results (#6220)
  • – Please note, the history_plugin was DEPRECATED in version 1.2.0and is receiving this fix as part of the support for that lifecycle

– The history_plugin sometimes included failed deferred transactions in its search results. Since it doesn’t store receipt status, there wasn’t a reliable way for users of the history API to know which actions were executed. See #6214 for detailed discussion.

– Nodes which have to use the history_plugin and are concerned that this class of transaction may cause misleading results are encouraged to regenerate that plugins database using — replay-blockchain

– This does not affect the state of the chain. These failed deferred transactions were merely being misreported through this plugin. Their side-effects were correctly removed from any intermediate state of the blockchain

  • Trusted producer should be configured via cfg and cli (#6219)
  • Print config.ini & data-dir nodeos is using at launch (#6222)
  • Restore eosio root ilog (#6253)

As mentioned above, if you are concerned with misrepresentation of deferred transactions in the history_plugin, please reconstruct that plugin’s state using — replay-blockchain as referenced in https://developers.eos.io/eosio-nodeos/docs/troubleshooting.

Highlights in EOSIO.CDT V1.4.0:

Ricardian contracts for ABI generation (#229)

Currently, the generation of Ricardian contracts has been a manual process with no automation in the EOSIO.CDT toolset. With the release of EOSIO.CDT 1.4.0 and the evolution of our Ricardian contract standard we are providing you with a simplified tool to automatically extract information needed for the generation of Ricardian contracts and clauses for a given smart contract. This is an evolving standard and we welcome feedback on this functionality.

Action wrapper for inline actions (#229)

The original way of working with inline actions was through a macro, which was not optimal in terms of the developer experience. In EOSIO.CDT 1.4.0 you can use a simplified syntax for inline actions similar to regular function calls. In the future, it will allow for an easy cross smart contract interactions by allowing you to expose the action wrappers in the header files. These action wrappers can be referenced and called by other smart contract developers in an easy way.

New types (#229#236)

EOSIO.CDT V1.4.0 introduces binary extensions type. As a smart contract developer, sometimes you may need to add new parameters to your smart contract actions or enhance a table structure, but you may want to maintain backward compatibility with applications that already interact with your smart contract and are not updated yet.

Prior to EOSIO.CDT V1.4.0 you could add new parameters and re-upload your smart contract to the chain. However, it would break applications that do not follow an updated parameters set.

Binary extensions allow for an evolving architecture of the actions and table structures that need an architectural upgrade over time. We have added ABI support for the binary extensions using — abigen that will be picked up automatically.

eosio::fixed_bytes<T> and type aliases eosio::digest160/256/512 have also been added. These serve as functional replacements for eosio::fixed_key<T> (which has been marked deprecated) and as C++ alternatives to capi_checksum160/256/512.

Additional Docker file for EOSIO.CDT (#206)

We’ve added support for Docker file for EOSIO.CDT container.

eosio-abidiff (#229)

We are introducing a new tool that provides you with functionality to track differences in the generated ABI files. The tool will provide you with a report of structural differences between different versions of the ABI files.

Full list of EOSIO.CDT 1.4.0 Release issues:

  • Ricardian import support (#229)
  • Binary extensions (#229)
  • Variant types (#229)
  • Action/variant action wrapper (#229)
  • ABI generation for map, set, tuple, std::pair, general template types (#208)
  • Additional Docker file for EOSIO.CDT (#206)
  • Various bugfixes and performance improvements (#244#200#164#236#233)

Stay Connected

If you are interested in providing feedback and working more closely with our team to improve EOSIO for the community, you can send our developer relations team an email at developers@block.one. You can also hear about future updates by subscribing to our mailing list on the EOSIO Developer Portal. We are excited to be continually improving the usability of the software for EOSIO developers as we continue laying a foundation for the most scalable blockchain development.

原文链接/Original URL:

https://medium.com/eosio/eosio-version-1-4-3-and-eosio-cdt-version-1-4-0-release-6542a82bcbe8

About the author

By user
EOS WiKi Bilingual News & Info Of EOS, Vote for us: eosdotwikibp

Recent Posts