rclone/vendor/github.com/t3rm1n4l/go-mega
2020-01-17 21:42:32 +00:00
..
.travis.yml vendor: update github.com/t3rm1n4l/go-mega and dependencies 2019-05-01 16:09:50 +01:00
errors.go vendor: update github.com/t3rm1n4l/go-mega to add new error codes 2019-02-05 17:22:28 +00:00
go.mod vendor: update github.com/t3rm1n4l/go-mega to fix v2 account login 2019-02-04 17:33:15 +00:00
go.sum vendor: update github.com/t3rm1n4l/go-mega to fix v2 account login 2019-02-04 17:33:15 +00:00
LICENSE vendor: update all dependencies 2019-06-27 13:52:32 +01:00
Makefile vendor: update all dependencies 2018-05-05 15:52:24 +01:00
mega.go vendor: update t3rm1n4l/go-mega - fixes mega: couldn't login: crypto/aes: invalid key size 0 2020-01-17 21:42:32 +00:00
messages.go vendor: update all dependencies 2019-11-14 21:51:34 +00:00
README.md vendor: github.com/t3rm1n4l for backend/mega 2018-04-18 21:09:54 +01:00
utils.go vendor: update all dependencies 2019-11-14 21:51:34 +00:00

go-mega

A client library in go for mega.co.nz storage service.

An implementation of command-line utility can be found at https://github.com/t3rm1n4l/megacmd

Build Status

What can i do with this library?

This is an API client library for MEGA storage service. Currently, the library supports the basic APIs and operations as follows:

  • User login
  • Fetch filesystem tree
  • Upload file
  • Download file
  • Create directory
  • Move file or directory
  • Rename file or directory
  • Delete file or directory
  • Parallel split download and upload
  • Filesystem events auto sync
  • Unit tests

API methods

Please find full doc at http://godoc.org/github.com/t3rm1n4l/go-mega

Testing

export MEGA_USER=<user_email>
export MEGA_PASSWD=<user_passwd>
$ make test
go test -v
=== RUN TestLogin
--- PASS: TestLogin (1.90 seconds)
=== RUN TestGetUser
--- PASS: TestGetUser (1.65 seconds)
=== RUN TestUploadDownload
--- PASS: TestUploadDownload (12.28 seconds)
=== RUN TestMove
--- PASS: TestMove (9.31 seconds)
=== RUN TestRename
--- PASS: TestRename (9.16 seconds)
=== RUN TestDelete
--- PASS: TestDelete (3.87 seconds)
=== RUN TestCreateDir
--- PASS: TestCreateDir (2.34 seconds)
=== RUN TestConfig
--- PASS: TestConfig (0.01 seconds)
=== RUN TestPathLookup
--- PASS: TestPathLookup (8.54 seconds)
=== RUN TestEventNotify
--- PASS: TestEventNotify (19.65 seconds)
PASS
ok  github.com/t3rm1n4l/go-mega68.745s

TODO

  • Implement APIs for public download url generation
  • Implement download from public url
  • Add shared user content management APIs
  • Add contact list management APIs

License

MIT