https://github.com/embulk/embulk-parser-msgpack
MessagePack parser plugin for Embulk
https://github.com/embulk/embulk-parser-msgpack
Last synced: about 2 months ago
JSON representation
MessagePack parser plugin for Embulk
- Host: GitHub
- URL: https://github.com/embulk/embulk-parser-msgpack
- Owner: embulk
- License: apache-2.0
- Created: 2016-10-22T05:50:53.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-10-24T02:32:58.000Z (over 1 year ago)
- Last Synced: 2024-04-24T19:05:05.533Z (about 1 year ago)
- Language: Java
- Size: 299 KB
- Stars: 0
- Watchers: 16
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# MessagePack parser plugin for Embulk
Parses files encoded in MessagePack.
## Versions
| embulk-parser-msgpack | Embulk |
| ---- | ---- |
| v0.4.0 | Embulk v0.10.41 or earlier |
| v0.5.0 | Embulk v0.9 - v0.11 (It will stop working after Embulk v1.0.0.) |
| v0.6.0 | Embulk v0.10.42 and later, including v0.11 |## Overview
* **Plugin type**: parser
* **Guess supported**: yes## Configuration
- **row_encoding**: type of a row. "array" or "map" (enum, default: map)
- **file_encoding**: if a file includes a big array, set "array". Otherwise, if a file includes sequence of rows, set "sequence" (enum, default: sequence)
- **columns**: description (schema, default: a single Json typed column)## Example
seed.yml:
```yaml
in:
# here can use any file input plugin type such as file, s3, gcs, etc.
type: file
path_prefix: /path/to/file/or/directory
parser:
type: msgpack
```Command:
```
$ embulk gem install embulk-parser-msgpack
$ embulk guess -g msgpack seed.yml -o config.yml
$ embulk run config.yml
```The guessed config.yml will include column settings:
```yaml
in:
type: any file input plugin type
parser:
type: msgpack
row_encoding: map
file_encoding: sequence
columns:
- {index: 0, name: a, type: long}
- {index: 1, name: b, type: string}
```For Maintainers
----------------### Release
Modify `version` in `build.gradle` at a detached commit, and then tag the commit with an annotation.
```
git checkout --detach master(Edit: Remove "-SNAPSHOT" in "version" in build.gradle.)
git add build.gradle
git commit -m "Release vX.Y.Z"
git tag -a vX.Y.Z
(Edit: Write a tag annotation in the changelog format.)
```See [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) for the changelog format. We adopt a part of it for Git's tag annotation like below.
```
## [X.Y.Z] - YYYY-MM-DD### Added
- Added a feature.### Changed
- Changed something.### Fixed
- Fixed a bug.
```Push the annotated tag, then. It triggers a release operation on GitHub Actions after approval.
```
git push -u origin vX.Y.Z
```