https://github.com/embulk/embulk-guess-msgpack
https://github.com/embulk/embulk-guess-msgpack
Last synced: 10 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/embulk/embulk-guess-msgpack
- Owner: embulk
- License: apache-2.0
- Created: 2022-07-06T05:37:25.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2022-10-25T09:39:12.000Z (over 3 years ago)
- Last Synced: 2025-09-03T06:38:02.901Z (10 months ago)
- Language: Java
- Size: 223 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# MessagePack parser plugin for Embulk
Parses files encoded in MessagePack.
## 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
```