slackapi / slackapi/java-slack-sdk

Enable synchronizing SlackConfig changes to already initialized API clients

Open
#1,132 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement project:slack-api-client
Dominant language
Java
Stars
602
Forks
232
Avg merge
4d 9h
Merged PRs (30d)
7

Description

As mentioned in https://github.com/slackapi/java-slack-sdk/issues/1129

It would be nice if slackConfig.setProxy() would work after the the SlackConfig is initialized. I think it works if the library detects no environment variables and proxyUrl is null. (At least this is what happens in v1.13.0 of the library, but because this version does not try to look at the HTTPS_PROXY and HTTP_PROXY environment variables)

updating the proxy URL in the SlackConfig does not affect the already initialized Slack instances and its API clients such as MethodsClient. This is true not only for the proxy URL setting but also others that can be used for initializing API clients.

To improve this, linking a SlackConfig and all the active API clients that used the SlackConfig for initialization and synchronizing the changes. This should work well for most cases but it can be a minor behavior change. So, if we add this enhancement, perhaps, we should consider a new opt-in option for enabling the behavior change only when it's necessary.

Category (place an x in each of the [ ])
  • bolt (Bolt for Java)
  • bolt-{sub modules} (Bolt for Java - optional modules)
  • slack-api-client (Slack API Clients)
  • slack-api-model (Slack API Data Models)
  • slack-api-*-kotlin-extension (Kotlin Extensions for Slack API Clients)
  • slack-app-backend (The primitive layer of Bolt for Java)
Requirements

Please make sure if this topic is specific to this SDK. For general questions/issues about Slack API platform or its server-side, could you submit questions at https://my.slack.com/help/requests/new instead. 🙇

Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you agree to those rules.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue points to SlackConfig, initialized Slack instances, and clients such as MethodsClient; start by tracing how configuration is copied during API-client initialization. Define the synchronization and any opt-in behavior, then verify that proxy and other initialization settings changed afterward are reflected in active clients.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.