Skip to content

Commit

Permalink
Merge pull request #8353 from ethereum/dev
Browse files Browse the repository at this point in the history
Deploy v6.7.6
  • Loading branch information
minimalsm authored Oct 25, 2022
2 parents b53235d + 53c34ed commit e4f5526
Show file tree
Hide file tree
Showing 24 changed files with 165 additions and 106 deletions.
64 changes: 64 additions & 0 deletions .all-contributorsrc
Original file line number Diff line number Diff line change
Expand Up @@ -9270,6 +9270,70 @@
"contributions": [
"code"
]
},
{
"login": "hyper0x",
"name": "Renato",
"avatar_url": "https://avatars.githubusercontent.com/u/315569?v=4",
"profile": "https://github.com/hyper0x",
"contributions": [
"content",
"translation"
]
},
{
"login": "frangio",
"name": "Francisco",
"avatar_url": "https://avatars.githubusercontent.com/u/481465?v=4",
"profile": "https://frang.io",
"contributions": [
"doc"
]
},
{
"login": "frankiefab100",
"name": "Franklin Ohaegbulam",
"avatar_url": "https://avatars.githubusercontent.com/u/46662771?v=4",
"profile": "http://frankiefab.com",
"contributions": [
"code"
]
},
{
"login": "soos3d",
"name": "Soos3D",
"avatar_url": "https://avatars.githubusercontent.com/u/99700157?v=4",
"profile": "https://github.com/soos3d",
"contributions": [
"doc"
]
},
{
"login": "minhoryang",
"name": "Minho Ryang",
"avatar_url": "https://avatars.githubusercontent.com/u/1270855?v=4",
"profile": "http://keybase.io/minhoryang",
"contributions": [
"code"
]
},
{
"login": "SebastianSupreme",
"name": "Sebastian Supreme",
"avatar_url": "https://avatars.githubusercontent.com/u/106926150?v=4",
"profile": "https://sebastiansupreme.eth.link",
"contributions": [
"ideas"
]
},
{
"login": "jhhornn",
"name": "Awosise Oluwaseun",
"avatar_url": "https://avatars.githubusercontent.com/u/66667958?v=4",
"profile": "https://github.com/jhhornn",
"contributions": [
"doc"
]
}
],
"contributorsPerLine": 7,
Expand Down
11 changes: 10 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

This is the repo for the [ethereum.org](https://ethereum.org) website, a resource for the Ethereum community. The site's purpose is to _“Be the best portal to Ethereum for our growing global community"_ - read more about what this means [here](https://ethereum.org/en/about/).

[ethereum.org](https://ethereum.org) is improved and changed over time through the contributions of community members who submit content, give feedback, or volunteer their time to manage its evolution. If you’re interested in helping to improve [ethereum.org](https://ethereum.org), find out [how to contribute](https://ethereum.org/en/contributing/).
[ethereum.org](https://ethereum.org) is being improved and changed over time through the contributions of community members who submit content, give feedback, or volunteer their time to manage its evolution. If you’re interested in helping to improve [ethereum.org](https://ethereum.org), find out [how to contribute](https://ethereum.org/en/contributing/).

## Looking for the Ethereum blockchain's code?

Expand Down Expand Up @@ -1464,6 +1464,15 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
</tr>
<tr>
<td align="center"><a href="https://github.com/jb-0"><img src="https://avatars.githubusercontent.com/u/39060614?v=4?s=100" width="100px;" alt="Jamie Barrett"/><br /><sub><b>Jamie Barrett</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=jb-0" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/hyper0x"><img src="https://avatars.githubusercontent.com/u/315569?v=4?s=100" width="100px;" alt="Renato"/><br /><sub><b>Renato</b></sub></a><br /><a href="#content-hyper0x" title="Content">🖋</a> <a href="#translation-hyper0x" title="Translation">🌍</a></td>
<td align="center"><a href="https://frang.io"><img src="https://avatars.githubusercontent.com/u/481465?v=4?s=100" width="100px;" alt="Francisco"/><br /><sub><b>Francisco</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=frangio" title="Documentation">📖</a></td>
<td align="center"><a href="http://frankiefab.com"><img src="https://avatars.githubusercontent.com/u/46662771?v=4?s=100" width="100px;" alt="Franklin Ohaegbulam"/><br /><sub><b>Franklin Ohaegbulam</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=frankiefab100" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/soos3d"><img src="https://avatars.githubusercontent.com/u/99700157?v=4?s=100" width="100px;" alt="Soos3D"/><br /><sub><b>Soos3D</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=soos3d" title="Documentation">📖</a></td>
<td align="center"><a href="http://keybase.io/minhoryang"><img src="https://avatars.githubusercontent.com/u/1270855?v=4?s=100" width="100px;" alt="Minho Ryang"/><br /><sub><b>Minho Ryang</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=minhoryang" title="Code">💻</a></td>
<td align="center"><a href="https://sebastiansupreme.eth.link"><img src="https://avatars.githubusercontent.com/u/106926150?v=4?s=100" width="100px;" alt="Sebastian Supreme"/><br /><sub><b>Sebastian Supreme</b></sub></a><br /><a href="#ideas-SebastianSupreme" title="Ideas, Planning, & Feedback">🤔</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/jhhornn"><img src="https://avatars.githubusercontent.com/u/66667958?v=4?s=100" width="100px;" alt="Awosise Oluwaseun"/><br /><sub><b>Awosise Oluwaseun</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=jhhornn" title="Documentation">📖</a></td>
</tr>
</tbody>
</table>
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "ethereum-org-website",
"version": "6.7.5",
"version": "6.7.6",
"description": "Website of ethereum.org",
"main": "index.js",
"repository": "[email protected]:ethereum/ethereum-org-website.git",
Expand Down
Binary file modified src/assets/translation-program/pageviews-dark.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified src/assets/translation-program/pageviews-light.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 2 additions & 1 deletion src/components/CopyToClipboard.tsx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import React, { useState, useEffect, useRef } from "react"
import ClipboardJS from "clipboard"
import { Box } from '@chakra-ui/react'

export interface IProps {
text: string
Expand Down Expand Up @@ -36,7 +37,7 @@ const CopyToClipboard: React.FC<IProps> = ({ children, text }) => {
}
}, [text])

return <div ref={targetEl}>{children(isCopied)}</div>
return <Box ref={targetEl}>{children(isCopied)}</Box>
}

export default CopyToClipboard
8 changes: 3 additions & 5 deletions src/components/EthVideo.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import React from "react"
import { useTheme } from "@emotion/react"
import { Box } from "@chakra-ui/react"
import { Box, useColorModeValue } from "@chakra-ui/react"

import darkVideo from "../assets/ethereum-hero-dark.mp4"
import lightVideo from "../assets/ethereum-hero-light.mp4"
Expand All @@ -11,10 +10,9 @@ export interface IProps {
}

const EthVideo: React.FC<IProps> = ({ className, videoSrc }) => {
const theme = useTheme()
const isDarkTheme = theme.isDark
const videoFile = useColorModeValue(lightVideo, darkVideo)

const src = videoSrc ? videoSrc : isDarkTheme ? darkVideo : lightVideo
const src = videoSrc ? videoSrc : videoFile

return (
<Box className={className}>
Expand Down
2 changes: 1 addition & 1 deletion src/components/MarkdownTable.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export interface IProps {
}

const MarkdownTable: React.FC<IProps> = ({ children }) => (
<Box my={8}>
<Box my={8} overflowX="auto">
<Table
sx={{
th: {
Expand Down
4 changes: 4 additions & 0 deletions src/components/Staking/StakingProductsCardGrid.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,10 @@ const Item = styled.li`
font-size: 0.75rem;
line-height: 0.875rem;
letter-spacing: 0.04em;
p {
margin: 1rem auto 1rem 0;
}
`

const Cta = styled(PaddedDiv)`
Expand Down
88 changes: 34 additions & 54 deletions src/components/UpgradeTableOfContents.tsx
Original file line number Diff line number Diff line change
@@ -1,47 +1,11 @@
import React from "react"
import { motion } from "framer-motion"
import { Link } from "gatsby"
import styled from "@emotion/styled"
import { Box, ListItem, UnorderedList } from "@chakra-ui/react"
import Link from "../components/Link"

import type { Item as ItemTableOfContents } from "./TableOfContents"

const customIdRegEx = /^.+(\s*\{#([A-Za-z0-9\-_]+?)\}\s*)$/

const Aside = styled.aside`
padding: 0rem;
text-align: right;
margin-bottom: 2rem;
overflow-y: auto;
`

const OuterList = styled(motion.ul)`
list-style-type: none;
list-style-image: none;
padding: 0;
margin: 0;
font-size: 1.25rem;
text-align: right;
line-height: 1.6;
font-weight: 400;
padding-right: 0.25rem;
padding-left: 1rem;
@media (max-width: ${(props) => props.theme.breakpoints.l}) {
display: none;
}
`

const ListItem = styled.li`
margin: 0;
`

const StyledTableOfContentsLink = styled(Link)`
position: relative;
display: inline-block;
color: ${(props) => props.theme.colors.text300};
margin-bottom: 0.5rem !important;
`

const slugify = (s: string): string =>
encodeURIComponent(String(s).trim().toLowerCase().replace(/\s+/g, "-"))

Expand Down Expand Up @@ -87,9 +51,16 @@ const TableOfContentsLink: React.FC<IPropsTableOfContentsLink> = ({
classes += " nested"
}
return (
<StyledTableOfContentsLink to={url} className={classes}>
<Link
href={url}
className={classes}
position="relative"
display="inline-block"
mb={2}
color="text300"
>
{trimmedTitle(item.title)}
</StyledTableOfContentsLink>
</Link>
)
}

Expand All @@ -115,10 +86,8 @@ const ItemsList: React.FC<IPropsItemsList> = ({
return (
<>
{items.map((item, index) => (
<ListItem key={index}>
<div>
<TableOfContentsLink depth={depth} item={item} />
</div>
<ListItem margin={0} key={index}>
<TableOfContentsLink depth={depth} item={item} />
</ListItem>
))}
</>
Expand All @@ -128,14 +97,9 @@ const ItemsList: React.FC<IPropsItemsList> = ({
export interface IProps {
items: Array<Item>
maxDepth?: number
className?: string
}

const UpgradeTableOfContents: React.FC<IProps> = ({
items,
maxDepth = 1,
className,
}) => {
const UpgradeTableOfContents: React.FC<IProps> = ({ items, maxDepth = 1 }) => {
if (!items) {
return null
}
Expand All @@ -145,11 +109,27 @@ const UpgradeTableOfContents: React.FC<IProps> = ({
}

return (
<Aside className={className}>
<OuterList>
<Box
as="aside"
p={0}
mb={8}
textAlign="end"
overflowY="auto"
display={{ base: "none", l: "block" }}
>
<UnorderedList
m={0}
py={0}
ps={4}
pe={1}
fontSize="xl"
fontWeight="normal"
lineHeight="1.6"
styleType="none"
>
<ItemsList items={items} depth={0} maxDepth={maxDepth} />
</OuterList>
</Aside>
</UnorderedList>
</Box>
)
}

Expand Down
2 changes: 2 additions & 0 deletions src/content/dao/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,10 +135,12 @@ _Typically used for decentralized development and governance of protocols and da

- [Ethereum community DAOs](/community/get-involved/#decentralized-autonomous-organizations-daos)
- [DAOHaus's list of DAOs](https://app.daohaus.club/explore)
- [Tally.xyz list of DAOs](https://www.tally.xyz)

### Start a DAO {#start-a-dao}

- [Summon a DAO with DAOHaus](https://app.daohaus.club/summon)
- [Start a Governor DAO with Tally](https://www.tally.xyz/add-a-dao)
- [Create an Aragon-powered DAO](https://aragon.org/product)
- [Start a colony](https://colony.io/)
- [Create a DAO with DAOstack's holographic consensus](https://alchemy.daostack.io/daos/create)
Expand Down
2 changes: 1 addition & 1 deletion src/content/desci/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ Flexible Web3 data solutions support the scenarios above and provide the foundat
## Get involved {#get-involved}

Explore projects and join the DeSci community.

- [Blockchain for Science Telegram](https://t.me/BlockchainForScience)
- [Molecule: Fund and get funded for your research projects](https://discover.molecule.to/)
- [VitaDAO: receive funding through sponsored research agreements for longevity research](https://www.vitadao.com/)
- [ResearchHub: post a scientific result and engage in a conversation with peers](https://www.researchhub.com/)
Expand Down
5 changes: 3 additions & 2 deletions src/content/developers/docs/apis/backend/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ lang: en

In order for a software application to interact with the Ethereum blockchain (i.e. read blockchain data and/or send transactions to the network), it must connect to an Ethereum node.

For this purpose, every Ethereum client implements the [JSON-RPC](/developers/docs/apis/json-rpc/) specification, so there are a uniform set of [endpoints](/developers/docs/apis/json-rpc/#json-rpc-methods) that applications can rely on.
For this purpose, every Ethereum client implements the [JSON-RPC](/developers/docs/apis/json-rpc/) specification, so there are a uniform set of [methods](/developers/docs/apis/json-rpc/#json-rpc-methods) that applications can rely on.

If you want to use a specific programming language to connect with an Ethereum node, there are many convenience libraries within the ecosystem that make this much easier. With these libraries, developers can write intuitive, one-line methods to initialize JSON-RPC requests (under the hood) that interact with Ethereum.

Expand Down Expand Up @@ -56,10 +56,11 @@ These libraries abstract away much of the complexity of interacting directly wit

- [ethercluster.com](https://www.ethercluster.com/)

**Chainstack -** **_Shared and dedicated Ethereum nodes as a service._**
**Chainstack -** **_Elastic and dedicated Ethereum nodes as a service._**

- [chainstack.com](https://chainstack.com)
- [Documentation](https://docs.chainstack.com)
- [Ethereum API reference](https://docs.chainstack.com/api/ethereum/ethereum-api-reference)

**QuickNode -** **_Blockchain Infrastructure as a Service._**

Expand Down
2 changes: 1 addition & 1 deletion src/content/developers/docs/apis/javascript/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ lang: en

In order for a web app to interact with the Ethereum blockchain (i.e. read blockchain data and/or send transactions to the network), it must connect to an Ethereum node.

For this purpose, every Ethereum client implements the [JSON-RPC](/developers/docs/apis/json-rpc/) specification, so there are a uniform set of [endpoints](/developers/docs/apis/json-rpc/endpoints/) that applications can rely on.
For this purpose, every Ethereum client implements the [JSON-RPC](/developers/docs/apis/json-rpc/) specification, so there are a uniform set of [methods](/developers/docs/apis/json-rpc/#json-rpc-methods) that applications can rely on.

If you want to use JavaScript to connect with an Ethereum node, it's possible to use vanilla JavaScript but several convenience libraries exist within the ecosystem that make this much easier. With these libraries, developers can write intuitive, one-line methods to initialize JSON RPC requests (under the hood) that interact with Ethereum.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ Overall, proof-of-stake, as it is implemented on Ethereum, has been demonstrated
- [Proof of Stake FAQ](https://vitalik.ca/general/2017/12/31/pos_faq.html) _Vitalik Buterin_
- [What is Proof of Stake](https://consensys.net/blog/blockchain-explained/what-is-proof-of-stake/) _ConsenSys_
- [What Proof of Stake Is And Why It Matters](https://bitcoinmagazine.com/culture/what-proof-of-stake-is-and-why-it-matters-1377531463) _Vitalik Buterin_
- [The Beacon Chain Ethereum 2.0 explainer you need to read first](https://ethos.dev/beacon-chain/) _Ethos.dev_
- [The Beacon Chain Ethereum 2.0 explainer you need to read first](https://ethos.dev/beacon-chain) _Ethos.dev_
- [Why Proof of Stake (Nov 2020)](https://vitalik.ca/general/2020/11/06/pos2020.html) _Vitalik Buterin_
- [Proof of Stake: How I Learned to Love Weak Subjectivity](https://blog.ethereum.org/2014/11/25/proof-stake-learned-love-weak-subjectivity/) _Vitalik Buterin_
- [Proof-of-stake Ethereum attack and defense](https://mirror.xyz/jmcook.eth/YqHargbVWVNRQqQpVpzrqEQ8IqwNUJDIpwRP7SS5FXs)
Expand Down
2 changes: 1 addition & 1 deletion src/content/developers/docs/networking-layer/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ Discovery is the process of finding other nodes in network. This is bootstrapped

The protocol used for the node-bootnode interactions is a modified form of [Kademlia](https://medium.com/coinmonks/a-brief-overview-of-kademlia-and-its-use-in-various-decentralized-platforms-da08a7f72b8f) which uses a [distributed hash table](https://en.wikipedia.org/wiki/Distributed_hash_table) to share lists of nodes. Each node has a version of this table containing the information required to connect to its closest peers. This 'closeness' is not geographical - distance is defined by the similarity of the node's ID. Each node's table is regularly refreshed as a security feature. For example, in the [Discv5](https://github.com/ethereum/devp2p/tree/master/discv5), discovery protocol nodes are also able to send 'ads' that display the subprotocols that the client supports, allowing peers to negotiate about the protocols they can both use to communicate over.

Discovery starts wih a game of PING-PONG. A successful PING-PONG "bonds" the new node to a bootnode. The initial message that alerts a bootnode to the existence of a new node entering the network is a `PING`. This `PING` includes hashed information about the new node, the bootnode and an expiry time-stamp. The bootnode receives the PING and returns a `PONG` containing the `PING` hash. If the `PING` and `PONG` hashes match then the connection between the new node and bootnode is verified and they are said to have "bonded".
Discovery starts wih a game of PING-PONG. A successful PING-PONG "bonds" the new node to a bootnode. The initial message that alerts a bootnode to the existence of a new node entering the network is a `PING`. This `PING` includes hashed information about the new node, the bootnode and an expiry time-stamp. The bootnode receives the `PING` and returns a `PONG` containing the `PING` hash. If the `PING` and `PONG` hashes match then the connection between the new node and bootnode is verified and they are said to have "bonded".

Once bonded, the new node can send a `FIND-NEIGHBOURS` request to the bootnode. The data returned by the bootnode includes a list of peers that the new node can connect to. If the nodes are not bonded, the `FIND-NEIGHBOURS` request will fail, so the new node will not be able to enter the network.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ sidebarDepth: 2

#### Доступ к RPC {#reaching-rpc}

Порт JSON-RPC по умолчанию — `8545`, но порты локальных конечных точек можно изменять в конфигурационном файле. По умолчанию интерфейс RPC доступен только с локального хоста компьютера. Чтобы сделать его доступным удаленно, можно сделать его открытым, сменив адрес на `0.0.0.0`. Это сделает ваш узел доступным для лкальных и публичных IP-адресов. В большинстве случаев вам также нужно настроить переадресацию портов на маршрутизаторе.
Порт JSON-RPC по умолчанию — `8545`, но порты локальных конечных точек можно изменять в конфигурационном файле. По умолчанию интерфейс RPC доступен только с локального хоста компьютера. Чтобы сделать его доступным удаленно, можно сделать его открытым, сменив адрес на `0.0.0.0`. Это сделает ваш узел доступным для локальных и публичных IP-адресов. В большинстве случаев вам также нужно настроить переадресацию портов на маршрутизаторе.

Совершать подобные манипуляции нужно с осторожностью, так как это позволит любому в Интернете управлять вашим узлом. Злонамеренные пользователи, имея доступ к вашему узлу, могут навредить системе или украсть ваши активы, если вы используете свой клиент как кошелек.

Expand Down
Loading

0 comments on commit e4f5526

Please sign in to comment.