Commit Graph

105 Commits

Author SHA1 Message Date
Martin Frost af4bbd723a Migrate from Mix.Config to Config 2022-05-10 22:57:21 +02:00
Martin Frost 41d7c58661 Add .tool-versions file
To keep track of what versions of erlang and elixir I'm currently using.
2022-05-10 22:57:21 +02:00
Martin Frost 5d95c230dd version 2.0.1
Fix deprecation warnings on elixir 1.6.0
2018-01-26 17:59:55 +01:00
Martin Frost 3ba1c322b8 Mix format everything 2018-01-26 17:55:15 +01:00
Martin Frost 1e620e0e84 Add .formatter.exs 2018-01-26 17:55:08 +01:00
Martin Frost 6e3b8a55ce ISN 2.0: Support Postgrex 0.13 and Ecto 2.1
Also update README.
2017-04-21 19:21:29 +02:00
Martin Frost a6c58daf99 Update ex_doc dependency 2017-04-21 13:10:54 +02:00
Martin Frost 5f06f686cf Merge pull request #2 from ibarchenkov/master
Support for Postgrex 0.13 and Ecto 2.1
2017-04-21 13:07:36 +02:00
Igor Barchenkov 16c5beecd7 Update README 2017-04-21 13:17:10 +03:00
Igor Barchenkov 8dde5562d1 Add support for Postgrex 0.13 and Ecto 2.1 2017-04-21 13:00:31 +03:00
Martin Frost 50e4b6adca Fix test_helper to run properly on CI 2017-02-25 10:24:45 +01:00
Martin Frost 9f307aa6f5 Update deps 2017-02-25 10:24:29 +01:00
Martin Frost 8556cd6f83 Get rid of ex_doc warning when running tests 2017-01-22 22:23:06 +01:00
Martin Frost c750f32c9f Fix Elixir 1.4 warnings 2017-01-22 22:20:57 +01:00
Martin Frost 9ea1f173f7 Use PostgreSQL binary wire procotol
Mostly to make `isn` compatible with postgrex 0.13.0.

This will probably also make the extension a bit more performant.
2017-01-22 22:19:23 +01:00
Martin Frost 056012ad97 Remove .travis.yml
Tests are run on SemaphoreCI now.
2016-07-18 09:39:46 +02:00
Martin Frost 3b59b0911d Update TravisCI build matrix 2016-07-18 09:27:08 +02:00
Martin Frost 295ebb078b Add ecto to application list 2016-07-17 19:24:31 +02:00
Martin Frost d631c62867 Add support for Ecto 2.0 2016-07-17 11:14:41 +02:00
Martin Frost 6709672540 Tidy up Installation instructions
Now they look prettier on hexdocs
2016-01-10 13:31:17 +01:00
Martin Frost 75b241bb00 Fix formatting in README 2016-01-10 13:09:24 +01:00
Martin Frost de2a96140d Include README.md in docs generation
Also switch docs generation to use Pandoc.
2016-01-10 13:06:38 +01:00
Martin Frost b8c6620c94 Fix typo in README: `Isn` -> `ISN` 2016-01-10 12:52:54 +01:00
Martin Frost 151b74348c Tidy up migration generation code a bit
- make `pad/1` start its pipeline with a raw value
2016-01-10 12:47:32 +01:00
Martin Frost 8a40849e7c Ignore emacs *~ temp files 2016-01-10 12:46:28 +01:00
Martin Frost 29598b8dc2 Version 1.0.0
- Renamed Isn -> ISN, following Elixir's [Naming Conventions](http://elixir-lang.org/docs/master/elixir/naming-conventions.html)
- Include a mix task for generating the isn extension creation migration
2016-01-10 12:42:28 +01:00
Martin Frost cce1d894e6 Update README with new installation instructions 2016-01-10 12:41:39 +01:00
Martin Frost cab8bca1d9 Include extension migration generation mix task
This module name contains `Isn` (not `ISN`), because otherwise mix will
not find it when running `mix isn.gen.migration`.
2016-01-10 12:29:30 +01:00
Martin Frost 0cef21e3da Rename Isn -> ISN 2016-01-10 12:12:38 +01:00
Martin Frost 04463fee19 Remove unused dev dependency 'eh' 2016-01-10 12:04:10 +01:00
Martin Frost 684aa1a6e2 Extract build status URLs to make lines shorter 2016-01-09 11:23:23 +01:00
Martin Frost 89e3dda530 Bump dependencies, and version 2016-01-03 22:17:57 +01:00
Martin Frost 933c15a671 Some tidying up 2015-10-03 21:45:47 +02:00
Martin Frost 81922adc70 Add .travis.yml file 2015-10-02 21:45:30 +02:00
Martin Frost 68967b1e63 Comment Ecto.Type module generating code 2015-10-02 20:45:53 +02:00
Martin Frost 0f89e38df3 Properly indent Isn module documentation 2015-10-02 20:43:59 +02:00
Martin Frost 489a461b34 Rewrite Ecto module implementation
Replace Isn.Base and its gigantic `__using__` method with a simple for
comprehension to generate all of the separate modules instead.
2015-10-02 20:24:50 +02:00
Martin Frost b69b2b4190 Bump outdated dependencies
* ecto ~> 1.0
* ex_doc ~> 0.10
2015-09-30 12:18:07 +02:00
Martin Frost f623e5337c Add earmark dependency. 2015-08-10 22:06:42 +02:00
Martin Frost d166a36b47 Update dependencies
Bump postgrex up to `~> 0.9` and ecto to `~> 0.15`
2015-08-10 22:00:54 +02:00
Martin Frost a4cddac199 Add Semaphore CI build status badge 2015-06-18 18:15:27 +02:00
Martin Frost e38b0b6b79 Modify test_helper to work with Semaphore CI 2015-06-18 18:00:09 +02:00
Martin Frost e012413a35 Explicitly `unquote(isn_type)` in Isn.Base
This gets rid of `@isn_type` in Isn.Base. It was only ever there because I had
to store it somewhere, since compile-time macro parameters are not available to
a function at runtime.
2015-06-10 08:24:24 +02:00
Martin Frost 15385bfc6b Use __CALLER__ to determine isn datatype
`__CALLER__.module` contains enough information to determine what datatype to
use, so the usage of `Isn.Base` can be simplified to the following

```elixir
defmodule Isn.ISBN13 do
  use Isn.Base
end
```

instead of

```elixir
defmodule Isn.ISBN13 do
  use Isn.Base, :isbn13
end
```
2015-06-02 08:03:17 +02:00
Martin Frost f3514497fd Add eh for documentation lookup 2015-06-02 08:03:03 +02:00
Martin Frost c0eb9ec41f Added better documentation. 2015-05-27 19:38:26 +02:00
Martin Frost 6d2965b549 add ex_doc as dev dependency 2015-05-27 19:20:23 +02:00
Martin Frost dc10bf84ad added files to package listing in mix.exs 2015-05-27 19:19:03 +02:00
Martin Frost f076bd5ec5 Flesh out readme to actually be useful 2015-05-27 19:13:05 +02:00
Martin Frost ba23be86bb v0.1: Flesh out library with all types in isn
Restructuring: Isn.Extension is now called Isn, which means that the postgrex
configuration line becomes a bit shorter now:

```elixir
{:ok, pid} = Postgrex.Connection.start_link(
  database: "isn_test",
  extensions: [{Isn, {}}])
```

instead of the previous version, with `extensions: [{Isn.Extension, {}}]`.

I also implement the entire library in the `lib/isn.ex` file, since it felt
pretty silly to have eight different one-line files under `lib/isn/` looking
like this: `defmodule Isn.ISBN, do: use(Isn.Base, :isbn)`

We now have the following types:

- ISBN
- ISBN13
- ISMN
- ISMN13
- ISSN
- ISSN13
- EAN13
- UPC
2015-05-27 18:22:51 +02:00