I am having problem loading metaplex store. I did a direct fork from the main metaplex-foundation github master and deployed it on Vercel via their instructions here: https://github.com/metaplex-foundation/metaplex/blob/master/docs/deploy.md
It builds without errors, but when I load the site, it just keeps loading forever and wallet cannot be accessed or connected nor the site be accessible.
I followed all instructions from their link above and ensured I have the address in the.env.
I even added a URL in a new CNAME file I added in packages/web folder, from previous experience.
How can I resolve this?
For starters, metaplex acknowledges that the current storefront (v1) has quite a few issues that are impacting users. No further fixes will be forthcoming given that the storefront has been officially deprecated as of May 2022. With that out of the way, a high level overview of the issue you are describing is as follows:
when you start a storefront (SF) that has no auctions, it needs to scan quite a bit of data to figure out what it needs to display. This scan includes a few chunky calls to the RPC that may or may not work depending on the state of the network. This step is also a bit buggy and can end up in an infinite loading loop.
when you fire up the first auction, SF creates a storeindexer object on the chain. This object is used to index the first auction and all the subsequent auctions.
if SF finds a storeindexer object on startup, it bypasses all the madness in step (1) and instead uses the storeindexer to figure out what data is needed. That doesn’t require any gPA (getProgramAccount) calls either which is nice.
it’s a bit of a catch-22 because in order to start the first auction you need the storefront, but you also need an auction to avoid the loading problem in step (1).
After the first auction is up you should be able to resume using your SF as normal.
You may try this version of the storefront to get around the infinite loading problem. It's quite barebones in terms of functionality and there is an issue with SPL tokens that have decimals other than 9. However it does get around the infinite loading problem and you should be able to list your first auction with it.
https://github.com/neftworld/metaplex-storefront-v1
However, STOREFRONT IS DEPRECATED SO CAVEAT EMPTOR
Related
Let's say I want to show two WkWebView side by side, each logged in to the same website, but with two different accounts. The logins (and other data) should be persisted between launches
According to this 2017 wwdc talk, it can be done. This is the result I get: they share data.
And this is what I want, not sharing data.
According to the speaker, it's possible. He just doesn't say how.
A few approaches I've tried
Instantiating a new WkWebView. That made no difference. They still share data. I tried instantiating both from a storyboard and in code.
Changing my bundle identifier. Not a viable solution as I want the two datastores to run side by side. But it works, and also it seems the data (sans cookies) is stored in /Users/username/Library/WebKit/(bundle-identifier)
Instantiating a new WKProcessPool with webView.configuration.processPool = WKProcessPool(). Made no difference.
Handling cookies myself. This would be my last resort. I'd set the WKWebsiteDataStore to be the .nonPersistent() one, and save and delete cookies in my own store on open and close (the cookie observer doesn't trigger in nonPersistent). Bad in three ways: 1. I need a secure place to store them - (Keychain)? 2. It won't persist whatever the sites may have in Local Storage, 3: added work and complexity
I have a WebAPI service, written in ASP.NET (not Core), for which I am trying to generate documentation, in order to allow other devs to use it. I found Swashbuckle, and installed it. Then, since I also use OData for some of my services, I added Swashbuckle.OData. Then, I modified the CustomProvider setting in SwaggerConfig to use the ODataSwaggerProvider. I also set ResolveConflictingActions(apiDescriptions => apiDescriptions.First()) because I had a few Actions with the same URL path, differing only by query string (I'll need to address that later). So far so good.
Then, I tested it. I started my web app, then added "/swagger/" to then end. I got a message stating that it was loading the resource info. However, after several minutes, I got a browser error debug popup, stating "Error: Not enough storage is available to complete this operation." It asks if I want to debug, and if I do, it takes me to the debugger in IE (the browser I'm using). The only code in the stack is either from jquery-1-8-0-min-js or swagger-ui-min-js (this part confuses me, as there is no "swagger-ui-min-js" file in my project; I'm assuming it's embedded in the dll). There is no part of the stack trace that floats back up to my code, and all the code there is minified, so it's very difficult to debug.
However, I do know that it is at least partially working, as three of the controllers do show up in the resulting page after you close the error popup. You can navigate through them, and all the GETs, POSTs, PUTs, and DELETEs seem to be there, and you can test them.
Is it the case that whenever you navigate to the "/swagger/" url, Swagger hits all the URLs in the service, in order to generate the documentation? I'm wondering if maybe it is hitting an action that is taking a particularly long time to run, or possibly its generated documentation is taking too much disk space (I have plenty of space on my disk, but maybe it is referring to RAM?).
Anyway, even if that were not an issue, how can I get it to generate something, some kind of document file, that I can send off to someone? I see no new files added to my folders, so it would seem that it re-does the whole process every time you navigate to the swagger URL.
When I tried the Chrome browser, I no longer had the issue (I was using IE11 before). Not sure what the problem was, but this was the workaround.
Trying to detect the first install event from branch.io link (succesfully implement link creating and sharing). I am using Unity branch sdk. The feature i try to create:
user_1 creates and share link to user_2.
When user_2 opens the link and install app i need to reward both of them (with inner in-game coins)
So i succesfully implement the 1. but I cant understand how to detect is user_2 installs the app or simply open it. All data that comes from branch.io UniversalObject callback doesn't contain information that i need.
Which the correct way to detect the install from code?
Alex from Branch here.
The callback parameter you need is +is_first_session. This is one of the parameters returned when the Branch session is initiated each time your app opens (you can find all all these parameters here). If this returns true, then that device has just installed the app (instead of opening it).
However, note that when these parameters are returned, it's impossible to immediately determine if the user is new (what you want), the device is new (not what you want, since the reward could be given twice if the user has installed on multiple devices), or neither (the user deleted the app and reinstalled on the same device). You would probably want to hold off on actually awarding the referral points until after the user has logged in with some sort of unique ID.
Branch also has a built-in feature for tracking referral points that might be useful. That lets you configure all the rules using the dashboard UI instead of needing to do it programmatically inside your app.
I have been caching Google calendar event data locally in a local database using the python api for v3.
I have this ID cached locally 16...hk_20140530T010000Z. The event has been deleted by a user using Google Calendar on the web, and was not deleted by any scripting. The user reported the event was still appearing in her reports from our local cache.
I investigated, assuming there had been a problem at some point in time and the scripts had simply missed canceling this event (I use updatedMin so I thought maybe something could have theoretically been missed.) However, even when I ran a full query of all data for this calendar this instance of the recurrence was nowhere to be seen. There were plenty of others in the recurrence that appeared, but this instance did not exist in the results from Google, cancelled or otherwise.
I pull these IDs directly from the results from google when I save them in the database, and the fact it exists tells me it had to have existed at some point. The fact it is no longer listed has me puzzled, as it should be there with a status of canceled from my understanding.
Does anyone have any suggestion on why this may be the case? We have 200+ calendars I sync and deleting and re-importing on a regular basis would be a very time consuming process.
Thanks.
Event deletions can disappear after a while. Make sure to correctly handle the 410 response code when using old sync tokens / modified since values (http://developers.google.com/google-apps/calendar/v3/sync).
I'm getting the following warning on every request:
Attempted to rename transaction to Controller/sessions/new after transaction name was already frozen.
I'm running on Cedar on Heroku with Ruby 2.0.0p195, Rails 4.0.0.rc, Unicorn 4.6.2 and RPM 3.6.2.96. I've traced the exception to the following file (line 108) but I'm unsure of what to do to fix:
https://github.com/newrelic/rpm/blob/master/lib/new_relic/agent/transaction.rb
I work at New Relic.
When you get a message like this, it's due to the component of our app known as Real User Monitoring (RUM), which attempts to monitor page load time in the customer's browser. Why should this affect your ability to rename transactions? We base the timing capture in the user's browser on the transaction ID--which is tied to transaction name on your server--and this information goes into the footer we've created for your web page. By the time we create that footer, whatever the transaction name is will continue to be the case through the end of the transaction. In the case that you have a slow page load that corresponds to a slow app server transaction and we captured both traces, then in our UI you'll be able to click between the two (This slow page load came from that specific slow transaction).
Rails 4 makes this rather harder if you're using the turbolink feature. We're working on explicit support for that very soon, but as it stands, turbolinks basically preclude RUM from working after the first page load (if your app has links to itself in it, anyway).
So, your options for fixing it are:
rename your transaction earlier in the code sequence--preferably rather far before the end of the content generation (necessarily before gets output, but in some cases rather sooner)
turn off browser monitoring for this app, as you can then rename transactions at any point in the execution
Note that suggestion 1 might not work considering the state of our turbolinks support. We'll have support for that as soon as we can--certainly sometime this year. Unfortunately we don't promise timelines, we just deliver features, so I can't be more specific on timing.