Record the shipped places and streets as a decision, and say so in the README and changelog
This commit is contained in:
@@ -90,7 +90,7 @@ In [docs/decisions.md](docs/decisions.md):
|
|||||||
- A path is walked once without drawing before it is walked for real
|
- A path is walked once without drawing before it is walked for real
|
||||||
- A country's postal codes and streets are siblings under its locality
|
- A country's postal codes and streets are siblings under its locality
|
||||||
- A locale package imports its country's geo package, and its `Modules()` returns both
|
- A locale package imports its country's geo package, and its `Modules()` returns both
|
||||||
- The default embed holds every Swedish postort the import can place and give a street-delivery code and a street, and the US places of 25,000 or more
|
- The default embed holds every Swedish postort the import can place, a tenth of the US places owning a ZCTA drawn by population, and a tenth of each place's streets, at least ten
|
||||||
- A locale's `address` binds its country's record once and prints it whole
|
- A locale's `address` binds its country's record once and prints it whole
|
||||||
- A postort's kommun comes from its name, its tätort or its codes, never from distance
|
- A postort's kommun comes from its name, its tätort or its codes, never from distance
|
||||||
- A highway designation is not a street, and a US postal code belongs to the place holding most of its land inside places
|
- A highway designation is not a street, and a US postal code belongs to the place holding most of its land inside places
|
||||||
|
|||||||
+3
-1
@@ -93,7 +93,9 @@ replacement, and each removed path, column or flag.
|
|||||||
`address` record binding one locality and drawing its street and postal code inside
|
`address` record binding one locality and drawing its street and postal code inside
|
||||||
it. `sv_SE.address` and `en_US.address` bind those records once, so
|
it. `sv_SE.address` and `en_US.address` bind those records once, so
|
||||||
`en_US.address.street` no longer carries `name` and `suffix`, and a locale's `address`
|
`en_US.address.street` no longer carries `name` and `suffix`, and a locale's `address`
|
||||||
reads its country's `geo` module.
|
reads its country's `geo` module. Every Swedish postort ships, and a tenth of the US
|
||||||
|
incorporated places owning a ZCTA, drawn by population down to villages of a few
|
||||||
|
hundred people; each place carries a tenth of its streets, at least ten.
|
||||||
- `{date(from,to,'layout')}` and `{time('layout')}`: a second between two days, or
|
- `{date(from,to,'layout')}` and `{time('layout')}`: a second between two days, or
|
||||||
within one, in a single-quoted Go layout, drawn in UTC; `from` may equal `to`.
|
within one, in a single-quoted Go layout, drawn in UTC; `from` may equal `to`.
|
||||||
`sv_SE.date`, `en_US.date`, `sv_SE.time` and `en_US.time` render through them, so
|
`sv_SE.date`, `en_US.date`, `sv_SE.time` and `en_US.time` render through them, so
|
||||||
|
|||||||
@@ -311,9 +311,9 @@ neighbouring one.
|
|||||||
|-------|----------|----------|--------|
|
|-------|----------|----------|--------|
|
||||||
| `region` | län, by code or name | state, by USPS abbreviation or name; `code` is the FIPS code | population |
|
| `region` | län, by code or name | state, by USPS abbreviation or name; `code` is the FIPS code | population |
|
||||||
| `municipality` | kommun, by code or name | county, by FIPS code or name | population |
|
| `municipality` | kommun, by code or name | county, by FIPS code or name | population |
|
||||||
| `locality` | postort, by name; [`geo-se.py`](data-import/geo-se.py)'s `localities` picks the candidates, and one with no street is dropped | incorporated place of 25,000 people or more with a postal code and a street of its own, by GEOID or name; Hawaii has none | tätort population, the kommun's where the postort names it, else 200; place population |
|
| `locality` | postort, by name; [`geo-se.py`](data-import/geo-se.py)'s `localities` picks the candidates, and one with no street is dropped | a tenth of the incorporated places owning a ZCTA, drawn with odds by population, by GEOID or name; Hawaii has none | tätort population, the kommun's where the postort names it, else 200; place population |
|
||||||
| `postal-code` | postnummer with street delivery, by code | ZCTA, by code | one; address ranges |
|
| `postal-code` | postnummer with street delivery, by code | ZCTA, by code | one; address ranges |
|
||||||
| `street` | gatunamn, the ten with most road segments per postort | street name, the ten with most address ranges per place | segments; address ranges |
|
| `street` | gatunamn, the tenth with most road segments per postort, at least ten | street name, the tenth with most address ranges per place, at least ten | segments; address ranges |
|
||||||
|
|
||||||
`geo.SE.region[Skåne län].municipality` draws a kommun in Skåne,
|
`geo.SE.region[Skåne län].municipality` draws a kommun in Skåne,
|
||||||
`geo.SE.locality[Lund].street` a street in Lund, and
|
`geo.SE.locality[Lund].street` a street in Lund, and
|
||||||
@@ -1139,7 +1139,7 @@ A shipped table built from a source is rebuilt by its script under
|
|||||||
`data-import/cache/`, which is ignored by version control and grows past a
|
`data-import/cache/`, which is ignored by version control and grows past a
|
||||||
gigabyte, so pass `--cache DIR` to reuse a copy you already have and delete it to
|
gigabyte, so pass `--cache DIR` to reuse a copy you already have and delete it to
|
||||||
fetch afresh; `geo-us.py` fetches two
|
fetch afresh; `geo-us.py` fetches two
|
||||||
TIGER/Line files per county it ships, a few hundred megabytes, `geo-se.py` needs
|
TIGER/Line files per county it ships, about a gigabyte, `geo-se.py` needs
|
||||||
a Trafikverket API key, free at [data.trafikverket.se](https://data.trafikverket.se/),
|
a Trafikverket API key, free at [data.trafikverket.se](https://data.trafikverket.se/),
|
||||||
in `TRAFIKVERKET_API_KEY` or a `--key-file`, and the Census host behind `geo-us.py`
|
in `TRAFIKVERKET_API_KEY` or a `--key-file`, and the Census host behind `geo-us.py`
|
||||||
and `names-us.py` rejects a client for a while after a burst, so `--surnames` takes
|
and `names-us.py` rejects a client for a while after a burst, so `--surnames` takes
|
||||||
|
|||||||
+14
-13
@@ -555,7 +555,7 @@ A link is proved against the parent's keys and a key's uniqueness is a data mist
|
|||||||
both are load-time; the row lookup, by name and by parent, serves only a draw, so it waits
|
both are load-time; the row lookup, by name and by parent, serves only a draw, so it waits
|
||||||
for the first one, keeping `New` linear in the bytes read. On 2026-10-05, building every
|
for the first one, keeping `New` linear in the bytes read. On 2026-10-05, building every
|
||||||
shipped lookup at load added 13 ms and 3.2 MiB to a 60 ms `New`. That cost grows with every
|
shipped lookup at load added 13 ms and 3.2 MiB to a 60 ms `New`. That cost grows with every
|
||||||
locale and with item 78, and most tables are never drawn by name or parent. The maintainer
|
locale and every place the geo tables ship, and most tables are never drawn by name or parent. The maintainer
|
||||||
kept building the lookup on first draw, once per table.
|
kept building the lookup on first draw, once per table.
|
||||||
|
|
||||||
## Two categories may name one TSV
|
## Two categories may name one TSV
|
||||||
@@ -603,17 +603,18 @@ providing `geo.SE`'s paths, and without one `sv_SE.address` fails at first reach
|
|||||||
`FS` works against goal 6.2. Every package exports `Modules()`, so one spelling loads any of
|
`FS` works against goal 6.2. Every package exports `Modules()`, so one spelling loads any of
|
||||||
them; a data package imports only the packages it reads.
|
them; a data package imports only the packages it reads.
|
||||||
|
|
||||||
## The default embed holds every Swedish postort the import can place and give a street-delivery code and a street, and the US places of 25,000 or more
|
## The default embed holds every Swedish postort the import can place, a tenth of the US places owning a ZCTA drawn by population, and a tenth of each place's streets, at least ten
|
||||||
|
|
||||||
2026-09-24, Lilleman auf Larv.
|
2026-10-11, Lilleman auf Larv, through `todo.md` item 78. Goals 2 and 14: ten streets a
|
||||||
|
place crowded 500 Stockholm customers onto ten streets, and US places of 25,000 or more
|
||||||
Sweden fits whole in 700 KB; every US place of 10,000 would pass a megabyte and fetch
|
left out every town and village. `geo-us.py` draws among the places owning a ZCTA, since
|
||||||
1,200 counties of TIGER files, so the threshold sits where the two countries match in
|
a place owning none can carry no postal code, with Efraimidis and Spirakis's weighted
|
||||||
size, and `--min-population` and `--streets-per-locality` on the import scripts build a
|
sampling from a fixed seed, so a rerun on the same sources draws the same places. The
|
||||||
fuller set. Loading the whole shipped set took about 45 ms, about 20 ms of it the two
|
draw keeps about 950 of the 1,584 places of 25,000 or more, and its smallest place holds
|
||||||
trees.
|
210 people. On 2026-10-11 the embed grew from 1.3 MB to 5.2 MB, and the first draw of
|
||||||
|
`en_US.address` took 75 ms against 19 ms before, within goal 13. `--place-share`,
|
||||||
Withdrawn by the maintainer on 2026-10-03; `todo.md` item 78 replaces it.
|
`--street-share` and `--min-streets` on the import scripts build another set. Valid while
|
||||||
|
the first reach of a country stays unnoticed beside a test run.
|
||||||
|
|
||||||
## A locale's `address` binds its country's record once and prints it whole
|
## A locale's `address` binds its country's record once and prints it whole
|
||||||
|
|
||||||
@@ -640,8 +641,8 @@ postort none of the three rules place is dropped, as is one not cased like a pla
|
|||||||
`I- 55 Bus` and `US Hwy 1` carry the most address ranges in many places and would head
|
`I- 55 Bus` and `US Hwy 1` carry the most address ranges in many places and would head
|
||||||
every address, so the import drops names spelled as a route. A ZCTA goes to the place
|
every address, so the import drops names spelled as a route. A ZCTA goes to the place
|
||||||
its largest in-place part lies in, census-designated places left out since they never
|
its largest in-place part lies in, census-designated places left out since they never
|
||||||
ship, and ships only when that place does, so a few dozen places whose every code lies
|
ship, and ships only when that place does, so a place whose every code lies mostly in a
|
||||||
mostly in a bigger neighbour ship no address; counting the land outside every place too
|
bigger neighbour is never drawn; counting the land outside every place too
|
||||||
would drop a quarter of the places, whose codes straddle unincorporated land, for a
|
would drop a quarter of the places, whose codes straddle unincorporated land, for a
|
||||||
postal city the USPS mostly names the same way.
|
postal city the USPS mostly names the same way.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user