Comments (10)
When adding such a feature, it's also best practice to give users a way to disable it.
a date-based version check for upgrades
I'm not sure what your plans here are. Comparing the current version to the one from https://download.surrealdb.com/latest.txt should be enough, unless I'm missing something.
If its just URL then its prone to slow down start time
Not if you do the check in the background, which we should anyway.
from surrealdb.
Not if you do the check in the background, which we should anyway.
This is during startup. We don't want async messages in output. I don't mind how its implemented. I would just think synchronous would have been simple.
The latest.txt works for web requests. We also want to notify users who are offline and air-gapped.
from surrealdb.
So you plan to do that by comparing the time that has elapsed since their release against our normal release cadence?
from surrealdb.
This is during startup. We don't want async messages in output.
Maybe for surreal sql
but surreal start
may run for a long time. I think periodic checks there are a good idea.
from surrealdb.
So you plan to do that by comparing the time that has elapsed since their release against our normal release cadence?
Yes exactly, but will give it a multiplier. For example "3 releases" should usually mean "yeah, there has been a release - we will not have missed 3 releases". So if you are offline and 3 months out of date, then we show the message.
from surrealdb.
Good idea 👍 In that case, it's unfortunate that we no longer include build metadata in tagged releases. That would have made this easier to implement. Without it, you will have to derive the release date first. On the flip side, not relying on such build metadata is more robust because on custom built binaries that metadata may be disabled too.
from surrealdb.
Will do a follow up PR to check binary date 😂 sys.args[0].create_time
from surrealdb.
Doesn't that just give you the date the binary was built @phughk?
from surrealdb.
Downloaded/modified, yes. Thats good enough until we have something better like metadata. People won't be modifying the binary if they are airgapped if not for upgrading I think
from surrealdb.
Merged in #3599!
from surrealdb.
Related Issues (20)
- Bug: Http endpoint empty response HOT 3
- Bug: Strand does not check for nul bytes in release mode
- Bug: New parser does not work with backticks HOT 3
- Bug: CLI handling of version check not working HOT 1
- Bug: "No Iterator has been found" when mixing indexes HOT 1
- Bug: REPL exits immediately HOT 4
- Bug: graph queries do not work as documented HOT 3
- Bug: Relation creation using Rust SDK fails HOT 2
- Uploaded SurrealML Model Did Not Give Expected Results HOT 1
- Bug: Select value breaks fetch
- Bug: table name is stored in an escaped format if the id is passed as a field HOT 2
- Bug: (Rust SDK) `.bind()` function on query doesn't seem to work correctly when passing valid record id as a `&str`. HOT 1
- Feature: `surrealdb::api::method::Surreal::create` should return `Option<T>` when creating a record with a random ID.
- Bug: Large `number`s cast into odd floats instead of decimals
- Bug: Incorrect parsing of the Content-Type request header
- Bug: `type::thing()` method allows creation of empty ident parts
- Bug: multiple `take()`'s for different fields on one response can fail
- Bug: Aggregate on Aggregate table results to "Cannot perform addition with '0' and 'NONE'" HOT 1
- Bug: Aggregate on Aggregate Table results to "Cannot perform division with '0' and '0'"
- Bug: math::median says it expects an array, whereas math::mean, sum, etc. work HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from surrealdb.