slackapi / slackapi/python-slack-sdk

Disable historical_data_enabled in SQLAlchemyInstallationStore / SQLite3InstallationStore

Offen
#1,133 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

enhancement oauth Version: 3x
Vorherrschende Sprache
Python
Sterne
4k
Forks
857
Ø Merge
22 Std. 21 Min.
Gemergte PRs (30 T.)
16

Beschreibung

I'm migrating from FileInstallationStore to SQLAlchemyInstallationStore for storing credentials and don't want to store old installation records when the app is reinstalled.

With FileInstallationStore I used the flag for disabling historical records to do this. I'm trying to accomplish the same with SQLAlchemyInstallationStore and the SDK does check if a previous installation for the team exists and updates the existing record if so. However, in determining if a previous installation exists it requires an exact match on installed_at: https://github.com/slackapi/python-slack-sdk/blob/cf225995b722739f11bc530cc6a9263a44bd4b7a/slack_sdk/oauth/installation_store/sqlalchemy/__init__.py#L148

This guarantees that reinstalls always create a new record instead of updating the existing one since the install dates will always be different. I'm wondering if this is a bug or if its expected behaviour and there's some other way we're supposed to handle reinstalls.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne bei slack_sdk/oauth/installation_store/sqlalchemy/init.py rund um die verknüpfte installed_at-Suche und vergleiche anschließend die Behandlung historischer Datensätze mit FileInstallationStore und SQLite3InstallationStore. Ermittle, wie historical_data_enabled das Matching bei erneuten Installationen beeinflussen sollte; als erledigt gilt die Aufgabe, wenn erneute Installationen dem vorgesehenen nicht-historischen Verhalten folgen, ohne einen neuen Datensatz zu erfordern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python, sqlalchemy, sqlite
Bereich
databases
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.