-
Notifications
You must be signed in to change notification settings - Fork 24
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
fix: /nextmeetup command #30
fix: /nextmeetup command #30
Conversation
@ditsuke Pip package is not updated since 2016 and I see the last change in the meetup-api is done on 2019. It's better to install using the GitHub source Could you please update your PR accordingly and test. |
@realslimshanky I'm not using a package for the api. The |
@ditsuke Okay, I missed that file. Thanks. |
@ditsuke I read up on stacked pull requests and I think you missed an essential point while creating pull requests i.e. stacking. Instead of creating pull requests on top of another existing branch (associated with a pull request), you've made all the pull requests to be merged directly to the master branch. So, they're not stacked at all. This can be resolved by making sure #26 merged to master, #27 merged to the branch used to create #26 and #30 merged to the branch used to create #27. You see the issue here, we're increasing the complexity of PR reviews. Now, it can be useful if we're trying to solve 1 Big Problem in small chunks that are dependent on one another. But in this case #26, #27, and #30 can be completely independent. By default, it's best to create one issue per problem/feature for the repo and one PR for each issue. In case the issue is too big, dissect it into smaller issues and make sure to have only one PR per issue. This is the best way to tackle individual problems without worrying about other independent issues. And this way, the PR review will be easier. What do you think about this? Which approach do you think solves our problem in the case of these 3 PRs? |
I'd like a more detailed input on this in our next check-in, if possible.
I've read up on the rebase (put our commit on top of master/main branch
commits) and squashing commits togethers, but still not sure of what is
intended here. It'll be nice to iron this out, I am certain it will help me
ahead.
-
*Zorawar Purohit*
Virtual Meet: calendly.com/zpmeet
More Info: Bio <https://zorawar.bio.link/>
…On Tue, Aug 9, 2022 at 12:19 AM Shashank Kumar ***@***.***> wrote:
@ditsuke <https://github.com/ditsuke> I read up on stacked pull requests
and I think you missed an essential point while creating pull requests i.e.
stacking. Instead of creating pull requests on top of another existing
branch (associated with a pull request), you've made all the pull requests
to be merged directly to the master branch. So, they're not stacked at all.
#26 <#26> contains
dependency manager change and ci fix
#27 <#27> contains pytz
upgrade + changes in #26
<#26> are visible
#30 <#30> (i.e. this
PR) contains /nextmeetup command fix + changes in #26
<#26> + changes in #27
<#27> are visible
This can be resolved by making sure #26
<#26> merged to master,
#27 <#27> merged to the
branch used to create #26
<#26> and #28
<#28> merged to the
branch used to create #27
<#27>. You see the
issue here, we're increasing the complexity of PR reviews. Now, it can be
useful if we're trying to solve 1 Big Problem in small chunks that are
dependent on one another. But in this case #26
<#26>, #27
<#27>, and #28
<#28> can be completely
independent.
By default, it's best to create one issue per problem/feature for the repo
and one PR for each issue. In case the issue is too big, dissect it into
smaller issues and make sure to have only one PR per issue. This is the
best way to tackle individual problems without worrying about other
independent issues. And this way, the PR review will be easier.
What do you think about this? Which approach do you think solves our
problem in the case of these 3 PRs?
—
Reply to this email directly, view it on GitHub
<#30 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKG4K74TSHKN2RSAQUPREWDVYFJDBANCNFSM55Z5C22Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Yes, I agree with @realslimshanky that solving 1 issue per PR makes more sense. |
@realslimshanky thanks, I totally missed that point around stacked PRs! However with that approach to stacking PRs, I would be unable to use them at all since I can't create branches on this repo. I also agree with your point on a PR/issue or isolated subject, which is why I was motivated to use stacking in the first place.
I agree again! That being the case, since I have dependency changes in #27 and #30, they are in a way dependent on #26, or at least not having them follow a linear sequence of commits affects my DX because I then have to change dependencies in the original |
@ditsuke great. Let’s start with cleaning up the PR so that none of them have overlapping changes. Thanks. |
Adds support for fetching meetup info from an unofficial API
fa33e84
to
e84a288
Compare
@realslimshanky I've decoupled this PR. Please take a look |
pydelhi.py
Outdated
date_time = date_time.strftime('%Y-%m-%d %H:%M:%S %Z%z') | ||
is_online = r['is_online'] | ||
|
||
# ? is it event possible to get the venue etc from the unoffical API? possibly not |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be awesome if this works! Did you test if we can use this without an API key?
import requests | ||
import logging | ||
|
||
MEETUP_BASE_URL = "https://www.meetup.com" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The official documentation suggests the use of https://api.meetup.com/gql
. Ref: https://www.meetup.com/api/guide/#graphQl-guide
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this work without an API key?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nope. It’s better to use this endpoint.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this as in the current internal API? I don't think we can get a key for the official API since they restrict it to PRO accounts now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ditsuke We can created an OAuth application and then get the API key once it's approved - https://www.meetup.com/api/oauth/list/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As @zora89 mentioned he has already given it a go and been rejected 😞
Precisely, I'd already filled the form and tried !
-
*Zorawar Purohit*
Virtual Meet: calendly.com/zpmeet
More Info: Bio <https://zorawar.bio.link/>
…On Sat, Aug 13, 2022 at 12:42 PM Tushar ***@***.***> wrote:
***@***.**** commented on this pull request.
------------------------------
In meetup_api.py
<#30 (comment)>
:
> @@ -0,0 +1,46 @@
+import requests
+import logging
+
+MEETUP_BASE_URL = "https://www.meetup.com"
This as in the current internal API? I don't think we can get a key for
the official API since they restrict it to PRO accounts now.
—
Reply to this email directly, view it on GitHub
<#30 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKG4K762ZDDEJF3NRXX6NLTVY5DGLANCNFSM55Z5C22Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Let us try again, maybe write the application form inputs with combined
articulation, may help !
<!-- Forwarded Meetup Response Below>
*Yvan* (Meetup)
Jul 26, 2022, 3:11 PM EDT
Hi Zorawar,
We received your application regarding access to Meetup’s API and
authentication with OAuth2.
After review, your application has been denied. In order to be eligible,
you must have an active Meetup Pro subscription. We invite you to learn
more about Meetup Pro
<https://www.meetup.com/lp/meetup-pro?utm_medium=email&utm_source=transactional&utm_campaign=meetuppro_comx&utm_content=lp_meetup-pro>.
You can start a Pro network with a 1-month free trial and create up to 20
groups.
Once you’ve created a Meetup Pro account, please resubmit your application
<https://www.meetup.com/api/oauth/create/>.
Sincerely,
Yvan
Meetup's Community Support team
Start a group
<https://www.meetup.com/start/organizing?utm_medium=email&utm_source=transactional&utm_campaign=orgacq_comx&utm_content=lp_start>
| Find an event
<https://www.meetup.com/find/?utm_medium=email&utm_source=transactional&utm_campaign=memengage_comx&utm_content=find>
| Meetup Pro
<https://www.meetup.com/lp/meetup-pro?utm_medium=email&utm_source=transactional&utm_campaign=meetuppro_comx&utm_content=lp_meetup-pro>
<-->
-
*Zorawar Purohit*
Virtual Meet: calendly.com/zpmeet
More Info: Bio <https://zorawar.bio.link/>
…On Mon, Aug 15, 2022 at 12:31 PM Tushar ***@***.***> wrote:
***@***.**** commented on this pull request.
------------------------------
In meetup_api.py
<#30 (comment)>
:
> @@ -0,0 +1,46 @@
+import requests
+import logging
+
+MEETUP_BASE_URL = "https://www.meetup.com"
As @zora89 <https://github.com/zora89> mentioned he has already given it
a go and been rejected 😞
—
Reply to this email directly, view it on GitHub
<#30 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKG4K7YRY3OAMLVB3MK2YCDVZHTMFANCNFSM55Z5C22Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Given they don't give access without a Pro subscription, I'm assuming trying again without the funds to back it up is not worthwhile. Also given this circumstance was the precise reason I went in and dug up the internal API that lets us bypass said restriction. I say we should go ahead and get this in for now until Shashank or someone else can get us access to the official and recommended API, at which point it would be rather simple to refactor and take advantage of the additional features the public API allows. |
@ditsuke Could you please check in PyDelhi group if we have pro meetup.com account, this way we can utilise the API. |
Unfortunately, PyDelhi's meetup.com doesn't have a meetup pro subscription. |
How about we merge the working functionality, as the bot's absence is
prolonged now.
Post that we are free to continue development and improvements as suggested
by @realslimshanky over the call a few weeks back.
It is the best course of decision making as per me. What do you guys think?
While I understand the informality of using an ad-hoc mechanism like
scraping or an unofficial end-point may lead us to be flagged by meet-up.
But life is once, let's give it a shot !
-
*Zorawar Purohit*
Virtual Meet: calendly.com/zpmeet
More Info: Bio <https://zorawar.bio.link/>
…On Tue, Aug 16, 2022 at 3:28 PM Gaurav Pandey ***@***.***> wrote:
Unfortunately, PyDelhi's meetup.com doesn't have a meetup pro
subscription.
—
Reply to this email directly, view it on GitHub
<#30 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKG4K7YLNMZSU3CYJ6C5DRLVZNQ5BANCNFSM55Z5C22Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@ditsuke Can you try looking into how we get information about the next meetup on the pydelhi.org page and see if we can use the same API here? Ref: https://github.com/pydelhi/pydelhi.github.io/blob/master/assets/js/main.js |
@realslimshanky is this endpoint documented, or in use somewhere by the current meetup.com, or is it a ghost endpoint? If it's the latter case I feel we should stick with the internal endpoint this PR is currently using. |
any update? |
Let's go with this approach for now. It seems like we're not able to use the official API as suggested in the documentation. Also, let's make this version the last one and focus on a separate, more general implementation for a bot, we'll discuss about that later on the call. |
Done !
-
*Zorawar Purohit*
Virtual Meet: calendly.com/zpmeet
More Info: Bio <https://zorawar.bio.link/>
…On Sun, Aug 21, 2022 at 7:34 PM Shashank Kumar ***@***.***> wrote:
Let's go with this approach for now. It seems like we're not able to use
the official API as suggested in the documentation. Also, let's make this
version the last one and focus on a separate, more general implementation
for a bot, we'll discuss about that later on the call.
—
Reply to this email directly, view it on GitHub
<#30 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AKG4K76P4MOGEAYWAQSXZT3V2IZQNANCNFSM55Z5C22Q>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
What
Fixes the
/nextmeetup
command using an internal meetup.com API.Also adds autopep8 for code formatting.Why
Command was broken
The command in action
Disclaimer
This is a Stacked PR stacked atop #27.Please review in tandem and merge the PRs, without the squash or rebase options, in sequence.
For easier testing please use the latest PR.