Skip to content

Commit eddd61d

Browse files
authored
Merge pull request #1268 from Agoric/ms/update-repl-reference
Remove Deprecated REPL Page Contents
2 parents 12d3c5d + 092a265 commit eddd61d

File tree

1 file changed

+2
-127
lines changed

1 file changed

+2
-127
lines changed

main/reference/repl/index.md

+2-127
Original file line numberDiff line numberDiff line change
@@ -1,129 +1,4 @@
11
# Agoric REPL
22

3-
**Note**: This page describes the Agoric REPL.
4-
If you are instead looking for information about `node` or the Node.js REPL, see
5-
[Node.js documentation](https://nodejs.org/api/repl.html).
6-
7-
## Introduction
8-
9-
When you run `agoric start --reset`, you start a local _ag-solo_.
10-
11-
You use `agoric start` to start what we call an _ag-solo_, which is a
12-
single personal local Agoric node. You need an ag-solo running on your
13-
machine to interact with Agoric network services, whether a built-in
14-
simulated chain (also started by `agoric start`), or a fully-decentralized public Agoric
15-
blockchain.
16-
17-
All deployment happens via the local running Agoric process. This is usually the
18-
ag-solo process, and frequently referred to as that or just as ag-solo. It is also
19-
sometimes described as/called an Agoric VM or a local server.
20-
21-
An ag-solo communicates with either a locally running or remote chain. This local process (the ag-solo)
22-
has a home object, which contains references to services on-chain, including Zoe, the
23-
Board for sharing objects, and an application user's Wallet, among others. Developers can
24-
use these service references to call the service's associated API commands.
25-
26-
Contract code starts in a file on a user's computer, either written by them or
27-
imported from `agoric/zoe`. The code is _bundled_; turned into a particularly formatted
28-
blob of code that exists in memory while a deploy script is running. When `E(zoe).install()` is
29-
called, the blob is sent to and stored on-chain so that Zoe can access it.
30-
31-
An ag-solo has an associated REPL (_Read-Eval-Print Loop_). From the REPL and the `home`
32-
object, developers can use all the on-chain commands that deployment scripts use to
33-
deploy contracts and Dapps. In addition to the on-chain commands, they can also run
34-
any other JavaScript commands from the REPL.
35-
36-
## Accessing the REPL
37-
38-
Once an ag-solo is running and on-chain, you can access its associated REPL
39-
in two ways.
40-
41-
- In a browser tab, go to `localhost:8000`. Depending on the browser's width, you
42-
will see the Wallet UI and REPL either in separate columns or separate rows.
43-
44-
![Wallet and REPL](./assets/walletAndREPLColumns.png)
45-
46-
![Wallet and REPL](./assets/walletAndREPLRows.png)
47-
48-
- From a shell, run `agoric open --repl` This opens the user's Wallet UI and its
49-
associated REPL. To open only the REPL, run `agoric open --repl only`
50-
51-
![REPL](./assets/repl.png)
52-
53-
## Using the REPL
54-
55-
You can run JavaScript commands from the REPL. You can also use the REPL's
56-
`home` object's predefined connections to other objects and services. To see what’s
57-
available, just type `home` into the REPL:
58-
59-
![home](./assets/home.png)
60-
61-
```js
62-
Command[1] home
63-
History[1] {"chainTimerService":[Presence o-50],"contractHost":[Presence o-52],"ibcport":[Presence o-53],"registrar":[Presence o-54],"registry":[Presence o-55],"zoe":[Presence o-56],"localTimerService":[Presence o-57],"uploads":[Presence o-58],"spawner":[Presence o-59],"wallet":[Presence o-60],"network":[Presence o-61],"http":[Presence o-62]}
64-
```
65-
66-
The results of what is entered into the REPL is saved under `history[N]`
67-
68-
The following sections describe the `home` objects developers can use. Click on the
69-
section header to go to more detailed documentation about that object.
70-
Several `home` objects are either for internal Agoric use only or have been deprecated. These
71-
are listed together in the final section. External developers should ignore them and not try to use
72-
them.
73-
74-
### [`wallet`](../wallet-api/)
75-
76-
Holds on-chain digital assets and object capabilities on behalf of the user.
77-
The header link takes you to the standard non-REPL specific `wallet` API documentation. When calling
78-
`wallet` API methods from the REPL, `wallet` must be prefaced by `home.` and use `E()`. For
79-
example, `E(home.wallet).getPurses()`. [Full Wallet API documentation.](/guides/wallet/)
80-
81-
### [`chainTimerService`](./timerServices)
82-
83-
On-chain time authority used to schedule events. [Full `chainTimerService` documentation.](./timerServices)
84-
85-
### [`localTimerService`](./timerServices)
86-
87-
Local off-chain time authority used to schedule events. [Full `localTimerService` documentation.](./timerServices)
88-
89-
### [`board`](./board)
90-
91-
Shared on-chain location where users can post generally accessible values. [Full `board` documentation.](./board)
92-
93-
### [`ibcport`](./networking)
94-
95-
IBC implementation that lets vats open and close listening ports,
96-
connect and disconnect to/from remote ports, and send and receive
97-
data over those connections. [Full `ibcport` documentation.](./networking)
98-
99-
### [`zoe`](../zoe-api/zoe)
100-
101-
Deploy and interact with smart contracts. Zoe protects smart contract users by escrowing
102-
digital assets and guaranteeing users get either what they want or get a refund of what
103-
they escrowed. Even if the contract is buggy or malicious. The header link takes you to the
104-
standard, non-REPL specific, `zoe` API documentation. When calling any of the `zoe` API
105-
methods from the REPL, `zoe` must be prefaced by `home.` and use `E()`. For
106-
example, `E(home.zoe).getFoo()`. [Full Zoe API documentation.](../zoe-api/zoe)
107-
108-
### [`priceAuthority`](./priceAuthority)
109-
110-
Get price quotes for pairs of digital assets. [Full `priceAuthority` documentation.](./priceAuthority)
111-
112-
### [`scratch`](./scratch)
113-
114-
An off-chain, private, place to store key-value pairs on your ag-solo for later use. [Full `scratch` documentation.](./scratch)
115-
116-
### Deprecated and Internal-Only Objects
117-
118-
- `contractHost`: Replaced by the `spawner` object.
119-
- `faucet`: Internal for chain setup.
120-
- `http`: `api/deploy.js` uses this to install new HTTP and WebSocket handlers in an
121-
ag-solo. You should not need to use it.
122-
- `network`: Privileged object for internal use. [Full Network documentation.](./networking)
123-
- `plugin`: Privileged object for internal use.
124-
- `priceAuthorityAdmin`: Privileged object for internal use.
125-
- `registrar`: Deprecated.
126-
- `registry`: Deprecated.
127-
- `spawner`: Privileged object for internal use.
128-
- `uploads`: Deprecated name for `scratch`.
129-
- `vattp`: Privileged object for internal use.
3+
**Note**: Agoric REPL has been deprecated. Please see [Testing a Contract](/guides/zoe/contract-hello#testing-a-contract)
4+
for information on how to test your smart contracts using [AVA](https://github.com/avajs/ava).

0 commit comments

Comments
 (0)