Commit Graph

6 Commits (ae08828ac408f4e42515f8a412d0bbe3257db26b)

Author SHA1 Message Date
Aravinth Manivannan 632fe272fa
feat: read_file processes directories
SUMMARY
    This program supports directories in gists. This patch modifies
    Data::read_file to support directory reads. Additionally,
    CreateGistRequest is modified to accept files in subdirectories.

DESCRIPTION
    Data::read_file
	When repository contains subdirectories, it will recursively
	read all files and return their contents.

    crate::data::api::v1::gists::GitFileMode
	Set of known(to me) file modes that Git uses.
	GitFileMode::Unsupported is used to take advantage of
	num_enum::FromPrimitive. The alternative would have been
	num_enum::TryFromPrimitive, which returns errors on unsupported
	values. I felt the former was cleaner.
2022-02-18 21:38:38 +05:30
Aravinth Manivannan 303a4ab0ba
feat: helper method Data::new_gist to create new gist and tests
DESCRIPTION
    Data::new_gist creates a bare repository in the supplied
    Data.settings.repository.root directory and saves metadata in the
    database

    See accompanying test for usage
2022-02-14 22:46:17 +05:30
Aravinth Manivannan 34a67a5535 feat: bootstarp gists
AUTHENTICATION

- Sign Up
- Sign IN

ACCOUNT
- Username Exists
- Email Exists
- Account delete
- Password update
- Email update
- Username update
- Get account secret
- Update secret

All routes are implemented with proper error handling and testing

CONFIGURATION
See ./config/default.toml for full list
2022-02-12 23:48:35 +05:30
Aravinth Manivannan 28bbdaebad feat: setup tests 2022-02-12 18:25:45 +05:30
Aravinth Manivannan b28a7d0cfb feat: bootstrap database ops
- db-core: defines base database traits that are required for gists
- db-sqlx-postgres: implements db-core for postgres flavor of the sqlx
  library
- db-sqlx-sqlite: implements db-core for sqlite flavor of the sqlx
  library
2022-02-12 16:35:55 +05:30
Aravinth Manivannan 85ab813816 init 2022-02-11 17:42:35 +05:30