Store/RELEASING.md
Matt 4689ca59c7
[Store5] Target Android, iOS, JVM, JS (#493)
* [Temp] Remove all modules

* Remove references to Store 4

* Update CHANGELOG

* Update README

* Add Store 5 foundation

Signed-off-by: mramotar <mramotar@dropbox.com>

* Dump API

Signed-off-by: mramotar <mramotar@dropbox.com>

* Delete scratch API

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix workflow

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename clear to delete

Signed-off-by: mramotar <mramotar@dropbox.com>

* Flatten sealed classes

Signed-off-by: mramotar <mramotar@dropbox.com>

* Make ShareableLruCache threadsafe

Signed-off-by: mramotar <mramotar@dropbox.com>

* First stab

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove scope

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove scope

Signed-off-by: mramotar <mramotar@dropbox.com>

* Cherry pick

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove scope

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix multithreading LRU cache test

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove logs

Signed-off-by: mramotar <mramotar@dropbox.com>

* Cover multithreaded market write

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove redundant advance

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove Stately !!

Signed-off-by: mramotar <mramotar@dropbox.com>

* Use mutex

Signed-off-by: mramotar <mramotar@dropbox.com>

* Refactor Store to interface with factory

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename to MemoryLruCache

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename to RealMarket

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename to delete all

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Clean up Android LRU cache tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix market factory

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename ConflictResolver to Bookkeeper

Signed-off-by: mramotar <mramotar@dropbox.com>

* From desktop

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Fix tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Document Lightswitch

Signed-off-by: mramotar <mramotar@dropbox.com>

* Guard against multiple releases

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename to StoreSafety

Signed-off-by: mramotar <mramotar@dropbox.com>

* Use withLock

Signed-off-by: mramotar <mramotar@dropbox.com>

* Document load

Signed-off-by: mramotar <mramotar@dropbox.com>

* Make delete and deleteAll optional

Signed-off-by: mramotar <mramotar@dropbox.com>

* Add foundation for sample app

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove Kotlin serialization

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename masterLock to mainLock

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename Bookkeeper methods

Signed-off-by: mramotar <mramotar@dropbox.com>

* Rename using Market/Network prefix

Signed-off-by: mramotar <mramotar@dropbox.com>

* Make NetworkFetcher an interface

Signed-off-by: mramotar <mramotar@dropbox.com>

* Make NetworkUpdater an interface

Signed-off-by: mramotar <mramotar@dropbox.com>

* Make MarketReader an interface

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Make MarketWriter an interface

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add app and main activity

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add scoping

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Remove unused mipmap

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add Dagger components

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Remove icon

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Draft README.md

Signed-off-by: mramotar <mramotar@dropbox.com>

* Wire account tab

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove campaigns sample

Signed-off-by: mramotar <mramotar@dropbox.com>

* Add Market wiring

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove unused resources

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix Gradle plugins

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix rebase issue

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix wiring

Signed-off-by: mramotar <mramotar@dropbox.com>

* Introduce GoodValidator

Signed-off-by: mramotar <mramotar@dropbox.com>

* Add unit tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Only load if read not in progress

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update CI and autogenerate Swift Package (#469)

* Update CI and autogenerate Swift Package

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update CI and autogenerate Swift Package

Signed-off-by: mramotar <mramotar@dropbox.com>

* Run on MacOS

Signed-off-by: mramotar <mramotar@dropbox.com>

* Only run on push

Signed-off-by: mramotar <mramotar@dropbox.com>

Signed-off-by: mramotar <mramotar@dropbox.com>

* Use KMM Bridge (#470)

* Clean up deps

Signed-off-by: mramotar <mramotar@dropbox.com>

* Use KMM Bridge

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix version prefix

Signed-off-by: mramotar <mramotar@dropbox.com>

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix Maven publish plugin (#471)

Signed-off-by: mramotar <mramotar@dropbox.com>

Signed-off-by: mramotar <mramotar@dropbox.com>

* Refactor fetcher and updater to 1:1 with market

Signed-off-by: mramotar <mramotar@dropbox.com>

* Reset Fake API

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove unused imports

Signed-off-by: mramotar <mramotar@dropbox.com>

* Run check on store

Signed-off-by: mramotar <mramotar@dropbox.com>

* Format

Signed-off-by: mramotar <mramotar@dropbox.com>

* Api Dump + Format

Signed-off-by: mramotar <mramotar@dropbox.com>

* Add default config

Signed-off-by: mramotar <mramotar@dropbox.com>

* Check all

Signed-off-by: mramotar <mramotar@dropbox.com>

* Add ItemValidator

Signed-off-by: mramotar <mramotar@dropbox.com>

* README.md

Signed-off-by: mramotar <mramotar@dropbox.com>

* With ViewModel

Signed-off-by: mramotar <mramotar@dropbox.com>

* Format

Signed-off-by: mramotar <mramotar@dropbox.com>

* Implement fetcher and updater

Signed-off-by: mramotar <mramotar@dropbox.com>

* Cleanup Readme/Remove Persister (#474)

* cleanup readme and rename a few concepts

* fix tests

* readme cleanup

* readme cleanup

* readme cleanup

* readme cleanup

* lint

Co-authored-by: Mike Nakhimovich <mnakhimovich@Mikes-MBP.localdomain>

* Regenerate gradle-wrapper.jar

Signed-off-by: mramotar <mramotar@dropbox.com>

* Prepare for release 5.0.0-alpha1

Signed-off-by: mramotar <mramotar@dropbox.com>

* Prepare for next development version

Signed-off-by: mramotar <mramotar@dropbox.com>

* Target browser and Node!

Signed-off-by: mramotar <mramotar@dropbox.com>

* Only generate Swift Package on release

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix iOS targets

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix workflow

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix workflow

Signed-off-by: mramotar <mramotar@dropbox.com>

* Run manually only

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update RELEASING.md

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update README.md

Signed-off-by: matt-ramotar <mramotar@dropbox.com>

* Run on macos

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove Dropbox references

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Prepare for release 5.0.0-alpha02

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Prepare next development version

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Update CHANGELOG.md

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add tests for complex markets

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix import

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Format

Signed-off-by: mramotar <mramotar@dropbox.com>

* Distinguish network, store, and common representations

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update NetworkFetcher

Signed-off-by: mramotar <mramotar@dropbox.com>

* Refactor inputs + outputs

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update sample + fix tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update comment

Signed-off-by: mramotar <mramotar@dropbox.com>

* Port Cache

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Update README.md

Signed-off-by: Matt <mramotar@dropbox.com>

* Move README.md

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Update README.md

Signed-off-by: Matt <mramotar@dropbox.com>

* Update README.md

Signed-off-by: Matt <mramotar@dropbox.com>

* Merge multicast from github.com/MobileNativeFoundation/Store/tree/Kmp

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Fix build errors

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Format

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Format

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Move to market package

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add Fetcher + FetcherResult

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Api dump + format

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Port Store

Signed-off-by: mramotar <mramotar@dropbox.com>

* Add unit test

Signed-off-by: mramotar <mramotar@dropbox.com>

* Format

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update .gitignore

Signed-off-by: mramotar <mramotar@dropbox.com>

* Api Dump

Signed-off-by: mramotar <mramotar@dropbox.com>

* Cover stream and fresh

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Run on MacOS

Signed-off-by: mramotar <mramotar@dropbox.com>

* Use Java 11

Signed-off-by: mramotar <mramotar@dropbox.com>

* Add HotFlowStoreTest

Signed-off-by: mramotar <mramotar@dropbox.com>

* Add gradle plugin repository

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update check.yml

Signed-off-by: Matt <mramotar@dropbox.com>

* Update check.yml

Signed-off-by: Matt <mramotar@dropbox.com>

* Add ClearAllStoreTests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Use Java 11

Signed-off-by: mramotar <mramotar@dropbox.com>

* Format

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Remove binary-compatibility-validator

Signed-off-by: mramotar <mramotar@dropbox.com>

* Ignore Store podspec

Signed-off-by: mramotar <mramotar@dropbox.com>

* Update check.yml

Signed-off-by: mramotar <mramotar@dropbox.com>

* Use Java 11

Signed-off-by: mramotar <mramotar@dropbox.com>

* Use channel flow

Signed-off-by: mramotar <mramotar@dropbox.com>

* Format

Signed-off-by: mramotar <mramotar@dropbox.com>

* Fix tests

Signed-off-by: mramotar <mramotar@dropbox.com>

* Revert workflow

Signed-off-by: mramotar <mramotar@dropbox.com>

* Disable transformation

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Disable transformation

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Disable transformation

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add ClearStoreByKeyTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add FetcherResponseTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add KeyTrackerTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add StoreWithInMemoryCacheTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add StreamWithoutSourceOfTruthTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* ValueFetcherTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add MapIndexedTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add FetcherControllerTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add StoreResponseTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add SourceOfTruthErrorsTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Add SourceOfTruthWithBarrierTests

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Remove Market and update README

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Remove Market sample

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Update README

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

* Update CHANGELOG

Signed-off-by: Matt Ramotar <mramotar@dropbox.com>

Signed-off-by: mramotar <mramotar@dropbox.com>
Signed-off-by: Matt Ramotar <mramotar@dropbox.com>
Signed-off-by: matt-ramotar <mramotar@dropbox.com>
Signed-off-by: Matt <mramotar@dropbox.com>
Co-authored-by: Mike Nakhimovich <digitalbuddha@users.noreply.github.com>
Co-authored-by: Mike Nakhimovich <mnakhimovich@Mikes-MBP.localdomain>
2022-12-18 10:53:21 -05:00

1.7 KiB

Releasing

  1. Change the version in top level gradle.properties to a non-SNAPSHOT version.
  2. Update the cocoapods version in build.gradle.kts in :store.
  3. Modify create_swift_package.yml workflow to run on store5 push.
  4. Update the CHANGELOG.md for the impending release.
  5. Update the README.md with the new version.
  6. git commit -sam "Prepare for release X.Y.Z." (where X.Y.Z is the new version)
  7. git tag -a X.Y.X -m "Version X.Y.Z" (where X.Y.Z is the new version)
    • Run git tag to verify it.
  8. git push && git push --tags
    • This should be pushed to your fork.
  9. Create a PR with this commit and merge it.
  10. Update the top level build.gradle to the next SNAPSHOT version.
  11. Modify create_swift_package.yml workflow to only run manually.
  12. git commit -am "Prepare next development version."
  13. Create a PR with this commit and merge it.
  14. Login to Sonatype to promote the artifacts https://central.sonatype.org/pages/releasing-the-deployment.html
    • This part is automated. If it fails in CI, follow the steps below.
    • Click on Staging Repositories under Build Promotion
    • Select all the Repositories that contain the content you want to release
    • Click on Close and refresh until the Release button is active
    • Click Release and submit
  15. Update the sample module's build.gradle to point to the newly released version. (It may take ~2 hours for artifact to be available after release)