Skip to content

How to close the SSL connection correctly? #52

@Steinadler177

Description

@Steinadler177

Is there a method that I can close the SSL connection which is build by Subgrounds? I checked the API document which doesn't have a similar content.

I tried to close it with contextlib, but it also can't solve this problem.

# Import the Subgrounds library
    
from subgrounds import Subgrounds
from contextlib import closing
import os


def another_function():
    

    # load_dotenv()
    graph_api_key = '<REDACTED>'
    # Create a new Subgrounds object
    with closing(Subgrounds()) as sg:


        # Load the Uniswap v3 subgraph using a specific API endpoint
        uni = sg.load_subgraph(
            f'https://gateway.thegraph.com/api/{graph_api_key}/subgraphs/id/ELUcwgpm14LKPLrBRuVvPvNKHQ9HvwmtKgKSH6123cr7')
        # <REDACTED>
        # Query the financialsDailySnapshots endpoint with a specified order, limit, and filter criteria
        latest_snapshots = uni.Query.financialsDailySnapshots(
            orderBy=uni.FinancialsDailySnapshot.timestamp,
            orderDirection='desc',
            first=1,
        )

        # Convert the query results to a Pandas dataframe and extract the first row
        res = sg.query_df(latest_snapshots).squeeze()
        pass
    print("Another function")


another_function()

which would give me two error message:

AttributeError: 'Subgrounds' object has no attribute 'close'
I can't close it like this.

sys:1: ResourceWarning: unclosed <ssl.SSLSocket fd=1588, family=23, type=1, proto=0, laddr=('local_address'), raddr=('remote_address')>

That's the real problem. When the program end, PY just simply terminate everything and trigger this error. I can read data from this, but how to safely close the connection?

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingquestionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions