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

Preparing for Release 1.0.0 #252

Merged
merged 17 commits into from
Dec 9, 2023
Merged

Preparing for Release 1.0.0 #252

merged 17 commits into from
Dec 9, 2023

Conversation

DevSrSouza
Copy link
Collaborator

@DevSrSouza DevSrSouza commented Nov 15, 2023

  • Creates and moves ScreenModel API to it own module.
  • Remove deprecated functions
  • Add binary compatibility validator
  • Remove Androidx module and AndroidScreen
  • Promote Experimental APIs to Stable (removing the annotation)
  • Generate the API Dump

import cafe.adriel.voyager.hilt.getScreenModel
import cafe.adriel.voyager.navigator.LocalNavigator
import cafe.adriel.voyager.navigator.currentOrThrow

class LegacyScreenOne : AndroidScreen() {
class LegacyScreenOne : Screen {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why AndroidScreen was removed in samples? Will be there any replacement of it and it's ScreenLifecycleProvider implementation?

Copy link
Contributor

@Syer10 Syer10 Nov 21, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The AndroidScreenLifecycle is now default for all screens on Android, has been for the last few builds.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Import to notice here is that: for folks that are using blinding AndroidScreen there will be a single behavior change comparing it with Screen.
Currently AndroidScreen holds a unique Id for each new instance of the Screen, this is already documented usage of the library and will be documented in the future "Migration guides".

But how @Syer10 point out, the ScreenLifecycleProvider behavior that AndroidScreen had, is no longer required anymore, is the default behavior for all screen.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the clarification!

@DevSrSouza DevSrSouza marked this pull request as ready for review November 28, 2023 17:47
@DevSrSouza DevSrSouza changed the title WIP: Preparing for Release 1.0.0 Preparing for Release 1.0.0 Nov 28, 2023
@DevNatan
Copy link
Collaborator

DevNatan commented Nov 28, 2023

@DevSrSouza can we take a look in TabOptions api design? the current design has "expected standards" for Android like title and icon but Voyager doesn't have this anywhere else in the API anymore.

And it's also a little complicated to create these options like indeX that we dont have inside the screen, this should be done by the developer from the outside. Should we see this before the release or can it be done later in a backwards compatible way?

See #141

@DevNatan DevNatan added the help wanted Extra attention is needed label Nov 28, 2023
@DevSrSouza
Copy link
Collaborator Author

@DevSrSouza can we take a look in TabOptions api design? the current design has "expected standards" for Android like title and icon but Voyager doesn't have this anywhere else in the API anymore.

And it's also a little complicated to create these options like indeX that we dont have inside the screen, this should be done by the developer from the outside. Should we see this before the release or can it be done later in a backwards compatible way?

See #141

Yes, we can look into this in next versions and also be backwards compatible.

@DevSrSouza DevSrSouza merged commit c7d10cc into main Dec 9, 2023
1 check passed
@DevSrSouza DevSrSouza deleted the work/1.0.0 branch December 9, 2023 18:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants