#metabrainz

/

      • lucifer
        ah yes, spotify does it. but its not exactly expiring in the sense.
      • 2022-10-06 27947, 2022

      • lucifer
      • 2022-10-06 27920, 2022

      • lucifer
        when you refresh a token, spotify may optionally also return a new refresh token which invalidates the existing refresh token.
      • 2022-10-06 27949, 2022

      • lucifer
        but if you don't refresh then iiuc the old refresh token keeps working.
      • 2022-10-06 27959, 2022

      • aerozol
        re. global scope, as a derp end user I don’t really want a list of all MetaBrainz projects. Like on Google I don’t care if a Google account lets me access YouTube and Drive etc. I just want to create an account and login
      • 2022-10-06 27922, 2022

      • aerozol
        Unless it’s giving external apps access or sharing my data in some way (which creating a login isn’t, I haven’t added data yet)
      • 2022-10-06 27931, 2022

      • Freso
        mayhem: When you have a moment to task switch/for admin stuff, it would be great to have the Zoom meeting link before tomorrow. :)
      • 2022-10-06 27950, 2022

      • monkey
        To everyone at the office: choose some food from here (pizzas and others): https://cdn.website.dish.co/media/23/a2/5047358/c…
      • 2022-10-06 27951, 2022

      • mayhem
        monkey: Barbacoa, please.
      • 2022-10-06 27902, 2022

      • monkey
        noted
      • 2022-10-06 27903, 2022

      • bitmap
        monkey: funghi
      • 2022-10-06 27912, 2022

      • monkey
        👍
      • 2022-10-06 27922, 2022

      • mayhem
        I'm idle at this point. anyone have anything for me to work on?
      • 2022-10-06 27926, 2022

      • lucifer
        mayhem: alastairp: so do we do expiring refresh tokens or let it be not expiring for now?
      • 2022-10-06 27913, 2022

      • mayhem
        the latter, unless we have a clear use case in mind
      • 2022-10-06 27955, 2022

      • lucifer
        👍
      • 2022-10-06 27940, 2022

      • alastairp
        monkey: diabola
      • 2022-10-06 27942, 2022

      • lucifer
        then the final table for now to discuss,
      • 2022-10-06 27945, 2022

      • lucifer
      • 2022-10-06 27955, 2022

      • lucifer
        table to store authorization codes
      • 2022-10-06 27948, 2022

      • alastairp
        lucifer: is this an intermediate code before requesting a token?
      • 2022-10-06 27951, 2022

      • lucifer
        the scopes here can also become a join table.
      • 2022-10-06 27907, 2022

      • zas
        monkey: Pizza Mexican
      • 2022-10-06 27919, 2022

      • monkey
        👍
      • 2022-10-06 27938, 2022

      • yvanzo
        monkey: Bolets
      • 2022-10-06 27941, 2022

      • monkey
        OK
      • 2022-10-06 27943, 2022

      • lucifer
        alastairp: yes. client redirects user to MeB.org. user approves on MeB.org and gives an authorization code to client on redirect_uri. client queries MeB.org with authorizaton code to get access token.
      • 2022-10-06 27939, 2022

      • lucifer
        this is the same workflow we use in LB to auth with MB/spotify/CB etc.
      • 2022-10-06 27941, 2022

      • alastairp
        lucifer: right, in that case, I think that table is probably fine
      • 2022-10-06 27912, 2022

      • lucifer
        👍
      • 2022-10-06 27930, 2022

      • alastairp
        it's a workflow for something that we need to do, but doesn't need anything special extra based on what we've discussed
      • 2022-10-06 27919, 2022

      • alastairp
        do we want to require 3rd party apps to respond to an account deletion request?
      • 2022-10-06 27934, 2022

      • alastairp
        e.g. we POST to them to say "accoutn luficer was deleted, please remove it from your app"
      • 2022-10-06 27946, 2022

      • lucifer
        probably yes i guess.
      • 2022-10-06 27949, 2022

      • lucifer
        but can add that later
      • 2022-10-06 27956, 2022

      • lucifer
        we'll need an extra column in client table for a webhook url. and some more tables if we want to retry etc.
      • 2022-10-06 27941, 2022

      • alastairp
        strava does this via webhooks: https://developers.strava.com/docs/webhooks/
      • 2022-10-06 27935, 2022

      • lucifer
        yup same for stripe. stripe also retries with a backoff if the webhook responds with a 500 or is unreachable.
      • 2022-10-06 27905, 2022

      • alastairp
        if we implement it via webhooks, then I guess webhook implementation is another feature that we could implement later
      • 2022-10-06 27920, 2022

      • lucifer
        agreed
      • 2022-10-06 27944, 2022

      • alastairp
        in fact, when creating a strava app, you don't add the webhook url. you do it via the registration api
      • 2022-10-06 27905, 2022

      • alastairp
        so fine to skip that column for now
      • 2022-10-06 27918, 2022

      • elgranRoble has quit
      • 2022-10-06 27948, 2022

      • alastairp
        lucifer: just to confirm - these tables that you're working on are the new versions of the oauth core tables for the new auth implementation?
      • 2022-10-06 27952, 2022

      • zas
      • 2022-10-06 27953, 2022

      • mayhem
        reosarevok: did we ever respond to the "Album Cover Art Images feed" email?
      • 2022-10-06 27920, 2022

      • lucifer
        alastairp: yes.
      • 2022-10-06 27936, 2022

      • alastairp
        lucifer: great, need my help on anything?
      • 2022-10-06 27948, 2022

      • alastairp
        I could do hard-coded usernames/passwords if that's not already done
      • 2022-10-06 27902, 2022

      • alastairp
        (although lunch will probably be here in <20 mins too)
      • 2022-10-06 27912, 2022

      • zas
      • 2022-10-06 27917, 2022

      • lucifer
        alastairp: just wrote down the models for these, will generate the sql to verify after that we can create tables in db to check.
      • 2022-10-06 27930, 2022

      • alastairp
        ok
      • 2022-10-06 27940, 2022

      • reosarevok
        mayhem: I asked you to, so unless you did, no :) (sorry, forgot to remind you)
      • 2022-10-06 27941, 2022

      • lucifer
        let's regroup after you have had lunch and discuss what to do next?
      • 2022-10-06 27903, 2022

      • mayhem
        ops, on it.
      • 2022-10-06 27910, 2022

      • reosarevok
        Thanks
      • 2022-10-06 27911, 2022

      • mayhem
        lucifer: lets do that.
      • 2022-10-06 27924, 2022

      • mayhem
        monkey: need help fetching pizzas?
      • 2022-10-06 27935, 2022

      • monkey
        Got zas to help me, thanks
      • 2022-10-06 27945, 2022

      • mayhem
        ah the frenchie express
      • 2022-10-06 27933, 2022

      • reosarevok
        inb4 they go on strike before they get back with the pizzas
      • 2022-10-06 27927, 2022

      • yvanzo
      • 2022-10-06 27917, 2022

      • reosarevok
        bitmap: huh, is it intentional that lib/MusicBrainz/Server/Entity/Role/Editable.pm passes edits_pending as a boolean?
      • 2022-10-06 27908, 2022

      • reosarevok
        I guess maybe the idea is that we generally only care for display about whether there's 0 or more than 0, just a bit confusing
      • 2022-10-06 27932, 2022

      • alastairp
        lucifer: we're back
      • 2022-10-06 27946, 2022

      • mayhem
        lucifer: alastairp suggested I should work on the hard coded users in meb.org so we can start testing.
      • 2022-10-06 27938, 2022

      • lucifer
      • 2022-10-06 27953, 2022

      • lucifer
        mayhem: alastairp: the SQL schema you'll need to create in the db.
      • 2022-10-06 27903, 2022

      • mayhem
        ok, on it.
      • 2022-10-06 27917, 2022

      • lucifer
        one change from what we discussed before, added a issued_at column to client_id. for marking the time of creation of an oauth app. saw that the authlib demos were using it so added.
      • 2022-10-06 27934, 2022

      • mayhem
        makes sense
      • 2022-10-06 27919, 2022

      • lucifer
        i am working on the MeB side server implementation meanwhile.
      • 2022-10-06 27958, 2022

      • mayhem
        tables created.
      • 2022-10-06 27920, 2022

      • mayhem
        anything I can do to help? like code the three fake accounts?
      • 2022-10-06 27912, 2022

      • lucifer
        sure creating test accounts sounds good.
      • 2022-10-06 27943, 2022

      • mayhem
        which function would get called to check to see if a login is valid?
      • 2022-10-06 27912, 2022

      • lucifer
        i am not sure currently sorry. but i think regular MeB login functions.
      • 2022-10-06 27935, 2022

      • lucifer
        i'd say creating user in db would be easiest
      • 2022-10-06 27902, 2022

      • lucifer
        i.e. add new user to `ouath.user` table.
      • 2022-10-06 27950, 2022

      • lucifer
        other than that need to follow the steps here and update the branch. some steps are already done but authlib has a version out so may need to update. https://docs.authlib.org/en/latest/flask/2/index.…
      • 2022-10-06 27951, 2022

      • reosarevok
        Just make sure you don't call it ouath
      • 2022-10-06 27919, 2022

      • lucifer
        uh i named the sql schema oauth but we can rename it before deploying to prod.
      • 2022-10-06 27945, 2022

      • reosarevok
        I meant that you typoed it there, I was making sure it wasn't copied from somewhere :)
      • 2022-10-06 27956, 2022

      • lucifer
        ah okk
      • 2022-10-06 27927, 2022

      • mayhem
        ok, I'll start with adding rows to the table.
      • 2022-10-06 27909, 2022

      • lucifer
        mayhem: alastairp: updated the branch with impl. please see the TODOs here: https://github.com/metabrainz/metabrainz.org/comm… . once these are resolved we can try out the impl
      • 2022-10-06 27911, 2022

      • lucifer
        (except for bugs that will show up when we run first and fix retry so on)
      • 2022-10-06 27929, 2022

      • lucifer
        working through authlib docs to resolve these TODOs currently.
      • 2022-10-06 27909, 2022

      • mayhem
        everyone: I've created three dummy user/password entries right now: test1/test1 , test2/test2 , test3/test3
      • 2022-10-06 27927, 2022

      • mayhem
        lucifer: a bcrypted password looks like this `{CRYPT}$2b$12$VzZ0OEmapdPUqw.4.ZTeZuBUz2RE6m.oPzXRDqpt8CpMubQiJ5kVq`
      • 2022-10-06 27957, 2022

      • mayhem
        when passing it to the bcrypt function, we need to remove the {crypt} which indicates to us which hash alg to use.
      • 2022-10-06 27917, 2022

      • lucifer
        i see, makes sense.
      • 2022-10-06 27942, 2022

      • lucifer
        oh i think i might be able to sidestep these todos. let me put up the current branch on test.meb.org and check
      • 2022-10-06 27953, 2022

      • lucifer
        mayhem: how about i change the login endpoint in this branch so that anyone who logins there is logged in as test1/test1?
      • 2022-10-06 27910, 2022

      • mayhem
        sure
      • 2022-10-06 27915, 2022

      • lucifer
        well not even login, just click login and done
      • 2022-10-06 27924, 2022

      • lucifer
        👍
      • 2022-10-06 27927, 2022

      • mayhem
        yeah, understood
      • 2022-10-06 27902, 2022

      • zas
        mayhem suggested we do a group photo with everyone here at the office wearing the amazing new summit t-shirt. It would be nice to do that at 17 in main hall, before the daylight is too low.
      • 2022-10-06 27931, 2022

      • mayhem
        ok
      • 2022-10-06 27946, 2022

      • mayhem
        we'll have to hold lucifer's shirt up to the laptop, I guess.
      • 2022-10-06 27957, 2022

      • aerozol
      • 2022-10-06 27942, 2022

      • mayhem
        yvanzo: done. conf in email
      • 2022-10-06 27903, 2022

      • yvanzo
        mayhem: thanks
      • 2022-10-06 27925, 2022

      • yvanzo
        aerozol: just have to wait now ^
      • 2022-10-06 27917, 2022

      • lucifer
        mayhem: i am getting the error that oauth.user table doesn't exist.
      • 2022-10-06 27927, 2022

      • Sophist-UK has quit
      • 2022-10-06 27939, 2022

      • lucifer
        can you check those tables were created in the right db afterwards?
      • 2022-10-06 27911, 2022

      • alastairp
        lucifer: can you join meet>
      • 2022-10-06 27904, 2022

      • lucifer
        yes one sec
      • 2022-10-06 27904, 2022

      • alastairp
        hi ansh
      • 2022-10-06 27921, 2022

      • alastairp
        I was just talking to aerozol about the page at https://critiquebrainz.org/statistics/
      • 2022-10-06 27934, 2022

      • alastairp
        it'd be great to see a breakdown of number of reviews/ratings for each entity type here
      • 2022-10-06 27926, 2022

      • ansh
        Hi! This addition sound really good.
      • 2022-10-06 27954, 2022

      • ansh
        We can probably show them similar to how we show the statistics on lb
      • 2022-10-06 27903, 2022

      • lucifer
        mayhem: ah i see, tables were created in prod meb db not test meb db. i'll recreate tables there.
      • 2022-10-06 27935, 2022

      • alastairp
        ansh: yes, or like musicbrainz: https://musicbrainz.org/statistics
      • 2022-10-06 27927, 2022

      • ansh
        alastairp: Yes, this is more detailed.
      • 2022-10-06 27924, 2022

      • ansh
        alastairp: But, we won't be able to show such detailed statistics for reviews for particular types of an entity_type. For example the number of reviews for Person, Group, Orchestra, Choir... which are types for artist.
      • 2022-10-06 27907, 2022

      • alastairp
        ansh: given the number of reviews of artists that we have, I think it's probably OK if we just had a total count of reviews for now ;)
      • 2022-10-06 27911, 2022

      • ansh
        True
      • 2022-10-06 27906, 2022

      • alastairp
        aerozol: otherwise, the easiest solution would probably be an amazon order that will get here tomorrow
      • 2022-10-06 27956, 2022

      • alastairp
        there's a shopping center here, which has Carrefour (hypermarket, has electronics stuff in the top floor): https://www.google.com/maps/place/Carrefour/@41.4…
      • 2022-10-06 27928, 2022

      • alastairp
        Pratha-Fish: hi, are you around?
      • 2022-10-06 27919, 2022

      • Pratha-Fish
        alastairp: hi i am doing dinner rn. Will he back in 15 mins
      • 2022-10-06 27933, 2022

      • alastairp
        Pratha-Fish: great, ping me if you're back to work this evening
      • 2022-10-06 27955, 2022

      • lucifer
        alastairp: ok was able to create an application in MeB oauth, can try testing with LB now.
      • 2022-10-06 27958, 2022

      • alastairp
        lucifer: awesome, is that running on test?
      • 2022-10-06 27923, 2022

      • lucifer
      • 2022-10-06 27941, 2022

      • alastairp
        but test doesn't have a web interface to view apps, right?
      • 2022-10-06 27955, 2022

      • alastairp
        what server is this running on? or do you have a psql connect string? :)
      • 2022-10-06 27928, 2022

      • lucifer
        `https://test.metabrainz.org/new-oauth/authorize` and `https://test.metabrainz.org/new-oauth/token` for urls to use in LB.
      • 2022-10-06 27944, 2022

      • lucifer
        sent the url
      • 2022-10-06 27904, 2022

      • alastairp
        thanks!
      • 2022-10-06 27931, 2022

      • lucifer
        also can create new oauth app using https://test.metabrainz.org/new-oauth/create_clie…
      • 2022-10-06 27900, 2022

      • lucifer
        monkey: aerozol: one thing that irritates me sometimes is how small `i` looks `l` in the sintony fonts. you probably have noticed it on various meb sites. can that be improved?
      • 2022-10-06 27942, 2022

      • lucifer
      • 2022-10-06 27916, 2022

      • lucifer
        iiuc, it happens when the text is bold. but maybe wrong.
      • 2022-10-06 27909, 2022

      • BrainzGit
        [design-system] 14akshaaatt opened pull request #85 (03master…login): Login components added and Dependenices bump https://github.com/metabrainz/design-system/pull/…
      • 2022-10-06 27910, 2022

      • monkey
        Hm, I did notice that a couple of times
      • 2022-10-06 27923, 2022

      • monkey
        Not sure what we could do to improve that other than change the font :/
      • 2022-10-06 27949, 2022

      • Sophist-UK joined the channel
      • 2022-10-06 27938, 2022

      • alastairp
        Pratha-Fish: hi, so I ran your examples and saw the bit where it takes about 16 seconds to process this specific file (as you said, about 100k rows)
      • 2022-10-06 27952, 2022

      • Pratha-Fish is back :D
      • 2022-10-06 27902, 2022

      • alastairp
        however, did you notice that if you run the exactly the same code again, it takes ~1.5s
      • 2022-10-06 27915, 2022

      • alastairp
        I wonder if most of this time was actually loading our mapping dataframes into memory?
      • 2022-10-06 27915, 2022

      • Pratha-Fish
        alastairp: yes, I noticed
      • 2022-10-06 27943, 2022

      • Pratha-Fish
        Hmmm that's very likely
      • 2022-10-06 27949, 2022

      • Pratha-Fish
        One option could be to avoid dataframes and process individual columns are numpy arrays