Skip to content

Proxima v0.4.1

Compare
Choose a tag to compare
@github-actions github-actions released this 24 May 07:04
· 249 commits to main since this release
8887f7f

Changelog

All notable changes to this project will be documented in this file.

[0.4.1] - 2024-05-24

🚀 Features

  • (milestone-3-github-project) Add milestone milestone 3 project board
  • (milestone-3-github-project) Updated project
  • (github-project) Use new way of marking user stories
  • (logo_progress_indicator) Add custom progress indicator
  • (logo_progress_indicator) Add the new progress indicator to the app
  • (profile) Sort posts from lattest to oldest
  • (profile) Add publication time field to user post details
  • (profile) Sort the user posts on the profile page
  • (profile) Update hash and == test of user posts
  • (profile) Make publication time random
  • (map-selection) Add view-model for option selection
  • (map-selection) Connect view-model to ui
  • (map-selection) Add 'my posts' getting logic
  • (map) Add provider with mock firestore and position
  • (post-generator) Add createUserPosts function
  • (map-selection) Add 'challenges' getting logic
  • (mock-homepage) Add additionalOverrides parameter
  • (map-options) Add 'refresh' method to pin view model
  • (ranking) Add navigation to empty ranking page
  • (ranking_element_details) Add the data class & tests
  • (ranking_details) Add the data class & tests
  • (ranking_element_details) Add user username to ranking element details
  • (ranking_details) Add checking & documentation of null userRank
  • (ranking) Add ranking UI
  • (ranking_card) Add static const text ---
  • (ranking_card) Use => return syntax for onTapUserPopUp
  • (ranking_widget) Bring mock data creation closer for easier view model integration
  • (ranking_card) Add dark mode colors
  • (ranking_card) Improve readability with ? and ?? operators on userRankText
  • (ranking_card) Improve readability of cardColor
  • (comment) Add publication time field
  • (profile) Sort user comments from latest to oldest
  • (profile) Add test for single comment case
  • (ranking-vm) Add the getTopUsers method to the UserRepositoryService
  • (ranking-vm) Tack the new viewmodel for ranking
  • (ranking-vm) Add the full code for users ranking viewmodel
  • (ranking-vm) Add the refresh feature to rankings
  • (ranking-vm) Convert ranking widget to get a ranking details arg
  • (ranking-vm) Await both futures at the same time
  • (challenge-refresh-page) Show refresh page

🐛 Bug Fixes

  • (loading_icon_button) Revert logo progress indicator
  • (logo_progress_indicator) Use private static const for asset path
  • (map-options) Remove active challenge pins
  • (map-options) Refresh pins on post deletion
  • (map-options) Refresh pins on post creation
  • (map-options) Refresh pins on challenge completion
  • (navigation_bar_routes) Add const to RankingWidget creation
  • (ranking_details_test) Use generated user in test
  • (ranking-ui) Move static const at the top of the class
  • (ranking_card) Put user popup function within the build method
  • (ranking_card) Put card widget content in final variable
  • (ranking_card) Use theme font size & reduce SizedBox width for rank text
  • (map-options-test) Remove unnecessary tester.tap
  • (fake-post) CreateUserPost creates a post with the correct geohash
  • (create-account) Remove unused variable
  • (profile) Use sorted instead of ..sort for consistency with user post viewmodel
  • (comment) Add default value for publication time
  • (test) Change MockChallengeViewModel to AutoDisposeAsyncNotifier
  • (challenge-tests) Add await before setPostsFirestore
  • (imports) Fix import after moved package
  • (test) Import ranking correctly
  • (profile) Add const and remove unused var
  • (new_post_form) Revert postbutton to Expanded in row
  • (more-e2e) Use corrected navigation enum class name

🚜 Refactor

  • (feed-sort) Move view model to 'option_selection' package
  • (feed-sort) Abstract view-model logic to an abstract class
  • (map-details) Remove selectOption unusued attribute
  • (map-pin) Move nearby posts getting logic to a function
  • (map-pin) Abstract post to map pin details conversion to a function
  • (map-options) Use a map for keys
  • (map-options-test) Abstract test beginning in function
  • (map-options-test) Abstract pins-posts comparison in function
  • (map-options-test) Merge nearby and myPosts tests
  • (map-options-test) Abstract testing an option to a function
  • (map-options-test) Put variable setup closer to their tests
  • (map-options-test) Replace magic constant by named 'completedChallengeIdx' one
  • (map-options) Make pin view-model auto-disposed
  • (map-options-test) Use full home page instead of map screen only
  • (map-options-test) Abstract navigation tests to a function
  • (ranking_card) Move constructor parameter closer to the constructor
  • (ranking_card) Set static const variable to private
  • (home-providers) Duplicate providers instead of adding additionalOverrides parameter
  • (map-options-test) Rename testOption to testCurrentSelectionOptionAndPins
  • (map-options-test) Use find.byType instead of find.byKey
  • (map-options) Use geolocationService:getCurrentPosition
  • (map-options-test) Remove userPost from challenges
  • Rename PublicationHeader to PostCardHeader and move it
  • Move user profile pop up out
  • (user-pop-up) Use body large font for pseudo
  • (create-account) Update min and max username length
  • (create-account) Reduce max name length in tests and regex
  • (test-create-account) Add var for min and max length
  • (challenges) Replace AsyncNotifier by AutoDisposeAsyncNotifier
  • (challenge-viewmodel-test) Centralize setUp
  • (challenge-tests) Make var final
  • (ranking-ui) Move components to a separate directory
  • (more-e2e) Make generation function more concise
  • (mock-geopoint) Typo in variable name
  • (more-e2e) Create the post generator in the setup
  • (more-e2e) Separate helper functions into another file
  • (profile) Remove badges
  • (map) Remove heatmap
  • (profile) Remove settings icon
  • (new-post) Remove settings button
  • Remvoe NotImplemented class
  • Rename NavigationBarRoutes
  • (test) Replace NavigationBarRoutes
  • (challenge-refresh-page) Use error refresh page everywhere
  • (challenge-refresh-page) Name constants
  • (cahllenge-refresh) Simplify refresh function
  • (more-e2e) Put helper functions inside a class

📚 Documentation

  • (profile) Correct typo
  • (map-options-test) Add documentation to helper functions
  • (map-options-test) Improve testing documentation
  • (ranking_details) Add documentation for ranking details
  • (ranking-ui) Fix documentation saying class instead of widget
  • (ranking_widget) Add TODO view model integration on rankingDetails
  • (map-options-view-model) Add class documentation
  • (map-options) Add class documentation to MapSelectionOptionChips)
  • (new-post) Add class documentation to NewPostViewModel
  • (e2e-test) Add doc to helper functions
  • (create-account-vm) Update doc with new min and max string lengths
  • (challenge-viewmodel) Add justification for AutoDisposeAsyncNotifier<List>
  • (ranking-vm) Fix comments in tests
  • (ranking-vm) Documentation of RankingPage
  • (more-e2e) Document goToPoint

🎨 Styling

  • Organise imports alphabetically
  • (map-test) Remove unused import

🧪 Testing

  • (profile) Add test to check the ordering user posts on the profile page
  • (profile) Add function to get corresponding post firstore from post details
  • (profile) Use fake firestore instance
  • (profile) Add test for single post case
  • (profile) Add test for empty posts case
  • (map-options) Verify the default option is correct
  • (map-options) Verify nearby posts pins
  • (map-options) Verify user posts pins
  • (map-options) Verify behaviour before clicking on any chip
  • (map-options) Test all options twice for more robustness
  • (map-options) Test 'Challenges' option
  • (map-options) Add regression test for pin refresh on post creation
  • (map-options) Add regression test for pin refresh on post deletion
  • (map-options) Add regression test for pin refresh on challenge completion
  • (ranking) Add test keys
  • (ranking) Add mock data for ranking page
  • (ranking_widget) Add static test
  • (ranking_list) Add static test
  • (ranking_list) Remove color check
  • (ranking_list) Wrap test in group and rename test
  • (ranking_widget) Wrap test in group and rename test
  • (e2e-test) Add a challenge user flow
  • (e2e-test) Test that points are given out on challenge completion
  • (e2e-test) Test posting a comment
  • (e2e-test) Test deleting a comment
  • (e2e-test) Test distance updates with intermediate positions
  • (e2e-test) Use regex to match the description
  • (comment) Update mocks to take publication time
  • (comment) Update hash and == tests with publication time
  • (profile) Add test to check the ordering of user comment details
  • (profile) Add test for empty user comments case
  • (challenges) Test challenge distance update on move and refresh
  • (ranking-vm) The getTopUsers method returns correctly with not enough users
  • (ranking-vm) Ranking viewmodel provider override setup up
  • (ranknig-vm) Expect correct number of users returned
  • (ranking-vm) Testing logged in user has correct values
  • (ranking-vm) Correct values and ordering from viewmodel
  • (ranking-vm) Test for correct refresh of viewmodel
  • (ranking-vm) Add a test that combines UI and viewmodel ranking
  • (ranking-vm) Use overrideWithValue to "allow better code homogeneity"
  • (ranking-vm) Use the hasLength matcher
  • (ranking-vm) Use isSorted instead of reduce >=
  • (ranknig-vm) Use isNot(equals(.)) matcher instead of operator
  • (ranking-vm) Abstract the rankingPageMockApp into provider_ranking.dart
  • (ranking-vm) Use hasLength matcher
  • (ranking-vm) Use hasLength matcher
  • (ranking-vm) Alternative to reduce in testing
  • (challenge-refresh-page) Add a regression test
  • (challenge-refresh-page) Find with key
  • (challenge-refresh-page) Test refresh page

⚙️ Miscellaneous Tasks

  • Bump project version to 0.4.1

Opt

  • (map-selection) Only refresh chips on option change