summaryrefslogtreecommitdiff
path: root/gdata
Commit message (Collapse)AuthorAgeFilesLines
* tests: Exclude some header files for Win32 platformBiswapriyo Nath2022-01-061-1/+3
|
* vapi: Make Parsable.new_from_{json,xml} staticRico Tzschichholz2021-10-061-0/+2
| | | | Closes #44
* remove deprecated proxy_uri propertiesDaniel Kolesa2021-06-175-125/+3
|
* Merge branch 'drop-deprecated-apis' into 'master'Philip Withnall2021-06-1710-1530/+5
|\ | | | | | | | | core: Drop ClientLogin authorizer See merge request GNOME/libgdata!40
| * core: Drop ClientLogin authorizerPhilip Withnall2021-06-1710-1530/+5
| | | | | | | | | | | | | | | | | | | | | | It’s been deprecated by Google for a number of years, and is completely unsupported in all of their newer REST APIs. Its main flaws are that it requires the user’s password to be passed to potentially untrusted code (normalising the user typing their password into any old text entry), and that it can’t support the interactive authentication required for 2FA. Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
* | remove deprecated youtube apiDaniel Kolesa2021-06-1715-1666/+14
|/
* Merge branch 'remove-contacts' into 'master'Philip Withnall2021-06-1757-12977/+0
|\ | | | | | | | | remove deprecated contacts service See merge request GNOME/libgdata!39
| * remove deprecated contacts serviceDaniel Kolesa2021-06-1757-12977/+0
| |
* | Merge branch 'remove-freebase' into 'master'Philip Withnall2021-06-1719-4328/+0
|\ \ | |/ |/| | | | | remove deprecated freebase service See merge request GNOME/libgdata!33
| * remove deprecated freebase serviceDaniel Kolesa2021-06-1719-4328/+0
| |
* | Merge branch 'remove-deprecated-documents' into 'master'Philip Withnall2021-06-176-106/+1
|\ \ | | | | | | | | | | | | remove deprecated documents service api See merge request GNOME/libgdata!37
| * | remove deprecated documents service apiDaniel Kolesa2021-06-176-106/+1
| | |
* | | Merge branch 'remove-deprecated-calendar' into 'master'Philip Withnall2021-06-1711-553/+1
|\ \ \ | | | | | | | | | | | | | | | | remove deprecated calendar service apis See merge request GNOME/libgdata!38
| * | | remove deprecated calendar service apisDaniel Kolesa2021-06-1711-553/+1
| |/ /
* | | remove deprecated oauth1 authorizerDaniel Kolesa2021-06-1727-3047/+4
| |/ |/|
* | contacts: Fix deprecation version for Contacts servicePhilip Withnall2021-06-174-153/+153
|/ | | | | | 0.18.0 has already been released; the deprecation will land in 0.18.2. Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
* contacts: Deprecate the entire Contacts API as Google is ending itPhilip Withnall2021-06-1711-0/+313
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Contacts API server will return error responses with increasing frequency until all responses are errors in December 2021. https://developers.google.com/contacts/v3/announcement They are replacing it with the People API (why can’t they provide backwards-compatibility?), but I don’t have the time to port the libgdata Contacts service to the new People API. More crucially, I don’t have time to maintain such a port in the future. https://developers.google.com/people Handily, the CardDAV API for accessing contact data is still explicitly supported by Google Contacts, so people should use that instead. At least it’s a standard protocol, with a variety of conformant implementations already released and maintained; and not just another here-today-gone-tomorrow Google REST API. https://developers.google.com/people/carddav Using CardDAV requires OAuth 2 authorization, just like the Contacts API did. So, bearing all the above in mind, the libgdata Contacts service is now deprecated in favour of using CardDAV. Signed-off-by: Philip Withnall <pwithnall@endlessos.org> Fixes: #42
* use g_memdup2 when possibleDaniel Kolesa2021-06-072-0/+12
|
* drop usage of deprecated GTimeValDaniel Kolesa2021-06-0720-137/+150
|
* drop usage of deprecated gobject functionsDaniel Kolesa2021-06-0378-292/+161
|
* documents: Add gdata_documents_entry_can_editwip/oholy/documents-shared-drives-supportOndrej Holy2021-02-114-0/+62
| | | | | | | | | | Entries on Shared Drives, or Shared with me are not always editable. Let's add gdata_documents_entry_can_edit to allow GVfsBackendGoogle to set file permissions accordingly. It would be nice to make also canDelete, canRename and canListChildren available, but it would require libgdata port to Drive API v3 unfortunatelly. Relates: https://gitlab.gnome.org/GNOME/gvfs/-/merge_requests/114
* documents: Add gdata_documents_entry_get_shared_with_me_dateOndrej Holy2021-02-114-0/+41
| | | | | | | | Let's make available the SharedWithMeDate property to make implementation of the Shared with me folder for GVfsBackendGoogle easier. Relates: https://gitlab.gnome.org/GNOME/gvfs/-/issues/444 Relates: https://gitlab.gnome.org/GNOME/gvfs/-/merge_requests/114
* documents: Add Shared Drives supportOndrej Holy2021-02-1113-1/+484
| | | | | | | | | | | | | | It seems that the existing documents APIs works nicely with the files on Shared Drives (formerly Team Drives), although it is possible that some small changes will be needed to handle differences: https://developers.google.com/drive/api/v2/shared-drives-diffs However, the main problem is that there is no way currently to get the list of Shared Drives IDs and their names. Let's add new APIs for it which will be consequently used by GVfs. Relates: https://gitlab.gnome.org/GNOME/gvfs/-/issues/377 Fixes: https://gitlab.gnome.org/GNOME/libgdata/-/issues/25
* core: Define G_DEFINE_AUTOPTR_CLEANUP_FUNC for GDataQueryOndrej Holy2021-02-111-0/+1
| | | | | | The cleanup function is not defined for GDataQuery, which prevents G_DECLARE_DERIVABLE_TYPE use for its subclasses. Let's define it so G_DECLARE_DERIVABLE_TYPE can be used in the subsequent commits.
* Merge branch 'wip/rishi/upload-stream-autoptr' into 'master'Philip Withnall2020-09-031-0/+1
|\ | | | | | | | | core: Add g_autoptr() support for GDataUploadStream See merge request GNOME/libgdata!26
| * core: Add g_autoptr() support for GDataUploadStreamDebarshi Ray2020-08-251-0/+1
| | | | | | | | https://gitlab.gnome.org/GNOME/libgdata/-/merge_requests/26
* | docs: Use correct url attribute for ulink usageRico Tzschichholz2020-08-291-1/+1
|/
* all: Fix various typos and incorrect terminologyPhilip Withnall2020-06-1812-18/+18
| | | | | | | | | | | | | Done using: ``` codespell \ --builtin clear,rare,usage \ --skip './po/*' --skip './help/*/*.po' --skip './.git/*' --skip './NEWS*' \ --write-changes . ``` and then some manual checking and editing. Signed-off-by: Philip Withnall <withnall@endlessm.com>
* core: Always refresh authorization when creating streamsOndrej Holy2020-01-212-0/+27
| | | | | | | | | | | | | | | | | Non-resumable upload streams quite often fail with authorization errors as we are probably hitting some limits. The only way currently to deal with them is to refresh authorization manually and upload everything again as it is not possible to resume the transfer. This is big issue for streaming operations provided by GVfs. I have made several tests and realized that if we explicitely refresh the authorization before the transfer, then those authorization errors doesn't occur. So let's always refresh the authorization when constructing the streams and do the same for upload streams as well as they are also affected. In theory, the resumable streams could solve this better, however they currently require content size to be specified at the beginning, which is not usable for the streaming operations in GVfs. Fixes: https://gitlab.gnome.org/GNOME/libgdata/issues/23
* Merge branch '1-oauth1' into 'master'Philip Withnall2019-09-033-212/+61
|\ | | | | | | | | | | | | Make liboauth dependency optional and disabled by default Closes #1 See merge request GNOME/libgdata!18
| * goa: Drop OAuth 1.0 support from GDataGoaAuthorizerPhilip Withnall2019-08-211-211/+5
| | | | | | | | | | | | | | | | | | | | None of the account types supported by recent versions of GOA support OAuth 1.0 authentication/authorisation, so drop it entirely in favour of OAuth 2.0. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #1
| * build: Make OAuth 1.0 support optional and disabled by defaultPhilip Withnall2019-08-212-1/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | liboauth is unmaintained and hard to compile at the moment. OAuth 1.0 itself has been deprecated in Google APIs since 2012, in favour of OAuth 2.0 or other more modern authentication/authorisation methods. Add a new configure option for `oauth1`, and disable it by default. If it’s disabled, the `GDataOAuth1Authorizer` will return errors when used (but the API is still available and not marked as deprecated yet). Eventually the `GDataOAuth1Authorizer` API will be marked as deprecated, but we can’t do that at the moment as we’re in API freeze. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #1
* | docs: Change next version label to 0.17.11Philip Withnall2019-08-213-19/+19
| | | | | | | | | | | | We’re not ready to release 0.18.0 yet. Signed-off-by: Philip Withnall <withnall@endlessm.com>
* | build: Don’t install tests which are expected to failPhilip Withnall2019-08-211-3/+5
|/ | | | | | | | | | | | | There’s no way to annotate an installed-test to say it’s expected to fail, so don’t install tests which are expected to fail. The PicasaWeb tests are expected to fail because the server for them has been shut down (see #19). The Documents tests are expected to fail because they haven’t been ported to Drive v2 yet (see #12). Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #35
* youtube: Remove an unnecessary castPhilip Withnall2019-08-211-1/+1
| | | | | | It was introducing a compiler warning with GCC 9.1. Signed-off-by: Philip Withnall <withnall@endlessm.com>
* media: Use memmove() instead of deprecated g_memmove()Philip Withnall2019-08-211-1/+1
| | | | Signed-off-by: Philip Withnall <withnall@endlessm.com>
* build: Add minimum and maximum dependencies for GLibPhilip Withnall2019-08-212-2/+2
| | | | | | | This hides a load of API deprecation warnings from the latest version of GLib, which we’re not ready to adapt to yet. Signed-off-by: Philip Withnall <withnall@endlessm.com>
* build: Define G_LOG_DOMAIN in c_args rather than config.hPhilip Withnall2019-08-211-0/+1
| | | | | | | | | | | Defining it in `config.h` means that *every* C file which emits a log or debug message needs to remember to include `config.h`. It’s a lot simpler and less error-prone to define `G_LOG_DOMAIN` in the `c_args` instead. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #30
* documents: Fix en_GB-ism in a translatable stringPhilip Withnall2019-08-141-1/+1
| | | | | | | Spotted by Bruce Cowan. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #33
* Merge branch 'wip/app-properties/api' into 'master'Philip Withnall2019-07-309-1/+973
|\ | | | | | | | | Drive v2 Properties API See merge request GNOME/libgdata!7
| * documents: Fix gdata_documents_service_add_entry_to_folder() to copyMayank Sharma2019-07-301-0/+14
| | | | | | | | | | | | | | | | | | | | "properties" list too gdata_documents_service_add_entry_to_folder() copies a given GDataEntry to a specified parent folder. It did that by creating a local entry. This local entry is created from the GDataEntry passed as argument, but it didn't copy over the "properties" list. This commit fixes this behaviour by copying the "properties" list as well.
| * documents: Added "properties" list to GDataDocumentsEntryMayank Sharma2019-07-293-1/+273
| | | | | | | | | | | | | | | | | | | | | | The parse_json and get_json functions have been augmented to support parsing the "properties" list on a file/folder's metadata. The "properties" list of GDataDocumentsEntry corresponds to the "properties" list on a file/folder object's metadata. This list stores all the public/private custom properties and is writable. The "properties" list has elements of of type GDataDocumentsProperty, and functions to search/remove/add such properties have also been added.
| * tests: Added tests for GDataDocumentsPropertyMayank Sharma2019-07-291-0/+97
| | | | | | | | | | The added tests perform unit-testing of the get_json and parse_json functions for the GDataDocumentsProperty type.
| * documents: Added GDataDocumentsProperty to support Property ResourceMayank Sharma2019-07-295-0/+589
| | | | | | | | | | | | | | | | | | | | | | | | | | Google Drive API (v2) supports custom file properties on file/folder metadata and allows to store key-value pairs there. We add GDataDocumentsProperty which corresponds to a Property Resource, and provides functionality to create public/private custom property. The documentation has also been updated (a new section added for GDataDocumentsProperty). GDataDocumentsProperty class will later be used to add a list of "properties" on GDataDocumentsEntry, accessible through the file/folder metadata.
* | docs: Drop use of `<!-- -->` to delimit pluralsPhilip Withnall2019-07-2424-82/+82
|/ | | | | | | | | | | | | | | gtk-doc gained the ability to magically strip off the ‘s’ in a plural many years ago, so the workaround of splitting the ‘s’ from a class or function name is no longer needed. This clarifies the docs in the code a bit. This commit was made mechanically using ``` git search-replace -f '<!-- -->s///s' ``` Signed-off-by: Philip Withnall <withnall@endlessm.com>
* core: Don't always free the current id string in gdata_entry_get_id()Ondrej Holy2019-07-231-4/+7
| | | | | | | | | | Currently, if you call gdata_entry_get_id() for the second time, the first returned id string is released even if the id hasn't been changed. This is unexpected and causes issues in several places of gvfsbackendgoogle.c, where g_strdup() has to be used as a workaround to prevent segfaults. Let's change the behavior to not free the current id, if it was not changed. Closes: https://gitlab.gnome.org/GNOME/libgdata/issues/31
* meson: Fix library versionJan Alexander Steffens (heftig)2019-06-251-1/+1
| | | | | | | | | Setting soversion means the soname ends in '22.4.0' instead of the expected '22'. So we want the *soversion* to be '22' and the *version* to be '22.4.0'. We only need to set the version as meson can derive the soversion from it.
* build: Drop autotools build systemPhilip Withnall2019-06-251-409/+0
| | | | | | | | | We’re using Meson now! This also means we drop the ChangeLog; use `git log` now. Signed-off-by: Philip Withnall <withnall@endlessm.com> Fixes: #27
* tests: Drop callgrind, massif and memcheck wrappersPhilip Withnall2019-06-253-13/+0
| | | | | | | These can now be run much more simply by using the `--wrapper` argument to `meson test`. For example: `meson test --wrapper=valgrind`. Signed-off-by: Philip Withnall <withnall@endlessm.com>
* build: Port from Autotools to mesonMayank Sharma2019-06-2519-0/+1911
| | | | | | | | Automake 1.16.1 has issues with generating a valid Makefile. Since, libgdata is one of the core-deps of GNOME, it should be ported from Autotools + make to meson + ninja. Significant contributions from both Iñigo Martínez and Mayank Sharma.