This replaces reqwest with the more simplistic ureq library for
performing required HTTP requests.
Reqwest comes with a lot of (tokio-based) machinery for
high-performance requesting that is a bit out of scope for
journaldriver's needs.
This clocks in at 62 (!) fewer dependencies after the change, with
equivalent functionality. Wew.
--
e09635c907d471ab46e14fb8091988c92cb4e78e by Abseil Team <absl-team@google.com>:
Fix syntax error in documentation '}' -> ')'
PiperOrigin-RevId: 215744854
--
a9e2d036850748137355f4a07083f1052d5c3766 by Abseil Team <absl-team@google.com>:
WrapUnique's comment about avoiding explicit template specification
doesn't make clear what alternative there is when this hurts
readability. Add a comment about the approved alternative.
PiperOrigin-RevId: 215634917
--
596b8ff41ff70b27bff3a2369038c0fe7d13ae85 by Greg Falcon <gfalcon@google.com>:
Allow for a small amount of slop in timeout tests, as not all OSs we support give us the perfect timing behavior we're testing for here.
PiperOrigin-RevId: 215615172
GitOrigin-RevId: e09635c907d471ab46e14fb8091988c92cb4e78e
Change-Id: I30721294bac86510a49bb7f405149fc74c532abb
`fetchurl` will now throw if given an `md5`, and the hashes have generally
been upgraded to avoid it and use `sha256` as a default. This updates the
documentation examples in the manual accordingly.
--
1c1d6e2404dfc6caa022b335df5acdac6da50fe1 by Derek Mauro <dmauro@google.com>:
Fix the internal namespacing in unaligned_access.h
PiperOrigin-RevId: 215434506
--
17d4400aebf025a230690fc1c7a968ef8d85bbba by Eric Fiselier <ericwf@google.com>:
gtest depends on the GCC extension allowing variadic macros
to be passed a empty parameter pack for ..., but LLVM diagnoses
this as a GNU extension.
This patch suppresses the warning when building the absl tests.
PiperOrigin-RevId: 215426161
--
f2c49dde23a9f445b9de963f1bbe840ebb568b30 by Eric Fiselier <ericwf@google.com>:
Use EXPECT_DEATH_IF_SUPPORTED instead of EXPECT_DEATH.
This avoids breaking the test when gtest doesn't support
death tests.
PiperOrigin-RevId: 215423849
--
cd687c1e121709603f4fc3726b534f6a9c52cc89 by Eric Fiselier <ericwf@google.com>:
Disable LLVM's -Wmissing-variable-declarations in tests.
GCC's configuration already disables this via -Wno-missing-declarations,
this change makes LLVM do the same.
The warning would otherwise flag most tests which use ABSL_FLAG.
PiperOrigin-RevId: 215407429
--
d14098824c84e3a8c8f6fb920e0335fb48fe2010 by Eric Fiselier <ericwf@google.com>:
Fix local variable shadowing in city hash implementation.
PiperOrigin-RevId: 215407249
--
4b5e140ba743f0d231790a26c49083abb4329e2c by Abseil Team <absl-team@google.com>:
Make raw_hash_set::reserve 2X fast when reserve doesn't do any allocation.
Make raw_hash_set::reserve ~1% faster when reserve does some (128~4k) allocation.
PiperOrigin-RevId: 215348727
--
461161e65e04b801480aa117af2534c594654ccf by Eric Fiselier <ericwf@google.com>:
Internal change
PiperOrigin-RevId: 215272283
--
50413ae31ad3d3a177257416acd8ede47a17bff2 by Eric Fiselier <ericwf@google.com>:
Internal Change
PiperOrigin-RevId: 215233183
--
477be54c43d61019a8fe4e190e340eb52737d383 by Abseil Team <absl-team@google.com>:
Clarify misleading comment on ABSL_ATTRIBUTE_UNUSED
PiperOrigin-RevId: 215185496
--
2cafa2b5287507d3a946682aee9ab13af6d471c9 by Matt Kulukundis <kfm@google.com>:
Add support for absl::Hash to various absl in types.
PiperOrigin-RevId: 215039569
--
082248901991aa3d29be0ea3689c7f213cf0fd83 by Derek Mauro <dmauro@google.com>:
Remove an instance of HAS_GLOBAL_STRING from hash_function_defaults.h
PiperOrigin-RevId: 214989094
--
b929f61907f0786a6133e3a9d7287e339c0a0acb by Derek Mauro <dmauro@google.com>:
Internal import of Github #174
Fix code snippet in comment
https://github.com/abseil/abseil-cpp/pull/174
PiperOrigin-RevId: 214958849
--
f2c5e829eca11c352e121f56eefbf87083305023 by Derek Mauro <dmauro@google.com>:
Internal import of GitHub #173
Fix CMake build for absl::container.
https://github.com/abseil/abseil-cpp/pull/173
PiperOrigin-RevId: 214957796
--
d704f860f9fddafb99e34e6c5032e49f73874e10 by Abseil Team <absl-team@google.com>:
Internal change
PiperOrigin-RevId: 214828181
GitOrigin-RevId: 1c1d6e2404dfc6caa022b335df5acdac6da50fe1
Change-Id: I551de2b1ba0cbaf6856cd5959358cf6651179dea
This removes part of the PATH that were being added automatically in multi-user installs:
- $HOME/.nix-profile/lib/kde4/libexec - shouldn't be needed anymore, we are now using kde5
- @localstatedir@/nix/profiles/default/lib/kde4/libexec - same as above
- @localstatedir@/nix/profiles/default - shouldn't ever contain binaries
* Fix CMake build after Swissmap addition
`absl::container` library now contains source files so needs to be
respectively built for CMake as well.
Switches `absl::container` from being a header library to a source
library.
* Add raw_hash_set_test to CMake test build
This is primarily because Derivation::{can,will}BuildLocally() depends
on attributes like preferLocalBuild and requiredSystemFeatures, but it
can't handle them properly because it doesn't have access to the
structured attributes.
E.g. __noChroot and allowedReferences now work correctly. We also now
check that the attribute type is correct. For instance, instead of
allowedReferences = "out";
you have to write
allowedReferences = [ "out" ];
Fixes#2453.
This meant that making a typo in an s3:// URI would cause a bucket to
be created. Also it didn't handle eventual consistency very well. Now
it's up to the user to create the bucket.
Tools which re-exec `$SHELL` or `$0` or `basename $SHELL` or even just
`bash` will otherwise get the non-interactive bash, providing a
broken shell for the same reasons described in
https://github.com/NixOS/nixpkgs/issues/27493.
Extends c94f3d5575
Changes the implementation of action execution to deal with the
returned associated errors.
The only sensible constraint on those errors that I could think of for
now is `Debug`, meaning that errors are now persisted as debug
messages.
This is not as nice to work with for a future implementation of
retryable actions as the equivalent in Haskell, but maybe an idea
shows up underway. The main issue is that most of the common error
types will not be implementing Serde traits, so serialization to/from
the same error type is difficult.
Adding an implementation constraint for JSON serialisation on error
types (i.e. `S::Error: Serialize + Deserialize`) would probably cause
headaches for users, especially if they are trying to use an
out-of-the-box error type or an error type wrapping foreign errors.
Det ska'kke være lett ...
Implements the associated error type for the FSM trait as
failure::Error. This makes it possible to fail gracefully in all
actions, for example in the updated definition of the `NotifyIRC`
action which now appends to a file.
Calculating roots seems significantly slower on darwin compared to
linux. Checking for /profile/ links could show some false positives but
should still catch most issues.
Implements a simple model for executing actions which will run them in
sequence, synchronously, after advancing an FSM and committing the
initial transaction.
Note that multiple things are not yet taken into account:
* Error handling of actions (they can not currently fail)
* Retrying of actions
* Concurrency model
I started out by implementing the concurrency model similarly to the
green-threading method used in Hamingja (but using OS threads), but
slowly noticed that it may not be the best way to do that. It needs a
little bit of discussion.
Either way for most actions this method is fast enough to work for
implementing things on top of Finito's model.
* Don't wait forever for the client to remove data from the
buffer. This does mean that the buffer can grow without bounds
(e.g. when downloading is faster than writing to disk), but meh.
* Don't hold the state lock while calling the sink. The sink could
take any amount of time to process the data (in particular when it's
actually a coroutine), so we don't want to block the download
thread.
In particular this causes copyStorePath() from HttpBinaryCacheStore to
only start a download if needed. E.g. if the destination LocalStore
goes to sleep waiting for the path lock and another process creates
the path, then LocalStore::addToStore() will never read from the
source so we don't have to do the download.
Adds a test for the two most important functions in Finito's
PostgreSQL backend.
These actually require a local Postgres database to be available when
running. Currently the connection details are hardcoded in the test.
--
87c9505f1d41b52486630ae4404b9060b89a6369 by Abseil Team <absl-team@google.com>:
Fix wording in a comment.
PiperOrigin-RevId: 214606367
GitOrigin-RevId: 87c9505f1d41b52486630ae4404b9060b89a6369
Change-Id: Icb95299b88e65840dfbc415b515412b24d578ce9
Merges in a function which has existed in my local setup for a while now
to run a query to Clubhouse and create all the results as org headlines
at a specified level
Adds the initial finito-postgres crate with type definitions for the
tables and initial functions to interact with persisted FSMs.
This is far from feature complete at this commit.
Checks in my classic, lockable door example implemented in Finito.
This does not yet contain the documentation of the door in the Haskell
version of Finito.
The implementation of this library is closely modeled after the core
abstraction in the Haskell library. This does not at all concern
itself with persistence, interpretation of effects and so on.