Antonio Ospite [Sun, 13 Sep 2015 20:34:33 +0000 (22:34 +0200)]
debian/changelog: release package version 0.4-1
Gbp-Dch: ignore
Antonio Ospite [Sun, 13 Sep 2015 19:51:49 +0000 (21:51 +0200)]
debian/control: bump Standards-Version to 3.9.6
Antonio Ospite [Sun, 13 Sep 2015 19:41:41 +0000 (21:41 +0200)]
debian/copyright: update copyright years
Antonio Ospite [Sun, 13 Sep 2015 19:37:41 +0000 (21:37 +0200)]
debian/control: depend on php-xml-serializer
tweeper now uses php-xml-serializer to convert JSON to XML for sites
that provide the information in JSON, like Instagram.com.
Antonio Ospite [Sun, 13 Sep 2015 19:36:25 +0000 (21:36 +0200)]
debian/control: update the package description
Use the more generic description used upstream.
Antonio Ospite [Sun, 13 Sep 2015 19:29:04 +0000 (21:29 +0200)]
Merge tag 'v0.4' into debian
Release v0.4
Antonio Ospite [Sun, 13 Sep 2015 18:05:53 +0000 (20:05 +0200)]
NEWS: add release notes for the v0.4 release
Antonio Ospite [Sun, 13 Sep 2015 16:43:31 +0000 (18:43 +0200)]
rss_converter_instagram.com.xsl: use the username when there is no full name
Antonio Ospite [Sun, 13 Sep 2015 16:06:59 +0000 (18:06 +0200)]
rss_converter_instagram.com.xsl: improve channel description
Some users have a biography, some users only have an external URL, some
users have both and some have neither.
Make the channel description a little smarter trying to handle these
case.
Antonio Ospite [Sun, 13 Sep 2015 15:43:13 +0000 (17:43 +0200)]
rss_converter_facebook.com.xsl: fix channel title, link and description
It looks like using the meta elements does not work anymore.
Antonio Ospite [Sun, 13 Sep 2015 09:59:43 +0000 (11:59 +0200)]
TODO: support for images on Twitter.com can be improved
Antonio Ospite [Sun, 13 Sep 2015 09:59:15 +0000 (11:59 +0200)]
tweeper.1.asciidoc: update the copyright years
Antonio Ospite [Sun, 13 Sep 2015 09:57:07 +0000 (11:57 +0200)]
tweeper.1.asciidoc: document how to use the PHP built-in web server
Antonio Ospite [Sun, 13 Sep 2015 09:55:59 +0000 (11:55 +0200)]
README: improve wording in a paragraph
Antonio Ospite [Sun, 13 Sep 2015 09:52:51 +0000 (11:52 +0200)]
tweeper.1.asciidoc: describe what tweeper is in a more generic way
Antonio Ospite [Sun, 13 Sep 2015 09:41:35 +0000 (11:41 +0200)]
README: describe what tweeper is in a more generic way
Since tweeper does not support only Twitter.com but also other social
websites, give a more general idea of what it can be used for.
Antonio Ospite [Wed, 29 Jul 2015 21:05:47 +0000 (23:05 +0200)]
rss_converter_instagram.com.xsl: show the user name in the titles
This makes it easier to see who created the item when different
Instagram feeds are grouped into a directory.
Antonio Ospite [Wed, 29 Jul 2015 20:56:42 +0000 (22:56 +0200)]
tweeper: avoid a reference to $argv in non-cli mode
$argv is not defined in non-cli mode, so protect its usage behind an
is_cli() check.
For instance, this avoids a message in the PHP built-in web server, when
usage() gets called:
PHP Notice: Undefined variable: argv in .../tweeper.php on line 357
Antonio Ospite [Wed, 29 Jul 2015 20:52:15 +0000 (22:52 +0200)]
tweeper: make is_cli() stricter
Assume that tweeper is running from an actual command line only when
php_sapi_name() matches _exactly_ the string "cli".
This makes it possible to use tweeper in a browser using the PHP
built-in web server, for which php_sapi_name() returns "cli-server".
Antonio Ospite [Sat, 25 Jul 2015 13:52:57 +0000 (15:52 +0200)]
TODO: remove item about duplicated RSS items
Now all the generated feeds use the <guid/> element to uniquely identify
items.
Antonio Ospite [Sat, 25 Jul 2015 13:50:12 +0000 (15:50 +0200)]
TODO: remove item about Instagram videos
Even if tweeper does not show the video itself in the RSS item content
it at least tells the user that the content is a video, so consider this
done.
Antonio Ospite [Sat, 25 Jul 2015 13:45:33 +0000 (15:45 +0200)]
rss_converter_instagram.com.xsl: add a label if the content is a video
Antonio Ospite [Sat, 25 Jul 2015 11:08:31 +0000 (13:08 +0200)]
rss_converter_instagram.com.xsl: fix enclosure generation
Antonio Ospite [Sat, 25 Jul 2015 10:48:30 +0000 (12:48 +0200)]
rss_converter_instagram.com.xsl: ellipsize titles
Antonio Ospite [Sat, 25 Jul 2015 10:43:49 +0000 (12:43 +0200)]
rss_converter_instagram.com.xsl: use the image caption as the item content
Instagram has reintroduced serving the image caption in the json data,
so use it; it is way nicer than the stats tweeper was showing before.
Antonio Ospite [Sat, 25 Jul 2015 10:36:58 +0000 (12:36 +0200)]
rss_converter_instagram.com.xsl: use better name for the image variable
Antonio Ospite [Wed, 1 Jul 2015 11:47:53 +0000 (13:47 +0200)]
Add support for Facebook.com public pages
Antonio Ospite [Wed, 1 Jul 2015 11:37:57 +0000 (13:37 +0200)]
tweeper.php: support host-specific methods for preprocessing the HTML data
Some sites serve mangled HTML code, so a mechanism to clean it up before
loading it as XML is needed.
For instance, facebook.com puts come content inside HTML comments, and
these must be stripped in order to make the content available to the
HTML parser when loading the data into a DOMDocument.
Antonio Ospite [Wed, 1 Jul 2015 11:35:56 +0000 (13:35 +0200)]
tweeper.php: strip the leading "www." from hosts
This makes tweeper more forgiving when it is passed URLs either with or
without the "www" subdomain for the same host.
Antonio Ospite [Wed, 1 Jul 2015 11:34:53 +0000 (13:34 +0200)]
tweeper.php: make error about missing stylesheet more explicit
Antonio Ospite [Fri, 12 Jun 2015 10:06:02 +0000 (12:06 +0200)]
rss_converter_instagram.com.xsl: update to new json format
The new Instagram homepage provides json data in a format different than
before, update the xsl to support it.
Unfortunately the data in the new format does not provide the
descriptions of the items, so use some placeholder values (URL, comments
count, likes count) to present at least something.
Antonio Ospite [Sun, 31 May 2015 17:17:28 +0000 (19:17 +0200)]
rss_converter_twitter.com.xsl: update XPath of tweet content
Using the role attribute to differentiate between original tweets and
quoted tweet, as introduced in commit 4c2e986, does not work anymore,
but the fact that original tweets are <li></li> elements while quoted
tweets are <div></div> elements can be used instead.
Antonio Ospite [Tue, 5 May 2015 07:28:23 +0000 (09:28 +0200)]
rss_converter_twitter.com.xsl: improve matching the permalink
Extract the permalink using the @data-permalink-path attribute, this
works for withheld tweets too preventing them from having all the same
guid.
Antonio Ospite [Tue, 5 May 2015 07:25:20 +0000 (09:25 +0200)]
rss_converter_twitter.com.xsl: restrict tweet matching
With new style retweets the quoted text is also matched by
[@data-item-type='tweet'] but then the content is not handled, resulting
in empty items in the RSS feed.
Checking also for @role='listitem' allows to pick up only top-level
tweets.
Antonio Ospite [Tue, 5 May 2015 07:21:48 +0000 (09:21 +0200)]
tweeper.php: make date handling functions a little more robust
Provide at least _some_ error checking and a fall-back value for invalid
dates.
Antonio Ospite [Mon, 2 Mar 2015 14:05:54 +0000 (15:05 +0100)]
tweeper.php: factor out an is_cli() function
Antonio Ospite [Mon, 2 Mar 2015 12:05:32 +0000 (13:05 +0100)]
README: mention the supported sites in the README file
Antonio Ospite [Mon, 2 Mar 2015 12:00:59 +0000 (13:00 +0100)]
tweeper.1.asciidoc: mention the supported sites in the man page
Antonio Ospite [Mon, 2 Mar 2015 11:59:12 +0000 (12:59 +0100)]
TODO: update some entries
The new Dilbert.com site does not have a different /fast version, so no
point in mentioning it.
Mention possible support for Instagram videos.
Antonio Ospite [Sat, 28 Feb 2015 00:54:34 +0000 (01:54 +0100)]
Add support for converting Instagram user timelines to RSS
Antonio Ospite [Sat, 28 Feb 2015 00:50:21 +0000 (01:50 +0100)]
tweeper.php: add infrastructure for sites using json data
Some websites provide the timelines as json data and convert that to
html in the client.
Supporting these sites will be done by defining host specific methods to
extract the json data to pass to json_to_xml().
Antonio Ospite [Sat, 28 Feb 2015 00:43:41 +0000 (01:43 +0100)]
tweeper.php: fix validation when generating enclosure elements
The RSS specification says that the enclosure element url must be http.
See http://sourceforge.net/p/feedvalidator/bugs/72/
So follow the specification, for now. If feedvalidator decides to relax
this requirement this hack will be removed.
Antonio Ospite [Fri, 27 Feb 2015 16:08:31 +0000 (17:08 +0100)]
tweeper.php: factor out an html_to_xml() function from the tweep() method
Split the operation to get some xml out of the web page, this in
preparation for adding some more flexibility about what can be converted
to xml for a subsequent transformation.
Antonio Ospite [Fri, 27 Feb 2015 15:54:57 +0000 (16:54 +0100)]
tweeper.php: move loading the stylesheet into the Tweeper class
Let the Tweeper class load the stylesheet, specifically when the tweep()
method is called.
This way the same Tweeper object can be reused to convert different URLs
from different websites.
Antonio Ospite [Fri, 27 Feb 2015 15:47:44 +0000 (16:47 +0100)]
rss_converter_twitter.com.xsl: use ProfileHeaderCard as channel description
Antonio Ospite [Fri, 27 Feb 2015 14:16:55 +0000 (15:16 +0100)]
Strip trailing newlines
Antonio Ospite [Fri, 27 Feb 2015 14:05:13 +0000 (15:05 +0100)]
rss_converter_pump.io.xsl: make the feed validate with feedvalidator.org
Make the pump.io feed validate with http://feedvalidator.org and also
improve compatibility by providing a guid and by excluding the weird
xmlns:php namespace in the output.
Antonio Ospite [Fri, 27 Feb 2015 12:59:38 +0000 (13:59 +0100)]
rss_converter_dilbert.com.xsl: make the feed validate with feedvalidator.org
Make the Dilbert.com feed validate with http://feedvalidator.org and also
improve compatibility by providing a guid and by excluding the weird
xmlns:php namespace in the output.
Antonio Ospite [Fri, 27 Feb 2015 12:58:33 +0000 (13:58 +0100)]
rss_converter_dilbert.com.xsl: fixes for the new dilbert.com
Make the stylesheet work again with the new dilbert.com website.
Antonio Ospite [Fri, 27 Feb 2015 12:29:32 +0000 (13:29 +0100)]
rss_converter_howtoons.com.xsl: make the feed validate with feedvalidator.org
Make the Howtoons.com feed validate with http://feedvalidator.org and
also improve compatibility by providing a guid and by excluding the
weird xmlns:php namespace in the output.
Antonio Ospite [Fri, 27 Feb 2015 12:24:25 +0000 (13:24 +0100)]
rss_converter_twitter.com.xsl: improve the naming of some variables
Use item-content and item-permalink instead of tweet-text and
tweet-link, this way other stylesheets can use the same names resulting
in more consistency.
Antonio Ospite [Fri, 27 Feb 2015 12:15:59 +0000 (13:15 +0100)]
rss_converter_twitter.com.xsl: rename twitterBaseURL to BaseURL
This way the same notation is used in all the stylesheets.
Antonio Ospite [Fri, 27 Feb 2015 12:10:20 +0000 (13:10 +0100)]
rss_converter_twitter.com.xsl: make the feed validate with feedvalidator.org
Make the Twitter feed validate with http://feedvalidator.org and also
improve compatibility by providing a guid and by excluding the weird
xmlns:php namespace in the output.
Antonio Ospite [Thu, 24 Apr 2014 16:06:13 +0000 (18:06 +0200)]
debian/changelog: release package version 0.3-1
Git-Dch: ignore
Antonio Ospite [Thu, 24 Apr 2014 15:55:06 +0000 (17:55 +0200)]
debian/control: mention that Howtoons.com is now supported
Antonio Ospite [Thu, 24 Apr 2014 13:08:51 +0000 (15:08 +0200)]
debian/patches: remove all patches, all have been applied upstream
Antonio Ospite [Thu, 24 Apr 2014 13:05:16 +0000 (15:05 +0200)]
debian/copyright: update contact info and copyright years
Antonio Ospite [Thu, 24 Apr 2014 13:04:45 +0000 (15:04 +0200)]
debian/changelog: prepare for package version 0.3-1
Git-Dch: ignore
Antonio Ospite [Thu, 24 Apr 2014 12:33:34 +0000 (14:33 +0200)]
Merge tag 'v0.3' into debian
Release v0.3
Antonio Ospite [Thu, 24 Apr 2014 12:29:40 +0000 (14:29 +0200)]
NEWS: add release notes for the v0.3 release
Antonio Ospite [Thu, 24 Apr 2014 11:50:33 +0000 (13:50 +0200)]
Update email address and copyright years
Antonio Ospite [Thu, 24 Apr 2014 11:46:33 +0000 (13:46 +0200)]
Add a stylesheet for Howtoons.com
Antonio Ospite [Thu, 24 Apr 2014 10:02:17 +0000 (12:02 +0200)]
rss_converter_twitter.com.xsl: fix getting the profile picture
Some more values are added tot he class attribute so the old equality
check does not work anymore.
Use a contains() check, this is more future proof and allows also to
support both the classic and the new profile pages.
Antonio Ospite [Thu, 24 Apr 2014 09:58:51 +0000 (11:58 +0200)]
rss_converter_twitter.com.xsl: support the new Twitter profile page
Adjust the XPath expressions to support both the classic and the new
profile pages.
Antonio Ospite [Sat, 22 Feb 2014 08:52:38 +0000 (09:52 +0100)]
rss_converter_*.xsl: specify xml:base
Some feed readers expand relative URLs in items by extracting the base
URL from the enclosing <link/> element, however this is not a globally
accepted practice.
Specifying xml:base is useful to cover other ways in which relative URLs
are expanded, see:
https://cyber.law.harvard.edu/rss/relativeURI.html
http://www.w3.org/TR/xmlbase/#resolution
Antonio Ospite [Wed, 12 Feb 2014 14:38:35 +0000 (15:38 +0100)]
debian/changelog: prepare for package version 0.2-3
Git-Dch: ignore
Antonio Ospite [Sat, 8 Feb 2014 18:12:26 +0000 (19:12 +0100)]
debian/control: cosmetics remove trailing spaces
Antonio Ospite [Sat, 8 Feb 2014 17:57:38 +0000 (18:57 +0100)]
debian/control: add missing run-time dependencies
Prevent two fatal errors which happen when needed components are not
installed.
Without php5-curl:
PHP Fatal error: Call to undefined function curl_init() in
/usr/share/php/tweeper/tweeper.php on line 52
Without php5-xsl:
PHP Fatal error: Class 'XSLTProcessor' not found in
/usr/share/php/tweeper/tweeper.php on line 33
Closes: #738201
Thanks: Anton Nesterov
Antonio Ospite [Sat, 8 Feb 2014 17:49:32 +0000 (18:49 +0100)]
debian/patches: add a patch to support "audio/ogg" enclosures
Antonio Ospite [Sat, 8 Feb 2014 17:48:19 +0000 (18:48 +0100)]
debian/control: update Maintainer email address
Antonio Ospite [Fri, 27 Dec 2013 08:32:25 +0000 (09:32 +0100)]
tweeper.php: support generating enclosure for "audio/ogg"
Antonio Ospite [Wed, 20 Nov 2013 00:20:29 +0000 (01:20 +0100)]
debian/changelog: refresh changelog for 0.2-2
Git-Dch: ignore
Antonio Ospite [Wed, 20 Nov 2013 00:15:09 +0000 (01:15 +0100)]
debian/patches: add a patch to fix the list items in the man page
Antonio Ospite [Wed, 20 Nov 2013 00:12:59 +0000 (01:12 +0100)]
tweeper.1.asciidoc: reword some list items
Remove the unneeded "as", it is in the list preamble already.
Antonio Ospite [Wed, 20 Nov 2013 00:08:45 +0000 (01:08 +0100)]
debian/control: reword some list items in the long description
Drop unneeded "as", it was in the preamble of the item list already.
Antonio Ospite [Wed, 20 Nov 2013 00:06:28 +0000 (01:06 +0100)]
debian/control: suggest libapache2-mod-php5 or php5-cgi
To give hints that tweeper can be used also from a web server.
Antonio Ospite [Tue, 19 Nov 2013 21:30:03 +0000 (22:30 +0100)]
Remove the auto-generated ChangeLog
It is not that useful once we have a nice NEWS file; and the latter can
even be used as upstream changelog in packages.
Antonio Ospite [Tue, 19 Nov 2013 21:03:52 +0000 (22:03 +0100)]
debian/changelog: update for 0.2-2
Git-Dch: ignore
Antonio Ospite [Tue, 19 Nov 2013 21:01:17 +0000 (22:01 +0100)]
debian/docs: package also the README and TODO files
Antonio Ospite [Tue, 19 Nov 2013 21:00:23 +0000 (22:00 +0100)]
debian/rules: install the NEWS file as the upstream changelog
Antonio Ospite [Mon, 18 Nov 2013 23:44:13 +0000 (00:44 +0100)]
debian/changelog: prepare for 0.2-2
Git-Dch: ignore
Antonio Ospite [Mon, 18 Nov 2013 23:37:00 +0000 (00:37 +0100)]
debian/patches: add a fix to the man page from upstream
Antonio Ospite [Mon, 18 Nov 2013 23:27:38 +0000 (00:27 +0100)]
debian/control: specify the debian package branch in Vcs-Git
This is what is suggested in
http://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-VCS-fields
Antonio Ospite [Mon, 18 Nov 2013 23:19:53 +0000 (00:19 +0100)]
debian/rules: use $(CURDIR) instead of $$(pwd)
Avoid invoking the shell when make already has the needed information.
Antonio Ospite [Mon, 18 Nov 2013 23:12:52 +0000 (00:12 +0100)]
debian/control: bump Standards-Version to 3.9.5
Antonio Ospite [Mon, 18 Nov 2013 23:09:51 +0000 (00:09 +0100)]
debian/gbp.conf: explicitly disable pristine-tar
This fixes build when users have pristine-tar set to True in the global
configuration file.
Thanks: gregor herrmann <gregoa@debian.org>
Antonio Ospite [Mon, 18 Nov 2013 22:16:54 +0000 (23:16 +0100)]
tweeper.1.asciidoc: mention a way to use tweeper from a web server
Antonio Ospite [Mon, 18 Nov 2013 16:58:14 +0000 (17:58 +0100)]
Makefile: fix typo s/INTALLATION/INSTALLATION/
Thanks-to: gregor herrmann <gregoa@debian.org>
Antonio Ospite [Mon, 18 Nov 2013 00:08:19 +0000 (01:08 +0100)]
Add initial debian packaging bits
Antonio Ospite [Mon, 18 Nov 2013 12:20:02 +0000 (13:20 +0100)]
Changelog, NEWS: prepare for the v0.2 release
Antonio Ospite [Mon, 18 Nov 2013 11:56:52 +0000 (12:56 +0100)]
tweeper.1.asciidoc: small fixes to the man page
Antonio Ospite [Mon, 18 Nov 2013 11:12:16 +0000 (12:12 +0100)]
tweeper.1.asciidoc: add a missing semicolon
Antonio Ospite [Mon, 18 Nov 2013 00:01:29 +0000 (01:01 +0100)]
Add a ChangeLog file
Antonio Ospite [Sun, 17 Nov 2013 23:59:58 +0000 (00:59 +0100)]
Add a NEWS file
Antonio Ospite [Sun, 17 Nov 2013 23:59:20 +0000 (00:59 +0100)]
Add a Makefile rule to generate a Changelog file
Antonio Ospite [Sun, 17 Nov 2013 23:43:00 +0000 (00:43 +0100)]
Add a man page
Antonio Ospite [Fri, 8 Nov 2013 15:22:26 +0000 (16:22 +0100)]
Add a Makefile to simplify installation and packaging
Antonio Ospite [Fri, 8 Nov 2013 15:17:48 +0000 (16:17 +0100)]
Add a wrapper script intended to be called as an executable
Add also an INSTALL file which explains how to set up tweeper globally
on the filesystem.
Antonio Ospite [Fri, 8 Nov 2013 14:01:25 +0000 (15:01 +0100)]
Write error messages on STDERR and return saner values in CLI mode
The previous use of die() was not very useful in CLI mode as the script
was always returning 0.
Fix that and also write error messages to the appropriate output stream.
Note the use of 'php://output' as error stream for non CLI mode, this
ensures that error messages would be readable in the browser window.
Antonio Ospite [Fri, 8 Nov 2013 12:09:19 +0000 (13:09 +0100)]
TODO: add more info about checking UTF output