wip jit runtime...

currently hangs on run.native with no output :-\

I can take a look at this tomorrow. One thing I want to do is make this align more closely with the Homebrew cask to ease future maintenance. That means making the native runtime (and fzf) optional. The optionality should be trivial, but (again, to match Homebrew) the native runtime should default to disabled.
So, I’d like to see this PR have that flag, rather than merge it with it enabled and have a breaking change to change that.
I can make the change for the flag on top of this PR, this is just a note to hopefully prevent merging until I do.

Oh, and I wanted to comment that @ereslibre made a PR to upgrade the nixpkgs derivation similarly. The current PR there clearly doesn’t enable the native runtime at all, so I don’t mind it getting in as-is. But,

yay that someone beat us to the punch with upgrading that derivation (thanks, @ereslibre!);
I hope to get that derivation and the one in this repo pretty close to bit-for-bit identical sometime this week; and
hopefully retire this repo (by moving everything except this derivation to unisonweb/unison) not long after.

👋 @sellout! regarding:

The current PR there clearly doesn’t enable the native runtime at all

I am wrapping the ucm wrapper with —-runtime-path. Is there anything else missing in order to enable the native runtime?
Thanks!

@ereslibre Seems fine to me. Does the native runtime work for you though? e.g. if you create a
foo = do printLine "foo"

and then
myproject/main> run.native foo

?
I'm guessing there's some missing dependencies but since there's no output I'm not sure what it would be.

Does the native runtime work for you though?

No, doesn't seem to be working here. I'd have to check, but I won't have the time to dig into that very soon.
sometest/main> load ~/test.u

  😶

  The file "~/test.u" does not exist or is not a valid source file.

sometest/main>

  Loading changes detected in ~/test.u.

  I found and typechecked these definitions in ~/test.u. If you do an `add` or `update`, here's how
  your codebase would change:

    ⍟ These new definitions are ok to `add`:

      foo : '{IO, Exception} ()

sometest/main> add

  ⍟ I've added these definitions:

    foo : '{IO, Exception} ()

sometest/main> run.native foo

  I got an error when starting the Unison native runtime using:

    /nix/store/a4rjks7sf0l1ijdcy3vawzgi5f3si4pk-unison-code-manager-0.5.20/runtime/bin/unison-runtime --help

  The exit code was 1 and the output was:

    ffi-obj: could not find export from foreign library
      name: EVP_Digest
      library: [all opened]
      system error: /nix/store/a4rjks7sf0l1ijdcy3vawzgi5f3si4pk-unison-code-manager-0.5.20/runtime/bin/unison-runtime: undefined symbol: EVP_Digest
      context...:
       .../ffi/unsafe.rkt:255:20
       .../ffi/unsafe.rkt:249:2: get-ffi-obj*
       body of '#%embedded:unison/crypto:

Ah, I think both derivations are missing a minimal-racket dependency at least – that’s what made me think that @ereslibre’s wasn’t supporting native runtime.

Also, EVP_Digest is openssl, so something along those lines might also be missing.

    ffi-obj: could not find export from foreign library
      name: EVP_Digest
      library: [all opened]
      system error: /nix/store/a4rjks7sf0l1ijdcy3vawzgi5f3si4pk-unison-code-manager-0.5.20/runtime/bin/unison-runtime: undefined symbol: EVP_Digest
      context...:
       .../ffi/unsafe.rkt:255:20
       .../ffi/unsafe.rkt:249:2: get-ffi-obj*
       body of '#%embedded:unison/crypto:

Nevermind – that error leads me to believe it’s finding Racket. I guess I should actually try out these derivations before I talk more …

With this PR, on aarch64-darwin, I see the no output behavior. But on x86_64-linux, I see @ereslibre’s behavior. Don’t know why Apple wants to keep us in the dark …
So, at least it seems like both PRs are behaving the same.

Ah, I think both derivations are missing a minimal-racket dependency at least – that’s what made me think that @ereslibre’s wasn’t supporting native runtime.

You need minimal-racket if you're trying to set up compile.native; otherwise you don't need it.

With this PR, on aarch64-darwin, I see the no output behavior. But on x86_64-linux, I see @ereslibre’s behavior. Don’t know why Apple wants to keep us in the dark …
So, at least it seems like both PRs are behaving the same.

On macOS, Racket has bundled some libs for us into the runtime/lib directory; on Linux, Racket doesn't. You'll need to have libssl (1.1?) libcrypto (1.1?), and libb2 available, and then I imagine you'll get the same hang as on macOS, but who knows.

Just updated https://github.com/NixOS/nixpkgs/pull/312922. It seems to work fine now on x86_64-linux. Since racket uses get-lib-search-dirs we can relay on LD_LIBRARY_PATH, so I made the wrapper append these paths and it works as expected now. Not sure if there might be other edge cases that I'm missing though.
sometest/main> run.native foo
foo

  ()

Nice, thanks @ereslibre!
If you want to do a more comprehensive test, you can:
.> clone @unison/runtime-tests
...
@unison/runtime-tests/main> run.native tests

But I suspect that based on what you have shown so far, it will work.
Let me know if you want some help trying to get compile.native working, but I think it could also wait for a later release.

Hello @aryairani,
It failed, but not sure why exactly, open-input-file seems to have failed. Do I need to run this command from a specific folder or something similar?

native tests
@unison/runtime-tests/main> run.native tests

*** Test suite ***

 ✅  sin 0
 ✅  sin pi/2
 ✅  cos 0
 ✅  cos pi
 ✅  cosh pi
 ✅  sinh pi/2
 ✅  addf
 ✅  asin 1.0
 ✅  asinh 1.0
 ✅  atan 1.0
 ✅  atan2 1.0 2.0
 ✅  atanh 0.5
 ✅  tan 0.5
 ✅  tanh 0.5
 ✅  ceiling 0.1
 ✅  ceiling 0.9
 ✅  floor 0.9
 ✅  floor 1.9
 ✅  rndf
 ✅  divf
 ✅  maxf
 ✅  minf
 ✅  mulf
 ✅  muli
 ✅  powi
 ✅  pown
 ✅  powf
 ✅  ntof
 ✅  negi
 ✅  divi
 ✅  eqlf
 ✅  eqlf
 ✅  leqi
 ✅  leqn
 ✅  subi
 ✅  signum
 ✅  signum
 ✅  signum
 ✅  logf
 ✅  logb
 ✅  decn
 ✅  deci
 ✅  inci
 ✅  incn
 ✅  expf
 ✅  TZRO +0
 ✅  TZRO +1
 ✅  TZRO +16777216
 ✅  TZRO 2^59
 ✅  POPC +16777215
 ✅  POPC +5
 ✅  POPC -5
 ✅  POPC -1
 ✅  POPC -1234567891
 ✅  POPC -1111111111

*** Test suite ***

 ✅  Get file size should work
 ✅  File size of missing file
 ✅  File timestamp is reasonable
 ✅  File timestamp of missing file
 ✅  AbsoluteSeek
 ✅  RelativeSeek
 ✅  RelativeSeek
 ✅  getLine 1
 ✅  getLine 2
 ✅  getLine 3
 ✅  Block
 ✅  Line
 ✅  No
 ✅  echo turned off
 ✅  echo turned back on
 ✅  cli args
 ✅  HOME env variable
 ✅  get 10 random bytes
 ✅  get some bytes
 ✅  get char
 ✅  get a complicated char
 ✅  Current directory starts with /
 ✅  Tmp directory exists and contains prefix-
 ✅  renameFile
 ✅  opened handle is open
 ✅  closed handle is not open
 ✅  handle with text ready is ready
 ✅  !now
 ✅  !Clock.monotonic
 ✅  !processCPUTime
 ✅  !threadCPUTime
 ✅  isSeekable file
 ✅  handlePosition initial
 ✅  handlePosition
 ✅  renameFile
 ✅  Current directory set & get

Summary of results:

  ✅✅✅  36 PASSED
 ✅  decoding a cert should work
 ✅  decoding a private key should work
 ✅  decoding an invalid private key should ignore
 ✅  decoding an invalid cert should fail
 ✅  self signed should connect & receive what we sent
 ✅  self signed chain server received
 ✅  self signed with the wrong hostname should fail
 ✅  self signed with an unknown CA should fail
 ✅  self signed wrong host
 ✅  wrong host example.com fails
 ✅  Md5 hashBytes
 ✅  Sha1 hashBytes
 ✅  Sha2_256 hashBytes
 ✅  Sha2_512 hashBytes
 ✅  Sha3_256 hashBytes
 ✅  Sha3_512 hashBytes
 ✅  Blake2s_256 hashBytes
 ✅  Blake2b_256 hashBytes
 ✅  Blake2b_512 hashBytes
 ✅  murmurHash 0
 ✅  murmurHash 1
 ✅  murmurHash 2
 ✅  murmurHash 3
 ✅  murmurHash 4
 ✅  murmurHash 5
 ✅  murmurHash 6
 ✅  murmurHash 7
 ✅  murmurHash 8
 ✅  murmurHash 9
 ✅  Sha1 hmacBytes
 ✅  Sha2_256 hmacBytes
 ✅  Sha2_512 hmacBytes
 ✅  Sha3_256 hmacBytes
 ✅  Sha3_512 hmacBytes
 ✅  Blake2s_256 hmacBytes
 ✅  Blake2b_256 hmacBytes
 ✅  Blake2b_512 hmacBytes
 ✅  Ref read-write
 ✅  Ref read-write
 ✅  Ticket contains the Ref value
 ✅  CAS is successful is there were no conflicting writes
 ✅  CAS fails when there was an intervening write
 ✅  Promise should be empty when created
 ✅  Promise should read a value that's been written
 ✅  Promise can only be written to once
 ✅  Once the Promise is full, tryRead is the same as read
 ✅  Reads awaits for completion of the Promise
 ✅  Thread was killed
 ✅  Thread killed, finalisers with typeLink
 ✅  tryEval is a no-op on success
 ✅  Thread was killed, with finalisers
 ✅  The state of the counter is consistent
 ✅  rejects invalid port
 ✅  no send after close
 ✅  no send on listener
 ✅  Server received data
 ✅  Client received data
open-input-file: cannot open input file
  path: /home/ereslibre/unison-src/transcripts-using-base/serialized-cases/case-04.v4.ser
  system error: No such file or directory; errno=2
  context...:
   .../unison/io-handles.rkt:208:0: unison-FOp-IO.openFile.impl.v3
   .../unison/simple-wrappers.ss:1919:0
   .../unison/boot.ss:209:41
   [repeats 3 more times]
   .../racket/control.rkt:138:30
   .../unison/boot.ss:209:41
   .../racket/control.rkt:138:30
   .../unison/boot.ss:209:41
   .../racket/control.rkt:138:30
   .../unison/boot.ss:209:41
   [repeats 2 more times]
   .../racket/control.rkt:138:30
   .../racket/unison-runtime.rkt:186:2
   body of '#%mzc:unison-runtime

  native evaluation failed

Just for sanity, run tests (without native) fails in a similar way:

tests
@unison/runtime-tests/main> run tests

*** Test suite ***

 ✅  sin 0
 ✅  sin pi/2
 ✅  cos 0
 ✅  cos pi
 ✅  cosh pi
 ✅  sinh pi/2
 ✅  addf
 ✅  asin 1.0
 ✅  asinh 1.0
 ✅  atan 1.0
 ✅  atan2 1.0 2.0
 ✅  atanh 0.5
 ✅  tan 0.5
 ✅  tanh 0.5
 ✅  ceiling 0.1
 ✅  ceiling 0.9
 ✅  floor 0.9
 ✅  floor 1.9
 ✅  rndf
 ✅  divf
 ✅  maxf
 ✅  minf
 ✅  mulf
 ✅  muli
 ✅  powi
 ✅  pown
 ✅  powf
 ✅  ntof
 ✅  negi
 ✅  divi
 ✅  eqlf
 ✅  eqlf
 ✅  leqi
 ✅  leqn
 ✅  subi
 ✅  signum
 ✅  signum
 ✅  signum
 ✅  logf
 ✅  logb
 ✅  decn
 ✅  deci
 ✅  inci
 ✅  incn
 ✅  expf
 ✅  TZRO +0
 ✅  TZRO +1
 ✅  TZRO +16777216
 ✅  TZRO 2^59
 ✅  POPC +16777215
 ✅  POPC +5
 ✅  POPC -5
 ✅  POPC -1
 ✅  POPC -1234567891
 ✅  POPC -1111111111

*** Test suite ***

 ✅  Get file size should work
 ✅  File size of missing file
 ✅  File timestamp is reasonable
 ✅  File timestamp of missing file
 ✅  AbsoluteSeek
 ✅  RelativeSeek
 ✅  RelativeSeek
 ✅  getLine 1
 ✅  getLine 2
 ✅  getLine 3
 ✅  Block
 ✅  Line
 ✅  No
 ✅  echo turned off
 ✅  echo turned back on
 ✅  cli args
 ✅  HOME env variable
 ✅  get 10 random bytes
 ✅  get some bytes
 ✅  get char
 ✅  get a complicated char
 ✅  Current directory starts with /
 ✅  Tmp directory exists and contains prefix-
 ✅  renameFile
 ✅  opened handle is open
 ✅  closed handle is not open
 ✅  handle with text ready is ready
 ✅  !now
 ✅  !Clock.monotonic
 ✅  !processCPUTime
 ✅  !threadCPUTime
 ✅  isSeekable file
 ✅  handlePosition initial
 ✅  handlePosition
 ✅  renameFile
 ✅  Current directory set & get

Summary of results:

  ✅✅✅  36 PASSED
 ✅  decoding a cert should work
 ✅  decoding a private key should work
 ✅  decoding an invalid private key should ignore
 ✅  decoding an invalid cert should fail
 ✅  self signed should connect & receive what we sent
 ✅  self signed chain server received
 ✅  self signed with the wrong hostname should fail
 ✅  self signed with an unknown CA should fail
 ✅  self signed wrong host
 ✅  wrong host example.com fails
 ✅  Md5 hashBytes
 ✅  Sha1 hashBytes
 ✅  Sha2_256 hashBytes
 ✅  Sha2_512 hashBytes
 ✅  Sha3_256 hashBytes
 ✅  Sha3_512 hashBytes
 ✅  Blake2s_256 hashBytes
 ✅  Blake2b_256 hashBytes
 ✅  Blake2b_512 hashBytes
 ✅  murmurHash 0
 ✅  murmurHash 1
 ✅  murmurHash 2
 ✅  murmurHash 3
 ✅  murmurHash 4
 ✅  murmurHash 5
 ✅  murmurHash 6
 ✅  murmurHash 7
 ✅  murmurHash 8
 ✅  murmurHash 9
 ✅  Sha1 hmacBytes
 ✅  Sha2_256 hmacBytes
 ✅  Sha2_512 hmacBytes
 ✅  Sha3_256 hmacBytes
 ✅  Sha3_512 hmacBytes
 ✅  Blake2s_256 hmacBytes
 ✅  Blake2b_256 hmacBytes
 ✅  Blake2b_512 hmacBytes
 ✅  Ref read-write
 ✅  Ref read-write
 ✅  Ticket contains the Ref value
 ✅  CAS is successful is there were no conflicting writes
 ✅  CAS fails when there was an intervening write
 ✅  Promise should be empty when created
 ✅  Promise should read a value that's been written
 ✅  Promise can only be written to once
 ✅  Once the Promise is full, tryRead is the same as read
 ✅  Reads awaits for completion of the Promise
 ✅  Thread was killed
 ✅  Thread killed, finalisers with typeLink
 ✅  tryEval is a no-op on success
 ✅  Thread was killed, with finalisers
 ✅  The state of the counter is consistent
 ✅  rejects invalid port
 ✅  no send after close
 ✅  no send on listener
 ✅  Server received data
 ✅  Client received data
 💥  test failure: case-00 unison-src/transcripts-using-base/serialized-cases/case-00.v4.ser: openFile: does not exist (No such file or directory)
 💥  test failure: case-04 unison-src/transcripts-using-base/serialized-cases/case-04.v4.ser: openFile: does not exist (No such file or directory)
 💥  test failure: case-02 unison-src/transcripts-using-base/serialized-cases/case-02.v4.ser: openFile: does not exist (No such file or directory)
 ✅  bug is caught
 ✅  List empty literal
 ✅  List literal
 ✅  List equality: empty
 ✅  List equality: non empty
 ✅  List inequality: non empty (1)
 ✅  List inequality: non empty (2)
 ✅  List inequality: non empty (3)
 ✅  List inequality: empty
 ✅  List equality: composite
 ✅  List inequality: composite
 ✅  List ordering (1)
 ✅  List ordering (2)
 ✅  List ordering (3)
 ✅  List ordering (4)
 ✅  List ordering (5)
 ✅  List.ordering (6)
 ✅  List.cons
 ✅  List.snoc
 ✅  List.++
 ✅  List.take (1)
 ✅  List.take (2)
 ✅  List.take (3)
 ✅  List.take (4)
 ✅  List.take (5)
 ✅  List.drop (1)
 ✅  List.drop (2)
 ✅  List.drop (3)
 ✅  List.drop (4)
 ✅  List.drop (5)
 ✅  List.size (1)
 ✅  List.size (2)
 ✅  List.at (1)
 ✅  List.at (2)
 ✅  List.at (3)
 ✅  List.at (4)
 ✅  length matching: literal (1)
 ✅  length matching: literal (2)
 ✅  length matching: literal (3)
 ✅  length matching: literal (4)
 ✅  length: cons matching
 ✅  length: snoc matching
 ✅  length: ++ prefix matching
 ✅  length: ++ suffix matching
 ✅  cons matching: empty
 ✅  cons matching: non empty
 ✅  two cons matching (1)
 ✅  two cons matching (2)
 ✅  two cons matching (3)
 ✅  two snoc matching (1)
 ✅  two snoc matching (2)
 ✅  two snoc matching (3)
 ✅  middle matching (1)
 ✅  middle matching (2)
 ✅  middle matching (3)
 ✅  middle matching with non-empty list (1)
 ✅  middle matching with non-empty list (2)
 ✅  middle matching with non-empty list (3)
 ✅  Complex matching
 ✅  Text empty literal
 ✅  Text literal
 ✅  Text equality: empty
 ✅  Text equality: non empty
 ✅  Text inequality: empty (1)
 ✅  Text inequality: empty (2)
 ✅  Text inequality: non empty
 ✅  Universal equality with Text: empty
 ✅  Universal equality with Text: non empty
 ✅  Universal inequality with Text: empty (1)
 ✅  Universal inequality with Text: empty (2)
 ✅  Universal inequality with Text: non empty
 ✅  Universal equality with Text: composite
 ✅  Universal inequality with Text: composite
 ✅  Text ordering (1)
 ✅  Text ordering (2)
 ✅  Text ordering (3)
 ✅  Text ordering (4)
 ✅  Text ordering (5)
 ✅  Universal ordering with Text (1)
 ✅  Universal ordering with Text (2)
 ✅  Universal ordering with Text (3)
 ✅  Universal ordering with Text (4)
 ✅  Universal ordering with Text (5)
 ✅  Universal ordering with Text (6)
 ✅  Text.++
 ✅  Text.take (1)
 ✅  Text.take (2)
 ✅  Text.take (3)
 ✅  Text.take (4)
 ✅  Text.take (5)
 ✅  Text.drop (1)
 ✅  Text.drop (2)
 ✅  Text.drop (3)
 ✅  Text.drop (4)
 ✅  Text.drop (5)
 ✅  Text.size (1)
 ✅  Text.size (2)
 ✅  Text.uncons (1)
 ✅  Text.uncons (2)
 ✅  Text.uncons (3)
 ✅  Text.unsnoc (1)
 ✅  Text.unsnoc (2)
 ✅  Text.unsnoc (3)
 ✅  Text.repeat (1)
 ✅  Text.repeat (2)
 ✅  Text.repeat (3)
 ✅  Text.repeat (3)
 ✅  Text.reverse (1)
 ✅  Text.reverse (2)
 ✅  Text.reverse (3)
 ✅  Text.toUppercase (1)
 ✅  Text.toUppercase (2)
 ✅  Text.toLowercase (1)
 ✅  Text.toLowercase (2)
 ✅  Text.indexOf (1)
 ✅  Text.indexOf (2)
 ✅  Text.indexOf (3)
 ✅  Text.indexOf (3)
 ✅  Nat.toText (1)
 ✅  Nat.toText (2)
 ✅  Nat.toText (3)
 ✅  Nat.fromText (1)
 ✅  Nat.fromText (2)
 ✅  Nat.fromText (3)
 ✅  Nat.fromText (4)
 ✅  Nat.fromText (5)
 ✅  Nat.fromText (6)
 ✅  Nat <-> Text roundtrip (1)
 ✅  Int.toText (1)
 ✅  Int.toText (2)
 ✅  Int.toText (3)
 ✅  Int.fromText (1)
 ✅  Int.fromText (2)
 ✅  Int.fromText (3)
 ✅  Int.fromText (3)
 ✅  Int.fromText (4)
 ✅  Int.fromText (5)
 ✅  Int.fromText (6)
 ✅  Int <-> Text roundtrip (1)
 ✅  Int <-> Text roundtrip (2)
 ✅  Float.toText
 ✅  Float.fromText (1)
 ✅  Float.fromText (2)
 ✅  Char.toText
 ✅  Text.toCharList: empty
 ✅  Text.toCharList non empty
 ✅  Text.fromCharList: empty
 ✅  Text.fromCharList: non empty
 ✅  Text ut8 roundTrip
 ✅  Debug.evalToText (1)
 ✅  Debug.evalToText (2)
 ✅  bug (1)
 ✅  bug (2)
 ✅  todo (1)
 ✅  todo (2)
trace: First message
3
trace: Second message
"hello"
 ✅  Debug.trace
Watch
 ✅  Debug.watch
 ✅  String literal matching: empty
 ✅  String literal matching: non empty
 ✅  String literal matching: default
 ✅  Pattern api (1)
 ✅  Pattern api (2)
 ✅  Pattern api (3)
 ✅  Pattern api (4)
 ✅  Pattern api (5)
 ✅  Pattern api (6)
 ✅  Pattern api (7)
 ✅  Pattern api (8)
 ✅  Pattern api (9)
 ✅  Pattern api (10)
 ✅  Pattern api (11)
 ✅  Pattern api (12)
 ✅  Pattern api (13)
 ✅  Pattern api (14)
 ✅  Pattern api (15)
 ✅  Pattern api (16)
 ✅  Pattern api (17)
 ✅  Pattern api (18)
 ✅  Pattern api (19)
 ✅  Pattern api (20)
 ✅  Pattern api (21)
 ✅  Pattern api (22)
 ✅  Pattern api (23)
 ✅  Pattern api (24)
 ✅  Pattern api (25)
 ✅  Char.Class: any
 ✅  Char.Class: any (2)
 ✅  Char.Class.alphanumeric (1)
 ✅  Char.Class.alphanumeric (2)
 ✅  Char.Class.upper
 ✅  Char.Class.lower
 ✅  Char.Class.number
 ✅  Char.Class.punctuation
 ✅  Char.Class.symbol
 ✅  Char.Class.letter
 ✅  Char.Class.whitespace
 ✅  Char.Class.control
 ✅  Char.Class.printable
 ✅  Char.Class.mark
 ✅  Char.Class.separator
 ✅  Char.Class.not
 ✅  Char.Class.and
 ✅  Char.Class.or (1)
 ✅  Char.Class.or (2)
 ✅  Char.Class.range (1)
 ✅  Char.Class.range (2)
 ✅  Char.Class.range (3)
 ✅  Char.Class.range (4)
 ✅  Char.Class.anyOf (1)
 ✅  Char.Class.anyOf (2)
 ✅  Char.Class.anyOf (3)
 ✅  Bytes empty literal
 ✅  Bytes literal
 ✅  Debug.evalToText on Bytes
 ✅  Bytes.fromList: empty
 ✅  Bytes.fromList: non empty
 ✅  Bytes.fromList: invalid
 ✅  Bytes.toList: empty
 ✅  Bytes.toList: non empty
 ✅  fromUtf8: invalid
 ✅  fromUtf8
 ✅  toUtf8
 ✅  ut8 roundTrip
 ✅  Bytes equality: empty
 ✅  Bytes equality: non empty
 ✅  Bytes inequality: non empty (1)
 ✅  Bytes inequality: non empty (2)
 ✅  Bytes inequality: non empty (3)
 ✅  Bytes inequality: empty
 ✅  Bytes equality: composite
 ✅  Bytes inequality: composite
 ✅  Bytes ordering (1)
 ✅  Bytes ordering (2)
 ✅  Bytes ordering (3)
 ✅  Bytes ordering (4)
 ✅  Bytes ordering (5)
 ✅  Bytes ordering (6)
 ✅  Bytes.flatten
 ✅  Bytes.++
 ✅  Bytes.take (1)
 ✅  Bytes.take (2)
 ✅  Bytes.take (3)
 ✅  Bytes.take (4)
 ✅  Bytes.take (5)
 ✅  Bytes.drop (1)
 ✅  Bytes.drop (2)
 ✅  Bytes.drop (3)
 ✅  Bytes.drop (4)
 ✅  Bytes.drop (5)
 ✅  Bytes.size (1)
 ✅  Bytes.size (2)
 ✅  Bytes.at (1)
 ✅  Bytes.at (2)
 ✅  Bytes.at (3)
 ✅  Bytes.at (4)
 ✅  Bytes.indexOf (1)
 ✅  Bytes.indexOf (2)
 ✅  Bytes.indexOf (3)
 ✅  Bytes.indexOf (3)
 ✅  gzip empty
 ✅  gzip hello folks
 ✅  gunzip empty
 ✅  gunzip hello folks
 ✅  zlib empty
 ✅  zlib hello folks
 ✅  zlib inflate empty
 ✅  zlib inflate hello folks
 ✅  base16 empty
 ✅  from base16 empty
 ✅  base16 hello
 ✅  from base16 hello
 ✅  base32 hello
 ✅  from base32 hello
 ✅  base64 hello
 ✅  from base64 hello
 ✅  base64Url hello
 ✅  from base64Url hello
 ✅  from base16 fail non-utf8
 ✅  from base32 fail non-utf8
 ✅  from base64 fail non-utf8
 ✅  from base64Url fail non-utf8
 ✅  from base32 fail
 ✅  decodeNat16be 1
 ✅  decodeNat16be 10000
 ✅  decodeNat16le 1
 ✅  decodeNat16le 10000
 ✅  decodeNat32be 1
 ✅  decodeNat32be<PHONE_NUMBER>
 ✅  decodeNat32le 1
 ✅  decodeNat32le<PHONE_NUMBER>
 ✅  decodeNat64be 1
 ✅  decodeNat64be<PHONE_NUMBER>0000000
 ✅  decodeNat64le 1
 ✅  decodeNat64le<PHONE_NUMBER>0000000
 ✅  encodeNat16be 1
 ✅  encodeNat16be 10000
 ✅  encodeNat16le 1
 ✅  encodeNat16le 10000
 ✅  encodeNat32be 1
 ✅  encodeNat32be<PHONE_NUMBER>
 ✅  encodeNat32le 1
 ✅  encodeNat32le<PHONE_NUMBER>
 ✅  encodeNat64be 1
 ✅  encodeNat64be<PHONE_NUMBER>0000000
 ✅  encodeNat64le 1
 ✅  encodeNat64le<PHONE_NUMBER>0000000
 ✅  byte new/msize
 ✅  byte mut read/write 64
 ✅  byte mut read/write 40
 ✅  byte mut read/write 32
 ✅  byte mut read/write 24
 ✅  byte mut read/write 16
 ✅  byte mut read/write 8
 ✅  byte new/size
 ✅  byte imm read/write 64
 ✅  byte imm read/write 40
 ✅  byte imm read/write 32
 ✅  byte imm read/write 24
 ✅  byte imm read/write 16
 ✅  byte imm read/write 8
 ✅  byte immutable copyTo!
 ✅  byte mutable copyTo!
 ✅  byte immutable copied
 ✅  boxed array/msize
 ✅  boxed mut read/write
 ✅  boxed new/size
 ✅  boxed imm read/write
 ✅  immuntable copyTo!
 ✅  mutable copyTo!
 ✅  boxed immutable copied
 ✅  boxed serial
 ✅  codelookup #016888slblvodphfclvfslsfg427dv1tv1me53eui24pilfeq9fa8
 ✅  codelookup #00b3jbldq2t4plgsi6u1k23q8g7dfahfc7ggblqikvndbfijv456g
 ✅  codelookup #01oi4j2iudlufo4iarngn292821ljgbaa7ssjbufmtukifuem6rse
 ✅  codelookup #0197gdh70lgq40btoggomju2kvi6r466qqfdu1c628sefdrrfusga
 ✅  codelookup #028m89oqrpm9raicunscdegrappcq9ekkgbknqa0r8uktr1ilk51o
 ✅  codelookup #02jgonqg0sob7d8r9l75biie2q6sl3eb5ktnf99c8er0de26oq4u6
 ✅  codelookup #0104n87srnts5ku4bd4g7sv32nru0c4cmh1ucqejt52nit0p792tq
 ✅  codelookup #03t4555ovfl57rcn9e69mk8sad9cqvgc9dglrddonlthdbk60agcg
 ✅  codelookup #00s4qgnlemcvuj7h18rnq3r84k1t8n5847a9n4hqupjq2s6v7nk9c
 ✅  codelookup #01l1c0nf1hqg4acrg9ba984j92o4tcoqjpe8hmc4vprdo9lntp07e
 ✅  codelookup #001gd5dk78n7vqrlltbi9nqpn6rapb99tf8u6o1vhqf4uf3kcuq92
 ✅  codelookup #03npa9qar85ck28f5rsl577dctfiuuhur24gsevshc6h7i5ui32g2
 ✅  codelookup #00n4dgeec6jt6skfmkh04d8k56d312emvhtoa41neia8drnf8m1ha
 ✅  codelookup #00so2r5a8hjo5cippkmjkdfsckghl0876393dd70hn8rcvtgjasvi
 ✅  codelookup #020oqghpt8t21t1m1fn0m7c369i08uv60s042d8ptgo4bqau2tmm4
 ✅  codelookup #034m4ap7bg1rmm46cistvq2objtj3m7raoo6nekk8fu1jv9hr0f5u
 ✅  codelookup #01dmj6kci0av8b4h1bo15vbu3n2oahvs2q7tbs5tc5f8drk6ar98i
 ✅  codelookup #029imb8lah6pt8s2uv4o4s76ok654qeogt4fdc9upo9hm49r6jon2
 ✅  codelookup #02j756k2gbdlomnc1s2k2nutt9con1cae9lgemmrp3jabf79mait4
 ✅  codelookup #031djf8uaq003dfrps44sulchccgg6eegb0r1iuiq3nahgf7vanm0
 ✅  codelookup #001v77fenc2q4prm6nds1dmrckmuf280jrg6e7ndchr6tt3g2o1rq
 ✅  codelookup #03880kcvadlrci39lhn2gtn9vo93raan2sm6onlmjjed9mq8855hm
 ✅  5 safe
 ✅  5.0 safe
 ✅  "" safe
 ✅  0xs1337 safe
 ✅  List.map safe
 ✅  FilePath.open unsafe
 ✅  sandbox.open1 unsafe
 ✅  sandbox.open2 unsafe
 ✅  Code.cache_ unsafe
 ✅  FilePath.open allowed
 ✅  Code.cache_ allowed

  💔💥

  The program halted with an unhandled exception:

    Failure
      (typeLink IOFailure)
      "unison-src/transcripts-using-base/serialized-cases/case-04.v4.ser: openFile: does not exist (No such file or directory)"
      (Any ())

  Stack trace:
    ##raise

Also, tested https://github.com/NixOS/nixpkgs/pull/312922 and it works fine on Darwin aarch64:
.> run.native foo
foo

  ()

And for the sake of completeness, Darwin on x86_64 working as well with https://github.com/NixOS/nixpkgs/pull/312922:
vibrant-wallaroo/main> run foo
foo

  ()

vibrant-wallaroo/main> run.native foo
foo

  ()

Hello @aryairani,
It failed, but not sure why exactly, open-input-file seems to have failed. Do I need to run this command from a specific folder or something similar?
native tests
Just for sanity, run tests (without native) fails in a similar way:
tests

@ereslibre Oops, sorry about that — that's a known issue I forgot about, which trips me up sometimes too. If you run the tests from the root directory of the unisonweb/unison repo, that file will be available.
I'm thinking that ideally the only files the tests should be reading should be ones that it also wrote, but that's a separate issue for a separate ticket for a separate repo. 😅

@ereslibre Oops, sorry about that — that's a known issue I forgot about, which trips me up sometimes too. If you run the tests from the root directory of the unisonweb/unison repo, that file will be available.

I see, thanks for confirming. I will check later tonight just to confirm, but I think it's already looking good.

I'm thinking that ideally the only files the tests should be reading should be ones that it also wrote, but that's a separate issue for a separate ticket for a separate repo. 😅

Hehe, absolutely :)

Yup, tests pass with run.native tests after cloning clone @unison/runtime-tests, and when executed from within the unison directory.
@unison/runtime-tests/main> run.native tests

<snip>

Summary of results:

  ✅✅✅  499 PASSED

  ()


cannot be installed

Hello, could you please update or help me to get this working? it would ease the pain with graphql for me very much!
Running "flutter pub get" in mobileapp...
Because graphql_codegen >=0.7.0-beta.5 depends on gql_code_builder ^0.5.0 and gql_code_builder >=0.5.0 <0.5.2-alpha+1659450244829 depends on analyzer >=2.3.0 <4.0.0, graphql_codegen >=0.7.0-beta.5 requires analyzer >=2.3.0 <4.0.0 or gql_code_builder ^0.5.2-alpha+1659450244829.
And because gql_code_builder >=0.5.2-alpha+1659450244829 <0.6.1-alpha+1666796125497 depends on analyzer ^4.2.0 and freezed 2.2.1 depends on analyzer ^5.2.0, graphql_codegen >=0.7.0-beta.5 is incompatible with freezed 2.2.1.
So, because mobileapp depends on both freezed 2.2.1 and graphql_codegen 0.11.2, version solving failed.
pub get failed (1; So, because mobileapp depends on both freezed 2.2.1 and graphql_codegen 0.11.2, version solving failed.)
exit code 1

Pubspec
  ```dart
dependencies:
  adaptive_action_sheet: 2.0.2
  animations: 2.0.7
  badges: 2.0.3
  booking_calendar: 1.1.6
  cached_network_image: 3.2.2
  calendar_timeline: 1.0.5
  catcher: 0.7.0
  collection: 1.16.0
  connectivity_plus: 1.4.0
  crypto: 3.0.2
  cupertino_icons: 1.0.5
  custom_image_crop: 0.0.4
  custom_refresh_indicator: 2.0.0
  easy_localization: 3.0.1
  expandable_page_view: 1.0.17
  fl_chart: 0.55.2
  flutter:
    sdk: flutter
  flutter_dialogs: 3.0.0
  flutter_keyboard_visibility: 5.4.0
  flutter_mailer: 2.0.1
  flutter_markdown: 0.6.12
  flutter_reorderable_list: 1.2.0
  flutter_riverpod: 2.1.1
  flutter_switch: 0.3.2
  flutter_time_picker_spinner: 2.0.0
  flutter_typeahead: 4.1.1
  freezed_annotation: 2.2.0
  graphql: 5.0.0
  graphql_flutter: 5.0.0
  image_picker: 0.8.6
  inkblob_navigation_bar: 0.1.2
  json_annotation: 4.7.0
  lottie: ^1.4.3
  nhost_flutter_auth: 2.0.4
  nhost_flutter_graphql: 2.1.0
  nhost_graphql_adapter: 2.0.4
  nhost_sdk: 3.0.4
  numeral: 2.0.1
  palette_generator: 0.3.3+2
  percent_indicator: 4.2.2
  reactive_forms: 14.1.0
  shared_preferences: 2.0.15
  shimmer: 2.0.0
  smooth_page_indicator: 1.0.0+2
  swipe_image_gallery: 0.8.0
  timeago: 3.3.0
  uipickers: 0.0.9
  url_launcher: 6.1.6
  zoom_tap_animation: 1.1.0
dependency_overrides: #temporary fix before nhost_flutter_graphql is updated to 2.0.4+
gql_websocket_link:
git:
url: https://github.com/agent3bood/gql.git
path: links/gql_websocket_link
ref: issue/294
dev_dependencies:
build_runner: 2.3.2
flutter_lints: 2.0.1
flutter_test:
sdk: flutter
freezed: 2.2.1
graphql_codegen: 0.0.1-alpha.1 #this one works, but would like to have bigger version =)
json_serializable: 6.5.4

</details>

This works to install codegen, but this will cause an error with the graphql_flutter package.
Error: 'HttpLinkHeaders' is exported from both 'package:gql_exec/src/http.dart' and 'package:gql_http_link/src/link.dart'.
../…/lib/client.dart:10
export 'package:graphql/src/links/links.dart';
Error: 'HttpLinkResponseContext' is exported from both 'package:gql_exec/src/http.dart' and 'package:gql_http_link/src/link.dart'.
../…/lib/client.dart:10
export 'package:graphql/src/links/links.dart';
package:graphql/…/links/links.dart:1
    ^
: Error: 'HttpLinkHeaders' is exported from both 'package:gql_exec/src/http.dart' and 'package:gql_http_link/src/link.dart'.
../…/links/auth_link.dart:37
              (headers) => HttpLinkHeaders(

How can i solve this? Any ideas?

Yeah, there's been a alpha release of gql_exec that breaks compatibility. I was able to get it to work by adding gql_exec: 0.4.2-alpha+1668108356146 to my dependency overrides in addition to the ones above.
Just to be clear, I do not recommend doing this in production :)

Stable version of gql_code_builder supports analyzer 5.x. Is there a plan to update package dependencies?

The updated dependencies are in master, but I am experiencing some problems
with pub.
On Thu, 15 Dec 2022 at 09:01, LiLoGandalph @.***> wrote:

Stable version of gql_code_builder supports analyzer 5.x. Is there a plan
to update package dependencies?
—
Reply to this email directly, view it on GitHub
https://github.com/heftapp/graphql_codegen/issues/203#issuecomment-1352747374,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA2UFS3357FJEOKSXEBWN7DWNLM6ZANCNFSM6AAAAAAR4FGGUE
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Dependencies updated.


feat!: playbook refactored

BREAKING CHANGE: Removed redundant tasks, added integration test

This PR is included in version 3.0.0 :tada:


backport a test to see if timestamps are working in aarch64

Don't merge, this MR is to run the CI to see if we are getting the same errors as in https://github.com/nix-rust/nix/pull/1744

bors try

@pacak the test you're modifying currently builds for a few different platforms, but it looks like ScmTimestampns is only defined on Linux. You can ignore the failures on other platforms.

Those checkout failures are odd though.
bors retry

The idea for this is to check if we can replicate the same problems on aarch64 as in https://github.com/nix-rust/nix/pull/1744 so I'm only interested in one result - aarch64. Or you think it makes sense to merge
#1837 anyway?

No, I wasn't suggesting merging this PR - I just was offering a suggestion to get rid of the other build failures to make it easier to parse the results.

If it's important - sure, I'll see what I can do

This seems to be passing just fine on my aarch64 target. :/

This seems to be passing just fine on my aarch64 target. :/

:thinking: and the new one still fails?

This seems to be passing just fine on my aarch64 target. :/

thinking and the new one still fails?

I'm going to do another clean build against your new branch just to be sure.... just to make sure something didn't get screwed up during my uptaking of your latest changes. I'll let you know shortly.

Yeah, confirmed the other branch (pacak/master) is still failing. Tested against the 5.19 kernel.

Hmm, it looks like AWS Graviton has a free trial right now (with a fairly high compute limit, at least for this). I wonder if you'd be able to reproduce it there?

I wonder if you'd be able to reproduce it there?

Probably, need to figure out what to do with it first :)


Potential bug in image driver handling of parameter file, and/or tonic

Version: VIC.5.0.1 develop branch
Compiler: gcc 5.4.0
Operating system: ubuntu 16.04.9
Model settings: image driver
Problem summary:
When using parameter files that I have generated from scratch, various states and fluxes get weird values that fairly quickly lead to nans.  This doesn't happen with parameter files that I've generated with tonic from the Livneh et al (2015) ascii soil/veg/snowband parameter files.

I believe that the problem is caused by a combination of how I created my parameter files and some potentially missing/bad logic in VIC (and tonic).  But when I try to fix my parameter files to make them more amenable to VIC, VIC still has trouble.  I am not sure whether it's because I haven't succeeding in fixing my parameter files, or whether there's some other problem occurring.  I could use some advice and/or help brainstorming for solutions here...
More detail:
My new parameter files generated from scratch differ from the tonic-generated files in a few ways:

for "vegetation library" parameters and root zone parameters, tonic sets them to "valid" values (the same constant value) in all classes in all grid cells, regardless of whether those classes are actually present in the grid cell (i,e, Cv[v] >= 0).  In my parameters, I only defined them where Cv[v] > 0, and set them to missing where the vegetation class is not present (Cv[v] == 0).
tonic creates an extra bare soil tile in cells where the vegetated tile areas sum up to less than 1 (Cv_sum < 1); but does NOT increment Nveg to reflect the extra tile (i.e., Nveg < Nnonzero, where Nnonzero is the number of tiles for which Cv[v] > 0).  In my parameters, the tile areas always reflect exactly what is present in the land cover map; Cv_sum always == 1 (except for numerical error); and Nveg == Nnonzero.
tonic parameter files define all floating point variables as type double.  I defined mine as float to save space, since I didn't need the precision.

In vic_run(), I saw that bad values (they looked a lot like the missing value I'd given them in my parameter file) of veg parameters such as trunk_ratio were being passed to CalcAerodynamic().  This could certainly explain why the tonic parameter files didn't cause problems (since even invalid tiles have valid parameter values in tonic-generated parameter files).  To verify that missing values from invalid tiles were getting passed, I replaced those values in the parameter file with an arbitrary value (again, only where Cv[v] == 0), and these values showed up being passed to CalcAerodynamic().
As for why these garbage values were being used, I hypothesized that VIC was somehow mistaking zero-area tiles for valid tiles.  Looking at the code, in get_global_domain(), VIC assigns nv_active to Nveg+1, where Nveg is the value from the parameter file; then in vic_alloc() it allocates nv_active tiles to veg_con and calls make_all_vars() with nv_active-1, which allocates nv_active-1+1 tiles to veg_var, cell, etc.  But then, vic_init() does its mapping between the all-classes-stored structure veg_con_map and the only-nonzero-classes structure veg_con by checking whether Cv > 0.  Nveg is NOT involved in this mapping.  My theory at the moment is that my single-precision Cv values might not look like 0 to VIC when VIC is interpreting them as doubles, thus causing the mapping to map invalid tiles to the veg_con structure.
However, I've tried changing Cv in my parameter file to double, and tried rounding all values to 6 digits of precision to ensure that 0s look like 0s.  But it doesn't fix the problem.  So, if I've not properly zeroed the 0s this way, I could definitely use help getting that to work correctly (my python skills are still not at the level of the UW lab).
But I don't know for sure if that's what happened - maybe I did succeed in zeroing out the 0s (it looked that way in a python session), and maybe something else is causing the problem in VIC.
Regardless, I can also see that VIC and tonic might benefit from improved code to counter these problems.  Tonic's inconsistent incrementing of Nveg seems dangerous.  In VIC, we could easily implement a check on whether the total number of tiles with Cv[v] > 0 actually equals Nveg - if not, it could give the user a helpful error message so that the user knows exactly what the problem is.
Also, I think tonic's assignment of valid parameter values to cell/class combinations where the classes are not present is a bad policy, since if VIC for some other reason were to accidentally assign invalid tiles, the error would not be caught (the parameters would be physically reasonable, just wrong).
Any thoughts/advice on this would be greatly appreciated.  I need to get my simulations going ASAP!

Now, the primary suspect is OpenMPI (at least the version on my machine, which might not be the right version).  I deleted the line in vic_image_run() immediately before the loop over grid cells, which contains a pragma instructing OpenMPI to run the for loop using multiple threads.  Suddenly my simulations ran fine.
The questions now are:

Is there something wrong with my OpenMPI? (and if so, how to fix to either handle the pragma correctly or to tell it to ignore the pragma)
How easily could this happen to other users?  Is it happening at UW but not being detected due to all grid cells containing redundant copies of the veg_lib?
Regardless, is it a good idea for vic param files to define veg_lib parameters for zero-area veg tiles? (in terms of space usage, possibility for corrupt values where validation doesn't take place, etc.)

@tbohn -thanks for the report.

For clarity, the pragma statement is for OpenMP (not OpenMPI) .
If you put the pragma statement back and set the OMP_NUM_THREADS environment variable to 1, do you still see the buggy behavior?export OMP_NUM_THREADS=1

If you compile without OpenMP but with the pragma statement in place, do you see the buggy behavior? For that, you'd need to remove the following line from the makefile.
https://github.com/UW-Hydro/VIC/blob/9fae303d62d3b76104fe99689c2b1f8c6e71cba3/vic/drivers/image/Makefile#L91
Finally, are you still building against anaconda libraries? I'm suspect of that configuration so it would be good to know if this is repeatable on a different set of libraries.

To answer your questions:

yes, export OMP_NUM_THREADS=1 fixes the problem.
yes, commenting out the -fopenmp line fixes the problem.
yes, I'm still building against the anaconda libraries.

@tbohn - how are you executing VIC? Do you get the odd behavior if you don't use MPI?
Can you run a test with:
export OMP_NUM_THREADS=8  # or some number of threads > 1
./vic_image -g your_param.txt  # omit mpirun

The above test reproduces the bug.
That test is identical to one of the several ways that I ran vic and encountered the bug (i.e., I ran vic both with and without mpirun), except I wasn't explicitly setting OMP_NUM_THREADS to anything.  So this implies that my environment somehow uses multiple threads by default.

I think in order to close this issue we should add a test that checks for bit for bit equivalence between the single core image driver and the openmp enabled image driver. That should probably fall on me but if someone else is interested and gets to it first, go for it.

@jhamman or @tbohn is there any update on this issue? I am running into a similar issue with NA values in my VIC output when running with OpenMPI, VIC5.1.0, and the calibrated VIC parameter file and domain from Currier et al. 2023. I get many NAs throughout the CRB domain.
I have tried a variety of the suggestions in this and other threads and in the VIC image driver documentation page (MX_RCACHE = 2, removing the -fopenmp flag, etc.), as well as trying different forcings, etc. We did not build against any conda libraries.
I am able to run all of the VIC sample datasets without this issue.
The issue presents as either large chunks of the domain as NA immediately:

Or NAs becoming more prevalent over time:

Dear dwoodson, I left academia 4 years ago and have not worked with VIC
since. I can't help you with this issue.
Regards,
Ted Bohn
On Mon, Dec 25, 2023 at 5:11 PM dwoodson-usbr @.***>
wrote:

@jhamman https://github.com/jhamman or @tbohn https://github.com/tbohn
is there any update on this issue? I am running into a similar issue with
NA values in my VIC output when running with OpenMPI, VIC5.1.0, and the
calibrated VIC parameter file and domain from Currier et al. 2023. I get
many NAs throughout the CRB domain.
I have tried a variety of the suggestions in this and other threads and in
the VIC image driver documentation page (MX_RCACHE = 2, removing the
-fopenmp flag, etc.), as well as trying different forcings, etc. We did not
build against any conda libraries.
I am able to run all of the VIC sample datasets without this issue.
The issue presents as either large chunks of the domain as NA immediately:
image.png (view on web)
https://github.com/UW-Hydro/VIC/assets/106703387/6a89df65-931a-4d05-943a-85cff140da9b
Or NAs becoming more prevalent over time:
image.png (view on web)
https://github.com/UW-Hydro/VIC/assets/106703387/7a1b4b2a-6dd6-4b19-b600-30de405b4513
—
Reply to this email directly, view it on GitHub
https://github.com/UW-Hydro/VIC/issues/787#issuecomment-1869177390, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AA2VS6WTG4DEAHHI74ESKLTYLIP37AVCNFSM4EUDLR4KU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOBWHEYTONZTHEYA
.
You are receiving this because you were mentioned.Message ID:
@.***>

@tbohn thank you for your response!
-David

The NA values in my VIC output were caused by two issues:

Not setting any values for OMP_NUM_THREADS before running the image driver with OpenMPI, this caused a phenomenon were only a few cells were NA at the simulation start but the number of NA cells grew over time and seems to be a conflict between OpenMP and OpenMPI. export OMP_NUM_THREADS=1 solved this issue.
When generating my VIC forcings, I used MetSim. However, I made my MetSim domain file using the R terra package and doing so imparted something into the VIC forcings which caused large zones of NA cells in the VIC output, even though the VIC forcings looked fine upon inspection and analysis. Creating the MetSim domain with Python code did not cause this issue, even though the MetSim domain from R and Python were essentially identical in terms of mask and elevation. So perhaps something with the drivers used in the R terra package.


Through Camera option should be there in uploading contact image request by suresh sirvi

If user want to upload his/her image through web camera , so this option should be there.

@ajayrajecb Test on Mobile App, Escalate if Required


sstable address hashes type, sstables written to block storage without hierarchy

closes #1293

Codecov Report

Merging #1314 (bd9ce1a) into master (d4dcf0b) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master    #1314   +/-   ##
=======================================
  Coverage   47.08%   47.08%
=======================================
  Files         203      203
  Lines       15866    15890   +24
=======================================
+ Hits         7470     7482   +12
- Misses       7407     7418   +11
- Partials      989      990    +1

Impacted Files
Coverage Δ

graveler/sstable/writer.go
67.18% <100.00%> (+0.52%)
:arrow_up:

pyramid/tier_fs.go
58.77% <100.00%> (+1.75%)
:arrow_up:

config/logger.go
64.28% <0.00%> (-10.72%)
:arrow_down:

graveler/graveler.go
35.20% <0.00%> (-0.32%)
:arrow_down:

graveler/errors.go
100.00% <0.00%> (ø)

graveler/committed/manager.go
0.00% <0.00%> (ø)

graveler/committed/apply.go
39.00% <0.00%> (+7.67%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d4dcf0b...bd9ce1a. Read the comment docs.

Codecov Report

Merging #1314 (bd9ce1a) into master (d4dcf0b) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master    #1314   +/-   ##
=======================================
  Coverage   47.08%   47.08%
=======================================
  Files         203      203
  Lines       15866    15890   +24
=======================================
+ Hits         7470     7482   +12
- Misses       7407     7418   +11
- Partials      989      990    +1

Impacted Files
Coverage Δ

graveler/sstable/writer.go
67.18% <100.00%> (+0.52%)
:arrow_up:

pyramid/tier_fs.go
58.77% <100.00%> (+1.75%)
:arrow_up:

config/logger.go
64.28% <0.00%> (-10.72%)
:arrow_down:

graveler/graveler.go
35.20% <0.00%> (-0.32%)
:arrow_down:

graveler/errors.go
100.00% <0.00%> (ø)

graveler/committed/manager.go
0.00% <0.00%> (ø)

graveler/committed/apply.go
39.00% <0.00%> (+7.67%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d4dcf0b...bd9ce1a. Read the comment docs.

Thanks! Sorry for so much copy-pasta. (BTW, it hints that maybe AddressWriter just isn't a thing. But certainly do not remove it in this PR.)

Indeed, I left it there for compatibility only.

Thanks! Sorry for so much copy-pasta. (BTW, it hints that maybe AddressWriter just isn't a thing. But certainly do not remove it in this PR.)

Indeed, I left it there for compatibility only.


Migrate from react-native-material to react-native-paper

Not feasible, libraries do not have easily compatible components


Installing crosswalk - cordova plugins getting removed

If i install crosswalk i must reinstall all cordova plugins

Greetings @do-web!
My sensors indicate that you need to update your issue through our custom issue form. We are now requiring all issues to be submitted this way, to ensure that we have all of the information necessary to fix them as quickly as possible.
Click Here To Update Your Issue
I will have no choice but to close this issue if it is not resubmitted through the form. Please fill out the rest of the form, so that I may use my friendly robot powers to assist you.
Thank you!


[Testing:TAGrading] Test markdown

Please check if the PR fulfills these requirements:

[ ] Tests for the changes have been added/updated (if possible)
[ ] Documentation has been updated/added if relevant
[ ] Screenshots are attached to Github PR if visual/UI changes were made

What is the current behavior?

What is the new behavior?
Other information?

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


APT whitelist request for qq

This replaces travis-ci/travis-ci#4327.
The original text by @simonmorley follows

Ran tests, but could not found source package. Either the source package for qq does not exist, or the package needs an APT source. If you wisht to add an APT source, please follow the directions on https://github.com/travis-ci/apt-source-whitelist#source-approval-process. Build results: https://travis-ci.org/travis-ci/apt-whitelist-checker/builds/72545562.


impossible to start

Hi @bigsky77 ,
I am trying to make this software works.
I followed the installation and execution process but it doesn't work in the end.
First problem :
When i first run python src/main.py --run-engine, i encounter this error :
Error in run: Query was not successful! Unexpected status code: 422, with response body: {'error': [{'message': 'no graphql provider present, this is most likely because no schema is present. Import a schema first!'}]}.
Problem seems to be solved by running weaviate_schema.py.
Second problem:
When i rerun python src/main.py --run-engine , i have this new error :
Error in run: 'data'
When i try to run python src/main.py --ingest , it returns :
/home/X/twitter-agent/venv/lib/python3.10/site-packages/tweepy/auth.py:120: DeprecationWarning: OAuthHandler is deprecated; use OAuth1UserHandler instead.
  warnings.warn(
Traceback (most recent call last):
  File "/home/X/twitter-agent/src/main.py", line 130, in <module>
    asyncio.run(main())
  File "/home/X/twitter-agent/venv/lib/python3.10/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
  File "/home/X/twitter-agent/venv/lib/python3.10/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
  File "/home/X/twitter-agent/venv/lib/python3.10/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/X/twitter-agent/venv/lib/python3.10/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
  File "/home/X/twitter-agent/src/main.py", line 33, in wrapper
    return asyncio.run(f(*args, **kwargs))
  File "/usr/lib/python3.10/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
    return future.result()
  File "/home/X/twitter-agent/src/main.py", line 78, in main
    await collector.ingest()
  File "/home/X/twitter-agent/src/collector/collector.py", line 25, in ingest
    return await self.ingest_weighted_lists(50)
  File "/home/X/twitter-agent/src/collector/collector.py", line 76, in ingest_weighted_lists
    for list_data in lists:
TypeError: 'NoneType' object is not iterable

Thank you for your work.
Cheers

Hey!  Thanks for checking out.  Twitter recently made some breaking changes to their API, so some of the methods used by these bots no longer work.
If I get some time this weekend I'll dive in and try and fix.

@bigsky77 Twitter API is also paid now, Is this right ??
Does that mean we can not start this app without having a paid twitter api subscription ??


Add app-compat-sync module

Codecov Report

Merging #801 (0f22d7e) into main (e4ec1a4) will decrease coverage by 0.12%.
The diff coverage is 14.28%.

@@            Coverage Diff             @@
##             main     #801      +/-   ##
==========================================
- Coverage   65.28%   65.17%   -0.12%
==========================================
  Files         127      128       +1
  Lines        6306     6320      +14
  Branches     1214     1217       +3
==========================================
+ Hits         4117     4119       +2
- Misses       1374     1386      +12
  Partials      815      815

Impacted Files
Coverage Δ

...exvanyo/composelife/appcompatsync/AppCompatSync.kt
14.28% <14.28%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


ci: Gather commands from local node

While implementing LocalExecutor I failed to send executed commands
into a log file.
This change reuses the same buffer as SSHMeta for LocalExecutor,
so all commands are logged in the same
log file as if they would be while being executed by SSHMeta.

test-me-please

Coverage increased (+0.004%) to 44.659% when pulling 5b3ae780dc3bcb2129f4fccb615c1fc0c703fc8b on pr/ci-fix-command-gathering into 37abed502c5c00a7c4b2dd2dd867b598d5d52448 on master.

CI has previously passed, merging this since the changes made since the last CI run were the addition of a commit message.


Add #each method to Hash class

Currently we only have #each_key and #each_value, but don't have #each method.

Addressed by #429.


Change Column Type when FK

I'm trying to change a table's id column from integer (int4) to bigint (int8), but I'm struggling to complete the migration because other tables reference id as a foreign key.
I tried following this example: https://github.com/xataio/pgroll/blob/main/docs/README.md#change-type
Here's what I have:
{
  "name": "00_testing",
  "operations": [
    {
      "alter_column": {
        "table": "inspection_item",
        "column": "id",
        "type": "bigint",
        "up": "CAST(id as bigint)",
        "down": "CAST(id as integer)"
      }
    }
  ]
}

When I try to complete the migration, I get this error:

I see examples for adding/deleting foreign key constraints, but I don't see any examples of changing the type of a column that is referenced as a foreign key.
Does anyone have examples of this?

Also these two scripts are returning different outputs, which surprises me:
SET search_path = 'public';
SELECT id FROM inspection_item WHERE part_id = 22913 LIMIT 1;
-- returns 169406

But why does this return null?
SET search_path = 'public_00_testing';
SELECT id FROM inspection_item WHERE part_id = 22913 LIMIT 1;
-- returns null

Another surprising thing that I've found is values changing when I don't expect them to
Let's say my migration looks like this:
{
  "name": "03_downsize_keyspace",
  "operations": [
    {
      "alter_column": {
        "table": "inspection_item",
        "column": "id",
        "type": "serial4",
        "up": "cast(id as int4)",
        "down": "cast(id as int8)"
      }
    }
  ]
}

Before running this, I try sanity-checking that my "up" expression will do what I expect: not change values when downsizing the footprint. I can do this because my keyspace fits within int4:
select id, cast(id as int8)
from inspection_item
where id != cast(id as int8)
-- correctly returns no values

But when I run...
pgroll start sql/03_downsize_keyspace.json

...and then I run this query, I see that id and _pgroll_new_id differ.
select id, _pgroll_new_id
from inspection_item
where id != _pgroll_new_id
-- returns many values

What's happening here?

Thanks for opening the issue 🙏
I can reproduce your first problem fairly easily; 'change type' operations are implemented by:

creating a new column with the new type on migration start
dropping the old column and renaming the new one on migration complete.

The drop of the old column on complete doesn't work because the column is referenced as part of a FK constraint. pgroll needs to be smarter here and update the FK to point at the new column before the dropping the old one.
I will add this issue to the v1 milestone.
I'm unable to reproduce the second problem. Could you please provide the series of migrations before 03_downsize_keyspace and open a separate issue for it?

Won't pgroll also need to update the type on all the columns references the original?
It will work if Postrges is able to cast the types automatically, for example int4 -> int8. But, if the type are not compatible for example int -> text then we'll need to run the same translation step from the original table on all the foreign keys.
One way we could do this is by looking for a USING expression on the alter type expression and repeat it for all the foreign keys by inspecting the schema. @andrew-farries Does this sound like something we want to do?


Handle new native reddit videos/gifs

Reddit is rolling out their native video/gif hosting services.
Example link: https://v.redd.it/24bqk13lf5fz/
By appending DASHPlaylist.mpd the link can be handled by youtube-dl/mpv:
mpv --autofit 640x480 https://v.redd.it/24bqk13lf5fz/DASHPlaylist.mpd
However, I assume, this is not the case with many media players.
The .mpd (MPEG-DASH) format is an xml document containing data about the media file. In the above example the video and audio can easily be extracted (the numbers 9 and 6 may vary):
video: https://v.redd.it/24bqk13lf5fz/DASH_9_6_M
audio: https://v.redd.it/24bqk13lf5fz/audio
In the case of gifs the audio stream will not be present and we can simply pass the direct link to the video.
In the case of video I see the following options:

Assume anyone with video/x-youtube in their mailcap will be using youtube-dl or mpv
Pass the direct link of the video only stream
Open these video links in a graphical browser

Thanks for the write-up. Clearly they're trying to pull traffic back from Imgur, which has gotten really aggressive at redirecting Reddit users to their own platform. The mod's comment about exposing videos through their API makes me optimistic that there might be simpler way to do this in the future.
https://www.reddit.com/r/changelog/comments/6jo5it/reddit_change_introducing_video_uploading_beta/djfrix0/

Assume anyone with video/x-youtube in their mailcap will be using youtube-dl or mpv

I think that's fair for 95% of users. We can always implement it for now and see if anyone complains.


Why isn't  whitelisted by default?

Curious if this was intentional or an oversight:
https://github.com/jch/html-pipeline/blob/master/lib/html/pipeline/sanitization_filter.rb#L45

I'm wondering the same thing. I think it might be a mistake that span is listed under attributes. I haven't been able to find anything saying that span is a valid HTML attribute.

@patrickberkeley see:

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col#attr-span
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/colgroup#attr-span

@rymohr I'd like to know too.
At present the whitelist offers 0 naturally unstyled inline elements intended for arbitrary text.  It looks like only <ruby>, <rt>, and <rp> may be misused for this purpose. (<a> can be used, be breaks child links its contents might contain)
My use case is a markdown generator (intended for primary viewing on github) which retains user-supplied textual descriptions (of arbitrary content) on rebuilds.  I so happen to want to offer the ability to have the textual description of something literally to the right of the term it's describing, so <dt> and <dd> are out of the question since they're block elements that force a newline.  The only way I can do this and survive github's filtering is to misuse the ruby elements, which makes me 😞.
It'd be nice if <span> was allowed.


Metadata tests

Added new metadata tests in the unit testing format.

@vineetbansal can you check if these tests are in the format that you are expecting.  If yes, please merge the pull request and close the appropriate issues.  Thanks.  cc @katejaeger

@thartshorne - Looks good. I'll merge these into the python3 branch too.


CA-Certificate Error during build

ERROR: Task 2196 (/build/webos-ports-env/webos-ports/openembedded-core/meta/recipes-support/ca-certificates/ca-certificates_20141019.bb, do_install) failed with exit code '1'
I'm assuming its not downloading the certs.

I haven't seen this issue, but it's occurring in the openembedded-core recipes, so not affected by this layer.


Adding user-agent header to comply with OSM tiles policies

The first commit in this pull request consists of only formatting changes (Black formatter 23.11.0)
The second commit, albeit fewer, contains formatting changes alongside the addition of headers in the get request made to the OSM tile API.
This is to comply with their policies which clearly state a valid HTTP User-Agent is required to identify the application. When this header is missing from the requests, users are faced with a 403 error.
Finally, the third commit is to simply change the format of the User-Agent from maptiles (<version number>) to maptiles/<version number> as per Mozilla’s developer documentation surrounding User-Agents

@mcmcford Thank you very much for your kind help.  This looks good to me.


adding nested items NOTE: does not automatically generate list items

Added color separtation between items and dropdown ability
Also NOTE: Does not differentiate between multiselectors
Connected to Nested Data display #37

Looks good. #44


[Bug] Ctrl+Q is marked, but does not close Insomnia

Insomnia Version: 6.4.0
Version 6.4.0
Shell 3.0.4
Node 10.2.0
V8 6.6.346.32
Architecture x64

libcurl/7.61.1 OpenSSL/1.1.0h zlib/1.2.11 nghttp2/1.29.0

Operating System: Ubuntu 16.04.5

Details

Ah, good catch. That hotkey should only be shown for Mac

I'd much rather you'd register it 😕
Ctrl+Q / Ctrl+W / Alt+F,X ...
I could guess that Alt+F4 does the work, but, working on Ubuntu (Linux?), different layouts come to mind usually

I'm not sure what best practices on Windows/Linux are. Is Ctrl+w the most common?
Sent with GitHawk

I'm not sure what best practices on Windows/Linux are. Is Ctrl+w the most common?

From my experience, Ctrl+Q (as in Quit) is a common option (e.g. Sublime, VLC, Evolution, Libre Office, Chrome Ctrl+Shift+Q before moving to Alt+F,X)
Ctrl+W would be to close windows/tabs (if this is the case). In that case, Ctrl+W closing the last window, could have Quit a side-effect (instead of closing the window, to start on a new "environment" next time, Chrome), or not (Firefox)

Hi, on my Insomnia version (6.5.3, Archlinux) the menu is different: it only contains "preferences" and "changelog" so I've to force quit the application using the window manager shortcut (in my case Awesome WM).

@finex obviously it looks differently!
This is closed & resolved in https://github.com/getinsomnia/insomnia/commit/6f98da7df89fa0da646ad5950defd8c4c9bd8771
and in: v6.5.3  v6.5.1 v6.5.0 v6.4.2 v6.4.1
I was hoping that @gschier would also resolve the comment https://github.com/getinsomnia/insomnia/issues/1446#issuecomment-486107294 (which theoretically needs its own Issue), but probably not happening.

I also use a window manager (dwm) like @finex does, and there is no way to quit the application using a standard shortcut, so I have to use the window manager manager shortcut. The behavior that @stdedos described is correct based on my experience with Linux. It's usually the same for Windows as well.
My Insomnia version is 6.5.4.

Yes, as @johnjago mentions, it is like that as well on Windows (I probably missed that one).
The "windows manager" shortcut on Windows would be Alt+F4, but I don't think you need to cover this case - making Ctrl+Q work would be enough

Hi, the issue is still reproducible on 7.0.3: I'm using Insomnia from Archlinux/AUR package. The desktop environment is AwesomeWM and there is no "quit/close" action on the menu... just like the old version :-)


Wi-fi network disconnects whenever DS4 is connected

I'm using ds4drv with Linux Mint and I have an odd issue. Whenever I connect my DS4 using ds4drv, my wi-fi network disconnects. It reconnects again when I stop the process. When I connect my DS4 directly without using ds4drv. This problem also occurs when I connect my DS4 directly then load up ds4drv using Hidraw mode.

I'm closing this since this is most likely not an issue in ds4drv. You can still use the issue for discussion.
Sounds like your bluetooth hardware cannot be used at the same time with your wifi. You might want to try to use an external usb bluetooth device.


Repo Search

We need a way to search for repos in Gogs.  Currently, the "Explore" feature is the only way to see other repos, which makes it hard to find things.
Ideally, we could have these features:

[x] General search box
[ ] Ability to search for repos in a given language
[ ] Ability to search for repos for a given project
[ ] Any combination of the above

Essentially, something that operates like Github's issue search would be nice.
Technically this may be implemented as adding AND or OR where there are spaces in the search string.  Prioritize AND over OR operators.
For books of the Bible, add a mapping from the USFM shortcodes to the full names (e.g. Luke -> luk).

This is talked about here; https://github.com/gogits/gogs/issues/13

Discussed with Gogs developer. He is looking into how to make this search feature for repos. Hoping he has time during Spring break to do it since he is a student.

There is now a general search box on test.door43.org:3000. It searched with a %% LIKE in the database, so searching by languages can be done by putting "-fr" in the search field, or a project by "uw-obs" or just "-obs". At least we have that for now. If we start making changes to have other search fields for actual languages and projects, it may be harder to merge down the line, but would be good if someone could select a language by name or a book of the Bible by name (rather than code) . Thoughts?

We do want to enhance the search, but we need to define it better first.  I'll move this into the backlog for the moment and we'll revisit it later.

For now, the /explore page will suffice.  Better search capability will be built into the live site.


higher

Misc/Higher- A lightweight library of abstractions for Higher-kinded programming in F#

A lightweight library of abstractions for Higher-kinded programming in F#

@YaroslavSchubert Sorry, seems nobody else wants to back this one :(


add cam 7 time

Currently it seems the plugin only counts time as long as the car is moving, For RPG maps for instance, I think time spent in cam 7 looking for the route makes sense to be included in playtime. I can help in detecting movement in cam 7 if needed, I have a plugin that messes with this

yeah, if there is a way of detecting camera movement in cam 7 it can be added pretty easily

I'll admit it's not exactly ideal as the current camera is not exposed via API and therefore requires at least one Dev call, but this is how it would be done (excluding safety checks for the sake of brevity):
bool inCam7 = false;
iso4 location = iso4();
bool moving = false;

void Update(float) {
    CTrackMania@ App = cast<CTrackMania@>(GetApp());
    CSmArenaClient@ Playground = cast<CSmArenaClient@>(App.CurrentPlayground);

    inCam7 = Dev::GetOffsetUint32(Playground.GameTerminals[0], 0x34) == 2;

    // can use index 1 or 2 here, they appear to be the same
    if (DifferentIso4(location, Viewport.Cameras[1].NextLocation)) {
        location = Viewport.Cameras[1].NextLocation;
        moving = true;
    }
}

// iso4 doesn't have an opCmp method for some reason
bool DifferentIso4(const iso4 &in a, const iso4 &in b) {
    return a.tx != b.tx || a.ty != b.ty || a.tz != b.tz
        || a.xx != b.xx || a.xy != b.xy || a.xz != b.xz
        || a.yx != b.yx || a.yy != b.yy || a.yz != b.yz
        || a.zx != b.zx || a.zy != b.zy || a.zz != b.zz;
}

You could also use a different set of Dev calls to get the actual cam 7 object which will simply be null if not in cam 7 (used by one of my plugins, taken from FreeCam: Show CP:
bool moving = false;

void Update(float) {
    CGameControlCameraFree@ Cam = GetFreeCamControls();
    moving = Cam.m_MoveSpeed > 0.0f;
}

const uint ActiveCamControlOffset = 0x80;

uint16 GetMemberOffset(const string &in className, const string &in memberName) {
    const Reflection::MwClassInfo@ type = Reflection::GetType(className);

    if (type is null)
        throw("Unable to find reflection info for " + className);

    const Reflection::MwMemberInfo@ member = type.GetMember(memberName);

    return member.Offset;
}

CGameControlCameraFree@ GetFreeCamControls() {
    CTrackMania@ App = cast<CTrackMania@>(GetApp());

    if (App is null || App.GameScene is null || App.CurrentPlayground is null)
        return null;

    // get the game camera struct
    // orig 0x2b8; GameScene at 0x2a8
    CMwNod@ gameCamCtrl = Dev::GetOffsetNod(App, GetMemberOffset("CGameManiaPlanet", "GameScene") + 0x10);
    if (gameCamCtrl is null)
        return null;

    if (Dev::GetOffsetUint64(gameCamCtrl, ActiveCamControlOffset) & 0xF != 0)
        return null;

    return cast<CGameControlCameraFree@>(Dev::GetOffsetNod(gameCamCtrl, ActiveCamControlOffset));
}

Unfortunately I don't know of any way that doesn't use Dev, so if you're hesitant to use these methods then I totally understand and you can close this issue.


Style the snek game

https://hacktoberfest.lingonsaft.com/snek
Needs some improvement ;)

I will add some styling!

Submitted the pull request


with Protractor, dnd-dragstart is not triggered.

Hi, I am trying to test the drag and drop list with protractor.
with native_js_drag_and_drop_helper.js, I could drag and drop element
but, its dnd-dragstart is not triggered.
Is there any way to trigger it?
Thanks in advance.

I am also having trouble with this library and selenium.
Did you get any progress?


ValidationError field required (type=value_error.missing) while using react agent

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.

Example Code
I my ReAct agent, I'm trying to call a tool, that is defined as the following:
@tool(args_schema=SliderInput)
def slider(object_name, value) -> str:
    return "Ok"

and the corresponding pydantic model:
class SliderInput(BaseModel):
    object_name: str = Field(..., description="The name of the slider object")
    value: int = Field(..., description="The value of the slider object to set")

I get the following error when the tool is being called:
object_setattr(__pydantic_self__, '__dict__', values)

ValidationError: 1 validation error for SliderInput
value
  field required (type=value_error.missing)

I started with this function definition:
@tool
def slider(object_name: str, value: int) -> str:
    return "Ok"

and received the same error.
Additionally, I've also tried this one:
@tool(args_schema=SliderInput)
def slider(object_name: str, value: int) -> str:
    return "Ok"

without success.
Why is my code failing.
Description
I'm trying to use langchain library Version: 0.1.1
System Info
langchain==0.1.1
langchain-cli==0.0.20
langchain-community==0.0.13
langchain-core==0.1.12
langchain-experimental==0.0.49
langchain-openai==0.0.2.post1
langchainhub==0.1.14
PRETTY_NAME="Ubuntu 22.04.3 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.3 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
Related Components

[ ] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[X] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[X] Agents / Agent Executors
[ ] Tools / Toolkits
[ ] Chains
[ ] Callbacks/Tracing
[ ] Async

The agent type you're using doesn't currently support multi-input tools. See more alternatives here: https://python.langchain.com/docs/modules/agents/agent_types/

@ccurme Thanks for clarification, I somehow missed this within the docs...


Avoid static init problem in insufficient_procs() (MPI)

Description
Reverses an incidental change that came along with #623. That PR gives a proper initial value for world_size_before_init. Incidentally, it also adds an evaluation of this variable possibly prior to its initialization. (The function insufficient_procs() is called before entering main()). For me it caused all MPI_TEST_CASE to be marked as skipped, even when the actual process count was sufficient. The present PR fixes this problem.

@philbucher Could you take a look when you have the time?

Hi,
Thanks for noticing the bug! I tested your PR on my side and I see no regression. So I am OK to merge it.

@philbucher Sorry to bother you again, but do you think you could give a last lookover to this and the other PR? I'd really like to merge them before 2.4.9 and I'd really like to release that update in the near future!

Sorry for the delay, I posted one more comment. I am not sure if relevant, please go ahead if necessary, it was only about a detail anyway
Thanks!

Thanks for your contribution! :)


Build Docker images when Dockerfile is updated by a PR

Also when the workflow/action for building Docker images are updated.
This should always be run as a dry run.

We may also want to build the Docker images whenever Meltano's dependencies are updated, to ensure we don't run into any build errors. For instance, it would catch situations where we add a new library that doesn't have wheels for some platform we support, and our image lacks the system libraries required to build it.


What is the image.node file?

IN the image.js code theres a file that it requires titled 'build/release/image.node' It keeps saying I dont have that file, what exactly is the file?

The file is the result of building the native image code. Make sure to run npm run build to generate it.

I tried generating it, however i keep getting this error C:\Users(classified)\Documents\esmBot-master>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\node_modules\npm-lifecycle\node-gyp-bin\....\node_modules\node-gyp\bin\node-gyp.js" configure build )  else (node "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" configure build )
'pkg-config' is not recognized as an internal or external command,
operable program or batch file.
gyp: Call to 'pkg-config --cflags Magick++' returned exit status 1 while in binding.gyp. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: gyp failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:351:16)
gyp ERR! stack     at ChildProcess.emit (events.js:315:20)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
gyp ERR! System Windows_NT 10.0.19041
gyp ERR! command "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" "configure" "build"
gyp ERR! cwd C:\Users(classified)\Documents\esmBot-master
gyp ERR! node -v v12.18.4
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>build: node-gyp configure build
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR!      C:\Users(classified)\AppData\Roaming\npm-cache_logs\2020-12-02T22_06_56_137Z-debug.log

You don't have pkg-config installed.

Running the bot on pure Windows is a bit of a hassle due to many needed tools not being easily obtainable, as is the case with pkg-config here
I’d recommend using Windows Subsystem for Linux or something similar instead

How do I install pkg-config, is it a node package? im confused.

How do I install pkg-config, is it a node package? im confused.

It’s a piece of software used alongside compilers like GCC to find/link libraries, pretty sure there isn’t a Windows version however so you’ll have to use WSL


Short conditional operator breaks highlighting

For example, this code breaks highlighting
{{-- @php ($text = $flag ? 'yes' : 'no' ) --}}

its related to the @ because blade expect to have a closed tag with @somthing .
this also breaks usage for vue


Bug: <!-- linter-disable --> can only be used once for V1.15.0

##<!-- linter-disable --> can only be used once for V1.15.0
If <!-- linter-disable --> is used more than twice, the result will be confused
Example to reproduce issue with
content

<!-- linter-disable -->

$$
abc
$$
{#eq:a}

<!-- linter-enable -->

content

<!-- linter-disable -->

$$
abc
$$
{#eq:b}

<!-- linter-enable -->

content

Expected Behavior
Expected output if applicable:
Same as Example

Screenshots

Device

[ x] Desktop V1.15.0
[ ] Mobile

@wenbopeng , thanks for reporting this.
Please provide your data.json. This looks to be an issue with custom ignore and some rule interacting with each other.

I will have to take a closer look at this. I tried this out and can reproduce.
The issue is likely related to using the {#eq:a}  and {#eq:b} values as they look similar to some of the underlying ignore logic. I will need to double check which rule is causing the issue on my device, but it could be the same one you are encountering.

The issue is with 1 or more custom ignore ranges being present. They were being identified correctly, but were being replaced in the wrong order which caused the issue. I plan to patch this this morning.

This should be fixed on master now and it should be in the patch that should go out shortly. Please let us know if the issue persists after the next release/the patch.


New Theme: Basics

https://github.com/arjunkrishnababu96/basics
Let me know if there's any issue. Thanks!

I'm modifying the theme further. Don't accept this one.

Take the time you need and let us know once you're ready

My theme is ready now. The URL is the same as before, which I'm pasting below for convenience.
https://github.com/arjunkrishnababu96/basics
Let me know if there's any issue. Thanks!

@arjunkrishnababu96
Thank you for re-submitting your theme.
I have noticed the following issues:

In your theme's README you also need to add the link to the theme's LICENCE on GitHub. Please make this link absolute because otherwise it will be broken.

Your content file under /examplesite/content/about.md has no front matter and as a result it fails to render. Also since this is a markdown file it should contain Markdown not HTML.

In the template under /layouts/_default/list.html you have the following in line 4:

    {{ range where .Pages.ByPublishDate.Reverse "Section" "post" }}

However under /content/ your section is called /posts/ and as a result no page is render in your list pages. Please rename your section to /post/.

Also you have not set a publishDate parameter in your content files but only date. So change line 4 to the following for your posts list to render:

    {{ range where .Pages.ByDate.Reverse "Section" "post" }}

Also the HTML in the above template /layouts/_default/list.html is not valid. You have an ul element that has div elements as children. See https://www.w3.org/TR/html50/grouping-content.html#the-ul-element Instead directly below the ul you should have a li element and within the li you can have flow content Reference: https://stackoverflow.com/questions/17904843/what-child-elements-are-valid-inside-of-a-li

Please do the above and let me know so that I can review your theme further.
If you have any questions do not hesitate to ask.
Thank you.

Thank you for your feedback.
The ones with the checked checkboxes are the fixed issues. The sentences in bold are my responses.

[X] In your theme's README you also need to add the link to the theme's LICENCE on GitHub. Please make this link absolute because otherwise it will be broken.

[X] Your content file under /examplesite/content/about.md has no front matter and as a result it fails to render. Also since this is a markdown file ideally it should contain Markdown not complex HTML.

[X] In the template under /layouts/_default/list.html you have the following in line 4:
{{ range where .Pages.ByPublishDate.Reverse "Section" "post" }}.

However under /content/ your section is called /posts/ and as a result no page is rendered in your list pages. Please rename your section to /post/.
Actually, don't use the exampleSite/ anymore. I had modified my theme to work with the Hugo Basic Example site. I should have removed the exampleSite/ directory earlier. Sorry about that!

[X] Also you have not set a publishDate parameter in your content files but only date. So change line 4 to the following for your posts' list to render:
{{ range where .Pages.ByDate.Reverse "Section" "post" }}

[X] Furthermore the HTML in the above template /layouts/_default/list.html is not valid. You have an ul element that has div elements as children. See https://www.w3.org/TR/html50/grouping-content.html#the-ul-element

[X] Directly below the ul you should have a li element and within it you can have any flow content you need. See here for an explanation.
Fixed. And thanks for the explanation!

[X] Also I am getting the following console errors:

ERROR 2018/08/01 21:21:37 Two or more menu items have the same name/identifier in Menu "main": "Creating a New Theme".
Rename or set an unique identifier.
ERROR 2018/08/01 21:21:37 Two or more menu items have the same name/identifier in Menu "main": "Migrating from Jekyll".
Rename or set an unique identifier.
ERROR 2018/08/01 21:21:37 Two or more menu items have the same name/identifier in Menu "main": "(Hu)go Template Primer".
Rename or set an unique identifier.
ERROR 2018/08/01 21:21:37 Two or more menu items have the same name/identifier in Menu "main": "Getting Started with Hugo".
Rename or set an unique identifier.

You should either remove the menu parameters from the front matter of your content files or give them unique names.
Apparently, the issue is not present with Hugo Basic Example.

So, could you please take a look at my theme again and see if it works?
It's over here: https://github.com/arjunkrishnababu96/basics
A live demo can be found at http://arjunkrishnababu96.gitlab.io/
Thanks again!

@arjunkrishnababu96
Thank you for making the changes!
I tested your theme with the Build Script and your theme works with the Hugo Basic Example and there are no more errors.  👍  🥇
Also I noticed that your theme is a fork of the Elephants theme and it has the following enhancements compared to the original:

Menu
Responsive CSS

@digitalcraftsman will decide whether the above enhancements are enough to include your fork of the Elephants theme as a separate theme, since he is the maintainer of this repo. So he will have a look into your theme once he has the time.

Hello @arjunkrishnababu96,
sorry for the delay. Please make sure that the screenshots in the images/ folder have the right dimensions. You can find the necessary steps in the README. Otherwise your theme looks fine and can be added as it is.

@arjunkrishnababu96
Any updates about the screenshots?

I believe the screenshots in the images/ are 1500 px wide and 1000 px high.
Isn't that the recommended dimensions as per this official page?

@arjunkrishnababu96 Your screenshots have the specified size but do not fit the entire dimensions. Please remove the transparency around the images and I will mark your theme as ready to be added to the website.
Thank you

@onedrawingperday
Oh! Totally my mistake! Sorry about that!
I've updated the images. Can you please take a look at it again? Let me know if I need to make further changes.
Thanks!

@arjunkrishnababu96 Thank you for fixing the screenshots.
@digitalcraftsman This theme can be added to the website.

Thanks! :grin:

Your theme should appear soon on Hugo's theme site. Next, I'll promote your theme on Hugo's official Twitter account.


Application Sites.Manage.All granted; Nevertheless, encountering Error getting lists: Code: accessDenied

I have configured and granted admin consent to my application for Sites.Manage.All permission which this page indicates should suffice to enable my app to call this API. Nevertheless, I am encountering: Error getting lists: Code: accessDenied.  Assuming I am not encountering a bug and it should work as indicated on this page, then perhaps there is some key bit of information which could be included on this page to help the uninitiated get past this particular issue.

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 986fb32a-c9aa-fbad-12b2-30eef3d9f7b1
Version Independent ID: 722992d5-18ee-5499-b2a6-440ac705d40a
Content: Create a SharePoint List - Microsoft Graph v1.0
Content Source: api-reference/v1.0/api/list-create.md
Product: sharepoint
Technology: microsoft-graph
GitHub Login: @JeremyKelley
Microsoft Alias: MSGraphDocsVteam

Hi,
Thanks for your feedback. We are currently working on improving docs and we'll do our best to keep your feedback into account while doing that. In the meantime, I'm going to close this item. I also suggest you to rely on the Microsoft Graph support area (https://developer.microsoft.com/en-us/graph/support) to find an answer to your question. Thanks for your understanding.


Enums create String.java source file which is confusing

I have a project where RAML defines some parameters that accept a string array whose values are confined in an enum. When code is generated for this API, it generates a class String.java which adds confusion during development.
Below is the link to reproducer.
https://github.com/techpavan/springmvc-raml-plugin-issues/tree/master/1

Hi @techpavan
so you have Bus object defined like this:
type: object
properties:
  metadata:
    type: array
    items:
        enum: [ac, multi-axle, reading-light, sleeper]

why don't you define separate enum object like this:
MyEnum:
  type: string
  enum: [ac, multi-axle, reading-light, sleeper]

and use it like this in Bus declaration:
type: object
properties:
  metadata:
    type: array
    items: MyEnum

That way you'll get MyEnum.java generated.

I can set some default name in case like yours.
But defining separate enum is better way forward IMHO.

DefaultEnum is default name that will be set in situations like this.

Haven't tested it, but I sense a problem. When multiple such enums exist, I guess all of them will co-exist in the same DefaultEnum class as it is happening in String. Is it so? Any workarounds?

The fix was only regarding enum name.
Implementing this kind of check would be cumbersome and we wouldn't get much.
Just define separate data types in raml and there will be no problems like this.

Sure, will account that. Its definitely cumbersome if the plugin tries to come up with its own names, but if RAML supports some metadata (like we have displayName for methods) and plugin can take a hint using that, it would be cleaner.


feat(clustering) automatically purge entries from the cluster_data_planes table so it won't grow uncontained

cluster_data_planes table so it won't grow uncontained
Also adds new config option conf.cluster_status_ttl, that allows the
TTL of cluster status entries to be overwritten by user. The default TTL
is 14 days.

This comment might be broader than this PR but here it goes nevertheless.
We need to start thinking differently when it comes to such features and how we expose them to our users.
kong.conf has become pretty heavy weight and has become a kitchen-sink for all types of configuration, to an extent where it is hurting our customer experience quite a bit.
Putting on my operator hat, tweaking kong.conf is usually considered a large and risky change. Now, we, the developers of Kong, do understand that tweaking something like this property should not result in any disruption and such a change can be rolled out gradually without much risk. The reality is different because there is a lot of tooling involved in such rollouts. And to that end, we should aim to minimize the number of knobs we put inside kong.conf to minimize the risk of changes that users can make. A knob should really go into kong.conf if the underlying system really needs it to start up or it needs it during startup because it can't be tweaked after startup.
For configuration options like this, we should aim to make them configurable without node restarts. Putting them inside the database might be an idea to think about. This allows to drive more configuration via Admin API, which would be a very welcoming change and help our community and Enterprise users. Think about how postgres defines settings in conf as well as inside the DB itself, where some settings can be tweaked without restarting the database.
cc @hishamhm

This comment might be broader than this PR but here it goes nevertheless.
We need to start thinking differently when it comes to such features and how we expose them to our users.
kong.conf has become pretty heavy weight and has become a kitchen-sink for all types of configuration, to an extent where it is hurting our customer experience quite a bit.
Putting on my operator hat, tweaking kong.conf is usually considered a large and risky change. Now, we, the developers of Kong, do understand that tweaking something like this property should not result in any disruption and such a change can be rolled out gradually without much risk. The reality is different because there is a lot of tooling involved in such rollouts. And to that end, we should aim to minimize the number of knobs we put inside kong.conf to minimize the risk of changes that users can make. A knob should really go into kong.conf if the underlying system really needs it to start up or it needs it during startup because it can't be tweaked after startup.
For configuration options like this, we should aim to make them configurable without node restarts. Putting them inside the database might be an idea to think about. This allows to drive more configuration via Admin API, which would be a very welcoming change and help our community and Enterprise users. Think about how postgres defines settings in conf as well as inside the DB itself, where some settings can be tweaked without restarting the database.
cc @hishamhm

Time to add config table. ;-)

@hbagdi I changed the property to cluster_data_plane_purge_delay because it is more consistent with the Admin API names. Also, it leaves opportunity to use a different duration for control plane purge delay in the future.

To continue @hbagdi line of thought:

For configuration options like this, we should aim to make them configurable without node restarts

Let's consider the "not having knobs at all for this".
The purpose of this PR is containing the grow of the cluster_data_planes table.
Let's consider why someone would need to make the TTL smaller. This would be someone who has too many rows in the table. What is an "high ceiling" for this? Someone which generates 10000 new CAs per day (and none of them refreshes, never)? Even for that case, that would generate 140000 rows in 14 days, and then stabilize at ~140000 rows. That seems acceptable. Perhaps I am underestimating how much people might "churn".
Now let's consider why someone would need to make the TTL bigger. The only reason I can think about is someone who needs to get preserve the last_seen_at property associated to each host - perhaps for forensics/tracing. I think if they really need this information they should be getting it daily from the admin api and exporting it into to a long-term storage solution anyway.
With this two scenarios in mind, I think that maybe we could leave the config knob out completely. It might be that just having any ttl at all is good enough for everyone. Maybe making the default smaller - 1 day or so?

a different duration for control plane purge delay in the future.

I disagree with this reason because we don't have a use cases where customers would need different parameters for different nodes. We could certainly convince ourselves otherwise but this falls into the bucket of adding complexity for little gain. I don't feel strongly enough so the new name is fine by me.

Why would anyone need to make the TTL bigger? The only reason I can think about is someone who needs to get preserve the last_seen_at property associated to each host - perhaps for forensics/tracing. I think if they really need this information they should be getting it daily from the admin api and exporting it into to a long-term storage solution anyway.

I can argue either ways but I see where @kikito is going with that line of though. Whatever we end up deciding, we need to ensure that the retention is long enough. Kong is used in k8s environments, which have a relatively high churn of nodes. But then it is also used in bare metal environments, where the churn is significantly less.

Since the reviews were addressed and tests are running green, let's merge this for now and discuss longer term plans in a separate PR (regarding the config interface and so on).
Having this option is essential in a high churn environment such as k8s as mentioned by @hbagdi, while having minimum impact to low-churn setups so it is a reasonable balance between complexity and user friendless. We may revisit the approach down the road, but for now time based purge should solve at least the problem of uncontained table growth, which will cause undesirable database slowness in a prod environment.
@kikito @hbagdi if it's alright with you, let's ✅ this PR so it won't hold off the upcoming 2.2 release :)


FIX force footer to the bottom of the browser window fixes #36

FIX force footer to the bottom of the browser window unless the content is bigger than the browser window fixes #36

@haxzie you were of course totally right.


Bridge 1199

Add write permission request for height/bodymass so profile can save changes in HK correctly

looks good


UnboundLocalError: cannot access local variable 'state'

Describe the bug
When running python monitor.py
Versions

hyundai_kia_connect_monitor version: R3.250
Python version: 3.12.5
Operating System: Windows 10
hyndia_kia_connect_api version: 3.22.10

Description
When running python monitor.py, I get the following error message:
20240904 20:36:50: Exception: cannot access local variable 'state' where it is not associated with a value
Traceback (most recent call last):
File "C:\Hyundai\monitor.py", line 429, in handle_vehicles
manager.update_all_vehicles_with_cached_state()  # needed >= 2.0.0
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Hyundai\hyundai_kia_connect_api\VehicleManager.py", line 85, in update_all_vehicles_with_cached_state
self.update_vehicle_with_cached_state(vehicle_id)
File "C:\Hyundai\hyundai_kia_connect_api\VehicleManager.py", line 90, in update_vehicle_with_cached_state
self.api.update_vehicle_with_cached_state(self.token, vehicle)
File "C:\Hyundai\hyundai_kia_connect_api\KiaUvoApiAU.py", line 259, in update_vehicle_with_cached_state
self._update_vehicle_drive_info(vehicle, state)
^^^^^
UnboundLocalError: cannot access local variable 'state' where it is not associated with a value
20240904 20:36:50: Sleeping a minute
What I Did
Ran Python monitor.py with monitor.cfg configured as follows (username/password redacted)
[monitor]
region = 5
brand = 2
username =
password =
pin =
use_geocode = True
use_geocode_email = True
language = en
odometer_metric = km
include_regenerate_in_consumption = False

NOTE: according to the api docs, region = 5 is correct for Australia

@RevolveIT Can you also run "python debug.py" and mail me the standard output and error output to my gmail account zuinige.rijder? Maybe that gives me a clue.
It looks like there is something wrong in hyundai_kia_connect_api, maybe the debug.py output gives me a clue.
Which car do you have?

@RevolveIT Did you send an email? Did the problem disappear? Otherwise I am going to close this issue.

No response after issue was submitted, so I close the issue.


Performance: Partial degree matrix updates

Should improve coloring performance in when more than several hundred colors.

Closed by #18


Why are apply! and apply_m! separate?

In the combinators, a distinction is being made between X! and X_m! combinators, that work on functions and methods respectively:

apply! vs apply_m!
call! vs call_m!

Is there a technical reason for separating them instead of allowing one macro to handle both cases? If not, I think it's worth merging corresponding variants into one macro in order to make it less confusing for users.

the *_m macros work when you want to make a parser as a method of a struct (to access and modify state while parsing). I don't remember what was the issue, but apparently folding them in the same macro made some errors in token parsing. Anyway, I'd like to keep them separated, but they probably could be renamed to something less confusing with the other macros.


CLI version 3.2: Cannot read property 'defaultAuthentication' of undefined

I'm using a pre-build script on a CI server to push resources to the cloud. Since updating the cli to version 3.2, it started throwing this error:
GraphQL schema compiled successfully.
Edit your schema at /Users/vsts/agent/2.155.1/work/1/s/amplify/backend/api/projectsport/schema.graphql or place .graphql files in a directory at /Users/vsts/agent/2.155.1/work/1/s/amplify/backend/api/projectsport/schema
✖ An error occurred when pushing the resources to the cloud
✖ There was an error initializing your environment.
init failed
TypeError: Cannot read property 'defaultAuthentication' of undefined
    at getApiKeyConfigured (/Users/vsts/.nvm/versions/node/v10.16.3/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/lib/upload-appsync-files.js:68:24)
    at writeUpdatedParametersJson (/Users/vsts/.nvm/versions/node/v10.16.3/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/lib/upload-appsync-files.js:85:30)
    at uploadAppSyncFiles (/Users/vsts/.nvm/versions/node/v10.16.3/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/lib/upload-appsync-files.js:166:5)
    at process._tickCallback (internal/process/next_tick.js:68:7)

The contents of the pre-build script is as follows:
#!/usr/bin/env bash

npm install -g @aws-amplify/cli

AWSCONFIG="{\
\"configLevel\":\"general\"\
}"

AMPLIFY="{\
\"envName\":\"${AMPLIFY_ENV}\"\
}"

PROVIDERS="{\
\"awscloudformation\":${AWSCONFIG}\
}"

CODEGEN="{\
\"generateCode\":false,\
\"generateDocs\":false\
}"

amplify init --amplify ${AMPLIFY} --providers ${PROVIDERS} --codegen ${CODEGEN} --yes
amplify push --codegen $CODEGEN --yes

Reverting the CLI to version 2.0.0 makes everything work again.
AWS authentication is provided through regular ENV variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_REGION).
The CI server is Microsoft AppCenter.

@andreialecu thanks for reporting this issue, it is already fixed by #2261


Querying for missing measurements should return a 200

Currently, this returns a 500 Server Error. It should return a 200 OK with an error in the result set stating that the measurement name couldn't be found.

This should also be true if the measurement doesn't have the field that the user is requesting. Basically, 500 responses should only be for actual server errors. And the only 400 response should be if the query didn't actually parse, or for unauthorized.

@pauldix, any idea if this new functionality affects issue #1039  ?


Add to "Frontpage"or module from admin

Using phpVMS for approx 11 years... Thanks to Nabeel
Is your feature request related to a problem? Please describe.
Not related to a problem as such , but for ease of use on admin side
Describe the solution you'd like
Publish to "frontpage" or "navbar" etc options via admin
perhaps with a feature rich editor.
When pages and links are created on admin , to be deployed to the site module as needed
Describe alternatives you've considered
Reading up and trying to add to the blades as needed.
Additional context
Like we had via the earlier phpVMS admin, perhaps enhanced.

When you add pages from backend (admin) their links are automatically published at frontend (navbar) , also modules "can" put their links to your navbar if they are designed to use that feature (or have a frontend blade/view) ...
For having rich text editor and being able to insert nicely formatted news/pages is what I want too, hopefully it will arrive some day but for links to navbar/sidebar I think we already have it (if I am not mistaken your request).
Best wishes

Ah yes understood , I did add to navbar via admin and the link was added.
We have a publish to "front page" on admin ? where a Document gets published to the mainpage ( say above the new pilots
in your skin)
Regards

Hey Nabeel, Oh yes understood , super ! Thanks


Content for about section

We need to write some content for about section for website which will consist all details about hackathon and venue

@chocos10 @g33kyshivam please take a look on it

@championshuttler provide the necessary details for the content to be published.

@Varun-Malhan you can check more about hackathon here. http://ultrahack.org/ultrahackindia

Done with #27


Update crun to 1.15

What type of PR is this?
/kind cleanup
What this PR does / why we need it:
Update crun to fix the failing CI.
Which issue(s) this PR fixes:

None
Does this PR have test?
None

Special notes for your reviewer:
None
Does this PR introduce a user-facing change?

None

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 41.14%. Comparing base (11d77f4) to head (1c0797a).
Report is 174 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2242      +/-   ##
==========================================
- Coverage   45.50%   41.14%   -4.37%
==========================================
  Files          79      107      +28
  Lines        7782    15529    +7747
==========================================
+ Hits         3541     6389    +2848
- Misses       4099     8670    +4571
- Partials      142      470     +328

@kubernetes-sigs/security-profiles-operator-maintainers PTAL