Skip to content

Parse on Dart VM #78

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

Closed
rizalkotlin opened this issue Feb 9, 2019 · 7 comments
Closed

Parse on Dart VM #78

rizalkotlin opened this issue Feb 9, 2019 · 7 comments

Comments

@rizalkotlin
Copy link

Since there is no dependency for specific Flutter feature, why this library use Flutter SDK?
It can be more useful when this parse SDK can be used on dart vm or console app as well

@phillwiggins
Copy link
Member

phillwiggins commented Feb 9, 2019 via email

@putraxor
Copy link

putraxor commented Feb 9, 2019

@rizalkotlin I have my own implementation for shared_preference and path_provider
https://github.com/putraxor/flutter_parse_sdk
but I haven't tested it on Flutter Mobile

take a look at shared_preferences.dart and path_provider.dart

@chrbayer
Copy link
Contributor

chrbayer commented Feb 12, 2019

The storage is not an integral part of the communication to the parse server, I think the best way would be to remove the dependency to any kind of storage and just provide some "BaseStorage" class which simply defines the interface and does not store and retrieve anything. For some applications this is good enough. If needed, for Flatter or for a command line application this class can be extended to handle the actual storage.

This would solve #73, this should be a communication library and should not worry about secure or insecure storage places for session ids...

What do you think?

@hyperrecursive
Copy link
Contributor

hyperrecursive commented Sep 18, 2019

It would be so nice to have Parse-SDK-Flutter to be based on Parse-SDK-Dart so that we can use the latter on all platforms supported by Dart... Is this planned? Or should I forfeit all hope and start thinking about workarounds? How costly would such change be?

@fischerscode
Copy link
Contributor

I found this issue today.
I think the ideas of @chrbayer and @hyperrecursive sound like a good solution.
Some days ago, I have tried to remove all flutter dependencies, and we would have to do something like @chrbayer's idea for quite a amount of used packages.

@phillwiggins
I am considering doing this as soon as I find some time. Would this be merged? Then everyone could just fork this repo and delete everything that is flutter related in order to create a dart package.

@phillwiggins
Copy link
Member

I'm more than happy to have this a pure Dart library. As long as we find the best solution for storage etc that plays nicely on all platforms, then it would completely make sense.

I will release 1.0.27 today and make a new branch called release/1.0.28. If you create a PR for that branch, I will merge it and test it fully heavily.

Sounds like a great idea.

fischerscode added a commit to fischerscode/Parse-SDK-Flutter that referenced this issue Aug 28, 2020
phillwiggins pushed a commit that referenced this issue Sep 4, 2020
* Set TODO's

Set TODO's, needed for #78 (comment)

* First step of seperating the flutter and the dart parts

* added one todo

* remove connectivity from the dart part

* Removed path_provider from the dart part

Not so happy with the fact that `CoreStoreSembastImp implements sdk.CoreStoreSembastImp` in `parse_server_sdk.dart` but I didn't find a better solution.

* Removed shared_preferences from the dart part

* Update pubspec.yaml

* Update parse_server_sdk_dart.dart

* removed dart:ui from dart part

* removed flutter from dart part

* fixed tests
fischerscode added a commit that referenced this issue Oct 11, 2020
Change log:
## 1.0.28
- Added full web support
- split this package in a dart and a flutter one
  - [flutter package](https://pub.dev/packages/parse_server_sdk_flutter)
  - [dart package](https://pub.dev/packages/parse_server_sdk)
- Moved ParseHTTPClient to Dio [#459](#459)
- Bug fixes
- general improvements

Commits:
* Release 1.0.28 - Create new release branch
   - Update references to 1.0.28
* Replace devicelocale by Platform.localeName call (#430)
* Replace devicelocale by Platform.localeName call
* Use flutter_test to meet new requirements
* Livequery: combine both implementations (#433)
* make livequeries web implementation more similar to the mobile implementation
* combining both livequery implementations
* make livequery "part of flutter_parse_sdk"
* smal fix
* Seperate the dart and the flutter parts of this sdk (#434)
* Set TODO's
   Set TODO's, needed for #78 (comment)
* First step of seperating the flutter and the dart parts
* added one todo
* remove connectivity from the dart part
* Removed path_provider from the dart part
   Not so happy with the fact that `CoreStoreSembastImp implements sdk.CoreStoreSembastImp` in `parse_server_sdk.dart` but I didn't find a better solution.
* Removed shared_preferences from the dart part
* Update pubspec.yaml
* Update parse_server_sdk_dart.dart
* removed dart:ui from dart part
* removed flutter from dart part
* fixed tests
* Add WEB-support for CoreStoreSembastImp (#436)
* Add websupport for CoreStoreSembastImp
* Add debug warning when using sembast on web
  ParseCoreData().debug should be null at that time
* fixed issues
* fix getInstance of CoreStoreSembastImp (#438)
* Reset _isConnected var
   If state is equal to ConnectivityResult.none, then there is no connection with LiveQuery server (for example when internet is disconnected). _setReconnect function will now retry connection.
* Fixed bad type
   ConnectivityResult to ParseConnectivityResult
* Preparing the repository for seperated dart and flutter package (#439)
* split code into package directories
* removed unused dependencies
* Updated READMEs
* Small changes and improvements (#441)
* docs changes
* remove flutter_test
* CoreStore was implemented twice
* implemented CoreStoreMemoryImp (default corestore for dart)
* fix tests
* Update .travis.yml
* Fix links (#443)
* fix flutter logo
* fixed flutter link
* Fix infinite connecting on web
* delete old example folder
* fixing travis tests (#447)
  Should work again.
* Fixed throw in live list stream (#448)
* ParseUser: store password in field (#446)
* store password in field
   Potential fix for #444
* remove password from clone
* fix for issue #456 (#457)
   Added @BaranMichal25 fix for #456.
   #456 (comment)
* LiveList: preloadedColumns (#458)
* LiveList: added preloadedColumns
* LiveList: fixed bug with lazyloading=false
* formatting
* Add README section for flutter
* creat migration guide for version 1.0.28 (#445)
* Create migrate-1-0-28.md
* Update migrate-1-0-28.md
* Update migrate-1-0-28.md
* Update migrate-1-0-28.md
* Merge from upstream/release/1.0.28
* fix typos
* added "changed network library" to migration guide
* Move ParseHTTPClient to Dio (#459)
* Merged manually from branch dio
* fixing nullpointer
* Fix batch operations
   Maybe dio changes the toString behaviour.
* use mine
* keep content-type
* fix file upload issue
* fixed file uppload on web
* performance improvement in parse_file_web
* fix for issue #456 (#457)
   Added @BaranMichal25 fix for #456.
   #456 (comment)
* fix flutter test
* fix crash when debug=true
* fix dart test
* add ProgressCallback in README
* added progressCallback example
* improve readme (#468)
* Update CHANGELOG.md (#462)
* allow signup without email (#469)
* Update migrate-1-0-28.md (#471)
   Added section for tests at migration guide.
   Fix: #385 (comment)
* SignUp encoding data to JSON (#470)
* signup - use toJson
  Co-Authored-By: itmesh <[email protected]>
* fix password update
* Add disclaimer to not use Masterkey on client side (#474)
* Add disclaimer to not use Masterkey on client side
* LiveList: fix setState after dispose (#475)
* Querybuilder: whereMatchesKeyInQuery bugfix (#476)
   Fix bug where whereMatchesKeyInQuery cant be used when using different object classes.
* fixed liveListRetryIntervals in flutter
   Not sure how this line got lost.
* Rel 1.0.28: Add license to sub-projects
* Rel 1.0.28: Add dependencies required for rel
* 1.0.28/fix publish warnings (#472)
* added licenses
   I've just copied the LICENSE file.
* change dependencies at dart/pubspec.yaml
* change dependencies at flutter/pubspec.yaml
* flutter: added dio to pubspec.yaml
   It's contained in the pub.spec archive, so I add it here.

Thanks to:
Co-authored-by: Phill <[email protected]>
Co-authored-by: Nils Strelow <[email protected]>
Co-authored-by: FNPCMDs <[email protected]>
Co-Authored-By: itmesh <[email protected]>
@fischerscode
Copy link
Contributor

I am closing this, as parse_server_sdk can now be used in dart projects.

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

No branches or pull requests

6 participants