Home | Back
                                 Flickcurl News

[1]Dave Beckett

2007-XX-XX Flickcurl 0.11

   Not yet released.

2007-04-16 Flickcurl 0.10

   13 new Flickr API calls supported (40.8% of API):
     * flickcurl_photos_comments_addComment: Add comment to a photo as the
       currently authenticated user.
  char* flickcurl_photos_comments_addComment(flickcurl* fc,
        const char* photo_id, const char* comment_text);

     * flickcurl_photos_comments_deleteComment: Delete a comment as the
       currently authenticated user.
  int flickcurl_photos_comments_deleteComment(flickcurl* fc,
        const char* comment_id);

     * flickcurl_photos_comments_editComment: Edit the text of a comment
       as the currently authenticated user.
  int flickcurl_photos_comments_editComment(flickcurl* fc,
        const char* comment_id, const char* comment_text);

     * flickcurl_photos_comments_getList: Returns the comments for a
  flickcurl_comment** flickcurl_photos_comments_getList(flickcurl* fc,
        const char* photo_id);

     * flickcurl_photosets_comments_addComment: Add a comment to a
  char* flickcurl_photosets_comments_addComment(flickcurl* fc,
        const char* photoset_id, const char* comment_text);

     * flickcurl_photosets_comments_deleteComment: Delete a photoset
       comment as the currently authenticated user.
  int flickcurl_photosets_comments_deleteComment(flickcurl* fc,
        const char* comment_id);

     * flickcurl_photosets_comments_editComment: Edit the text of a
       comment as the currently authenticated user.
  int flickcurl_photosets_comments_editComment(flickcurl* fc,
        const char* comment_id, const char* comment_text);

     * flickcurl_photosets_comments_getList: Returns the comments for a
  flickcurl_comment** flickcurl_photosets_comments_getList(flickcurl* fc,
        const char* photoset_id);

     * flickcurl_reflection_getMethods: Get the list of available API
       method names.
  char** flickcurl_reflection_getMethods(flickcurl* fc);

     * flickcurl_reflection_getMethodInfo: Get information about an API
  flickcurl_method* flickcurl_reflection_getMethodInfo(flickcurl* fc,
        const char* name);

   flickcurl utility updated to add all new functions.

   Added all uploading and replacing of photos APIs. and
   flickcurl_upload_status structure for upload results.

   Added all photo comments APIs and flickcurl_comment structure for

   Added support for uploading with POST and form-data. Yay libcurl.

   Added codegen utility to aid writing skeleton API code.

   Added all reflection APIs and flickcurl_method and flickcurl_arg
   structures for method descriptions.

   Added photo location fields: neighborhood, locality, region and
   country. They may not be returned in the API just yet, they were
   announced and then removed.

   Renamed the "Flickr to RDF app" to be called flickrdf since I used
   [2]Triplr for something else as it was such a good name.

2007-02-25 Flickcurl 0.9

   17 new Flickr API calls supported (28.2% of API):
     * flickr.auth.checkToken: Get the credentials attached to an
       authentication TOKEN.
  char* flickcurl_auth_checkToken(flickcurl* fc, const char* token);

     * flickr.auth.getFrob: Get a frob to be used during authentication.
  char* flickcurl_auth_getFrob(flickcurl* fc);

     * flickr.auth.getToken: Get the auth token for the FROB, if one has
       been attached.
  char* flickcurl_auth_getToken(flickcurl* fc, const char* frob);

     * flickr.photos.addTags: Add TAGS to a PHOTO-ID.
  int flickcurl_photos_addTags(flickcurl* fc, const char* photo_id,
        const char* tags);

     * flickr.photos.delete: Delete a PHOTO-ID.
  int flickcurl_photos_delete(flickcurl* fc, const char* photo_id);

     * flickr.photos.removeTag: Remove a tag TAG-ID from a photo.
  int flickcurl_photos_removeTag(flickcurl* fc, const char* tag_id);

     * flick.photos.setTags: Set the tags for a PHOTO-ID to TAGS.
  int flickcurl_photos_setTags(flickcurl* fc, const char* photo_id,
        const char* tags);

     * flickr.tags.getHotList: Get the list of hot tags for the given
       PERIOD (day, week).
  flickcurl_tag** flickcurl_tags_getHotList(flickcurl* fc, const char* period,
        int tag_count);

     * flickr.tags.getListPhoto: Get the tag list for a PHOTO-ID.
  flickcurl_tag** flickcurl_tags_getListPhoto(flickcurl* fc,
        const char* photo_id);

     * flickr.tags.getListUser: Get the tag list for a USER-ID (or current
  flickcurl_tag** flickcurl_tags_getListUser(flickcurl* fc,
        const char* user_id);

     * flickr.tags.getListUserPopular: Get the popular tag list for a
       USER-ID (or current user).
  flickcurl_tag** flickcurl_tags_getListUserPopular(flickcurl* fc,
        const char* user_id, int pop_count);

     * flickr.tags.getListUserRaw: Get the raw versions of a TAG (or all
       tags) for the current user.
  flickcurl_tag** flickcurl_tags_getListUserRaw(flickcurl* fc,
        const char* tag);

     * flickr.tags.getRelated: Get a list of tags 'related' to TAG based
       on clustered usage analysis.
  flickcurl_tag** flickcurl_tags_getRelated(flickcurl* fc, const char* tag);

     * flickr.urls.getGroup: Get the url of the group page for GROUP-ID.
  char* flickcurl_urls_getGroup(flickcurl* fc, const char* group_id);

     * flickr.urls.getUserPhotos: Get the url of the photo page for
  char* flickcurl_urls_getUserPhotos(flickcurl* fc, const char* user_id);

     * flickr.urls.getUserProfile: Get the url of the profile page for
  char* flickcurl_urls_getUserProfile(flickcurl* fc, const char* user_id);

     * flickr.urls.lookupGroup: Get a group NSID from the URL to a group's
       page or photo pool.
  char* flickcurl_urls_lookupGroup(flickcurl* fc, const char* url);

   Renamed enum flickcurl_photo_field to flickcurl_photo_field_type and
   added flickcurl_photo_field as the photo field structure.

   Added authorname and count fields to the flickcurl_tag structure to
   handle tag methods that return counts.

   Added enum flickcurl_person_field_type value PERSON_FIELD_photos_views
   with value integer, not in API docs.

   flickcurl_person_field structure for fields of flickcurl_person.

   Added flickcurl* method to indicate that an API call must be signed,
   even if no authentication token has been given. This is mostly for
   internals of authentication.
  void flickcurl_set_sign(flickcurl *fc)

   Added flickcurl* method to do a write request with POST. Not presently
  void flickcurl_set_write(flickcurl *fc, int is_write);

   Added flickcurl methods to set data to send in a request:
  /* send binary data */
  void flickcurl_set_data(flickcurl *fc, void* data, size_t data_length);

  /* send XML serialized from the document DOM */
  void flickcurl_set_xml_data(flickcurl *fc, xmlDocPtr doc);

2007-02-20 Flickcurl 0.8

   Added flickcurl_init() and flickcurl_finish() to do once-per-process
   initializing and cleanup.

   Added more help info to flickrdf.

   Added a -d DELAY option to flickrdf and flickcurl to set delay between
   requests using new flickcurl_set_request_delay().

   Added 2 new Flickr API calls (12% of API):
     * flickr.people.findByEmail:
  char* flickcurl_people_findByEmail(flickcurl* fc, const char* email);

     * flickr.people.findByUsername:
  char* flickcurl_people_findByUsername(flickcurl* fc, const char* username);

   Added configure development/debugging options:
   --enable-capture to capture web service responses into XML files
   --enable-offline to use the XML files to return results when offline

   Split large api.c into auth-api.c, people-api.c, photos-api.c,
   photos-licenses-api.c and urls-api.c to match the API sections.

   Added method to set the minimum delay between web service requests:
void flickcurl_set_request_delay(flickcurl *fc, long delay_msec);

   The default is set to 1000ms = 1 request/second.

   Moved flickcurl utility code into flickcurl.c

2007-02-18 Flickcurl 0.7

   Added API calls returning contexts as a struct flickcurl_context* array
   and of type flickcurl_context_type

   Added 4 Flickr API calls (10% of API):
     * flickr.groups.pool.getContext:
  flickcurl_context** flickcurl_groups_pools_getContext(flickcurl* fc,
        const char* photo_id, const char* group_id);

     * flickr.photos.getAllContexts:
  flickcurl_context** flickcurl_photos_getAllContexts(flickcurl* fc,
        const char* photo_id);

     * flickr.photos.getContext:
  flickcurl_context** flickcurl_photos_getContext(flickcurl* fc,
        const char* photo_id);

     * flickr.photosets.getContext:
  flickcurl_context** flickcurl_photosets_getContext(flickcurl* fc,
        const char* photo_id, const char* photoset_id);

   Added struct flickcurl_context utility functions:
  const char* flickcurl_get_context_type_field_label(flickcurl_context_type type
  void flickcurl_free_context(flickcurl_context *context);
  void flickcurl_free_contexts(flickcurl_context** contexts);

   Added new flickcurl utility commands for the new APIs:
   groups.pools.getContext photos.getAllContexts photos.getContext,

2007-02-11 Flickcurl 0.6

   Added API call flickcurl.licenses.getInfo: struct flickcurl_license
  flickcurl_license** flickcurl_photos_licenses_getInfo(flickcurl *fc);

   and command licenses.getInfo in flickcurl utility

   Added helper to look up one license by ID:
  flickcurl_license* flickcurl_photos_licenses_getInfo_by_id(flickcurl *fc, int

   Flickrdf updated to use the above to emit URIs instead of integers for

   Added API call flickr.people.getInfo: enum flickcurl_person_field,
   struct flickcurl_person
  const char* flickcurl_get_person_field_label(flickcurl_person_field field);
  flickcurl_person* flickcurl_people_getInfo(flickcurl* fc, const char* user_id)
  void flickcurl_free_person(flickcurl_person *person);

   and command person.getInfo in flickcurl utility

   6% of API

2007-02-04 Flickcurl 0.5

   Added optional support for using [3]Raptor for more accurate and
   prettier serializing triples in flickrdf

   Released to the world!

   3% of API

2007-02-03 Flickcurl 0.4

   Added flickrdf utility.

   3% of API

2007-02-01 Flickcurl 0.3

   Renamed all symbols to be flickcurl_*

   Added flickcurl_photo_as_source_uri() to get the image file URLs for a
   photo ID.

   Configuration file for the utilities to record the authentication is
   now ~/.flickcurl.conf

   Packaging and licensing

   3% of API

2007-01-24 Flickcurl 0.2

   Refactored to have separate flickcurl* object

   API calls flickr.test.echo, flickr.auth.getFullToken and
   flickr.photos.getInfo with functions flickcurl_test_echo,
   flickcurl_auth_getFullToken, flickcurl_photos_getInfo

   Test program has commands table and help, authentication

   3% of API

2007-01-21 Flickcurl 0.1

   First version

   0% of API

   Copyright (C) 2007 [4]Dave Beckett


   1. http://purl.org/net/dajobe/
   2. http://triplr.org/
   3. http://librdf.org/raptor
   4. http://purl.org/net/dajobe/