Commit 427a7bf
committed
feat: production rework of package, services, CI, and packaging
Python package. Removes the defunct VesselFinder and MarineTraffic web
scrapers (anti-bot walls and paywalls broke them; issue #81), keeping the
local metadata database read path used by network_graph and examples.
Fixes the latitude/longitude copy-paste bug in raster lookups, the
bathymetry segment-boundary indexing bugs, the meaningless coordinate
range assert, and local-timezone epoch parsing. Positional interpolation
now routes lat/lon through projected space instead of interpolating raw
degrees. Domain accepts MultiPolygon zones and gains
Domain.from_geodataframe with CRS normalization (issue #133). visualize()
accepts host and port parameters (issue #97) and is exported from the
package root. SQL built from user-facing values is now bound or coerced,
month identifiers are validated, and Postgres aggregation matches SQLite
semantics. Version is read from package metadata, dropping the toml
dependency. Dead modules, ignored parameters, commented-out blocks, and
duplicate docstrings are gone.
Rust workspace. All six pyfunctions now catch panics at the FFI boundary
and raise Python exceptions, with real errors for empty input, unknown
file types, and out-of-range timestamps. MMSI parsing no longer panics on
malformed CSV rows and short rows are tolerated. The receiver flushes
both message buffers on a timer and on shutdown so a crash cannot drop
buffered data (issue #117). database_server is ported from removed
nightly generator features to stable Rust, de-panicked on the request
path, and unified on tungstenite 0.21. The WebAssembly client builds
again, dead experiments and unused dependencies are removed, and wildcard
dependency versions are pinned.
Tests and CI. The suite runs green end to end (60 passed locally,
PostgreSQL and TimescaleDB paths included). Multi-gigabyte raster
download tests are opt-in via AISDB_RASTER_TESTS. The pipeline gains
rust fmt/clippy/test and database_server jobs, a uv wheel-install smoke
test guarding against the malformed-wheel regression, a docs build, and
secret fallbacks; 32-bit wheel targets are dropped and deprecated actions
replaced. Dependabot, CODEOWNERS, and a pull request template are added.
Dependency bumps from PRs #114 and #160 are applied across all lockfiles.
Packaging and docs. pyproject declares the real dependency set, Python
3.10 as the floor, a pinned maturin range, and consolidated pytest and
coverage configuration. Raster archives are now served from this
repository release assets instead of a university server. README,
CONTRIBUTING, and SECURITY are rewritten to current practice.1 parent 08830f7 commit 427a7bf
72 files changed
Lines changed: 6392 additions & 5901 deletions
File tree
- .github
- workflows
- aisdb_lib
- src
- aisdb_web
- aisdb
- database
- discretize
- ports
- tests
- weather
- webdata
- client_webassembly
- src
- database_server
- src
- docs
- source
- examples
- receiver
- src
- src
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
20 | | - | |
21 | | - | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
22 | 22 | | |
23 | | - | |
24 | | - | |
25 | | - | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
26 | 28 | | |
27 | 29 | | |
28 | 30 | | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
48 | 37 | | |
49 | | - | |
50 | | - | |
51 | | - | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
52 | 45 | | |
53 | | - | |
54 | | - | |
55 | | - | |
| 46 | + | |
56 | 47 | | |
57 | | - | |
| 48 | + | |
58 | 49 | | |
59 | 50 | | |
60 | 51 | | |
| |||
66 | 57 | | |
67 | 58 | | |
68 | 59 | | |
69 | | - | |
70 | 60 | | |
71 | | - | |
| 61 | + | |
72 | 62 | | |
73 | 63 | | |
74 | 64 | | |
75 | | - | |
76 | 65 | | |
77 | 66 | | |
78 | 67 | | |
79 | 68 | | |
80 | 69 | | |
81 | 70 | | |
82 | 71 | | |
83 | | - | |
| 72 | + | |
84 | 73 | | |
85 | 74 | | |
86 | 75 | | |
87 | | - | |
88 | | - | |
| 76 | + | |
| 77 | + | |
89 | 78 | | |
90 | | - | |
91 | | - | |
92 | 79 | | |
93 | | - | |
| 80 | + | |
0 commit comments