diaspy
, unofficial DIASPORA* interface for PythonThis changelog file follows few rules:
Deprecation means that in the next version feature will be removed.
Also, after every version there should be a brief note describing possible problems with migrating to it from older versions and usage of new features.
Users can always read the manual and dcumentation to make themselves more knowledgeable and are encouraged to do so. They only need to remember that documentation is usually more up-to-date than manual and if conflicts appear they should follow the order:
docstrings -> docs/ -> manual/
diaspy
has problems/can't connect to pods using SNI (this is an issue with requests/urllib3/python),0.4.3
:people.User().fetchprofile()
will issue a warning when user cannot be found on current pod,new: settings.Profile
is now loaded during initialization (can be switched off),
fix: fixed a bug in __repr__()
method in people.User()
object,
0.4.2
(2013-12-19):This version has some small incompatibilities with 0.4.1
so read Changelog carefully.
diaspy.people.User._fetchstream()
method,diaspy.people.Me()
object representing current user,**kwargs
added to diaspy.streams.Generic.json()
methdo to give developers control over the creation of JSON,new: .getHCard()
method added to diaspy.people.User()
,
upd: diaspy.connection.Connection.login()
modifies connection object in-place and returns it (this allows more fluent API),
upd: diaspy.connection.Connection.login()
no longer returns status code (if login was unsuccessful it'll raise an exception),
upd: diaspy.connection.Connection._login()
no longer returns status code (if login was unsuccessful it'll raise an exception),
upd: better error message in diaspy.models.Post().__init__()
,
upd: data
variable in diaspy.models.Post()
renamed to _data
to indicate that it's considered private,
upd: after deleting a post Activity
stream is purged instead of being refilled (this preserves state of stream which is not reset to last 15 posts),
upd: filterByIDs()
method in Aspects
stream renamed to filter()
,
rem: diaspy.connection.Connection.getUserInfo()
moved to diaspy.connection.Connection.getUserData()
,
rem: fetch
parameter removed from diaspy.connection.Connection.getUserData()
,
dep: max_time
parameter in diaspy.streams.*.more()
method is deprecated,
fix: this release should fix the bug which prevented diaspy from working with some pods (e.g. diasp.eu and joindiaspora.com),
0.4.1
(2013-09-12):Login and authentication procedure backend received major changes in this version.
There are no longer username
and password
variables in Connection
object.
Instead, credentials are stored (together with the token) in single variable _login_data
.
This is preserved until you call login()
at which point credentials are erased and
only token is left -- it can be obtained by calling repr(Connection)
.
Also, this release is compatible with DIASPORA* 0.2.0.0 but should still support pods running on older versions.
And the test suite was updated. Yay!
new: diaspy.errors.SettingsError
.
upd: diaspy.settings.Account.setEmail()
can now raise SettingsError
when request fails,
upd: diaspy.settings.Account.getEmail()
will now return empty string instead of raising an exception if cannot fetch mail,
upd: improved language fetching in diaspy.settings.Account.getLanguages()
.
rem: diaspy/client.py
is removed,
0.4.1-rc.3
(2013-09-08):
diaspy.settings.Profile.load()
method for loading profile information,diaspy.settings.Profile.update()
method for updating profile information,diaspy.settings.Profile.setName()
method,diaspy.settings.Profile.setBio()
method,diaspy.settings.Profile.setLocation()
method,diaspy.settings.Profile.setTags()
method,diaspy.settings.Profile.setGender()
method,diaspy.settings.Profile.setBirthDate()
method,diaspy.settings.Profile.setSearchable()
method,diaspy.settings.Profile.setNSFW()
method,0.4.1-rc.2
(2013-09-06):
diaspy.search.Search.tags()
method for getting tag suggestions,diaspy.settings.Profile.getName()
method,diaspy.settings.Profile.getBio()
method,diaspy.settings.Profile.getLocation()
method,diaspy.settings.Profile.getTags()
method,diaspy.settings.Profile.getGender()
method,diaspy.settings.Profile.getBirthDate()
method,diaspy.settings.Profile.isSearchable()
method,diaspy.settings.Profile.isNSFW()
method,new: provider_display_name
parameter in diaspy.streams.Stream.post()
(thanks @svbergerem),
upd: remeber_me
parameter in diaspy.connection.Connection.login()
,
upd: you must supply username
and password
parameters on init of diaspy.connection.Connection
,
upd: you must update your testconf.py (new fields are required for settings tests),
upd: diaspy.settings.Settings
renamed to diaspy.settings.Account
,
rem: username
and password
parameters removed from diaspy.connection.Connection.login()
must be supplied on init,
0.4.1-rc.1
(2013-09-02):
__getitem__()
in diaspy.models.Post
,__dict__()
in diaspy.models.Post
,guid
argument in diaspy.models.Post.__init__()
,json()
method in diaspy.streams.Generic
adds the possibility to export streams to JSON,full()
method in diaspy.streams.Generic
will try to fetch full stream (containing all posts),setEmail()
method in diaspy.settings.Settings
,setLanguage()
method in diaspy.settings.Settings
,downloadPhotos()
method in diaspy.settings.Settings
,backtime
argument in more()
method in diaspy.streams.Generic
,DiaspyError
will be raised when connection is created with empty password and/or username,getSessionToken()
method in diaspy.connection.Connection
returns string from _diaspora_session
cookie,new: direct
parameter in diaspy.connection.Connection().get()
allowing to disable pod expansion,
upd: if Post()
is created with fetched comments, data will also be fetched as a dependency,
upd: id
argument type is now int
(diaspy.models.Post.__init__()
),
upd: Search().lookup_user()
renamed to Search().lookupUser()
,
upd: diaspy.messages
renamed to diaspy.conversations
(but will be accessible under both names for this and next release),
upd: LoginError
moved to diaspy.errors
,
upd: TokenError
moved to diaspy.errors
,
upd: diaspy.connection.Connection.podswitch()
gained two new positional arguments: username
and password
,
upd: aspect_id
renamed to id
in diaspy.streams.Aspects().remove()
,
fix: fixed some bugs in regular expressions used by diaspy
internals (html tag removal, so you get nicer notifications),
fix: fixed authentication issues,
0.4.0
(2013-08-20):This release is not backwards compatible with 0.3.x
line! You'll have to check your code for corrections.
Also, this release if first to officially released fork version.
dep: diaspy.client
is officially deprecated (will be removed in 0.4.1
),
upd: diaspy.conversations
renamed to diaspy.messages
,
udp: diaspy.conversations.Conversation
moved to diaspy.models
,
new: diaspy.messages.Mailbox()
object representing diaspora* mailbox,
0.3.2
(2013-08-20):upd: diaspy.connection.getUserData()
raises DiaspyError
when it cannot find user data,
rem: diaspy.client.Client
must be explicitly imported,
0.3.1
(2013-07-12):diaspy.people.sephandle()
raises InvalidHandleError
instead of UserError
upd: models.Post()._fetch()
renamed to _fetchdata()
(because of new _fetchcomments()
method)
new: models.Comment()
object: wrapper for comments, not to be created manually
new: comments
parameter in models.Post
: defines whether to fetch post's commets
new: connection.Connection
has new parameter in __init__()
: it's schema
new: author()
method in models.Post()
The new parameter in connection.Connection
is useful when operating with handles.
As handle does not contain schema (http
, https
, etc.) _setlogin()
would raise an
unhandled exception -- requests.exceptions.MissingSchema
.
Now, however, Connection
will catch the exception, add missing schema and try once more.
This parameter is provided to give programmers ability to manipulate it.
Also, now you can pass just pod.example.com
as pod
parameter. Less typing!
When it comes to posts, we are now able to fetch comments.
0.3.0
(2013-07-07):First edition of Changelog for diaspy
.
Developers should update their code as version 0.3.0
may not be fully
backwards compatible depending on how the code is written.
If you always pass named arguments and do not rely on their order you can, at least in
theory, not worry about this update.
Version 0.3.0
introduces few new features, fixes several bugs and brings a bit of
redesign and refactoring od diaspy
's code.