Coder Social home page Coder Social logo

quics-client's People

Contributors

chromato99 avatar vivi108 avatar

Stargazers

 avatar

Watchers

 avatar

quics-client's Issues

feat/add task queue

Is your feature request related to a problem? Please describe.
Once "Stop the world" is happened, than quics-client needs to know that which tasks are working . Then wait til end of the transaction of each process and rests should be stopped.

Describe the solution you'd like
make a task queue, so that program recognize which task is working

Code improvements to apply port and adapter architecture

Is your feature request related to a problem? Please describe.
Currently the port and adapter structures are not implemented using interfaces.

Describe the solution you'd like
Improved to call adapter using golang interface syntax

Send the Options "How many documents are saved"

Is your feature request related to a problem? Please describe.
Depending on

  • the date
  • capacity
  • number of documents
    the users should be able to determine how much capacity you want to use. It is forwarded to the server along with the password of the corresponding directory. Until the user sets it, it can be set as a default value.

Describe the solution you'd like
It is determined for each root directory, but a setting for a specific file may be partially applied.
Application priority is specific certain files > root directory > Default

.env and Packages Init func is needed

Is your feature request related to a problem? Please describe.
For Environment Variable and Refactoring , .env and Init function is needed

Describe the solution you'd like
make .env and .env template for users, then loading .env in Init function

Change conflict Scenario and add Force Sync

Is your feature request related to a problem? Please describe.
Instead of selecting one of the two files that generated the existing conflict, it allows all clients synchronizing the folder to select PS (PleaseSync) from one file

Describe the solution you'd like
If it is in the Conflict state, do PS, but do not broadcast on the server. Finally, if the user chooses from among several candidates, it is forced to overwrite it as a whole. This is called Force Sync.

After failing on the first connection attempt, the connection fails when reconnecting.

Describe the bug
After the qic connect server command has failed, if you use the command again, you will not be able to connect unless you restart the process.

To Reproduce
If you try to reconnect after failing to connect the first time by turning off the Internet, etc., the connection will not work.
This can only be resolved by restarting the process itself.

Environments (please complete the following information):

feat/add mut.Lock and UnLock when Please Sync

Is your feature request related to a problem? Please describe.
For files of the same path, please Sync occurs when the file is copied from a remote location due to MustSync, but it is recognized as an event such as CREATE or WRITE.

Describe the solution you'd like
In this case, please Sync should not occur, so you should lock each path and wait for the copied file to complete CHTIME. A Finally, when an event occurs, this case is minimized by comparing the time when the event occurred with the ModTime of the file.

feat/full scan basic

Is your feature request related to a problem? Please describe.
The task is to register files that already exist under the parent directory or to check if there are files that have missed regular updates when registering the root directory for the first time.

Describe the solution you'd like
Comparing the hash of the existing syncMetadata with the hash created using os.FileInfo, I think it is a file that has not been updated if it is the same, or a file that has been updated but the database has not been updated if it is different. Files with different hashes are requested to go to the PS (please sync) step and reflect the changes to the server.

Make Connection

Is your feature request related to a problem? Please describe.
Register this user with specific id, using by quics-protocol

Describe the solution you'd like

  • Decide Msg Type
  • Decide the Body Msg
  • Get Returns from Server and save the specific Id

feat/share link

Is your feature request related to a problem? Please describe.
If a third party who has not installed the program wants to share the file, the logic of receiving the shared link is added so that only the link can be shared.

Describe the solution you'd like
If you send the number of times you want to share and the file path to the server, you will create a link based on it and return it.

feat/ add badger config and setup

Is your feature request related to a problem? Please describe.
For using Repos, Badger is needed.

Describe the solution you'd like

  • Decide struct for metadatas of files
  • Read and Write the datas.

Refactoring types

Describe the solution you'd like
It is necessary to modify the communication object according to the modified scenario.

Describe alternatives you've considered
Assuming that the adapter for business logic and communication is separated, the named communication object is imported and used from the server by following the naming rules.

feat/root dir nickname

Is your feature request related to a problem? Please describe.
It is inconvenient to write all the directory names in the CLI. There is a problem that it is confusing whether it is the relative path or the absolute path.

Describe the solution you'd like
When creating a directory using cli, create a function that can set nicknames for ease of use between absolute and relative paths

Additional context
Currently, there are two functions, LocalAbsToRoot and LocalRelToRoot, so it would be good to use them to change them for a specific purpose when receiving the input value using the nickname of the directory.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.