cmd/geth: dont fail on deprecated toml config fields (#23118)
This commit is contained in:
		
							parent
							
								
									acdf9238fb
								
							
						
					
					
						commit
						ec88bd0cd0
					
				| @ -31,6 +31,7 @@ import ( | ||||
| 	"github.com/ethereum/go-ethereum/eth/catalyst" | ||||
| 	"github.com/ethereum/go-ethereum/eth/ethconfig" | ||||
| 	"github.com/ethereum/go-ethereum/internal/ethapi" | ||||
| 	"github.com/ethereum/go-ethereum/log" | ||||
| 	"github.com/ethereum/go-ethereum/metrics" | ||||
| 	"github.com/ethereum/go-ethereum/node" | ||||
| 	"github.com/ethereum/go-ethereum/params" | ||||
| @ -63,7 +64,12 @@ var tomlSettings = toml.Config{ | ||||
| 		return field | ||||
| 	}, | ||||
| 	MissingField: func(rt reflect.Type, field string) error { | ||||
| 		link := "" | ||||
| 		id := fmt.Sprintf("%s.%s", rt.String(), field) | ||||
| 		if deprecated(id) { | ||||
| 			log.Warn("Config field is deprecated and won't have an effect", "name", id) | ||||
| 			return nil | ||||
| 		} | ||||
| 		var link string | ||||
| 		if unicode.IsUpper(rune(rt.Name()[0])) && rt.PkgPath() != "main" { | ||||
| 			link = fmt.Sprintf(", see https://godoc.org/%s#%s for available fields", rt.PkgPath(), rt.Name()) | ||||
| 		} | ||||
| @ -228,3 +234,7 @@ func applyMetricConfig(ctx *cli.Context, cfg *gethConfig) { | ||||
| 		cfg.Metrics.InfluxDBTags = ctx.GlobalString(utils.MetricsInfluxDBTagsFlag.Name) | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| func deprecated(field string) bool { | ||||
| 	return false | ||||
| } | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user