Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Security Driver quickstart chapters need serious attention #835

Closed
ault011 opened this issue Aug 17, 2016 · 18 comments
Closed

Security Driver quickstart chapters need serious attention #835

ault011 opened this issue Aug 17, 2016 · 18 comments

Comments

@ault011
Copy link
Contributor

ault011 commented Aug 17, 2016

In the security drivers chapter, everything works up until the example code following this text: ‘Creating an app is easy and well-documented.‘

Then the rest of it is broken.

@hoclun-rigsep
Copy link

[%e %vi %pump-blocked /com/github 6]

@galenwp
Copy link
Contributor

galenwp commented Jan 30, 2017 via email

@hoclun-rigsep
Copy link

It is as ault011 says: follow the instructions under the OAuth2 heading and this is what will happen. It doesn't matter whether you've run |init-auth-basic first or not. The loading of the keys from github seems to work fine. The dojo examples using |init-auth-basic seem to work fine, including those set out in the API Connectors page. The error from my last comment, [%e %vi %pump-blocked /com/github 6] starts coming up when you issue the request again after this first %ford-mystery. Attempting to double back and run |init-auth-basic gets you the %pump-blocked thing again. I'm planning on seeing if I can clean these connectors up but I've just dug into it from an elevation of complete ignorance.

> |init-oauth2
>=
[%auth "https://api.github.com/user"]
> +https://api.github.com/user
%dy-no-prompt
 [ %ford-mystery
~[
 / g
  ~bortug-nodpun-batner-satlep--possyr-dattus-sicnup-balluc
  use
  dojo
  ~bortug-nodpun-batner-satlep--possyr-dattus-sicnup-balluc
  inn
  hand
 / g
  ~bortug-nodpun-batner-satlep--possyr-dattus-sicnup-balluc
  use
  hood
  ~bortug-nodpun-batner-satlep--possyr-dattus-sicnup-balluc
  out
  dojo
  drum
  phat
  ~bortug-nodpun-batner-satlep--possyr-dattus-sicnup-balluc
  dojo
/d
//term/1
  ]  
]
!  cancel /hand

@galenwp
Copy link
Contributor

galenwp commented Jan 30, 2017

Ah, sorry. Got this as an email and was confused. Yeah, this needs attention.

@cgyarvin
Copy link
Contributor

cgyarvin commented Jan 30, 2017 via email

@hoclun-rigsep
Copy link

OK. Would it be imprudent to work on the API connectors for this reason? You could also read that as, what can I do around here?

@cgyarvin
Copy link
Contributor

cgyarvin commented Jan 30, 2017 via email

@galenwp
Copy link
Contributor

galenwp commented Jan 30, 2017

We'd certainly like it to be under maintenance.

@cgyarvin
Copy link
Contributor

cgyarvin commented Jan 30, 2017 via email

@ohAitch
Copy link
Contributor

ohAitch commented Jan 31, 2017

What's happening here is that one of your requests is not returning for some reason. The core problem is that some HTTP requests hang open indefinitely, causing the queue of outbound API requests for a domain to become blocked.

That's what the pump-blocked printf is telling you. You can change ?. liv to ?. |(liv =(4 ~(wyt in req))) in %eyre, and make another request to the same API, to retry the queue.

In the long term we need to fix two things here: how each API driver handles failures, and how Urbit actually handles dead HTTP requests. If you're interested in diving in that deeply, we're happy to help. But yeah: it’d be good to do that work on master as opposed to maintenance. They haven’t diverged all that much where API connectors are concerned, but it’ll make the cc-release transition easier.

@matthewrj
Copy link

How do you clean up the queue and escape from the pump-blocked state. Right now all requests to api.github.com result in [%e %vi %pump-blocked /com/github 13] and I'm not sure how to proceed.

@hoclun-rigsep
Copy link

Right now I am merely editing the existing security drivers and connectors so they will compile after the structural changes in zuse and hoon. Need guidance on writing things like role:lines:clay as opposed to

 =,  clay
 =,  lines 
 [...]
 role

or

=,  clay
[...]
role:lines

(And while on the subject, the relationship between . and : has always been a little mysterious to me. I can tell you what they mean ['wing lookup' and 'irregular :rap'] but their interchangeability in many circumstances gives me a creepy feeling like I'm not getting something.)

@cgyarvin
Copy link
Contributor

cgyarvin commented Feb 5, 2017 via email

@cgyarvin
Copy link
Contributor

cgyarvin commented Feb 5, 2017 via email

@hoclun-rigsep
Copy link

But... I would suggest working out of a fakezod and killing it. There's a lot of dodgy code in this area.

As in, urbit -c a new fakezod every time the, uh, pump gets blocked?

@cgyarvin
Copy link
Contributor

cgyarvin commented Feb 5, 2017 via email

@hoclun-rigsep
Copy link

10-4, just making sure that's what you meant.

@galenwp
Copy link
Contributor

galenwp commented Feb 5, 2017 via email

@drbeefsupreme drbeefsupreme transferred this issue from urbit/docs Aug 24, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants