|
1 |
| -## Features |
| 1 | +## Features added |
2 | 2 |
|
3 |
| -- Added Basic HTTP Authentication |
4 |
| - - all clients need to 'register' themselves with the server by making a `POST` request to the `/clients` endpoint |
5 |
| - - this returns a client ID - API key pair that must be sent in all subsequent requests in the `X-Credentials` header encoded as follows: `base64(<client id>:<api key>)` |
6 |
| - - provider-specific credentials like access tokens can be sent in the `X-Provider-Credentials` header |
7 |
| - - API keys can be replaced by making a `POST` request with the current API key to the `/clients/:clientId` endpoint |
8 |
| - - this returns the current client ID and a new API key |
9 |
| - - The client can be deleted by making a `DELETE` request to `/clients/:clientId` endpoint |
| 3 | +### Google Drive |
10 | 4 |
|
11 |
| -## Changes |
12 |
| - |
13 |
| -- Typescript rewrite |
14 |
| -- Provider ID (`googledrive`, `gmail` or `onedrive`) is now to be specified as a query parameter (`providerId`) |
15 |
| -- Don't lazy load providers, load them once and use them as required |
16 |
| -- Use ISO timestamp strings instead of epoch timestamps |
17 |
| -- Add helmet middleware for basic security |
18 |
| -- Add a logger |
19 |
| - - Logs are stored locally ONLY, in the config directory |
20 |
| - - Windows: %APPDATA%\Dabbu Files API Server\logs\files-api-server.log |
21 |
| - - MacOS: /Users/<username>/Library/Dabbu Files API Server/logs/files-api-server.log |
22 |
| - - Linux: ($HOME OR $XDG_CONFIG_HOME)/.config/Dabbu Files API Server/logs/files-api-server.log |
23 |
| - - These logs contain sensitive information, please be careful to remove sensitive information while posting them publicly. Work is underway to mask this sensitive information. |
| 5 | +- Add support for handling shortcut files [233935cc] |
| 6 | + - If a request is made with exportType = 'view', then the shortcut name, the target file's mime type and a link to open the shortcut with Google Drive in the web browser will be returned |
| 7 | + - If a request is made with exportType = 'media', or a mime type to export a file, then the target file's name, the target file's mime type and an export/download link for the target file will be returned (Access token required to export/download file) |
| 8 | +- Auto-append extension (docx, xlsx, pptx, etc.) if the file is a Google Workspace file [d7593ba] |
24 | 9 |
|
25 | 10 | ## Fixes
|
26 | 11 |
|
27 |
| -- Improved error messages are returned |
28 |
| -- Google Drive provider now returns proper export links for Google Workspace files |
29 |
| -- One Drive provider returns an error if attempting to download OneNote files. A parser for OneNote files is in progress |
30 |
| - |
31 |
| -## Docs |
32 |
| - |
33 |
| -- Add API docs and provider-specific docs |
34 |
| -- Add guide for running server on your own |
35 |
| -- WIP: getting started guide for using the APIs in your own client |
36 |
| - |
37 |
| -## Builds/CI |
38 |
| - |
39 |
| -- Automatic releases only from the develop branch |
40 |
| -- Add bash scripts for all jobs |
41 |
| - |
42 |
| -## Tests |
43 |
| - |
44 |
| -- Use jest for tests |
45 |
| - - Add unit tests for all providers and routes. |
46 |
| - - Tests for controllers and utils are not yet implemented, PRs welcome. |
47 |
| - |
48 |
| -## Style/Format |
| 12 | +### Google Drive |
49 | 13 |
|
50 |
| -- Add ts files to .editorconfig |
51 |
| -- Use ESLint to lint typescript files |
| 14 | +- Google Drive returns wrong export link for Google Workspace files [673b352] |
0 commit comments