• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

codedge-llc / pigeon / 316
84%

Build:
DEFAULT BRANCH: master
Ran 01 Oct 2017 06:29PM UTC
Jobs 4
Files 20
Run time 48s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
316

push

travis-ci

web-flow
feat: v1.1.0 (#89)

* refactor: dialyzer stuff

* feat: kadabra upgraded to `v0.3.0`

Minimum requirements are now Elixir 1.4 and OTP 19. `:kadabra` needs to
be started as an application to use the Registry (will need to adjust
this possibly).

Also in this commit:
FCM/APNS config structs. Will need to design some sort of generic worker
interface that, when given these structs, will do their respective
things. This will also make the dynamic environment configs dead-simple
to implement.

* fix: updated travis config for new requirements

* feat: kadabra bumped to v0.3.0

Also:
`Http2.Client` now includes `start/0` callback. This is used to start
the optional `:kadabra` application, as it now supervises a registry.

* ci: bumped travis runner to OTP 19.2

* test: FCM.put_priority tests

Also: various @moduledoc false cleanup

* feat: initial generic Pigeon.Worker implementation

Currently only set up for APNS.

TODO:
- Migrate FCM to new generic worker
- Refine APNS/FCM configs
- Tests for everything
- Documentation for configs

* feat: FCM now uses Pigeon.Worker

Subsequently, APNS workers now support automatic reconnect on push if
the socket is closed.

Need to standardize api for APNS.push/2 and FCM.push/2 (as in get rid
of the third on_response argument and make it one of the `opts`).

* test: APNS doctests

Also:
- Typedocs and specs for APNS
- Dialyzer ignore config

* refactor: various credo cleanup

* feat: enable/disable push logging

Enable with `config :pigeon, debug_log: true`

* feat: dynamic env configs

Works like a charm. Difficult to unit test.

Example usage:

```
config :pigeon, workers: [
  {YourApp.Pigeon, :apns_config}
]
```

Need to rework `APNS.Config` to be a little more clear with certs and
keys. Original mix config just specified `:cert` and `:key` and handled
the proper filename/plaintext/{:app, filename.pem}.

* refactor: `APNS.Config.new/1` and `FCM.Config.new/1`

Now the recommended way to set up config structs.

Also: added more doctests

* fix: don't test configurable doctests

Unsure if this is whats causing elixir 1.4.5 builds to fail.

* refactor: various cleanup

The various `Config.config/1` functions have been renamed to
`Config.new/1` to better standardize the API.

Added some doctests to ADM. (I really need to write some proper
integration tests to get coverage up)

* test: (some) doctests for adm

Also: added coveralls to travis config

* feat: http2 client adapter guide

* feat: %APNS.NotificationResponse{}

* refactor: various doctests and cleanup

* refactor: better HTTP2 file structure

* feat: APNS supports custom :uri override

* fix: dynamic ADM configs

Now compiles `Pigeon.TestConfig` only in the test environment to allow
testing of dynamic configs.

* feat: ADM API updates (#91)

* feat: ADM ResultParser and NotificationResponse

* feat: ADM.push/2 accepts list of notifications

* feat: ADM synchronous push

* fix: ADM doctest and error status code

* fix: APNS passes reconnect option to http2 client

Also: removed inspect call from ADM doctest.

* fix: removed FCM connection pings entirely

Updates similar to v1.0.4 fix. `Configurable.ping_period/1` is now
`Configurable.schedule_ping/1`. APNS schedules its ping accordingly,
while FCM now does nothing.

* feat: APNS.Notification :response attribute

* feat: response API rework

TODO:
- FCM custom errors should respect String.to_existing_atom
- Re-enable various FCM tests
- Pigeon.Encodable for APNS and ADM

* fix: `stop_connection/1` now actually stops

Also:
- Added `ADM.start_connection/1` and `ADM.stop_connection/1` (guess I
forgot about it?)
- Doctests everywhere
- Removed unused `NotificationResponse` structs

TODO:
- typespec and document all `:response` responses
- handle FCM custom errors appropriately

* fix: passed linter

* docs: documentation and typespecs everywhere

TODO:
- Finish updating push guides
- FCM error response atoms
- v1.1 migration guide?

* feat: `:status` and `:response` for FCM.Notification

* chore: bumped version to 1.1.0-rc.0

* fix: ADM fixes for v1.1 (#94)

* fix: ADM async push list of notifications

* docs: update ADM docs for :update response

* chore: migration guide

* fix: bumped kadabra to v0.3.2

* chore: bump version to v1.1.0

* fix: APNS :reconnect now false by default

310 of 361 relevant lines covered (85.87%)

31.6 hits per line

Jobs
ID Job ID Ran Files Coverage
1 316.1 01 Oct 2017 06:29PM UTC 0
85.6
Travis Job 316.1
2 316.2 01 Oct 2017 06:29PM UTC 0
85.6
Travis Job 316.2
3 316.3 01 Oct 2017 06:30PM UTC 0
85.6
Travis Job 316.3
4 316.4 01 Oct 2017 06:30PM UTC 0
85.6
Travis Job 316.4
Source Files on build 316
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #316
  • 63d78474 on github
  • Next Build on master (#317)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc