Replies: 6 comments 5 replies
-
|
The design of API and config above is simple and expressive. : D Feature count limitMaybe it's an opportunity to resolve #384 .How about give Optional global and inline options:feature_limit. Like: server:
....
feature_limit: 10000
....
sources:
postgres:
....
tables:
tbl1:
....
feature_limit:5000
....Duplicate idA warning(and suggest user use aliases in config file?) and automatically rename duplicates like someDuplicate1,someDuplicate2..etc? Composite
server:
Composite:
"compositeid1": tbl1,tbl2
"compositeid2": tbl3,tbl4,Positoin of alias partMaybe place alias part under pg if it is dedicated to pg? |
Beta Was this translation helpful? Give feedback.
-
|
I keep making more and more changes to the above proposal. URL suffixes, aliases, overall structure, etc. See edit history to see changes |
Beta Was this translation helpful? Give feedback.
-
|
I have not yet gone through all the changes, but have a comment about breaking things and being backwards compatible. Martin is not yet 1.0 so breaking things is not really a problem. Adding code for backwards compatibility should not be needed. BUT: Changing stuff just for the sake of changing things should be avoided. For example .pbf is the default ending used everywhere. .mvt is quite uncommon. Every change should have solve a clear problem. |
Beta Was this translation helpful? Give feedback.
-
I have no opinion about .mvt or .pbf or leaving it away. I, as a martin user, just would like to see benefits of potentially breaking changes. Else flashbacks from JS libraries are kicking in.
I agree, but everyone is having the .pbf extension, so users are familiar with the default zxy.pbf schema. I don't see a reason for change.
Sure, we could do that for users who do not want to setup nginx. But martin definitely will be worse at doing this job compared to nginx. I think we should start from real problems users have and then develop solutions. We should not start with the solution. Else we might get feature requests like:
|
Beta Was this translation helpful? Give feedback.
-
|
You could slap a versioning prefix to lessen the impact of breaking changes. |
Beta Was this translation helpful? Give feedback.
-
|
For the record: It seems these changes were done in #456 and released with v0.7.0 https://github.com/maplibre/martin/releases/tag/v0.7.0 release. Is there a suggested/tested migration path (for users with Nginx)? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I would like to propose a number changes to Martin:
URL changes
/rpc/<id>/...paths. For backward support, we could do a redirect to/<id>/...public.mytable..pbf,.json, etc./<id>/z/x/y/<id>/TODO: This endpoint may need to be reworked - we do not want to expose too much information about the internal configuration here.
/healthOKsimple text responseURL source identifiers
[_a-z0-9]+for simplicity. No commas or slashes.-,_, and.-- having dots allowpublic.mytablestyle naming, which somewhat exposes internal postgreSQL detail, but this might be ok.indexorrpc--on-id-conflict (stop | rename | ignore)CLI/config setting that will control what Martin does in case of an IDrenamemode, add a counter at the end of an id, e.g.tbl,tbl1,tbl2, ...ignoremode, some arbitrary source ID wins (possibly the latest one in the processing queue)Source auto-discovery
We want to have a simple no-configuration mode, so that developers can start using Martin with the least amount of pain:
DATABASE_URLenv var is not set, and Martin started with no parameters, look in the current directory for the*.mbtilesfiles, and make them all available as sourcesdiscover_tables_as: (table | schema_table | schema_table_column)config parameter. Depending on the setting, tables with geo columns will becometable,schema.tableorschema.table.geo_columnsources.discover_funcs_as: (func | schema_func)config parameter. Depending on the setting, functions will becomefuncorschema.funcsources.Per-source Configuration
Proposed Config Structure
Beta Was this translation helpful? Give feedback.
All reactions