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

community: Add Google Calendar Toolkit #688

Merged
merged 10 commits into from
Jan 30, 2025

Conversation

jorge-jrzz
Copy link
Contributor

PR Description

This pull request introduces the Google Calendar toolkit integration for LangChain. This toolkit provides comprehensive functionality for managing Google Calendar events directly within LangChain workflows.

Toolkit Features:

  1. Create a new event
  2. Update an existing event
  3. Delete an existing event
  4. Search events
  5. Get information about the calendars
  6. Move an event to another calendar
  7. Get the current datetime acording to user's primary calendar (like auxliary tool)

Relevant issues

(In the main repository)

Issue: #10536
PR: #652
Discussion: #17586

Type

🆕 New Feature
✅ Test

Changes

  • Add libs\community\langchain_google_community\calendar directory for the Google Calendar toolkit integration with the following files:

    • __init__.py
    • base.py
    • create_event.py
    • current_datetime.py
    • delete_event.py
    • get_calendars_info.py
    • move_event.py
    • search_events.py
    • toolkit.py
    • update_event.py
    • utils.py
  • Update libs\community\langchain_google_community\__init__.py to include the new toolkit.

  • Add libs\community\tests\unit_tests\test_google_calendar.py for the Google Calendar toolkit unit tests.

Testing

✅ following checks passed:

  • make test (unit tests)
  • make format (code formatting)
  • make lint (linting)

Note

This PR was recently reviewed in the main repository (langchain-ai/langchain), where the reviewer requested an update to the google-auth-httplib2 package which is in EOL status. This request was addressed in this PR.

For more context, you can check out the discussion in the original pull request: #28402.

@jorge-jrzz
Copy link
Contributor Author

What do you think about this, @lkuligin ?

@lkuligin
Copy link
Collaborator

I think that's an amazing integrations, thanks for working on it!
I owe you a review, I'll try to do it over the weekend and I'm sorry for the delay.

@jorge-jrzz
Copy link
Contributor Author

No problem @lkuligin, I'm on standby for any changes or questions about the code 🫡

@lkuligin
Copy link
Collaborator

@jorge-jrzz I'm sorry for the delay. I approved but there a few minor comments. It would be great if you could take a look.
Thanks again for the great contribution!

@jorge-jrzz
Copy link
Contributor Author

Hi @lkuligin, don't worry, I already attended and answered the comments you made, and as I mentioned in the last one, it would be great if it could be downloaded like the Gmail toolkit, something like this:

pip install -qU langchain-google-community[calendar]

Anyway, I'll keep an eye out for anything.

@lkuligin
Copy link
Collaborator

Hi @lkuligin, don't worry, I already attended and answered the comments you made, and as I mentioned in the last one, it would be great if it could be downloaded like the Gmail toolkit, something like this:

pip install -qU langchain-google-community[calendar]

Anyway, I'll keep an eye out for anything.

please, feel free to add an extra group to poetry:

gmail = ["google-auth-httplib2", "google-auth-oauthlib", "beautifulsoup4"]

@jorge-jrzz
Copy link
Contributor Author

Ready, @lkuligin, thank you very much for your comments and observations, is there anything else we should check? 👀

@lkuligin
Copy link
Collaborator

@jorge-jrzz one more thing please, since you've changed the .toml file, please update the poetry.lock too

@jorge-jrzz
Copy link
Contributor Author

Oh! a little carelessness 😅

@lkuligin lkuligin merged commit af08759 into langchain-ai:main Jan 30, 2025
15 checks passed
@BoyPit
Copy link

BoyPit commented Feb 7, 2025

Hi Guys, how can I get the features ?

When I pip install langchain-google-community I don't have the folder :(

Thanks and very very good job 👍 👍 💯

@lkuligin
Copy link
Collaborator

lkuligin commented Feb 7, 2025

please, install from github at the moment, I'll prepare the new release in the next few days

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

Successfully merging this pull request may close these issues.

3 participants