debian/ 0000755 0000000 0000000 00000000000 12325725173 007175 5 ustar debian/golang-ubuntu-push-dev.install 0000644 0000000 0000000 00000000021 12325724711 015073 0 ustar usr/share/gocode
debian/docs 0000644 0000000 0000000 00000000007 12325724711 010042 0 ustar README
debian/source/ 0000755 0000000 0000000 00000000000 12325725173 010475 5 ustar debian/source/format 0000644 0000000 0000000 00000000014 12325724711 011700 0 ustar 3.0 (quilt)
debian/ubuntu-push-client.install 0000755 0000000 0000000 00000000303 12325724711 014334 0 ustar #!/usr/bin/dh-exec
debian/config.json /etc/xdg/ubuntu-push-client
debian/ubuntu-push-client.conf /usr/share/upstart/sessions
usr/bin/ubuntu-push => /usr/lib/ubuntu-push-client/ubuntu-push-client
debian/copyright 0000644 0000000 0000000 00000005030 12325724711 011123 0 ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: ubuntu-push-client
Source: http://launchpad.net/ubuntu-push
Files: *
Copyright: 2013-2014 Canonical Ltd.
License: GPL-3.0
Files: http13client/*
Copyright: 2009-2013 The Go Authors
License: BSD-3-clause
Files: external/murmur3/*
Copyright: 2013 Sébastien Paolacci
License: BSD-3-clause
License: GPL-3.0
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, version 3 of the License.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see .
.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
License: BSD-3-clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
.
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the following disclaimer
in the documentation and/or other materials provided with the
distribution.
* Neither the name of Google Inc. nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
debian/config.json 0000644 0000000 0000000 00000000676 12325724711 011343 0 ustar {
"connect_timeout": "20s",
"exchange_timeout": "30s",
"hosts_cache_expiry": "12h",
"expect_all_repaired": "40m",
"addr": "https://push.ubuntu.com/delivery-hosts",
"cert_pem_file": "",
"stabilizing_timeout": "2s",
"recheck_timeout": "10m",
"connectivity_check_url": "http://start.ubuntu.com/connectivity-check.html",
"connectivity_check_md5": "4589f42e1546aa47ca181e5d949d310b",
"log_level": "debug"
}
debian/compat 0000644 0000000 0000000 00000000002 12325724711 010370 0 ustar 9
debian/ubuntu-push-client.conf 0000644 0000000 0000000 00000000233 12325724711 013612 0 ustar description "ubuntu push notification client-side daemon"
start on started dbus
stop on stopped dbus
exec /usr/lib/ubuntu-push-client/ubuntu-push-client
debian/changelog 0000644 0000000 0000000 00000026200 12325724730 011045 0 ustar ubuntu-push (0.2.1+14.04.20140423.1-0ubuntu1) trusty; urgency=high
[ Samuele Pedroni ]
* gave the client the ability to get config from commandline
( => easier automated testing) (LP: #1311600)
[ John Lenton ]
* Ensure ubuntu-push-client is the only one running in the session.
(LP: #1309432)
* Remove supurious numbers in brackets in notifications. (LP: #1308145)
* Check the server certificate and server name. (LP: #1297969)
* Loop whoopsie_identifier_generate until it starts working. (LP: #1309237)
* In the session: set a flag on connect, clear it on successfully
replying to ping or broadcast messages, check it at the top of
autoredial. Also track the last autoredial, and set the delay flag if
autoredial is re-called too quickly. (LP: #1309231)
-- Ubuntu daily release Wed, 23 Apr 2014 11:54:00 +0000
ubuntu-push (0.2+14.04.20140411-0ubuntu1) trusty; urgency=medium
[ John Lenton ]
* New upstream release.
[ Richard Huddie ]
* added basic autopilot framework
* configparser and http post updates
* removed tests folder
-- Ubuntu daily release Fri, 11 Apr 2014 18:31:57 +0000
ubuntu-push (0.1+14.04.20140404-0ubuntu1) trusty; urgency=low
[ Tarmac ]
* Merge automatic into trunk.
-- Ubuntu daily release Fri, 04 Apr 2014 14:52:06 +0000
ubuntu-push (0.1+14.04.20140327-0ubuntu1) trusty; urgency=medium
[ John Lenton ]
* got rid of multiarch bug
-- Ubuntu daily release Thu, 27 Mar 2014 14:11:31 +0000
ubuntu-push (0.1+14.04.20140325.2-0ubuntu1) trusty; urgency=low
[ Diogo Baeder de Paula Pinto ]
* [r=pedronis] Adding authorization field to the ConnectMsg struct
[ Robert Bruce Park ]
* [r=chipaca] Minor cleanup, with wrap-and-sort.
[ Nicola Larosa ]
* [r=pedronis] Reflow comments so that subsequent changes are more
readable. Only comment reflows, no other changes.
* [r=pedronis] Clean up docs and comments, and make them look better
in go doc. No behavior change at all.
[ john.lenton@canonical.com ]
* [r=pedronis] A thin wrapper around libwhoopsie/identifier.h.
* [r=pedronis] A simplified (and more testable) dbus api
* [r=pedronis] A simplified, testable, Network Manager wrapper
* [r=pedronis] A super simple connectivity api (in the "am i
connected?" sense)
* [r=pedronis] Switched networkmanager to use the non-deprecated api
for state.
* [r=pedronis] moved the object proxy into the endpoint
* [r=pedronis] Made the bus support multi-valued signals (preparatory
for notifications). Also added tests for TestingBus.
* [r=pedronis] notifications! first, a low-level api.
* [r=pedronis] URLDispatcher (and extended endpoint.Call to return
[]interface{})
* [r=pedronis] moved a bunch of packages under bus/
* [r=pedronis] change a few of the bus/* services to take a
bus.Endpoint instead of a bus.Bus
* [r=pedronis] reworked bus.Endpoint to have a Dial() method, added an
AutoRedialer() and put the redialing logic in there (for use on
sessionbus as well, later).
* [r=pedronis] Nuked the connectivity example.
* [r=pedronis] Renamed bus/connectivity's Config to
ConnectivityConfig.
* [r=pedronis] Introducing AutoRetry, a generic AutoRetry.
* [r=pedronis] Made bus.Endpoint's WatchSignal use an (exported)
channel for waiting between sending values, if the channel is not
nil.
* [r=pedronis] The client session level map. Interesting as an
interface and not much more, right now.
* [r=pedronis] A wild client session appears!
* [r=pedronis] get rid of a race in the bus/testing watchticker thing
* [r=pedronis] The handling of the ping.
* [r=pedronis,chipaca] Broadcasting your horizons.
* [r=pedronis] The running man.
* [r=pedronis] Starting to take shape.
* [r=pedronis] Killed checkRunnable; renamed: Dial -> connect, run ->
loop.
* [r=pedronis] Ladies and gentlemen, the client session.
* [r=pedronis] first step of the v0 of the client
* [r=pedronis] second step of the v0 of the client: getting the device
id
* [r=pedronis] part 3: setting up the bus
* [r=pedronis] Part 4: added State to client/session, to aid in
testing some aspects of this.
* [r=pedronis] added handleConnState
* [r=pedronis] Several things: features:. * bus/testing/'s Endpoint
now tracks Calls; call bus/testing.GetCallCargs(endp) to get the
list. * Client.handleErr, Client.handleNotification and
Client.handleClick (and tests) cleanups:. * renamed client's
Client's connState to hasConnectivity * split out code from
handleConnState into initSession/connectSession/disconnectSession
* [r=pedronis] Several things: features:. * Client.doLoop, the puppet
master. fixes and cleanups:. * added log_level to client config *
added the mysterious sessionRetryCh, used in doLoop to avoid a
rather common starvation scenario. * found a way not to panic out in
initSession (not that it's much better) * unified logging in the
client tests a bit * added logging to session's start error states.
* [r=pedronis] Reworked or refactored util/redialer, and a bit of
client/session, and client.
* [r=pedronis] TestLogger
* [r=pedronis] and this completes the client library (for now)
* [r=pedronis] made GetSourceRelative look at the environ to help make
the tests pass in packaging
* [r=pedronis] Gave client a constructor, moved setting config file to
there.
* [r=pedronis] change the levelmap interface to return errors
* [r=pedronis] this is sqlevelmap
* [r=pedronis] bring sqlevelmap into session
* [r=pedronis] and this gives the client the ability to persist its
session's levelmap
* [r=pedronis] The Push Client itself.
* [r=diogobaeder] Merging the packaging branch (to get on the CI
train).
* [r=didrocks] Fixes to packaging, as suggested by didrocks.
* Bring back source/format, so executable .install file works.
[ Timo Jyrinki ]
* [r=chipaca] Add http13client copyright information and use GPL-3.0
(non-+) license consistently.
[ Ubuntu daily release ]
* New rebuild forced
[ Samuele Pedroni (Canonical Services Ltd.) ]
* [r=chipaca] and as a start we get some protocol support and a
development server and infrastructure
* [r=chipaca] couple of extra tests and changes to improve test
coverage
* [r=chipaca] -insecure (don't check certs) -reportPings=f (don't
report pings) flags for acceptanceclient
* [r=chipaca] make the tracker used by the session for logging
pluggable
* [r=chipaca] introduce CONNACK message from the server after CONNECT
to inform the client of connection params like ping interval
* [r=chipaca] protocol diagrams using graphviz
* [r=chipaca] introduce middleware in the http handling that recovers
and converts panics into 500 errors, profit (remove 500 ad hoc code)
* [r=bloodearnest] log some debug info about runtime configuration of
the dev server; also tweak play-around config.json with some
slightly saner values
* [r=chipaca] teach config how to behave with anonymous fields,
unexported fields, and to compose a config reading from many files;
move some shared/sharable things into testing/
* [r=chipaca] make server/dev into composable pieces, somewhat big
mostly because of lots of shuffling around
* [r=chipaca] populate /server with the runners code; generalize
acceptance.sh
* [r=chipaca] exchanges don't require to be so tied to a particular
broker
* [r=chipaca] put simple broker in its own package, reorg most of its
tests as a common testsuite; fix TestBroadcast to test what it says
on the tin
* [r=chipaca] introduce reusable TestBrokerConfig and
TestBrokerSession
* [r=chipaca] check that the data field is not missing
* [r=pedronis] [trivial ]support supplying auxiliary configs to the
server in acceptance tests
* [r=chipaca] some more info reported out of session, some tweaks
* [r=chipaca] add indirection to accessing the broadcast exchanges on
the broadcast queue in the broker suite
* [r=chipaca] fix corner cases like client level too ahead etc, with
acceptance tests
* [r=chipaca] base the simple logger only on having a log.Logger-style
Output(); given this we can introduce a testing.TestLogger that does
redirecting of logs to the gocheck.C object if wired in SetUpTest
and also does its own capture
* [r=chipaca] use TestLogger in more places
* [r=chipaca] be explicit with the MinLogger interface, stops 1.1
compiler from exploding
* [r=pedronis] [trivial] reorg imports in: config logger protocol
server testing as: stdlib -- 3rdparty -- own
* [r=pedronis] [trivial] use Assert in place of Check to sanity check
api http reqs in acceptance; use a longer ping in
TestSessionLoopExchangeNextPing
* [r=chipaca] add support for expiration of broadcasts with trivial
implementation in the in-memory pending store
* [r=chipaca] starting splitting out helpers in the acceptance tests
* [r=chipaca] restructure acceptance tests into reusable suites
* [r=chipaca] add acceptance test about broadcast expiration
* [r=diogobaeder] simplify acceptance test; don't hide that
MakeHandlersMux returns a *http.ServeMux
* [r=verterok] add some flexibility in how the requests get the store;
log unexpected store related errors
* [r=teknico] expose a couple of helpers for reuse
* [r=pedronis] further small doc cleanups
* [r=teknico] * fix the fact that exchanges were reusing broadcast
messages but the split state of those wasn't reset fix naming in
tests that was reversed.
* [r=teknico] refactor acceptance tests to expose more hooking
points/details
* [r=pedronis] [trivial] variable spelling
* [r=pedronis] [trivial] hook to massage requests sent to the http api
server by the acceptance test suite
* [r=chipaca] let the device listener setup code also take a prebuilt
listener
* [r=chipaca] vendor the go 1.3 development net/http bits which
properly/better support timeouts for requests; see _using.txt and
Makefile for the recipe in http13client
* [r=chipaca] add timeing out to webhecker using the vendorized go 1.3
net/http in http13client
* [r=chipaca] introduce package gethosts implementing finding hosts to
connect to for delivery of notifications
-- Ubuntu daily release Tue, 25 Mar 2014 17:27:09 +0000
ubuntu-push (0.1-0ubuntu1) trusty; urgency=medium
* Getting ready for CI train.
-- John Lenton Thu, 20 Mar 2014 12:20:13 +0000
ubuntu-push (0.1-0pre4) trusty; urgency=medium
* Pointing it to staging. Building a source package.
-- John Lenton Fri, 07 Feb 2014 19:35:50 +0000
ubuntu-push (0.1-0pre3) trusty; urgency=medium
* first one with a config file and upstart thingie!
-- John Lenton Fri, 07 Feb 2014 11:29:36 +0000
ubuntu-push (0.1-0pre2) trusty; urgency=medium
* A lot closer!
-- John Lenton Thu, 06 Feb 2014 17:31:39 +0000
ubuntu-push (0.1-0pre1) trusty; urgency=low
* Initial release
-- John Lenton Sun, 26 Jan 2014 22:53:09 +0000
debian/rules 0000755 0000000 0000000 00000000447 12325724711 010257 0 ustar #!/usr/bin/make -f
# -*- makefile -*-
export DH_GOPKG := launchpad.net/ubuntu-push
export DEB_BUILD_OPTIONS := nostrip
export UBUNTU_PUSH_TEST_RESOURCES_ROOT := $(CURDIR)
override_dh_install:
dh_install -Xusr/bin/cmd -Xusr/bin/dev --fail-missing
%:
dh $@ --buildsystem=golang --with=golang
debian/control 0000644 0000000 0000000 00000002644 12325724711 010603 0 ustar Source: ubuntu-push
Section: net
Priority: optional
X-Original-Maintainer: John Lenton
Maintainer: Ubuntu Developers
Build-Depends: debhelper (>= 9),
dh-exec (>= 0.3),
dh-golang,
golang-go,
golang-go-dbus-dev,
golang-go-xdg-dev,
golang-gocheck-dev,
golang-gosqlite-dev,
libgcrypt11-dev,
libglib2.0-dev (>= 2.31.6),
libwhoopsie-dev,
Standards-Version: 3.9.5
Homepage: http://launchpad.net/ubuntu-push
Vcs-Bzr: lp:ubuntu-push
Vcs-Browser: http://bazaar.launchpad.net/~ubuntu-push-hackers/ubuntu-push/trunk/files
Package: ubuntu-push-client
Architecture: any
Multi-Arch: foreign
Depends: dbus,
network-manager,
qtdeclarative5-unity-notifications-plugin | notification-daemon,
url-dispatcher,
${misc:Depends},
${shlibs:Depends},
Built-Using: ${misc:Built-Using}
Description: Ubuntu Push Notifications client-side daemon
The Ubuntu Push Notifications client-side daemon.
Package: golang-ubuntu-push-dev
Architecture: all
Depends: ${misc:Depends},
${shlibs:Depends},
Built-Using: ${misc:Built-Using}
Description: Ubuntu Push Notifications client-side daemon development package
The Ubuntu Push Notifications client-side daemon library.
.
This package contains the source.