Skip to content

Commit 322f33b

Browse files
dt-iohkLynxLynxxdamian-molinski
authored
feat(cat-voices): Migrate to pub workspaces (#3445)
* feat(cat-voices): update android config (#3298) * feat: android app name * chore: update gradle * feat: transform groove to kotlin * feat: adding icons * feat: update background in loading in app splash for mobile * feat: update app flavor and env selection * feat: update grade-wrapper * feat: use specific sdk version * feat: update key derivation android config * feat: update remote_widgets android config * feat: update bundle id * fix: spelling * feat(cat-voices): update recommended settings and readme (#3321) * feat: update recommended settings and readme * fix: format * fix: format * feat: remove flavor from name * feat(cat-voices): ios config (#3315) * feat: podfile update * feat: update icons * feat: update pod file * feat: update catalyst key derivation * feat: update remote_widgets * chore: remove Podfile.lock from tracking and to gitignore * chore: update build targets * chore: add files to earthlyignore * refactor(cat-voices): split catalyst platform into operating system and form factor enums (#3317) * refactor: split catalyst platform into os and form factor * chore: cleanup * refactor: unify mobile detection * feat: allow embed builders on web only * chore: cleanup tests * chore: cleanup * refactor: simplify the expression * refactor: use data widget builder * docs: clarify int constraints * refactor: migrate api * feat(cat-voices): permission handler (#3337) * chore: adding dependencies * feat: adding permission for android * feat: permission handler factory * feat: exporting models * feat: adding dependencies * fix: android manifest format * feat: adding catalyst operating system * feat: adding catalyst operating system * feat: refactor to used rationale and explanation exception * feat: adding queue * chore: remove android manifest permission * fix: remove white space and sort intl * chore: change location of permission_mixin * chore: remove unused file * feat(cat-voices): native drift (mobile) db (#3371) * define native database and its paths * docs: update README * chore: markdown formatting * fix: readme * feat(cat-voices): io downloader (#3361) * chore: adding dependencies * feat: adding permission for android * feat: permission handler factory * feat: exporting models * feat: adding dependencies * fix: android manifest format * feat: adding catalyst operating system * feat: adding catalyst operating system * feat: refactor to used rationale and explanation exception * feat: adding queue * chore: remove android manifest permission * fix: remove white space and sort intl * feat: io downloader implementation * chore: remove comments * fix: spelling * feat: extracting common logic * chore: update logic for downloader class * chore: remove unused mixin * fix: format * chore: review update * chore: set default strategy * chore: remove files * chore: added permission * chore: remove old files * feat(cat-voices): uploader service (#3376) * feat: uploader service * chore: review update * feat(cat-voices): Discovery Page mobile screen adjustment (#3380) * feat: adjust discovery page to mobile screen * feat: adding responsive_sized_box * chore: review update * chore: update docs * feat(cat-voices): proposals page - mobile (#3377) * single out single_select_dropdown.dart and clean up imports * refactor: making ProposalsOrderDropdown little more flexible * wrapping order dropdown * fix selector List problem * fix: divider and spacings * chore: PaginatedGridView response alignment * feat: response header and content padding * chore: cleanup imports * ripple borders * feat(cat-voices): registration mobile - part 1 (#3393) * chore: rename VoicesTwoPaneDialog to VoicesTwoPanelDialog * add fullscreenDialog parameter * chore: split RegistrationDialog into smaller widgets * move constraints directly to Dialog parameter * refactor: upload dialog splitted into smaller widgets * chore: use spacing instead of separatedBy * use Visibility.maintain * use SizeBox-es instead of paddings * chore: VoicesAlertDialog now uses BoxConstraints instead of SizedBox * wip * chore: vertical panels * cleanup info container * chore: update VoicesPanelsDialog docs and make it more generic * Remove ResponsiveBreakpointKey.other * loose constrains for mobile * PR review updates * chore: typo * feat(cat-voices): Mobile support for category detail page (#3392) * feat: initial screen adjustements * feat: mobile support category detail page * chore: review update * chore: use sizeOf * feat: registration mobile - part 2 (#3395) * chore: rename VoicesTwoPaneDialog to VoicesTwoPanelDialog * add fullscreenDialog parameter * chore: split RegistrationDialog into smaller widgets * move constraints directly to Dialog parameter * refactor: upload dialog splitted into smaller widgets * chore: use spacing instead of separatedBy * use Visibility.maintain * use SizeBox-es instead of paddings * chore: VoicesAlertDialog now uses BoxConstraints instead of SizedBox * wip * chore: vertical panels * cleanup info container * chore: update VoicesPanelsDialog docs and make it more generic * Remove ResponsiveBreakpointKey.other * loose constrains for mobile * PR review updates * chore: typo * chore: remove scroll from dialog vertical panels impl * chore: registration is web only * Enable importing SeedPhrase * chore: minor adjustments * fix: SeedPhrase test * chore: cleanup func name * feat(cat-voices): responsive account page (#3396) * revert ResponsiveStateResolver to use width instead of shortestSide * ColumnsRow updates * AccountPage tiles responsive adjustments * learn more button * cleanup dialogs * more adjustments * discovery deleted confirm * fix: failing test * remove buttons global _launch in favour of LaunchUrlMixin * simplify keychain delete low * remove covariant * fix proposals page for small screens (#3405) * feat(cat-voices): workspace responsiveness (#3401) * feat: adding responsiveness to workspace * chore: remove unused param * chore: review update * feat(cat-voices): catalyst compression with rust (#3370) * chore: upgrade CI * chore: generate code * feat: generate catalyst_compression_native with flutter_rust_bridge * feat: signatures for rust functions * chore: regenerate * feat: implement brotli decoder * feat: add zstd algorithm * chore: replace catalyst_compression with native rust implementation * refactor: rename frb crates * chore: rename compression native to compression * refactor: cleanup unnecessary web prefix * fix: web prefix * feat: add wasm_bindgen module name * fix: add missing param * feat: update flutter_rust_bridge * chore: pin flutter_rust_bridge to git hosted version * feat: custom thread pool * feat: custom thread pool in key derivation package * chore: generated files * feat: config * chore: generate code * chore: cleanup + lints * chore: add compression rust tests * chore: sync missing files * chore: allow github repo * chore: sync configs * chore: fix lints, add code generation to pre-push * chore: cleanup and lint issues * chore: generate code * fix: wrong type * chore: docs and syntax fix * fix: lint issues, regenerate * fix: wasm_bindgen name * fix: lint issues, missing docs * fix: pre-push command fixes * refactor: align naming with other targets * fix: melos issues * chore: cleanup * fix: earthly targets * fix: update pre-push tasks to avoid using melos * chore: spelling * chore: reformat * feat(cat-voices): voting page responsiveness (#3407) * fix(cat-voices): Ada symbol does not render on android (#3409) * fix: google fonts unable to display ada symbol * chore: reformat * chore: reformat * feat(cat-voices): proposal page responsiveness (#3410) * feat: proposal responsiveness * chore: review update * feat(cat-voices): versioning from tags (#3399) * test * tag version without handling suffixes * handling build_name suffixes * remove debug prints * docs * refactor(cat-voices): responsive builder best matching breakpoint (#3421) * refactor: attempt to find best matching breakpoint * refactor: responsive builder usage and responsive padding * refactor: remove other or fallback from responsive widgets * chore: tests * chore: cleanup * refactor: reimplement responsive to allow const constructors * chore: cleanup * chore: reformat * chore: cleanup * chore: more tests * feat(cat-voices): proposal builder responsiveness (#3432) * feat: adding responsiveness * chore: review update * chore: remove unused widget * feat(cat-voices): Responsive app bar (#3434) * refactor: split into more widgets * chore: reformat code * feat: responsive appbar action buttons * feat: update button ui * feat: configure dart workspaces * chore: refine example package name * feat: migrate melos to workspaces * chore: migrate licenses generator * chore: reformat * feat: migrate licenses * chore: missing licenses, cleanup * docs: update outdated docs * feat: add missing requirements * refactor: simplify version management * feat: add missing requirements * chore: update ci version * feat: migration, allow concurrency in melos * refactor: order dependents * feat: more concurrency * feat: concurrency * fix: warnings * fix: concurrency * fix: reporters * feat: no concurrency param * fix: revert ffigen * docs: fix markdown * feat: update flutter rust bridge * feat: migrate rust codegen * fix: update flutter_rust_bridge to address wasm-bindgen-cli * feat: update frb * fix: downgrade frb * fix(cat-voices): Running unit tests in earthly on macos (#3477) * fix: running unit tests in earthly in mac on arm64 * fix: cleanup * feat(cat-voices): switch to flutter_rust_bridge iohk fork (#3478) * feat: switch to iohk fork of flutter_rust_bridge * chore: sync cfg * feat: update flutter_rust_bridge version * feat: update flutter rust bridge * feat: lock wasm-bindgen last working version * fix: update flutter_rust_bridge version * fix: ignore unused deps * feat: regenerate code * fix: running unit tests in earthly in mac on arm64 * fix: cleanup * chore: cleanup * chore: sync-cfg * fix: missing workspace resolution * fix: incompatible ffigen version * fix: pre-push command * Apply suggestion from @LynxLynxx Co-authored-by: Ryszard Schossler <[email protected]> * chore: revert docs * chore: use versioned CI version --------- Co-authored-by: Ryszard Schossler <[email protected]> Co-authored-by: Damian Moliński <[email protected]> Co-authored-by: Damian Molinski <[email protected]>
1 parent 8b5c162 commit 322f33b

File tree

60 files changed

+1235
-493
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

60 files changed

+1235
-493
lines changed

Earthfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
VERSION 0.8
22

3-
IMPORT github.com/input-output-hk/catalyst-ci/earthly/mdlint:v3.5.18 AS mdlint-ci
4-
IMPORT github.com/input-output-hk/catalyst-ci/earthly/cspell:v3.5.18 AS cspell-ci
5-
IMPORT github.com/input-output-hk/catalyst-ci/earthly/postgresql:v3.5.18 AS postgresql-ci
3+
IMPORT github.com/input-output-hk/catalyst-ci/earthly/mdlint:v3.5.20 AS mdlint-ci
4+
IMPORT github.com/input-output-hk/catalyst-ci/earthly/cspell:v3.5.20 AS cspell-ci
5+
IMPORT github.com/input-output-hk/catalyst-ci/earthly/postgresql:v3.5.20 AS postgresql-ci
66

77
ARG --global REGISTRY="harbor.shared-services.projectcatalyst.io/dockerhub/library"
88
FROM ${REGISTRY}/debian:stable-slim

catalyst-gateway/Earthfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
VERSION 0.8
22

3-
IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.5.18 AS rust-ci
3+
IMPORT github.com/input-output-hk/catalyst-ci/earthly/rust:v3.5.20 AS rust-ci
44
IMPORT ../ AS repo-ci
55
IMPORT github.com/input-output-hk/catalyst-voices/catalyst-gateway:main AS cat-gateway-main
66

catalyst-gateway/event-db/Earthfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# the database and its associated software.
44
VERSION 0.8
55

6-
IMPORT github.com/input-output-hk/catalyst-ci/earthly/postgresql:v3.5.18 AS postgresql-ci
6+
IMPORT github.com/input-output-hk/catalyst-ci/earthly/postgresql:v3.5.20 AS postgresql-ci
77

88
# cspell: words
99

catalyst-gateway/tests/Earthfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# cspell: words unittests socat
22

33
VERSION 0.8
4-
IMPORT github.com/input-output-hk/catalyst-ci/earthly/spectral:v3.5.18 AS spectral-ci
4+
IMPORT github.com/input-output-hk/catalyst-ci/earthly/spectral:v3.5.20 AS spectral-ci
55
IMPORT .. AS gateway
66

77
# build all necessary docker images required to run `docker-compose.yml` services

catalyst-gateway/tests/api_tests/Earthfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
VERSION 0.8
22

3-
IMPORT github.com/input-output-hk/catalyst-ci/earthly/python:v3.5.18 AS python-ci
3+
IMPORT github.com/input-output-hk/catalyst-ci/earthly/python:v3.5.20 AS python-ci
44
IMPORT github.com/input-output-hk/catalyst-libs/rust:catalyst-signed-doc/v.0.0.6-refinery-fix AS cat-libs-rust
55
IMPORT github.com/input-output-hk/catalyst-libs/rust:catalyst-signed-doc/v.0.0.4-refinery-fix AS dep-cat-libs-rust
66
IMPORT github.com/input-output-hk/catalyst-storage AS cat-storage

catalyst_voices/.earthlyignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
# Rust related
3434

3535
**/target
36+
**/Cargo.lock
3637

3738
# iOS related
3839
**/Podfile.lock

catalyst_voices/Earthfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ VERSION 0.8
22

33
IMPORT ../ AS repo-ci
44
IMPORT ../catalyst-gateway AS catalyst-gateway
5-
IMPORT github.com/input-output-hk/catalyst-ci/earthly/flutter:v3.5.18 AS flutter-ci
5+
IMPORT github.com/input-output-hk/catalyst-ci/earthly/flutter:v3.5.20 AS flutter-ci
66

77
# repo-catalyst-voices - Creates artifacts of all configuration files,
88
# packages and folders related to catalyst_voices frontend.
@@ -41,8 +41,8 @@ code-generator:
4141
WORKDIR /frontend
4242

4343
RUN melos l10n
44-
RUN melos build_runner
45-
RUN melos build_runner_repository
44+
RUN melos build-runner
45+
RUN melos build-runner-repository
4646

4747
IF [ $save_locally = true ]
4848
# This step saves generated files other then OpenApi Services

catalyst_voices/README.md

Lines changed: 5 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -22,23 +22,21 @@ This repository contains the Catalyst Voices app and packages.
2222
* [GitHub Token / PAT Setup](#github-token--pat-setup)
2323
* [Security Notes](#security-notes)
2424
* [Running Tests](#running-tests)
25-
* [Common issues](#common-issues)
2625

2726
## Requirements
2827

29-
* flutter: 3.32.8+
30-
* Dart: 3.8.0+
28+
* Flutter: 3.35.1+
29+
* Dart: 3.9.0+
3130
* Ruby: 2.5+
32-
* Xcode: 15.0+
33-
* Android Studio: Android Studio Electric Eel | 2022.1.1 +
31+
* Xcode: latest
32+
* Android Studio: latest
3433
* Android SDK: 23+
3534
* iOS SDK: 15.0+
3635
* [Melos](https://melos.invertase.dev)
3736
* [Fastlane](https://fastlane.tools)
3837
* Flutter & Dart plugins:
3938
* [Visual Studio Code](https://flutter.dev/docs/get-started/editor?tab=vscode)
4039
* [Android Studio / IntelliJ](https://flutter.dev/docs/get-started/editor?tab=androidstudio)
41-
* [Emacs](https://docs.flutter.dev/get-started/editor?tab=emacs)
4240
* [Rust](https://rustup.rs/): 1.80.0+
4341

4442
❗️We recommend using **Visual Studio Code** as the **default editor** for this project.
@@ -56,6 +54,7 @@ This repository contains the Catalyst Voices app and packages.
5654
```sh
5755
git clone https://github.com/input-output-hk/catalyst-voices.git
5856
cd catalyst_voices
57+
melos install
5958
just bootstrap
6059
```
6160

@@ -230,25 +229,3 @@ genhtml coverage/lcov.info -o coverage/
230229
# Open Coverage Report
231230
open coverage/index.html
232231
```
233-
234-
## Common issues
235-
236-
1. Mixed dependencies from a hosted repository and local path:
237-
238-
```sh
239-
Because every version of catalyst_cardano_web from path depends on catalyst_cardano_serialization
240-
from hosted and catalyst_voices depends on catalyst_cardano_serialization from path,
241-
catalyst_cardano_web from path is forbidden.
242-
So, because catalyst_voices depends on catalyst_cardano_web from path, version solving failed.
243-
```
244-
245-
Solution:
246-
247-
When adding a new local dependency, hosted repository (i.e. pub.dev) should be preferred over local paths.
248-
However to make it easier to depend on local changes use `melos bootstrap` to generate `pubspec_overrides.yaml`.
249-
This allows to publish the source code on remote repository that points to official dependency versions
250-
but use local changes during regular development.
251-
252-
The issue appears if you have added a new dependency or pulled code that adds dependency and you haven't run `melos bootstrap`.
253-
254-
See [Melos](https://melos.invertase.dev).

catalyst_voices/apps/voices/integration_test/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ ensure that you have same versions of chromedriver and chrome.
146146
* NOTE: `just bootstrap` takes a white to run, so you can first try with `melos clean` and then run:
147147

148148
```bash
149-
melos l10n && melos build_runner && melos build_runner_repository
149+
melos l10n && melos build-runner && melos build-runner-repository
150150
```
151151

152152
---

catalyst_voices/apps/voices/pubspec.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ name: catalyst_voices
22
description: Catalyst Voices
33
version: 0.1.0+1
44
publish_to: none
5+
resolution: workspace
56

67
environment:
78
sdk: ">=3.9.0 <4.0.0"

0 commit comments

Comments
 (0)