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

💡 ℹ️ Update on the Python SDK Refresh ℹ️ 💡 #375

Open
bretterer opened this issue Sep 14, 2023 · 4 comments
Open

💡 ℹ️ Update on the Python SDK Refresh ℹ️ 💡 #375

bretterer opened this issue Sep 14, 2023 · 4 comments

Comments

@bretterer
Copy link
Collaborator

Over the past year, Okta has been committed to enhancing our OpenAPI Spec to align with the latest version. This initiative has predominantly concentrated on our most widely-used libraries such as .NET, Java, and Golang. However, we recognize that this focus has led to questions and concerns about the status of our Python SDK.

In response to your feedback, we have taken proactive steps to address the future of the Python SDK. Over the past few months, our Product Management and Engineering teams, have formulated a comprehensive plan to propel our Python SDK forward. In the coming month, we will be dedicated to the internal planning and migration process to transition from the current state of Python to the refreshed OASv3 version. Our objective is to deliver a fully functional v3 version of Python in the upcoming year.

It's crucial to acknowledge that migrating from OASv2 to OASv3 entails a complete overhaul of our existing Python library. This transition will essentially be akin to introducing a brand-new SDK. While we understand that this may present some challenges for you and your developers, but we firmly believe it's a necessary step to provide you with the most robust and efficient Python SDK possible.

Now, let's talk about how you, our Python SDK community members, play a pivotal role in this journey. We're introducing an innovative concept within Okta's open-source framework for this library. While we will officially support this Python SDK as part of our open-source offerings, we're placing significant emphasis on the active involvement of our Python SDK community. While we will continue to oversee PRs and security fixes, we anticipate that new features and capabilities specific to the Python SDK, beyond our standard API updates, will come from you, our Python SDK experts.

We encourage you to keep a close eye on this repository and associated issues for ongoing updates. Your feedback is invaluable to us, and we eagerly await your insights and suggestions regarding the future of our Python SDK.

Thank you for being an integral part of the Okta Python SDK community. Together, we're shaping a brighter future for our Python SDK.

@bretterer bretterer pinned this issue Sep 14, 2023
@gabrielsroka
Copy link
Contributor

gabrielsroka commented Sep 21, 2023

@bretterer , thanks for the post and the update. it was brought to my attention by an Okta customer.

i've been working with the Python SDK since v1 came out (posting examples on the readme #123, writing scripts, etc) and even the beta version.

i've written a lot of code using it and also requests, aiohttp, and even urllib.request and shared it with customers via GH https://github.com/gabrielsroka/okta_api, Slack, etc.

the challenge i see is most customers that i work with are admins, not professional developers. they write 50-line scripts, not production quality large programs. and asking them to learn async is a lot (it took me a long time to get it). so, most of them use requests, and most of them reinvent the wheel -- over and over again, eg on pagination, on (not) using Session() (which, in fairness, the 1.0 SDK also didn't use until i suggested it #267). letting them know there's an SDK they can use and be productive right away might propel Python to be a "more widely-used library" -- ie, maybe it's a chicken and egg situation.

is the sdk for admins, too? or only professional developers?

You wrote that you've:

concentrated on our most widely-used libraries such as .NET, Java, and Golang

i think Python is in a different league than those languages. i (personally) would never script in any of those 3, but Python (or maybe JavaScript or PowerShell https://github.com/gabrielsroka/OktaAPI.psm1), sure.

when SDK v1 came out, @joelfranusic-okta (aka @jpf) and I wrote a doc (on Okta's internal wiki called "Review of the Okta Python SDK") with some thoughts (eg, on how to make it more Pythonic, comparing it to other vendors' SDKs, sync vs async, returning tuples, using exceptions, etc). i hope those will be revisited now.

i'm sure i'll have more thoughts/notes in the coming days on this.

EDIT: i should add, i'd be happy to help test/document/collaborate on the new version.

see also #328 and #353 (comment)

@crosso-au
Copy link

Thanks @bretterer !

@mdrdannyr
Copy link

Hi @bretterer,

Hope you're doing well.

Is there any update on status of the new SDK?

Would be great if there was even a rough timeline so we can understand what our next steps should be.

@bryanapellanes-okta
Copy link
Contributor

Thank you for your patience while we build the next version of the Python Sdk. While we can't make any concrete commitments about dates when work and tasks will be complete, I intend to open issues here as work ramps up and decisions need to be made. I look forward to engaging all who are interested in helping ensure the next version of the Python Sdk meets the needs of the community. cc @mdrdannyr @crosso-au @gabrielsroka

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

No branches or pull requests

5 participants