Skip to content

Commit

Permalink
[doc] Split upcoming and finished roadmap
Browse files Browse the repository at this point in the history
  • Loading branch information
at15 committed Dec 11, 2018
1 parent cf6229c commit 3de3856
Show file tree
Hide file tree
Showing 8 changed files with 39 additions and 17 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,13 @@

[release](https://github.com/dyweb/gommon/releases/tag/0.0.8) [closed issues](https://github.com/dyweb/gommon/issues?q=is%3Aclosed+milestone%3A0.0.8)

Breaking change in factory functions

- reduce handler interface from 6 methods to 1
- [#88](https://github.com/dyweb/gommon/issues/88) add benchmark
- [#33](https://github.com/dyweb/gommon/issues/33) [#78](https://github.com/dyweb/gommon/issues/33) use log registry to keep tree of logger
- application logger is now application log registry
- library logger is now library log registry
- escape string in json handler
- [#87](https://github.com/dyweb/gommon/issues/87) add multi handler for fan out

Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,12 @@ It has the following components:
- [generator](generator) Render go template, generate methods for logger interface based on `gommon.yml`
- [log](log) A Javaish logger for Go, application can set level for their dependencies based on package, struct
- [noodle](noodle) Embed static assets for web application with `.noodleignore` support
- [requests](requests) A pythonic wrapper for `net/http`, HTTP for Gopher
- [structure](structure) Bring data structure like Set etc. to Golang
- [util](util) A collection of utils
- [util](util) small utils over standard libraries utils

Deprecating

- [requests](requests) A pythonic wrapper for `net/http`, HTTP for Gopher

Legacy

Expand Down
27 changes: 17 additions & 10 deletions ROADMAP.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,33 @@
# Roadmap

## 0.0.8
## Up coming

- [x] test coverage for multiple packages
- [x] tree of loggers in use
- [x] benchmark against other loggers

## 0.0.9
### 0.0.9

- [ ] more complex error interface, error code
- [ ] organized error types
- [ ] extension for collecting errors using third party services
- [ ] explain internals of some implementation
- [ ] start documenting the style for writing gommon itself, lib using gommon, app using gommon/lib using gommon
- [ ] improve Makefile and dockerized build & test

## 0.0.10
Optional

- [ ] extension for collecting errors using third party services

### 0.0.10

- [ ] support better logging for errors
- [ ] init go mod support, not sure if it will be compatible with dep

## 0.0.11
### 0.0.11

- [ ] httputil package, merge part of current requests package unix domain sock etc.
- [ ] requests, download and upload file, a curl like example
- [ ] requests, download and upload file, a curl like example

## Finished

### 0.0.8

- [x] test coverage for multiple packages
- [x] tree of loggers in use
- [x] benchmark against other loggers
3 changes: 3 additions & 0 deletions log/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Log

- [Design](doc/design)
- [Survey](doc/survey)

## Convention

- library/application MUST have a library/application registry.
Expand Down
4 changes: 3 additions & 1 deletion log/TODO.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
# TODO

This doc might be outdated, was mainly used to keep track when there is no wifi ...

## 2018-11-24

- [ ] [#90](https://github.com/dyweb/gommon/pull/90) the long pending benchmark and refactor for adding context (fields to logger instance)
- [x] [#90](https://github.com/dyweb/gommon/pull/90) the long pending benchmark and refactor for adding context (fields to logger instance)

## 2018-05-02

Expand Down
1 change: 1 addition & 0 deletions log/doc/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# gommon/log

- [Design](design)
- [Survey](survey)

## Goals
Expand Down
8 changes: 5 additions & 3 deletions log/doc/backlog.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
# Backlog

Generate methods for struct that implement LoggableStruct interface

Generate file line number to avoid the overhead of obtain them at runtime

- https://github.com/WPH95/gosuger saw from Go Hackathon
- https://www.onebigfluke.com/2014/12/generic-programming-go-generate.html
- 850 stars, last updated 2016/01/07 https://github.com/clipperhouse/gen
- 532 starts, last updated 2017/03/28 https://github.com/cheekybits/genny
- 532 starts, last updated 2017/03/28 https://github.com/cheekybits/genny

## Finished

- Generate methods for struct that implement LoggableStruct interface
2 changes: 1 addition & 1 deletion log/pkg.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package log
// LoggableStruct is used to inject a logger into the struct,
// the methods for the interface can and should be generated using gommon.
//
// In struct initializer call dlog.NewStruct(pkgLogger, structInstancePointer)
// In struct initializer call dlog.NewStructLogger(pkgLogger, structInstancePointer)
type LoggableStruct interface {
GetLogger() *Logger
SetLogger(logger *Logger)
Expand Down

2 comments on commit 3de3856

@gaocegege
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you please file a WIP PR about your refactor work?

@at15
Copy link
Member Author

@at15 at15 commented on 3de3856 Dec 18, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's in #96 and you can see the docs folder under gommon/errors, there are notes for current design, I am trying to follow go 2 proposal and implement them in go 1

Please sign in to comment.