Skip to content

Commit

Permalink
Fix discord invite links (#1156)
Browse files Browse the repository at this point in the history
* Fix discord invite links

* Update to stellardev
  • Loading branch information
janewang authored Jan 3, 2025
1 parent 884dfec commit 2e2cff5
Show file tree
Hide file tree
Showing 6 changed files with 10 additions and 21 deletions.
11 changes: 3 additions & 8 deletions docs/learn/encyclopedia/contract-development/rust-dialect.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -73,11 +73,6 @@ This is not a hard restriction enforced by the host, but a soft configuration ma

Host objects have significantly different semantics than typical Rust data structures, especially those implementing _collections_ such as maps and vectors.

In particular: host objects are **immutable**, and any "modification" to a host object returns a **full new copy** of the object, leaving the initial one unchanged.
For the most part this distinction is hidden through wrappers in the SDK, such that objects like `Map` or `Vec` appear to the contract programmer to be uniquely owned mutable values similar to Rust's standard library types,
but the underlying host objects are immutable, so have different performance characteristics. Specifically: cloning such an object is O(1), whereas any modification is O(N).
Since most host objects are typically very small, the O(N) cost of modification is typically cheaper than any alternative implementation involving shared substructures.

**Note**: these container types `Vec` and `Map` should _not_ be used for managing large or unbounded collections of data.
For such cases, contracts should store data in multiple separate ledger entries, each with its own unique contract-defined key.
Doing so also limits the IO cost of a contract to only the entries it accesses, and furthermore allows concurrent modification of entries with separate keys from separate transactions.
In particular: host objects are **immutable**, and any "modification" to a host object returns a **full new copy** of the object, leaving the initial one unchanged. For the most part this distinction is hidden through wrappers in the SDK, such that objects like `Map` or `Vec` appear to the contract programmer to be uniquely owned mutable values similar to Rust's standard library types, but the underlying host objects are immutable, so have different performance characteristics. Specifically: cloning such an object is O(1), whereas any modification is O(N). Since most host objects are typically very small, the O(N) cost of modification is typically cheaper than any alternative implementation involving shared substructures.

**Note**: these container types `Vec` and `Map` should _not_ be used for managing large or unbounded collections of data. For such cases, contracts should store data in multiple separate ledger entries, each with its own unique contract-defined key. Doing so also limits the IO cost of a contract to only the entries it accesses, and furthermore allows concurrent modification of entries with separate keys from separate transactions.
3 changes: 1 addition & 2 deletions docs/learn/encyclopedia/data-format/xdr.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,7 @@ Stellar stores and communicates ledger data, transactions, results, history, and

## .X files

Data structures in XDR are specified in `.x` files. These files _only_ contain data structure definitions, no operations or executable code.
The `.x` files for the XDR structures used on the Stellar Network are available on [GitHub](https://github.com/stellar/stellar-xdr).
Data structures in XDR are specified in `.x` files. These files _only_ contain data structure definitions, no operations or executable code. The `.x` files for the XDR structures used on the Stellar Network are available on [GitHub](https://github.com/stellar/stellar-xdr).

## JSON and XDR Conversion Schema

Expand Down
11 changes: 3 additions & 8 deletions docs/learn/encyclopedia/network-configuration/ledger-headers.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,7 @@ title: Ledger Headers
sidebar_position: 30
---

Every ledger has a header that references the data in that ledger and the previous ledger.
These references are cryptographic hashes of the content which behave like pointers in typical data structures but with added security guarantees.
Think of a historical ledger chain as a linked list of ledger headers.
Time flows forward from left to right, hashes point backwards in time, from right to left.
Each hash in the chain links a ledger to its previous ledger, which authenticates the entire history of ledgers in its past:
Every ledger has a header that references the data in that ledger and the previous ledger. These references are cryptographic hashes of the content which behave like pointers in typical data structures but with added security guarantees. Think of a historical ledger chain as a linked list of ledger headers. Time flows forward from left to right, hashes point backwards in time, from right to left. Each hash in the chain links a ledger to its previous ledger, which authenticates the entire history of ledgers in its past:

```mermaid
flowchart RL
Expand Down Expand Up @@ -44,8 +40,7 @@ flowchart RL
```

The genesis ledger has a sequence number of 1. The ledger directly following a ledger with sequence number `N` has a sequence number of `N+1`.
Ledger `N+1` contains a hash of ledger `N` in its previous ledger field.
The genesis ledger has a sequence number of 1. The ledger directly following a ledger with sequence number `N` has a sequence number of `N+1`. Ledger `N+1` contains a hash of ledger `N` in its previous ledger field.

## Ledger header fields

Expand Down Expand Up @@ -115,4 +110,4 @@ The reserve the network uses when calculating an account’s minimum balance.

### Skip list

Hashes of ledgers in the past. Intended to accelerate access to past ledgers without walking back ledger by ledger. Currently unused.
Hashes of ledgers in the past. Intended to accelerate access to past ledgers without walking back ledger by ledger. Currently unused.
2 changes: 1 addition & 1 deletion docs/tools/developer-tools/ai-bot.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@ Stella is an AI assistant bot created by SDF to help developers and general user
- Development resources: Documentation, SDKs, and tools for building on Stellar
- Technical concepts: Blockchain fundamentals, consensus mechanisms, and more

Stella is available in the Stellar Developer Discord. To access Stella, you must agree to the disclaimer first in [#stella-disclaimer](https://discord.com/channels/897514728459468821/1265827552375738369/1266084686053249094) and visit Stella bot in [#stella-help](https://discord.gg/CK36xY2C). Prompt Stella with, "Stella, ....".
Stella is available in the Stellar Developer Discord. To access Stella, you must agree to the disclaimer first in [#stella-disclaimer](https://discord.com/channels/897514728459468821/1265827552375738369/1266084686053249094) and visit Stella bot in [#stella-help](https://discord.gg/stellardev). Prompt Stella with, "Stella, ....".
2 changes: 1 addition & 1 deletion docusaurus.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -308,7 +308,7 @@ const config: Config = {
items: [
{
label: "Developer Discord",
href: "https://discord.gg/st7Mxd58BV",
href: "https://discord.gg/stellardev",
},
{
label: "Developer Google Group",
Expand Down
2 changes: 1 addition & 1 deletion src/components/Homepage/DeveloperResources/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ const DeveloperResourcesBoxes: DeveloperResourcesItem[] = [
Ask questions and engage with other Stellar devs.
</Translate>
),
link: exploreLink('https://discord.gg/st7Mxd58BV'),
link: exploreLink('https://discord.gg/stellardev'),
},
{
title: translate({
Expand Down

0 comments on commit 2e2cff5

Please sign in to comment.