The Stack Overflow podcast is back! Listen to an interview with our new CEO.

Questions tagged [upgrading]

Questions involving upgrading, whether contracts, clients, or other aspects of Ethereum.

Filter by
Sorted by
Tagged with
0
votes
0answers
18 views

Trustless contract upgrades using inheritance

I've been struggling to find a solution to the problem of upgradeability that maximizes trustlessness while also putting minimal burden on users. I really wanted to use signed messages to validate ...
2
votes
1answer
32 views

How to upgrade this Crowdsale contract (from DappUniverse)

i'm trying to compile this code (from DappUniversity: https://github.com/dappuniversity/ico_irl/blob/master/contracts/DappTokenCrowdsale.sol) but with the new version of OpenZeppelin, that's use at ...
1
vote
1answer
46 views

Remix error : Function declared as view but this (potentially) modifies state

i'm following a tutorial but now it is old, because was written more then 1 year ago, with 0.4.24 pragma and i also want upgrade this code. I got this error and i'm pretty sure to know why: view and ...
0
votes
1answer
20 views

Unstructured storage proxies. Variables not being overwritten?

When using delegate call I was under the impression that storage slots declared in the proxy will be overwritten by the implementation. Unstructured storage implementations declare bytes32 variables ...
1
vote
1answer
137 views

Could I update Geth without stopping running Geth? And how could I update Geth without removing data?

I'm using Geth version 1.8.17-stable on ubuntu server and syncing with "fast" mode. I want to upgrade Geth to v1.8.23 to sync blocks generated after the hard fork. But I couldn't find how to upgrade ...
0
votes
1answer
134 views

ZepplinOS: Where to set owner of the contract?

ZepplinOS contracts do not use constructors in it's zos implementation, and instead uses an initialization function that it imports from zos-lib/contracts/Initializable.sol package. In order for the ...
0
votes
1answer
15 views

Will there be any new additional changes to the Constantinople Upgrade in Feb 2019 vs the delayed one from Jan?

With the upcoming Constantinople Feb 2019 upgrade, will there be any other new changes that wasn't present in the delayed Jan 2019 upgrade? All I know is they fixed the bug they found that delayed it, ...
3
votes
1answer
52 views

Why was the Constantinople hard fork postponed?

The Constantinople hard fork — really a network upgrade — was scheduled to happen today (January 16) at block 7,800,000. Instead the upgrade was postponed. What are the technical reasons for the ...
0
votes
1answer
41 views

What are the most notable and game changing features of the new Constantinople Ethereum upgrade? [duplicate]

The Constantinople Ethereum upgrade is a big upgrade to the network. What are some of the most notable and game changing features of this new upgrade?
1
vote
1answer
40 views

What is the main use and purpose of Upgraded Standard Token?

contract StandardToken is BasicToken, ERC20 { mapping (address => mapping (address => uint)) public allowed; uint public constant MAX_UINT = 2**256 - 1; function transferFrom(address _from, ...
4
votes
1answer
43 views

Does function order also matter when writing upgradeable smart contracts?

The ZeppelinOS docs clearly explain the importance of state variable order when upgrading smart contracts, but say little on whether the same rules apply to functions.
0
votes
1answer
30 views

Managing unforeseen changes in contract development

I'm reading here: Centralized Administrator All dapps are fully decentralized by default, but that doesn't mean they can't have some sort of central manager, if you want them to. Maybe you ...
2
votes
1answer
26 views

Could give ethereum network upgrade solutions?

As we known, the ethereum have soft and hard fork to upgrade network. If we modify the private ethereum code, how to notify other nodes to upgrade their geth? What if they do not upgrade the network? ...
0
votes
1answer
49 views

How can I upgrade my GETH?

I have an application which is talking to my Smart Contract through GETH RPC. In order to do so, I need to run my own node and sync it with mainnet. The problem start when I need to upgrade my GETH. ...
2
votes
1answer
125 views

Modify Struct on Upgradeable Smart Contracts

I have reviewed some techniques around Upgradeable smart contracts from starting point(Elena Dimitrova's Eternal Storage) to zeppelinOS's Unstructured Storage pattern. As I understood from posts that ...
0
votes
1answer
67 views

Update private chain from homestead to byzantium

I need to update my the version of my chain from homestead to Byzantium. Who can tell me how to do it? thanks.
1
vote
1answer
79 views

Updating content o af smart contract

I have a smart contract. I want to update the contents (list of names) of that contract let's say after every 5 minutes. The names change after this set duration. My approach is to create an instance ...
0
votes
1answer
551 views

Storing complex data types in Eternal Storage

I've been reading into strategies for writing upgradeable contracts. A pattern that has come up numerous times is to seperate your contracts business logic from its storage so that upgrades can occur ...
1
vote
0answers
146 views

How to Deploy non-Migratable Contract in Zeppelin OS?

I am using Zeppelin OS to create a migratable contract MyContract, which will be imported into another contract Foo. Foo calls the baz() function of MyContract, so when MyContract is upgraded, Foo ...
0
votes
1answer
299 views

Contract not using Upgraded Proxy Contracts

There's 2 contracts A and B, A imports B, where B is a library that can be upgraded. To achieve this, I tried replacing B with a proxy contract and a delegate contract. We now have contracts Foo, ...
1
vote
0answers
342 views

How does Tether token upgrade using their smart contract?

The Tether token (USDT) has: contract UpgradedStandardToken is StandardToken{ // those methods are called by the legacy contract // and they must ensure msg.sender to be the contract address function ...
0
votes
1answer
419 views

Reading array of struct from another contract

I have a contract that stores some struct array in it like: contract MyContract{ struct DataStruct { uint256 data1; uint32 data2; } DataStruct [] dataStructs; } Now i'm going to ...
1
vote
1answer
234 views

On the unstructured storage upgrade pattern, why do we have to follow the structure of the previous contract?

ZeppelinOS has adopted the unstructured storage proxy pattern to upgrade contracts. In the blog post that introduces this pattern, they say: "The only thing you will have to care about is that ...
0
votes
1answer
74 views

What happens with the balance of a contract after it is upgraded using ZeppelinOS?

ZeppelinOS implements upgradeability of smart contracts through the use of a proxy and unstructured storage. If the contract holds some ether, what happens with that ether after it is upgraded?
0
votes
1answer
393 views

Problem updating truffle framework

I have problems updating truffle. I run the command "truffle --version" and i got truffle version 4.0.1 and solc version 0.4.18. So i wanted to upgrade to 4.1.6 which is the latest version. I run "...
2
votes
2answers
46 views

Does a caller contract needs to know the complete interface of a callee?

As far as I understand if a caller uses just one function from a callee contract it only needs to know the signature of this function, not the whole interface. Callee.sol (Kovan): contract Callee{ ...
1
vote
2answers
169 views

Truffle migrate/deploy does not maintain state when the same contract is deployed again, correct?

I thought that the allure of using truffle lies in the ability to upgrade a contract that is live and already has state. I now realize that the only way to maintain state while "upgrading" a contract ...
3
votes
1answer
152 views

Upgradable Smart Contracts - Is there consensus between shareholders when upgrades occur?

It seems that upgradable smart contracts are the new wave of the future seemingly for the all the right reasons. How does this work for the "hello world" smart contract where two users make a bet on ...
7
votes
1answer
645 views

Using a high level delegate call in upgradable contracts since Byzantium

Since Byzantium we can implement upgradable proxy contracts much easier with the use of returndatacopy and returndatasize assembly instructions. This means we no longer have to register return types ...
3
votes
2answers
185 views

How do upgrades at Ethereum work?

How to make an upgrade, e.g. Metropolis, Casper etc, at Ethereum? I mean, if someone proposes an upgrade to Ethereum network, how can it be made concrete?
0
votes
1answer
164 views

Relay contracts chain

I am trying to aplpy Arachnid's upgradable contracts architecture (the source is https://gist.github.com/Arachnid/4ca9da48d51e23e5cfe0f0e14dd6318f) to the following problem. Imagine there are ...
0
votes
1answer
250 views

General question: Reasons to use sha3 (or any hash) in contracts?

I'm going through the Numerai contracts and noticing a common pattern - https://github.com/numerai/contract/blob/master/contracts/NumeraireBackend.sol and https://gist.github.com/Arachnid/...
3
votes
0answers
190 views

What is the runtime performance of Ethereum Libraries compared to Contracts?

I'm looking for the cheapest way (in terms of gas price) to design upgradeable contracts. I don't expect many upgrades. Being inspired by Writing upgradable contracts in Solidity, I'm investigating ...
4
votes
2answers
60 views

Can smart contracts become incompatible with new versions of the EVM?

Can the EVM update deprecate operations of older smart contracts, making these contracts non-operative? If so, what are the solutions to upgrade these smart contracts to the new version of the EVM if ...
1
vote
0answers
391 views

How to reference the contract definition within the contract itself?

I'm working on the problem of smart contract upgradability and in that, I'm calling kill function of the contract with newly deployed contract's address as an argument. So that kill function can link ...
2
votes
0answers
22 views

Can data in an old contract still be accessed? [duplicate]

What happens if data is created via a contract address and then a new contract is used? Can all the old data be accessed still? I saw this - Upgradeable smart contracts - which outlines ideas from ...
3
votes
2answers
418 views

Geth 1.6.1 hangs throwing “unexpected fault address” fatal error

Since upgraded to version 1.6.1, Geth node hangs form time to time (once a week) with following fatal error: fatal error: fault [signal SIGSEGV: segmentation violation code=0x1 addr=0x7f6453b72c88 pc=...
0
votes
1answer
211 views

Invalid argument after upgrading geth from 1.5.9 to 1.6.1

Once upgraded the geth node to 1.6.1 it is not accepting queries anymore, throwing the following error: Invalid argument 0: missing 0x prefix for hex data That's weird for a query like this, where ...
0
votes
1answer
471 views

How to avoid race conditions during Solidity contract updates?

Situation: Let's assume we have a contract upgrade mechanism implemented. Data is separated from Business Logic So far, I "freeze" data via a flag in old contract Then I selfdestruct old business ...
3
votes
1answer
894 views

Does a Solidity Interface Contract need to implement all functions, or only the function subset used in the contract that implements the interface?

Let's assume the following: There is a master contract A, an interface contract IB, and a slave contract B A implements IB to allow upgrading B without redeploying A Question: Does IB need to have ...
4
votes
2answers
346 views

Usage of ENS for contract upgrade

Situation: let's assume we have a data storage contract libraries that import the data storage contract a business logic contract that implements the libraries Question: can we use ENS, or more ...
26
votes
1answer
16k views

How to update a deployed smart contract? [duplicate]

I've started developing smart contracts with Truffle and when I edit a contract I always redeploy it by adding another migration script. There are two things that I wonder about: Is this the way it ...
6
votes
2answers
1k views

How to make a library address updatable

I want to write a contract that uses a library. This library should be exchangable. Meaning I want the contract to have an updatable (only by owner) address variable always pointing to the current ...
4
votes
1answer
51 views

Can client updates / upgrades be pushed over the ETH network?

Is it possible for ETH clients to securely receive a live push notification/version update like the way OSX, MacOS does? What are the pros and cons? : ) There could be a contract filter to gain ...
0
votes
1answer
109 views

Upgraded to geth 1.5.0: Bad block #383792

Recent Hardfork #4 Spurious Dragon has forced me to upgrade the geth node to last version. After upgrading geth node to version 1.5.0 and reseting all blockchain data, to start from scratch, I got ...
28
votes
3answers
10k views

What are truffle migrations?

As written in Truffle docs: Migrations are Javascript files that help you deploy contracts to the Ethereum network. These files are responsible for staging your deployment tasks, and they're ...
2
votes
0answers
440 views

Simpler examples of contract versioning [closed]

I want to have an upgradable contract so that I can have additional functionalities in upgraded contract. I know there are numerous of questions around it, most of them pointing towards Upgradable ...
4
votes
2answers
6k views

How to upgrade geth and mist in Ubuntu?

I set up a Ubuntu laptop specifically to install Geth/Mist 0.5.2 and have not upgraded since. I want to upgrade to 0.8.1 but need some direction. Am happy to work from terminal, but don't have enough ...
9
votes
1answer
2k views

How to edit a contract that has already been deployed? [duplicate]

I have been writing my first few contracts. So, as I understand it, once you write, compile, and deploy your contract, the only way to then interact with that contract is via something like web3.js ...
153
votes
12answers
32k views

Upgradeable smart contracts

If the contract issuer wants to have a way to upgrade the contract code, so that account data and other things carry over, can Ethereum provide for this? Also can this be done without changing the ...