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

v2.0.0 beta 2 release #173

Closed
wants to merge 20 commits into from
Closed

v2.0.0 beta 2 release #173

wants to merge 20 commits into from

Conversation

mrashed-dev
Copy link
Contributor

License

I confirm that this contribution is made under the terms of the MIT license and that I have the authority necessary to make this contribution on behalf of its copyright owner.

mrashed-dev and others added 20 commits July 6, 2023 18:21
# Description
This PR shifts the Java SDK into a Kotlin SDK. This is done to enable
friendlier support for Kotlin-powered applications while still keeping
the SDK feeling native to Java, as we're designing this SDK with Java
interoperability in mind. This PR also brings support for:

- Nylas API v3
- Auth methods
- Calendars API CRUD
- Events API CRUD
- Application CRUD

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
This PR adds in-code documentation to all our models and methods to help
generate a series of supporting documentation we are calling the "SDK
Reference". The in-code documentation is formatted with KDoc and the
docs are generated using Dokka. This PR also cleans up more files from
the repo deleting un-needed legacy classes and files. Finally, this PR
also fixes the following:
- Refactored Auth methods:
  - Renamed appropriate methods to denote that they use OAuth 2.0
  - Removed support for Auth endpoints that no longer exists
  - Removed support for Providers as they are removed from the API
- Removed the client id/client secret requirement to use the auth
resource
- Make provider optional for building OAuth 2 URL
- Fix token exchange methods
- Fix revoking token
- Fix query params not being set properly
- Add missing serializer for Conferencing
- Add error classes for API errors and SDK errors

[TW-2320](https://nylas.atlassian.net/browse/TW-2320)
[TW-2321](https://nylas.atlassian.net/browse/TW-2321)

<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.

[TW-2320]:
https://nylas.atlassian.net/browse/TW-2320?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[TW-2321]:
https://nylas.atlassian.net/browse/TW-2321?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
# Description
According to the docs, the reminderMinutes should be optional

# JIRA Ticket
https://nylas.atlassian.net/browse/AV-2211

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# What did you do
Created a github action that automatically will generate SDK reference
links for every PR + automatically deploy to
https://nylas-java-sdk-reference.pages.dev/ when merged to
`v2.0.0-beta`.

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
This PR has changed the artifact name of the SDK to be consistent with
our other SDKs from `nylas-java-sdk` to just `nylas`. The SDK also now
adds a "beta" tag to indicate the beta state as we are looking to
publish these packages on maven central. The fully qualified name of the
first beta release will now be:

```
com.nylas.sdk:nylas:2.0.0-beta.1
```

We also added a UPGRADE.md file for guiding users on using the new SDK,
as well as updating the README.md.

# JIRA Tickets
[TW-2318](https://nylas.atlassian.net/browse/TW-2318)
[TW-2319](https://nylas.atlassian.net/browse/TW-2319)

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.

[TW-2318]:
https://nylas.atlassian.net/browse/TW-2318?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[TW-2319]:
https://nylas.atlassian.net/browse/TW-2319?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

---------

Co-authored-by: Lrubin <[email protected]>
Co-authored-by: LRubin <[email protected]>
# Description
This PR sets the Kotlin/Java SDK to being code-complete and ready for
the first beta release. What changed:
- Added availability support
- Added webhook support
- Added missing documentation
- Added missing null initializers for optional params
- Added missing enums
- Cleaned up unused models
- Changed the name `serverUrl` to `apiUri` for more consistency
- Fixed token request required fields

# JIRA Tickets
https://nylas.atlassian.net/browse/AV-1703
https://nylas.atlassian.net/browse/AV-1448

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
This PR is for releasing the first beta of v2 on maven central.

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
Creating a webhook should return a `WebhookWithSecret` response.

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
This PR adds support for the free busy endpoint.

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description

(Kotlin) Right now rotateSecret is set as PUT method, although it should
POST according to the documentation. This error gets generated when
calling the method.

```
Exception in thread "main" java.lang.IllegalArgumentException: method PUT must have a request body.
```

# License
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
PR fixes the following:
- Redirect URI endpoint path
- Fix query parameter serialization
- Documentation

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
…Is (#165)

# Description
Adds support for custom authentication, the connectors API and the
credentials API.

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
This PR adds support for messages, drafts, and smart compose APIs.

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
This PR adds support for folders

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
In the response object for getting availability, `order` is only
populated for round-robin events.

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# License

The Provider was causing problems so I make it optional

https://nylas.atlassian.net/browse/TW-2426

I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
Adds a getter for getting the object type of a free busy response (free
busy vs. error).

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
# Description
This PR adds support for the Attachments API

# License
<!-- Your PR comment must contain the following line for us to merge the
PR. -->
I confirm that this contribution is made under the terms of the MIT
license and that I have the authority necessary to make this
contribution on behalf of its copyright owner.
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

Successfully merging this pull request may close these issues.

3 participants