Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

Merge develop into release/1.8.x #1154

Merged
merged 221 commits into from
Jul 7, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
221 commits
Select commit Hold shift + click to select a range
415ed63
Upgrade existing brew packages before installing new ones.
scottarnette Jan 4, 2021
3ed9210
Merge pull request #1025 from EOSIO/sa/fix-brew-dev
scottarnette Jan 4, 2021
145e917
correct the link to built_in_types to be a fixed one for develop bran…
Jan 5, 2021
2f2d840
resolves #818
Jan 5, 2021
80238a4
Add additional warnings to eosio_exit annotations
vzqzhang Jan 8, 2021
a946585
initial fix for jira issue EPE-450
bogniq Dec 31, 2020
ec9dd0c
add field for internal contract name
bogniq Jan 8, 2021
5bacfcd
only output error when --abigen is set; code cleanup
bogniq Jan 10, 2021
245b5c1
add back wrongly deleted statement; rephrase error message
bogniq Jan 10, 2021
66dc056
replace real_contract_name by parsed_contract_name
bogniq Jan 11, 2021
06e3d4d
update links and bullet list at the bottom
Jan 12, 2021
5fc62c1
fix informational
Jan 12, 2021
396d251
fix grammar error
vzqzhang Jan 12, 2021
c4dd2d3
add html markup to the comment
vzqzhang Jan 12, 2021
9f12f32
English improvement
Jan 13, 2021
68fd8d0
delete the `$` from featured command lines
Jan 14, 2021
7300243
Merge pull request #1033 from EOSIO/docs/various-updates
Jan 14, 2021
687bd16
Merge pull request #1028 from EOSIO/docs/dev-improvements
Jan 15, 2021
7f33986
add unit tests; clean up code
bogniq Jan 15, 2021
c7ad21c
fixes #819
Jan 20, 2021
4042ec7
include c api (*.h files) and tell doxygen to ignore the __attribute_…
Jan 20, 2021
0d1f5a2
Merge pull request #1030 from EOSIO/add_warning_eosio_exit
vzqzhang Jan 20, 2021
50be79f
Merge pull request #1035 from EOSIO/docs/various-updates
Jan 22, 2021
1ef65f1
fix annotations for kv map, kv table and multi index
Jan 26, 2021
b5ee37a
for this particular case use @remark instead of @details
Jan 26, 2021
5745a72
remove redundant annotations froom db.h file
Jan 26, 2021
c33647a
updates based on peer review (Philip)
Jan 27, 2021
ca5d845
Merge pull request #1039 from EOSIO/docs/various-updates
Jan 28, 2021
fbaed18
simplify the contracts for abigen-fail testing
bogniq Jan 29, 2021
305b1ad
Merge pull request #1029 from EOSIO/qy_abi_not_generated_error
nksanthosh Feb 1, 2021
9bdfdc7
add troubleshooting item
Feb 3, 2021
3a67714
correction
Feb 3, 2021
cca3d05
correction
Feb 3, 2021
802169f
the `@cond IMPLEMENTATIONS` was preventing doxygen from parsing the a…
Feb 3, 2021
7479baa
Delete old files from Docker dir & add script for new binary
cocho-gore Feb 3, 2021
4af93eb
Create new Dockerfile and update reference to it
cocho-gore Feb 3, 2021
b9f7a30
add step to the pipeline
cocho-gore Feb 3, 2021
9e52a29
Use filenames consistent with the eos repo
kj4ezj Feb 3, 2021
ffaa858
Add log folding groups + POSIX newline at EOF
kj4ezj Feb 3, 2021
be242af
Remove curl install from dockerfile & updated to the new ECR repo name
cocho-gore Feb 3, 2021
ba58fe2
Update apt to apt-get and POSIX & changed to tester fleet in pipeline
cocho-gore Feb 5, 2021
6229477
Fix whitespace
kj4ezj Feb 5, 2021
a5d9aae
Merge pull request #1046 from EOSIO/egonz/AUTO-457
kj4ezj Feb 5, 2021
4bb3f56
use console and sh
Feb 9, 2021
f4159c1
Merge pull request #1044 from EOSIO/docs/various-updates
Feb 9, 2021
371978e
fixes #971 [docs] Deferred transaction collisions and NO_DUPLICATE_DE…
Feb 10, 2021
e5c8571
small update/correction for callout title
Feb 10, 2021
66737cd
update based on review feedback
Feb 10, 2021
8542dee
Merge pull request #1055 from EOSIO/docs/various-updates
Feb 18, 2021
a46cde2
add testing smart contract for read-only query
bogniq Feb 26, 2021
3e74845
Adding ubuntu 16.04, centos 8, and amazon_linux 2 support
venu-block1 Feb 8, 2021
1273916
Updating toolchain tests for centos 8
venu-block1 Feb 9, 2021
0c9afb7
More toolchain test script changes for centos 8
venu-block1 Feb 9, 2021
1783cd7
More rpath changes for testing
venu-block1 Feb 17, 2021
2e853dd
Adding clang 9 libc++.so to ubuntu 16.04 package, and more rpath changes
venu-block1 Feb 18, 2021
3a69956
Fixing buildkite errors
venu-block1 Feb 18, 2021
f3ba70e
Adding clang 9 libc++abi.so to ubuntu 16.04 package
venu-block1 Feb 18, 2021
d4e22d6
Fixing buildkite errors
venu-block1 Feb 18, 2021
9e3dee8
Checking presence of OS variable for deb package, as argument of gene…
venu-block1 Mar 1, 2021
41860ad
Adding ubuntu 20.04 package builder
venu-block1 Mar 2, 2021
f80d714
Merge pull request #1062 from EOSIO/epe-695_develop_add_os_support
jgiszczak Mar 3, 2021
2839f32
add FunctionDecl visitor
bogniq Mar 9, 2021
740a9c6
add security group support
huangminghuang Mar 10, 2021
0c305e5
Add read only query test contract as a part of read only query TDD.
softprofe Mar 10, 2021
d6af6b7
fix identation
huangminghuang Mar 12, 2021
51233fd
Add host functions test actions. not finished, continue next week
softprofe Mar 13, 2021
2abede0
Add test action for some host functions
softprofe Mar 16, 2021
f3c7af6
add implementation for read-only checking
bogniq Mar 16, 2021
c3dc38f
Merge pull request #1065 from EOSIO/huangminghuang/security-group
brianjohnson5972 Mar 18, 2021
0d0d176
add checking for extern c function
bogniq Mar 19, 2021
70b08b6
fix if condition for process_function
bogniq Mar 22, 2021
22d7d23
[docs] Deprecate [[eosio::action]] use for structs
Mar 24, 2021
b231e24
add option -warn-action-read-only
bogniq Mar 24, 2021
68b6fca
[docs] fix typo "privious"->"previous"
Mar 25, 2021
f3f2c5b
Update how-to-instantiate-a-multi-index-table.md
Mar 25, 2021
439bb39
Add test case for inline host functions.
softprofe Mar 25, 2021
52cebae
Add alias test for host functions
softprofe Mar 25, 2021
1615f77
fix cmake_args
bogniq Mar 26, 2021
29d031c
install ccache and turn on LLVM_CCACHE_BUILD
bogniq Mar 29, 2021
98f9dd0
turn off LLVM_CCACHE_BUILD
bogniq Mar 29, 2021
3502972
add support for CDT_WARN/ERROR in codegen
bogniq Mar 29, 2021
087fa9b
Add two more chained indirect call test actions
softprofe Mar 30, 2021
602b057
set git branch for submodule eosio_llvm
bogniq Mar 30, 2021
c99f002
add more checkings; clean up code
bogniq Mar 31, 2021
ed88df4
Merge pull request #1080 from EOSIO/qy-fix-llvm-ccache
nksanthosh Mar 31, 2021
486c04e
update commit hash for submodule eosio_llvm
bogniq Apr 1, 2021
529e50b
Merge branch 'develop' into qy-read-only-action
bogniq Apr 1, 2021
7544797
Move test contract files so as to easily used by team.
softprofe Apr 1, 2021
17c82b0
Merge remote-tracking branch 'origin/keke_epe748' into qy-read-only-a…
bogniq Apr 2, 2021
ac2c16b
updates to match newest how to template
Apr 2, 2021
988fec9
add the forgotten summary section
Apr 2, 2021
b5e2872
updates -- take 3
Apr 2, 2021
c3eb5e1
updates take 3
Apr 2, 2021
9314f35
add toolchain tests
bogniq Apr 2, 2021
2818077
Change flag to read_only for get() action
softprofe Apr 2, 2021
e96c14e
Merge remote-tracking branch 'origin/keke_epe748' into qy-read-only-a…
bogniq Apr 2, 2021
d214537
how to action wrapper
Apr 6, 2021
edb426b
cosmetic updates
Apr 6, 2021
4ff7792
add regex support for toolchain tester; fix string compare
bogniq Apr 6, 2021
9e2e8a6
break up name_tests into smaller tests, rename string_tests, remove s…
praphael Apr 7, 2021
ec018c2
Using get_self instead of "eosio"_n so as to decouple tables with "eo…
softprofe Apr 7, 2021
3c77cf7
Merge remote-tracking branch 'origin/keke_epe748' into qy-read-only-a…
bogniq Apr 7, 2021
3d0cbbf
how to write an abi file it is actually a tutorial not a how to
Apr 8, 2021
0d210bd
fix bug in MacOS where string_tests1 failed
praphael Apr 12, 2021
33556b8
Brew upstream package provider changed. We need to run an update befo…
Apr 12, 2021
b2c42e9
Merge pull request #1085 from EOSIO/sa/fix-broken-brew-dev
scottarnette Apr 12, 2021
e3b033f
Merge branch 'develop' of github.com:EOSIO/eosio.cdt into pdr_epe-164
praphael Apr 12, 2021
5b9b142
Merge branch 'develop' into qy-read-only-action
bogniq Apr 12, 2021
075228d
condensed name_tests
praphael Apr 13, 2021
5436303
removed static keyword
praphael Apr 13, 2021
5708494
updates based on code review
Apr 14, 2021
6ed716e
updates on the payer how to
Apr 14, 2021
6ac1992
Merge pull request #1083 from EOSIO/docs/how-tos_new-template
Apr 14, 2021
eb3d84c
adding improvementes based on code review
Apr 15, 2021
c1ff25e
Merge pull request #1076 from EOSIO/docs/deprecate_action_attr_for_st…
Apr 15, 2021
88ba281
Merge pull request #1078 from EOSIO/docs/fix_typo
Apr 15, 2021
b84758e
add static_asser to test constexpr
praphael Apr 15, 2021
4364d95
Merge branch 'develop' of github.com:EOSIO/eosio.cdt into pdr_epe-164
praphael Apr 15, 2021
e038093
fixed formatting in static_assert
praphael Apr 15, 2021
7ec9ff3
Merge pull request #1084 from EOSIO/pdr_epe-164
praphael Apr 15, 2021
3bcf551
check local function pointers
bogniq Apr 19, 2021
61a24c0
fix read-only action calling issue
bogniq Apr 19, 2021
d8a16d3
Merge branch 'develop' into qy-read-only-action
bogniq Apr 19, 2021
17a0a29
check global function pointer for write function
bogniq Apr 22, 2021
e4beb61
check class data members for write funciton
bogniq Apr 26, 2021
add76f9
fix function pointer reassignment
bogniq Apr 26, 2021
f83a8e3
[docs] update Info->info
Apr 28, 2021
f5cef84
code clean-up for different statement types
bogniq Apr 29, 2021
9333e10
initial fix for nested std::map
bogniq Apr 30, 2021
dd450d9
Merge pull request #1091 from EOSIO/docs/Info-to-info
May 3, 2021
545dcc3
correct informational callouts
May 5, 2021
865d79f
Merge pull request #1095 from EOSIO/docs/dev-fix_callouts
May 5, 2021
eec73cc
fix ending newline
bogniq May 9, 2021
0edea87
add support for multiple declarations; clean up code
bogniq May 10, 2021
ba55063
fix json format
bogniq May 10, 2021
41c5b48
change -v option to call clang-9
bogniq May 12, 2021
6ac7e07
Merge pull request #1098 from EOSIO/qy-opt-v-epe385
bogniq May 13, 2021
69f6916
Merge branch 'develop' into qy-read-only-action
bogniq May 18, 2021
ef00c9d
remove system header checking; use C name to find write host function
bogniq May 21, 2021
bf9c37a
change llvm branch to eosio
bogniq May 24, 2021
bef15f5
Merge pull request #1068 from EOSIO/qy-read-only-action
bogniq May 24, 2021
53cee3a
take 1
May 27, 2021
51d91e0
[[Info -> [[info
May 27, 2021
c2a45aa
multi index -> multi-index
May 27, 2021
81e9eb0
[[Info -> [[info take 2
May 27, 2021
9c0df1b
take 2
May 27, 2021
e0495f1
take 4
May 27, 2021
4cfa19c
cosmetics: renames
May 27, 2021
e02ff1b
take 5
May 27, 2021
5fe54bb
take 6
May 27, 2021
2d0bb4f
Merge pull request #1093 from EOSIO/qy-map-nest-epe811
bogniq May 28, 2021
cd6593b
take 6
May 31, 2021
fcd12b6
almost done, a few more touch ups needed
Jun 1, 2021
c688de4
touchups.
Jun 1, 2021
654adf0
final touchups
Jun 1, 2021
21a1f32
Merge branch 'develop' of github.com:EOSIO/eosio.cdt into docs/how-to…
Jun 1, 2021
8ba0c80
Create sanitize.sh from eos:a7b5566/.cicd/helpers/general.sh
kj4ezj Jun 2, 2021
077bac7
Copy-pasta from eos:a7b5566/.cicd/create-docker-from-binary.sh
kj4ezj Jun 2, 2021
56ee415
Fix copy-pasta mistake
kj4ezj Jun 2, 2021
33fbf7e
Merge pull request #1112 from EOSIO/zach-rmi
kj4ezj Jun 3, 2021
9a674c5
[docs] dev: update eosio-cpp with -no-missing-ricardian-clause
Jun 3, 2021
c4cf7de
small corrections
Jun 3, 2021
a928b1a
updates based on feedback from peer review (Philip)
Jun 9, 2021
4eabc2a
property was used wrongly in many cases, for these cases the correct …
Jun 9, 2021
d6573e5
updates based on peer review (Philip) -- take 2
Jun 9, 2021
6ad099b
introduce Features menu item and under it the Transaction Sponsorship
Jun 9, 2021
3cff629
add callout for secondary indexes when table already exists.
Jun 9, 2021
4742be8
Update eosio-cpp.md
Jun 9, 2021
b0c4301
Merge pull request #1118 from EOSIO/docs/dev-eosio-cpp-new-option
Jun 9, 2021
5ce3c2a
updates based on peer review feedback
Jun 16, 2021
4a7a739
updates based on peer review (Philip)
Jun 17, 2021
814ddec
adding read-only queries
Jun 21, 2021
76ff5cc
update the cleos support
Jun 21, 2021
84d0eab
Add brew updater step.
williamblevins Jun 22, 2021
0b7b43a
updates after pr review
Jun 23, 2021
dd5544e
last changed based on review from Philip
Jun 23, 2021
2425328
Merge pull request #1109 from EOSIO/docs/how-tos_new-template
Jun 23, 2021
6dbf9ea
Merge pull request #1125 from EOSIO/develop_brew_updater
williamblevins Jun 23, 2021
5629019
Tests can run on lighter node pool.
williamblevins Jun 23, 2021
2703047
Merge pull request #1128 from EOSIO/develop_nodes
williamblevins Jun 23, 2021
ff8ead9
Ensure timeout can be overridden for macos package builder.
williamblevins Jun 23, 2021
2452801
Merge pull request #1132 from EOSIO/timeout_develop
williamblevins Jun 23, 2021
7d2d5a1
update after JG review
Jun 24, 2021
a7e73a6
renaming it to resource payer as the main name
Jun 24, 2021
43af091
Merge branch 'develop' of github.com:EOSIO/eosio.cdt into docs/dev-tr…
Jun 24, 2021
99cf716
clean up
Jun 24, 2021
9544bf2
correct the scope and code for multi-index table
Jun 24, 2021
4c0fb68
feature name should not be enclosed in ticks
Jun 24, 2021
3bb6f22
use italics for feature name
Jun 24, 2021
d2cae77
Merge pull request #1120 from EOSIO/docs/dev-trx-sponsorship
Jun 24, 2021
a34f23a
small correction based on peer review
Jun 25, 2021
d6ba5ad
Add version check test for eosio-cpp --version option.
williamblevins Jun 24, 2021
6ac7d48
Test file naming consistency and add unit_tests label.
williamblevins Jun 25, 2021
44c1f9a
Merge pull request #1140 from EOSIO/develop_version_check_test
williamblevins Jun 25, 2021
1ff55a9
Merge pull request #1138 from EOSIO/docs/how-to-correction
Jun 28, 2021
db5d3d4
Merge branch 'develop' into docs/dev/read-only-queries
Jun 29, 2021
a338b54
Merge pull request #1121 from EOSIO/docs/dev/read-only-queries
halsaphi Jun 30, 2021
afe867a
Backbone for ensure tag support in CDT.
Jun 29, 2021
f7456b0
Write macos script hashes and update pipeline file.
Jun 29, 2021
6c5c7e3
Fix path.
Jun 29, 2021
386bfcb
Try removing escapse characters.
Jun 29, 2021
aa71bc6
Correct ssh endpoint for mac-anka-fleet repo.
Jun 29, 2021
3417c04
Fix bug with catalina VM.
Jun 29, 2021
bab811a
Better naming for platforms.
Jun 29, 2021
80552b4
Use platforms in Mac steps.
Jun 29, 2021
a8c08fa
More accurate variable naming.
Jun 29, 2021
f3d869a
One more old docker dir instance updated.
Jun 29, 2021
0f0aef0
Rename script.
Jun 30, 2021
db792ee
Merge pull request #1142 from EOSIO/sa/anka-reuse-dev
scottarnette Jun 30, 2021
823239c
Add package test steps and scripts.
williamblevins Jul 1, 2021
fd35c06
Add support for SKIP_LINUX variable.
williamblevins Jul 1, 2021
cf9dabd
BUILDKITE_TEST_AGENT_QUEUE variable from eos pipeline isn't used in CDT.
williamblevins Jul 1, 2021
6d3ef72
Bugfix for dependency keys and artifact types.
williamblevins Jul 1, 2021
860d0b6
Merge pull request #1147 from EOSIO/develop_package_tests
williamblevins Jul 1, 2021
2b5b429
bump eosio_llvm submodule commit to head
bogniq Jul 2, 2021
4d4960e
Merge pull request #1151 from EOSIO/qy-fix-llvm-commit
bogniq Jul 2, 2021
60a5b9b
re-org the best practices menu with the feaures one
Jul 5, 2021
67b8a91
updates
Jul 5, 2021
07a34f3
Merge pull request #1152 from EOSIO/docs/dev-cdt_best_practices_rework
Jul 6, 2021
2c0deed
Revert "Merge pull request #1093 from EOSIO/qy-map-nest-epe811"
bogniq Jul 6, 2021
7a8728b
solve conflicts and merge
bogniq Jul 6, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
[submodule "eosio_llvm"]
path = eosio_llvm
url = /~https://github.com/eosio/llvm
branch = eosio
[submodule "libraries/native/softfloat"]
path = libraries/native/softfloat
url = /~https://github.com/EOSIO/berkeley-softfloat-3.git
8 changes: 4 additions & 4 deletions docs/02_installation/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ brew remove eosio.cdt
## Debian Package Install

```sh
wget /~https://github.com/EOSIO/eosio.cdt/releases/download/v1.8.0/eosio.cdt_1.8.0-1-ubuntu-18.04_amd64.deb
sudo apt install ./eosio.cdt_1.8.0-1-ubuntu-18.04_amd64.deb
wget /~https://github.com/EOSIO/eosio.cdt/releases/download/v1.8.0-rc1/eosio.cdt_1.8.0-rc1-ubuntu-18.04_amd64.deb
sudo apt install ./eosio.cdt_1.8.0-rc1-ubuntu-18.04_amd64.deb
```

## Debian Package Uninstall
Expand All @@ -35,8 +35,8 @@ sudo apt remove eosio.cdt
## RPM Package Install

```sh
wget /~https://github.com/EOSIO/eosio.cdt/releases/download/v1.8.0/eosio.cdt-1.8.0-1.el7.x86_64.rpm
sudo yum install ./eosio.cdt-1.8.0-1.el7.x86_64.rpm
wget /~https://github.com/EOSIO/eosio.cdt/releases/download/v1.8.0-rc1/eosio.cdt-1.8.0-rc1.el7.x86_64.rpm
sudo yum install ./eosio.cdt-1.8.0-rc1.el7.x86_64.rpm
```

## RPM Package Uninstall
Expand Down
1 change: 1 addition & 0 deletions docs/03_command-reference/eosio-cc.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,4 +71,5 @@ compiler options:
-sysroot=<string> - Set the system root directory
-v - Show commands to run and use verbose output
-w - Suppress all warnings
--warn-action-read-only - Issue a warning if a read-only action uses a write API and continue compilation
```
1 change: 1 addition & 0 deletions docs/03_command-reference/eosio-cpp.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ compiler options:
-v - Show commands to run and use verbose output
-w - Suppress all warnings
-no-missing-ricardian-clause - Defaults to false, disables warnings for missing Ricardian clauses
--warn-action-read-only - Issue a warning if a read-only action uses a write API and continue compilation
```

## Notes
Expand Down
46 changes: 46 additions & 0 deletions docs/05_features/10_resource_payer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
content_title: Resource Payer
---

## Overview

The *Resource Payer* feature, also known as *Transaction Sponsorship*, allows to specify the resource payer for a transaction. As a direct consequence the application developers have a simple and secure way to sponsor, or decline to sponsor, transactions on behalf of their users.

## Concept

Before the `EOSIO 2.2` version, the CPU and NET resource costs for transactions on EOSIO-based blockchains were paid by the end users of the application. This fact made attracting and onboarding new users difficult.

The *Resource Payer* feature makes it easier for both smart contract and full stack developers on EOSIO-based blockchains to allow their users to transact without having to pay for CPU and NET resource costs in a simple and secure manner. This new feature makes the process of onboarding new users straightforward.

Blockchain application developers can use the *Resource Payer* on any EOSIO-based blockchain that enables it via the newly introduced `RESOURCE_PAYER` upgrade protocol feature.

### Related Concepts

A [transaction](https://developers.eos.io/welcome/latest/glossary/index/#transaction) consists of one or more actions executed atomically on the blockchain which alter the state of the blockchain.

You need system resources, [CPU](https://developers.eos.io/welcome/latest/glossary/index/#cpu) and [NET](https://developers.eos.io/welcome/latest/glossary/index/#net), to be able to execute transactions.

The *Resource Payer* feature allows the application developers to designate the payer of the CPU and NET resources cost to a random blockchain [account](https://developers.eos.io/welcome/latest/glossary/index/#account).

The *Resource Payer* feature is not available by default. To enable the feature, the `RESOURCE_PAYER` upgrade protocol feature must be enabled. For more information about upgrading protocol features, read the [Consensus Protocol Upgrade Process](https://developers.eos.io/manuals/eos/latest/nodeos/upgrade-guides/1.8-upgrade-guide/#upgrade-process-for-all-eosio-networks-including-test-networks) documentation.

When you send the transaction to the blockchain, if you want to designate the resource payer, you must specify in the transaction definition the payer information which consists of the following:

* The payer account name
* The maximum CPU limit amount the payer supports expressed in microseconds
* The maximum NET limit amount the payer supports expressed in bytes

The resource payer information must be defined as a transaction extension and placed in the transaction’s extension list. For more details please see the examples provided in the following section.

## Examples

Find below one example that illustrate how to send transaction to the blockchain which contain resource payer information.

### EOSJS

To send a transaction to the blockchain using javascript via the `eosjs` library, follow the [How To Send A Transaction](https://developers.eos.io/manuals/eos/latest/cleos/how-to-guides/how-to-submit-a-transaction) steps and note in the json example the resource payer information set in the ``transaction_extensions`` field.

### Cleos

[[info | Cleos Support Will Be Available Starting With v2.2 RC2 Onwards]]
| The ability to send transaction with resource payer information using `cleos` will be added in the v2.2 RC2 release version.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
content_title: The eosio::binary_extension type
content_title: The eosio::binary_extension Type
---

Let's fully explain what the `eosio::binary_extension` type is, what it does, and why we need it for contract upgrades in certain situations.
Expand Down Expand Up @@ -327,7 +327,7 @@ struct [[eosio::table]] structure {
}
```

And their corresponding sections in the `.abi` files:
Find below their corresponding sections in the `.abi` files:

**binary_extension_contract.abi**

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
content_title: How to use native tester/compilation
content_title: Native Tester And Compilation
---

As of v1.5.0 native compilation can be performed and a new set of libraries to facilitate native testing and native "scratch pad" compilation. [`eosio-cc`](../03_command-reference/eosio-cc.md), [`eosio-cpp`](../03_command-reference/eosio-cpp.md) and [`eosio-ld`](../03_command-reference/eosio-ld.md) now support building "smart contracts" and unit tests natively for quick tests to help facilitate faster development \(note the default implementations of eosio `intrinsics` are currently asserts that state they are unavailable, these are user definable.\)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
content_title: Deferred transactions
content_title: Deferred Transactions
---

Deferred communication conceptually takes the form of action notifications sent to a peer transaction. Deferred actions get scheduled to run, at best, at a later time, at the producer's discretion. There is no guarantee that a deferred action will be executed.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ This guide provides instructions how to compile a smart contract using the comma

See the following code reference:

* The [`eosio-cpp`](https://developers.eos.io/manuals/eosio.cdt/latest/command-reference/eosio-cpp) tool.
* The [`eosio-cpp`](https://developers.eos.io/manuals/eosio.cdt/v1.8/command-reference/eosio-cpp) tool.

## Before you begin

Expand All @@ -32,11 +32,11 @@ Follow the following steps to compile your contract.
```

Where:
- `eosio-cpp` = Is the [`eosio-cpp`](https://developers.eos.io/manuals/eosio.cdt/latest/command-reference/eosio-cpp) tool.
- `eosio-cpp` = Is the [`eosio-cpp`](https://developers.eos.io/manuals/eosio.cdt/v1.8/command-reference/eosio-cpp) tool.
- `-abigen` = It instructs the `eosio-cpp` tool to generate ABI file.
- `../src/hello.cpp` = Is the input cpp source file to be compiled.
- `-o hello.wasm` = It instructs the `eosio-cpp` tool who to name the output wasm file.
- `-I ../include/` = It tells `eosio-cpp` tool what the include folder path is, in this particular case it is relative path.
- `-I ../include/` = It tells `eosio-cpp` tool what the include folder path is, in this particular case it is a relative path.

3. Verify the following two files were generated:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ content_title: How to compile a smart contract with CMake

## Overview

This guide provides instructions on how to compile a smart contract with CMake.
This guide provides instructions to compile a smart contract with CMake.

## Before you begin

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ This guide provides instructions how to perform authorization checks in a smart

See the following code reference guides for functions which can be used to implement authorization checks in a smart contract:

* function [has_auth(name n)](https://developers.eos.io/manuals/eosio.cdt/v1.8/namespaceeosio#function-has_auth)
* function [require_auth(name n)](https://developers.eos.io/manuals/eosio.cdt/v1.8/namespaceeosio/#function-require_auth-12)
* function [has_auth(name n)](https://developers.eos.io/manuals/eosio.cdt/latest/namespaceeosio#function-has_auth)
* function [require_auth(name n)](https://developers.eos.io/manuals/eosio.cdt/latest/namespaceeosio/#function-require_auth-12)
* function [require_auth2(capi_name name, capi_name permission)](https://developers.eos.io/manuals/eosio.cdt/v1.8/group__action__c#function-require_auth2)
* function [check(bool pred, ...)](https://developers.eos.io/manuals/eosio.cdt/v1.8/group__system/#function-check)
* function [check(bool pred, ...)](https://developers.eos.io/manuals/eosio.cdt/latest/group__system/#function-check)

## Procedure

Expand Down
2 changes: 1 addition & 1 deletion docs/06_how-to-guides/30_key-value-api/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ The Key-Value API provides a set of C++ classes and structures which facilitates

## Concept

The Key-Value API, or KV API, is a new option for developers to create datastore key value tables on-chain. KV API is more flexible than multi-index and allows developers to search the table in a more human-readable way, unlike multi-index tables where search is over 64-bit values.
The Key-Value API, or KV API, is a new option for developers to create datastore key value tables on-chain. KV API is more flexible than multi-index and allows developers to search for the table in a more human-readable way, unlike multi-index tables where search is over 64-bit values.

On top of flexibility, this new API has a simpler interface and it helps the developer to avoid complex C++ templates constructs.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,15 @@ To accomplish this task do the following:

See the following code reference:

* The [`kv::map`](https://developers.eos.io/manuals/eosio.cdt/v1.8/classeosio_1_1kv_1_1map) class.
* The [`kv::map`](https://developers.eos.io/manuals/eosio.cdt/latest/classeosio_1_1kv_1_1map) class.

## Before you begin

Make sure you have the following prerequisites in place:

* An EOSIO development environment, for details consult the [Get Started Guide](https://developers.eos.io/welcome/latest/getting-started-guide/index)
* A smart contract named `smrtcontract`
* A user defined type named `person`, which defines the data stored in the map
* A user defined type, `struct` or `class`, which defines the data stored in the map, named `person`

Refer to the following reference implementation for your starting point:

Expand Down Expand Up @@ -83,6 +83,4 @@ In conclusion, the above instructions show how to define and use a `Key-Value Ma

## Next Steps

The following option is available when you complete the procedure:

* You [can add values](30_how-to-upsert-into-kv-map.md) in the map object created.
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Make sure you have the following prerequisites in place:

* An EOSIO development environment, for details consult the [Get Started Guide](https://developers.eos.io/welcome/latest/getting-started-guide/index)
* A smart contract named `smrtcontract`
* A user defined type named `person`, which defines the data stored in the map
* A user defined type, `struct` or `class`, which defines the data stored in the map, named `person`
* A `kv map` object, name `my_map`, which stores objects of type `person`, with unique keys of type `int`

Refer to the following reference implementation for your starting point:
Expand Down Expand Up @@ -111,7 +111,5 @@ In conclusion, the above instructions show how to upsert into `Key-Value Map` (`

## Next Steps

The following options are available when you complete the procedure:

* [Verify](70_how-to-find-in-kv-map.md) if the newly inserted `person` actually exists in the map. To accomplish this task use the `find()` function of the `kv_map`.
* [Delete](40_how-to-delete-from-kv-map.md) the newly created or updated `person` from the map. To accomplish this task, use the `erase()` function of the `kv map`.
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Make sure you have the following prerequisites in place:

* An EOSIO development environment, for details consult the [Get Started Guide](https://developers.eos.io/welcome/latest/getting-started-guide/index)
* A smart contract named `smrtcontract`
* A user defined type named `person`, which defines the data stored in the map
* A user defined type, `struct` or `class`, which defines the data stored in the map, named `person`
* A `kv map` object, name `my_map`, which stores objects of type `person`, with unique keys of type `int`

Refer to the following reference implementation for your starting point:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Make sure you have the following prerequisites in place:

* An EOSIO development environment, for details consult the [Get Started Guide](https://developers.eos.io/welcome/latest/getting-started-guide/index)
* A smart contract named `smrtcontract`
* A user defined type named `person`, which defines the data stored in the map
* A user defined type, `struct` or `class`, which defines the data stored in the map, named `person`
* A `kv map` object, name `my_map`, which stores objects of type `person`, with unique keys of type `int`.

Refer to the following reference implementation for your starting point:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ Make sure you have the following prerequisites in place:

* An EOSIO development environment, for details consult the [Get Started Guide](https://developers.eos.io/welcome/latest/getting-started-guide/index)
* A smart contract named `smrtcontract`
* A user defined type named `person`, which defines the data stored in the map
* A user defined type, `struct` or `class`, which defines the data stored in the map, named `person`
* A `kv map` object, name `my_map`, which stores objects of type `person`, with unique keys of type `int`.

Refer to the following reference implementation for your starting point:
Expand Down Expand Up @@ -106,7 +106,5 @@ In conclusion, the above instructions show how to find an object in `Key-Value M

## Next Steps

The following options are available when you complete the procedure:

* [Update](30_how-to-upsert-into-kv-map.md) the `person` found.
* [Delete](40_how-to-delete-from-kv-map.md) the `person` found.
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Make sure you have the following prerequisites in place:

* An EOSIO development environment, for details consult the [Get Started Guide](https://developers.eos.io/welcome/latest/getting-started-guide/index)
* A smart contract named `smrtcontract`
* A user defined type named `person`, which defines the data stored in the map
* A user defined type, `struct` or `class`, which defines the data stored in the map, named `person`
* A `kv map` object, name `my_map`, which stores objects of type `person`, with unique keys of type `int`.

Refer to the following reference implementation for your starting point:
Expand Down Expand Up @@ -108,7 +108,5 @@ In conclusion, the above instructions show how to require the user to pay for th

## Next Steps

The following options are available when you complete the procedure:

* [Verify](70_how-to-find-in-kv-map.md) if the newly inserted `person` actually exists in the map. To accomplish this task use the `find()` function of the `kv_map`.
* [Delete](40_how-to-delete-from-kv-map.md) the newly created or updated `person` from the map. To accomplish this task, use the `erase()` function of the `kv map`.
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@ To accomplish this task, define the user type which will be stored in the `kv ta
Make sure you have the following prerequisites in place:

* An EOSIO development environment, for details consult the [Get Started Guide](https://developers.eos.io/welcome/latest/getting-started-guide/index).
* A smart contract named `smrtcontract`.
* A user defined type named `person`, which defines the data stored in the table.
* A smart contract named `smrtcontract`
* A user defined type, `struct` or `class`, which defines the data stored in the map, named `person`

Refer to the following reference implementation for your starting point:

Expand Down Expand Up @@ -48,7 +48,7 @@ Complete the following steps to define the `address_table` type, based on the `e
1. Define the structure or class `address_table` in the scope of your smart contract class, for the abi generation to find it and place it into the abi file.
2. Derive `address_table` from `eosio::`kv::table` class template. Pass the `person` user defined type as the type parameter for `eosio::`kv::table` base class and the name of the `kv table`, let’s say `kvaddrbook`.
3. Annotate `address_table` type with `[[eosio::table]]`, and make sure it is placed after the `struct` keyword but before the name of the type.
4. Define a primary index `first_name_idx` based on the property `person::first_name`. Every `kv table` requires a primary index to be defined based on a property that stores unique values.
4. Define a primary index `first_name_idx` based on the data member `person::first_name`. Every `kv table` requires a primary index to be defined on a data member that stores unique values.
5. In the `address_table` constructor, call the `init(...)` base class method with the two parameters:
1. The first parameter, of type `eosio::name`, is the contract that owns the table.
2. The second parameter is the `account_name_uidx` primary index.
Expand Down Expand Up @@ -80,8 +80,6 @@ In conclusion, the above instructions show how to define and use a `Key-Value Ta

## Next Steps

The following options are available when you complete the procedure:

* You can [create one or more unique indexes](20_how-to-create-indexes-kv-table.md) using the `KV_NAMED_INDEX` macro or the `eosio::kv::table::index` template class.
* You can [create one or more non-unique indexes](20_how-to-create-indexes-kv-table.md) using the `KV_NAMED_INDEX` macro or the `eosio::kv::table::index` template class.
* You can access the defined `kv table` and perform operations on it and its defined indexes:
Expand Down
Loading