packages feed

nirum 0.3.0 → 0.3.2

raw patch · 5 files changed

+89/−33 lines, 5 files

Files

CHANGES.md view
@@ -1,6 +1,29 @@ Nirum changelog =============== +Version 0.3.2+-------------++Released on March 15, 2018.++### Et cetera++ -  Fixed a broken build of the official Docker images.+++Version 0.3.1+-------------++Released on March 1, 2018.++### Python target++ -  Fixed record/union deserializers to ignore unknown fields in data payload.+    Deserializers had raised `KeyError` before.  [#232]++[#232]: https://github.com/spoqa/nirum/issues/232++ Version 0.3.0 ------------- @@ -166,7 +189,6 @@ [#203]: https://github.com/spoqa/nirum/pull/203 [#204]: https://github.com/spoqa/nirum/pull/204 [#216]: https://github.com/spoqa/nirum/issues/216-[#222]: https://github.com/spoqa/nirum/pull/222 [#218]: https://github.com/spoqa/nirum/issues/218 [#222]: https://github.com/spoqa/nirum/pull/222 [#223]: https://github.com/spoqa/nirum/pull/223
README.md view
@@ -1,7 +1,7 @@ Nirum ===== -[![The latest release on GitHub][release-svg]][release]+[![The latest release on GitHub][release-svg]][releases] [![Docker automated build][docker-svg]][docker] [![Build status on Linux and macOS (Travis CI)][ci-svg]][ci] [![Build status on Windows (AppVeyor)][ciw-svg]][ciw]@@ -10,7 +10,7 @@ [![Gitter][chat-svg]][chat]  [release-svg]: https://img.shields.io/github/release/spoqa/nirum/all.svg-[release]: https://github.com/spoqa/nirum/releases+[releases]: https://github.com/spoqa/nirum/releases [docker]: https://hub.docker.com/r/spoqa/nirum/ [docker-svg]: https://img.shields.io/docker/automated/spoqa/nirum.svg [ci-svg]: https://travis-ci.org/spoqa/nirum.svg?branch=master@@ -24,8 +24,8 @@ [chat-svg]: https://badges.gitter.im/spoqa/nirum.svg [chat]: https://gitter.im/spoqa/nirum?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge -Nirum is an [IDL][1] compiler and [RPC][2]/[distributed object][3] framework-for [microservices][4], built on top of the modern Web server technologies+Nirum is an [IDL] compiler and [RPC]/[distributed object] framework+for [microservices], built on top of the modern Web server technologies such as RESTful HTTP and JSON.  You can find how the language looks like from source codes in the `examples/`@@ -34,25 +34,51 @@ **Note that its design is highly unstable and could be changed.** Also the feature set is incomplete yet. -[1]: https://en.wikipedia.org/wiki/Interface_description_language-[2]: https://en.wikipedia.org/wiki/Remote_procedure_call-[3]: https://en.wikipedia.org/wiki/Distributed_object-[4]: https://en.wikipedia.org/wiki/Microservices+[IDL]: https://en.wikipedia.org/wiki/Interface_description_language+[RPC]: https://en.wikipedia.org/wiki/Remote_procedure_call+[distributed object]: https://en.wikipedia.org/wiki/Distributed_object+[microservices]: https://en.wikipedia.org/wiki/Microservices  -Nightly builds---------------+Installation+------------ -The easiest way to give a try to use Nirum is downloading a nightly build.-We currently provides the prebuilt binaries of the following platforms:+The Nirum compiler works on the most major platforms like Linux, macOS, and+Windows.  We provide the prebuilt executable binaries for these three platforms. ++### Released builds++You can download a executable binary for Linux (x86_64), macOS (x86_64), or+Windows (x64 or x86) from the [latest release note][latest-release].+You should give it appropriate permissions (e.g., `+x`) depending on your+platform.++If you look for a previous release, see the [list of all releases][releases].++We provide official Docker images as well.  You can check the list of+[released tags][docker-tags]. *Note that `latest` is for a nightly build which+is unstable (see below).*++[latest-release]: https://github.com/spoqa/nirum/releases/latest+[docker-tags]: https://hub.docker.com/r/spoqa/nirum/tags/+++### Nightly builds++Since Nirum is still changing by leaps and bounds, you could want to try+its bleeding edge.  We provide nightly builds for this purpose.+ - [Linux (x86_64)](https://nightly-builds.nirum.org/travis-builds/nirum-linux-x86_64)-- [Mac (x86_64)](https://nightly-builds.nirum.org/travis-builds/nirum-darwin-x86_64)+- [macOS (x86_64)](https://nightly-builds.nirum.org/travis-builds/nirum-darwin-x86_64) - [Windows (x64)](https://ci.appveyor.com/api/projects/dahlia/nirum-k5n5y/artifacts/nirum-win-x64.exe?job=Platform%3A%20x64&branch=master) - [Windows (x86)](https://ci.appveyor.com/api/projects/dahlia/nirum-k5n5y/artifacts/nirum-win-x86.exe?job=Platform%3A%20x86&branch=master) - [Docker (`spoqa/nirum:latest`)][docker] +Although we call it "nightly build," technically it is not built every night,+but done every merge commit. + Getting started --------------- @@ -67,7 +93,7 @@     Nirum: The IDL compiler and RPC/distributed object framework      Usage: nirum [-v|--version] (-o|--output-dir DIR) (-t|--target TARGET) DIR-      Nirum compiler 0.3.0+      Nirum compiler 0.3.2      Available options:       -h,--help                Show this help text@@ -82,7 +108,7 @@ Building -------- -If you already installed [Haskell Stack][5], you can build the project+If you already installed [Haskell Stack], you can build the project in the same way to build other Haskell softwares:      $ stack build@@ -94,15 +120,15 @@  For details, please read the [contribution guide](./CONTRIBUTING.md). -[5]: https://www.haskellstack.org/+[Haskell Stack]: https://www.haskellstack.org/   Related projects & tools ------------------------ -See also the [list of Nirum-related projects][7] on GitHub.  Have you kicked off-a new project related to Nirum?  Please add *nirum* [topic][8] to your project-on GitHub!+See also the [list of Nirum-related projects][related-projects] on GitHub.+Have you kicked off a new project related to Nirum?  Please add *nirum*+[topic][github-topic] to your project on GitHub!  ### Language runtimes @@ -117,23 +143,23 @@   -   [nirum.tmbundle](https://github.com/spoqa/nirum.tmbundle): TextMate bundle      for Nirum.  Also can be used by IntelliJ IDEA (or any other JetBrain's-     IDEs, e.g., PyCharm, WebStorm) through [TextMate bundles support][9].+     IDEs, e.g., PyCharm, WebStorm) through [TextMate bundles support].  -   [nirum.vim](https://github.com/spoqa/nirum.vim): Nirum syntax highlighter for      Vim/Neovim.  -   [sublime-nirum](https://github.com/spoqa/sublime-nirum): Nirum package for      Sublime Text 3. -[7]: https://github.com/search?q=topic:nirum+fork:false-[8]: https://github.com/blog/2309-introducing-topics-[9]: https://github.com/spoqa/nirum.tmbundle#installation-intellij-idea-pycharm-etc+[related-projects]: https://github.com/search?q=topic:nirum+fork:false+[github-topic]: https://github.com/blog/2309-introducing-topics+[TextMate bundles support]: https://github.com/spoqa/nirum.tmbundle#installation-intellij-idea-pycharm-etc   Etymology ---------  **니름** (IPA: /niɾɯm/; *nireum*) is a sort of telepathy in the fictional world-of [The Bird That Drinks Tears][9] (눈물을 마시는 새 *Nunmureul masineun sae*)-by [Lee Yeongdo][10] (이영도).+of [The Bird That Drinks Tears] (눈물을 마시는 새 *Nunmureul masineun sae*)+by [Lee Yeongdo] (이영도). -[9]: https://en.wikipedia.org/wiki/The_Bird_That_Drinks_Tears-[10]: https://en.wikipedia.org/wiki/Lee_Yeongdo+[The Bird That Drinks Tears]: https://en.wikipedia.org/wiki/The_Bird_That_Drinks_Tears+[Lee Yeongdo]: https://en.wikipedia.org/wiki/Lee_Yeongdo
nirum.cabal view
@@ -2,10 +2,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: d73e14bde196f4880bd9edb7786571142a599151fd80cd02969fddf22f561a27+-- hash: 3a99f67d2926d8a6b73021b3ece687ae7f0b60405baf702ebcedd5988e9bc909  name:           nirum-version:        0.3.0+version:        0.3.2 synopsis:       IDL compiler and RPC/distributed object framework for microservices  description:    Nirum is an IDL compiler and RPC/distributed object framework for microservices, built on top of the modern Web server technologies such as RESTful HTTP and JSON.
src/Nirum/Targets/Python.hs view
@@ -966,7 +966,11 @@             else:                 name = attribute_name             try:-                args[name] = deserialize_meta(field_types[name], item)+                field_type = field_types[name]+            except KeyError:+                continue+            try:+                args[name] = deserialize_meta(field_type, item)             except ValueError as e:                 errors.add('%s: %s' % (attribute_name, str(e)))         if errors:@@ -1107,7 +1111,11 @@                 name = attribute_name             tag_types = dict(cls.__nirum_tag_types__())             try:-                args[name] = deserialize_meta(tag_types[name], item)+                field_type = tag_types[name]+            except KeyError:+                continue+            try:+                args[name] = deserialize_meta(field_type, item)             except ValueError as e:                 errors.add('%s: %s' % (attribute_name, str(e)))         if errors:
test/Nirum/VersionSpec.hs view
@@ -17,7 +17,7 @@             version `shouldSatisfy` SV.isDevelopment         it "is the proper version" $             -- is it a necessary test?-            version `shouldBe` SV.version 0 3 0 [] []+            version `shouldBe` SV.version 0 3 2 [] []     describe "versionText" $ do         it "is equivalent to version" $             versionText `shouldBe` SV.toText version