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

Find a long-term solution for keepalive #51

Closed
wikier opened this issue Apr 16, 2015 · 13 comments
Closed

Find a long-term solution for keepalive #51

wikier opened this issue Apr 16, 2015 · 13 comments
Assignees
Labels
Milestone

Comments

@wikier
Copy link
Member

wikier commented Apr 16, 2015

As reported in the mailing list, looks like the keepalive module has been removed in version 3.9.1 of urlgrabber.

I found some discussions about the issue:

But I need to read more to find a long-term solution for such feature...

@wikier wikier added this to the 1.7.0 milestone Apr 16, 2015
@wikier wikier added the bug label Apr 16, 2015
@wikier wikier self-assigned this Apr 16, 2015
@indeyets
Copy link
Contributor

Long term solution is Requests

@wikier
Copy link
Member Author

wikier commented Apr 20, 2015

@indeyets sure, requests is for sure in the pipeline for 2.x (issue #37). So the question is to refactor 1.x to use it, a push the development of 2.x. What do you think?

@indeyets
Copy link
Contributor

Requests is compatible with 2.6+. So, it means that refactoring 1.x will lead to the loss of compatibility with 2.5 (I don't remember is 2.4 is supported)

@indeyets
Copy link
Contributor

oh… I just noticed, that you only use 2.7+ in Continuous Integration since 6 days ago. If that's the plan, then we can definitely use Requests for emulating current network interface

@wikier
Copy link
Member Author

wikier commented Jun 24, 2015

@indeyets honestly I'd prefer to switch to requests in 2.x...

@wikier
Copy link
Member Author

wikier commented Nov 3, 2015

According to henrysher/urlgrabber#2 does not look that urlgrabber is going to work under Python 3.x...

@wikier
Copy link
Member Author

wikier commented Nov 3, 2015

Using this port http://pastie.org/2388246 could be an option, but I think the author (@bgw) has not published any package with it, or at least I can't find it.

@wikier wikier modified the milestones: 1.7.2, 1.8.0 Nov 3, 2015
@gromgull
Copy link
Member

gromgull commented Nov 3, 2015

it's only ~300 lines of code - just add it to SPARQLWrapper directly ?

On 3 November 2015 at 08:29, Sergio Fernández notifications@github.com
wrote:

Using this port http://pastie.org/2388246 could be an option, but I think
the author (@bgw https://github.com/bgw) has not published any package
with it, or at least I can't find it.


Reply to this email directly or view it on GitHub
#51 (comment)
.

http://gromgull.net

@wikier
Copy link
Member Author

wikier commented Nov 3, 2015

@gromgull LGPL license

@wikier
Copy link
Member Author

wikier commented Nov 3, 2015

I'd personally remove the keep alive support until we do the major refactoring for 2.x; opinions on that?

@wikier
Copy link
Member Author

wikier commented Nov 3, 2015

Solved by using a new keepalive package (required by license terms).

@wikier wikier closed this as completed Nov 3, 2015
@niklasl
Copy link
Member

niklasl commented Nov 3, 2015

I don't have deep insight into how SparqlWrapper is being used in applications, but I wonder if mechanisms like these should be pluggable and interchangeable? By which I mean that SparqlWrapper (and thus RDFLib) shouldn't bundle a lot of choices by default, but support opt-ins by using a pluggable API.

It could even provide sensible defaults for "advanced" behaviour by doing try-imports and declaring optional dependencies. (But avoid opinionated choices.)

Or perhaps better, work as a component in an application responsible for optimizing its HTTP handling (and choice of e.g. keep-alive, HTTP/2...).

@wikier
Copy link
Member Author

wikier commented Nov 3, 2015

A completely valid point @niklasl; please add it to issue #37.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants