|
All checks were successful
build-image / build (push) Successful in 13m24s
A full recreate() over 7k+ subscriptions takes ~20 minutes even in a worker thread — fine for not blocking the site, but means a new zone takes ages to show up on the map. Since union only grows when adding a circle, a new subscription can just be merged into the union already stored (one turf.union call) instead of rebuilding the whole chain. changed/removed still trigger a full recreate() (union can't be "subtracted" from safely), and incrementalAdd falls back to a full recreate whenever the stored count isn't exactly one behind what's expected, rather than risk merging into stale state. Both paths now share one serialized queue (FIFO for adds, coalesced for recomputes) so they never race on the same stored union. |
||
|---|---|---|
| .forgejo/workflows | ||
| .meteor | ||
| bin | ||
| client | ||
| cucumber | ||
| designs | ||
| docker | ||
| imports | ||
| packages | ||
| private | ||
| public | ||
| scripts | ||
| secrets | ||
| server | ||
| smoke | ||
| test/server | ||
| .dockerignore | ||
| .gitignore | ||
| .meteorignore | ||
| .npmrc | ||
| API.md | ||
| COPYRIGHT.md | ||
| docker-compose.staging.yml | ||
| docker-compose.yml | ||
| Dockerfile | ||
| fonts.json | ||
| History.md | ||
| LICENSE.md | ||
| package-lock.json | ||
| package.json | ||
| PENDIENTE.md | ||
| README.md | ||
| RUNBOOK.md | ||
| settings-development-sample.json | ||
| UPGRADE.md | ||
Tod@s contra el Fuego (All Against Fire)
This is web service that notifies about fires detected in an area of your interest. It helps the early detection of fires and facilitates local mobilization, while the professional extinction services arrive.
Install
Prerrequisites: a running meteor (we share the fuegos database with the telegram bot).
Install meteor and run meteor npm install and npm start
Some other development deps (in debian & ubuntu):
apt-get install libcairo2-dev libjpeg-dev libgif-dev pkg-config
GeoIP
Configure mirror and cron of the geoip database.
Telegram bot
See our bot.
More platforms and services in the future...
Tests
We do tests via:
TEST_PORT=3000 TEST_WATCH=1 TEST_CLIENT=0 MONGO_URL=mongodb://localhost:27017/fuegostest meteor --settings settings-development.json test --driver-package meteortesting:mocha --port 3010
# and
node_modules/.bin/chimp --watch --ddp=http://localhost:3000 --path=cucumber
# and
node_modules/.bin/chimp --ddp=http://localhost:3000 --path=cucumber
FAQ & Troubleshooting
Q - I get something like (...) /node_modules/fibers/future.js:280 (...) Error: Could not locate the bindings file. What can I do?
A - Try meteor npm rebuild
Data source acknowledgements
We acknowledge the use of data and imagery from LANCE FIRMS operated by the NASA/GSFC/Earth Science Data and Information System (ESDIS) with funding provided by NASA/HQ.
License
GNU APLv3. See our LICENSE, for a complete text.
Thanks & other acknowlegments
Thanks indeed to:
- Lupe Bao Reixa for Galician translation