Commit Graph

13 Commits

Author SHA1 Message Date
Nicolas JUHEL
917819b8b7 Fix error code collision:
- Package Config
- Package Archive
2022-09-14 13:01:37 +02:00
Nicolas JUHEL
b1f5e42db7 Package HttpCli :
- slipt package between pure httpcli and request to become new package Request
- Add options to httpcli allowed to create an http client based on options

Package AWS :
- add option for delete object : check boolean to make or not the check (head) before delete
- add exclusion of NoSuchKey error if check is false

Package Request :
- integer option capabilities to configure the request inteface
- use httpcli option to get httpcli (keep custom function to get an *http.client)
- extend function to mode manage the request
2022-04-01 13:33:21 +02:00
Nicolas JUHEL
425962f8c0 Add packages :
- package databse : use gorm lib to  implement this helpers
- package fpt client : expose a helper to post / read file from ftp server

Add component into package Config :
- add AWS custom / standard
- add database
- add Nats cluster
- add NutsDB cluster
- add smtp client
- fix some errors into tls, http component

Fix / Update :
- bump dependancies
- adapt some fix into aws config, smtp, http server, nats, nutsdb, status packages
- add gorm logger into logger pacakge
- fix issue #125
- fix issue #126
- fix issue #127
2022-03-16 15:08:33 +01:00
Nicolas JUHEL
49db5e2afb Add Package Config :
- major dependancies are :
  - golib/context config
  - golib/viper
- interface config extend :
  - golib/context config interface
  - component list
- interface component list :
  this interface implement all function to manage a collection of component. All component are registred with they config key.
  A component must implement basic function like start, stop, reload, defaultConfig...
  The main config json is set by calling all component config with the config key attached
  Each component have some status status like isStarted, isRunning, ...
  Each component must also declare his dependencies with other component. As that when start or reload is called,
  the component is sure that dependencies are still started or reloaded.
- They are 4 component for now : log, tls, headers and http server
- The config package will start a new context / cancelfunc on init to be sure to stop cleanly all component and process

Add Package Viper :
- this package is an helper to the config package with the spf13 viper lib
- this package can watch any change of a config file or can be connected to a remote config cluster like ETCD

Add Package Cobra :
- this package is an helper to make a CLI with flag / command
- this package is based on spf13 cobra has all method to be connected to viper golib
2022-02-21 07:32:44 +01:00
Nicolas JUHEL
567687894d - Fix Issue #119 : race detection
- Fix Issue #118 : wording match
- Fix Issue #117 : config option not detected in some case
- Fix race detection
- Add : logger options validation
- Add : tls cipher for TLS v1.3 into cipher string parser
- Optimization
- bump dependancies
- Fix nats option following bump dependancies
2022-02-09 15:05:26 +01:00
Nicolas JUHEL
561a4c923b - Add Package Pooler For SMTP :
* implement SMTP lib interface
* check number of sent mail in a time lapse before sending new mail
* if time since last reset is over, reset counter
* add feature to call a user function on each counter reset
- Pkg SMTP : Fix race detection & segFault
- Pkg Mailer : add new function to parse all template value with the given map[string]string
2021-12-29 16:17:49 +01:00
Nicolas JUHEL
efd2784ac9 Pkg nats (#103)
# Add package :
- config server, cluster, logger, user & permission
- config client & builder
- interface for managing server, cluster and client
- test for nats cluster / client producer & subscriber

# Update packages : 
- pkg errors : constant to add package nats
- pkg logger : add function to read options
- pkg ioutils : add function to check / create file & path

# Dependancies : 
- Bump dependancies
- Add dependancies : 
  - github.com/nats-io/nats-server/v2
  - github.com/nats-io/nats.go
2021-05-06 12:56:53 +02:00
Nicolas JUHEL
1e02472227 Update error constant & unify file error.go name 2021-04-12 17:57:24 +02:00
Nicolas JUHEL
3ab6870521 Add func error to print error code with package associated 2021-02-02 14:15:43 +01:00
Nicolas JUHEL
4b8d8d6f4a Package errors : add return model capabilities, for example to be used in response of http server 2020-12-31 15:56:23 +01:00
Nicolas JUHEL
a1f54cd1d6 PKG errors : expand modules + optimize trace referance 2020-09-11 13:47:28 +02:00
Nicolas JUHEL
447eee2ab2 Add package network to retrieve statistics from network interface 2020-07-26 12:09:11 +02:00
Nicolas JUHEL
ca39d7ad26 Refactor package errors + packages names :
- Refactor ErrorType, list errors managment, codeError
- Add interface Error with error interface implement
- Add type CodeError assign typiclly to const that represent code of error
- Add func to registry func to retrieve message from an uint16 codeError (typicaly a switch of each codeError const)
- Add default errorCode with default errorMessage if no one code or message is found
- Add modeError to manage how to manage compatibility between Error interface and error interface
- Add Error interface that allow parent link (parent as error or Error interface), code and trace management
- Add trace finder to allow find func/file/line caller when Error is call
- Add http 2 transport in httpcli
- Add http 2 transport in httpserver
- Add function to get client http with timeout management in httpcli
- Add function to get Error if occurs of http client in httpcli
- Add test for smtp package
- Chg return error by returning Error in all packages
- Chg package njs-archive by archive
- Chg package njs-certif by certificates
- Chg package njs-console by console
- Chg package njs-crypt by crypt
- Chg package njs-errors by errors
- Chg package njs-httpcli by httpcli
- Chg package njs-httpserver by httpserver
- Chg package njs-ioutils by ioutils
- Chg package njs-ldap by ldap
- Chg package njs-logger by logger
- Chg package njs-password by password
- Chg package njs-progress by progress
- Chg package njs-router by router
- Chg package njs-semaphore by semaphore
- Chg package njs-smtp by smtp
- Chg package njs-static by static
- Chg package njs-status by status
- Chg package njs-version by version
- Fix dependancies gopkg by github/go-ldap for go module compatibility
- Fix gin Abort call by gin Abort with Error in static package
- Fix issue #18 in status package : replace partner by component
- Fix go vet error
- Del deprecated function
- Del useless function & files
- Bump dependancies
- Apply CHG in README.md
2020-07-14 11:00:57 +02:00