text:
Panic on overflow in subtraction

Found using cargo-fuzz.
extern crate pcapng;

fn main() {
    let data = b"h;\x00\x00\x00\x00\x00\x00\x00\x00\x07/\x8a";
    let _ = pcapng::block::parse_block(data);
}

thread '<unnamed>' panicked at 'attempt to subtract with overflow', /home/neo/dev/work/pcapng-rs/src/block.rs:84
stack backtrace:
   0:     0x55d7f7df9a83 - std::sys::imp::backtrace::tracing::imp::unwind_backtrace::hf9ed9ccfd9f14c2b
                               at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1:     0x55d7f7df63d4 - std::sys_common::backtrace::_print::hd8a1b72dcf3955ef
                               at /checkout/src/libstd/sys_common/backtrace.rs:71
   2:     0x55d7f7dfaa57 - std::panicking::default_hook::{{closure}}::h5ff605bba7612658
                               at /checkout/src/libstd/sys_common/backtrace.rs:60
                               at /checkout/src/libstd/panicking.rs:355
   3:     0x55d7f7dfa5db - std::panicking::default_hook::h9bc4f6dfee57d6bd
                               at /checkout/src/libstd/panicking.rs:371
   4:     0x55d7f7dfaebb - std::panicking::rust_panic_with_hook::hdc01585dc2bf7122
                               at /checkout/src/libstd/panicking.rs:549
   5:     0x55d7f7dfad94 - std::panicking::begin_panic::hf84f4975d9f9b642
                               at /checkout/src/libstd/panicking.rs:511
   6:     0x55d7f7dfacc9 - std::panicking::begin_panic_fmt::hcc3f360b2ba80419
                               at /checkout/src/libstd/panicking.rs:495
   7:     0x55d7f7dfac57 - rust_begin_unwind
                               at /checkout/src/libstd/panicking.rs:471
   8:     0x55d7f7e0225d - core::panicking::panic_fmt::h795d9a9608ddc2bb
                               at /checkout/src/libcore/panicking.rs:69
   9:     0x55d7f7e02194 - core::panicking::panic::hcab3e0dfa81beee9
                               at /checkout/src/libcore/panicking.rs:49
  10:     0x55d7f7def551 - pcapng::block::parse_block::h6f65166e5b2cf30e
                               at /home/neo/dev/work/pcapng-rs/src/block.rs:81
  11:     0x55d7f7cb3f87 - rust_fuzzer_test_input
                               at /home/neo/dev/work/pcapng-rs/fuzz/fuzzers/fuzzer_script_1.rs:7
  12:     0x55d7f7cb7b8a - libfuzzer_sys::test_input_wrap::{{closure}}::h01afe675cf6a0c88
                               at /home/neo/.cargo/git/checkouts/libfuzzer-sys-e07fde05820d7bc6/36a3928/src/lib.rs:13
  13:     0x55d7f7cb5c4f - std::panicking::try::do_call::hfeac5113da58e53b
                               at /checkout/src/libstd/panicking.rs:454
  14:     0x55d7f7e01e0b - <unknown>
                               at /checkout/src/libpanic_abort/lib.rs:40
==7858== ERROR: libFuzzer: deadly signal
    #0 0x55d7f7dbc839 in __sanitizer_print_stack_trace /checkout/src/compiler-rt/lib/asan/asan_stack.cc:38
    #1 0x55d7f7cc8f81 in fuzzer::Fuzzer::CrashCallback() /home/neo/.cargo/git/checkouts/libfuzzer-sys-e07fde05820d7bc6/36a3928/llvm/lib/Fuzzer/FuzzerLoop.cpp:280
    #2 0x55d7f7cc8ecb in fuzzer::Fuzzer::StaticCrashSignalCallback() /home/neo/.cargo/git/checkouts/libfuzzer-sys-e07fde05820d7bc6/36a3928/llvm/lib/Fuzzer/FuzzerLoop.cpp:264
    #3 0x55d7f7ce66bd in fuzzer::CrashHandler(int, siginfo_t*, void*) /home/neo/.cargo/git/checkouts/libfuzzer-sys-e07fde05820d7bc6/36a3928/llvm/lib/Fuzzer/FuzzerUtilPosix.cpp:37
    #4 0x7f816b834fdf  (/usr/lib/libpthread.so.0+0x11fdf)
    #5 0x7f816b296a0f in __GI_raise (/usr/lib/libc.so.6+0x33a0f)
    #6 0x7f816b298139 in __GI_abort (/usr/lib/libc.so.6+0x35139)
    #7 0x55d7f7e01e18 in panic_abort::__rust_start_panic::abort /checkout/src/libpanic_abort/lib.rs:61
    #8 0x55d7f7e01e18 in __rust_start_panic /checkout/src/libpanic_abort/lib.rs:56

NOTE: libFuzzer has rudimentary signal handlers.
      Combine libFuzzer with AddressSanitizer or similar for better crash reports.
SUMMARY: libFuzzer: deadly signal
MS: 3 InsertByte-ChangeBit-CMP- DE: "\x00\x00\x00\x00\x00\x00\x00\x00"-; base unit: 500f737e56acb1c967cda18d890bfbe4bab028f6
0x68,0x3b,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x7,0x2f,0x8a,
h;\x00\x00\x00\x00\x00\x00\x00\x00\x07/\x8a
artifact_prefix='artifacts/'; Test unit written to artifacts/crash-45c6cb72b7631115738b6c781135bc930bf3a623
Base64: aDsAAAAAAAAAAAcvig==

Sorry for not seeing this until now! I'll have a crack at fixing this today.

@richo Awesome!

authors: neosilky richo

repo: richo/pcapng-rs


text:
Open SSL Error

This gem doesn't require a SSL certificate does it? This error means nothing to me, and a Google search only suggested using a workaround certificate for a different looking issue (which I tried for kicks and giggles, then removed).
Error:
D:/Program Files/Ruby22-x64/lib/ruby/2.2.0/net/http.rb:923:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)
        from D:/Program Files/Ruby22-x64/lib/ruby/2.2.0/net/http.rb:923:in `block in connect'
        from D:/Program Files/Ruby22-x64/lib/ruby/2.2.0/timeout.rb:73:in `timeout'
        from D:/Program Files/Ruby22-x64/lib/ruby/2.2.0/net/http.rb:923:in `connect'
        from D:/Program Files/Ruby22-x64/lib/ruby/2.2.0/net/http.rb:863:in `do_start'
        from D:/Program Files/Ruby22-x64/lib/ruby/2.2.0/net/http.rb:852:in `start'
        from D:/Program Files/Ruby22-x64/lib/ruby/2.2.0/net/http.rb:1375:in `request'
        from D:/Program Files/Ruby22-x64/lib/ruby/gems/2.2.0/gems/httparty-0.13.7/lib/httparty/request.rb:117:in `perform'
        from D:/Program Files/Ruby22-x64/lib/ruby/gems/2.2.0/gems/httparty-0.13.7/lib/httparty.rb:545:in `perform_request'
        from D:/Program Files/Ruby22-x64/lib/ruby/gems/2.2.0/gems/httparty-0.13.7/lib/httparty.rb:492:in `post'
        from D:/Program Files/Ruby22-x64/lib/ruby/gems/2.2.0/gems/httparty-0.13.7/lib/httparty.rb:587:in `post'
        from D:/Program Files/Ruby22-x64/lib/ruby/gems/2.2.0/gems/linode-0.9.0/lib/linode.rb:96:in `post'
        from D:/Program Files/Ruby22-x64/lib/ruby/gems/2.2.0/gems/linode-0.9.0/lib/linode.rb:81:in `send_request'
        from D:/Program Files/Ruby22-x64/lib/ruby/gems/2.2.0/gems/linode-0.9.0/lib/linode.rb:15:in `block (2 levels) in has_method'
        from linode.rb:6:in `<main>'

Code:
require 'rubygems'
require 'linode'

api_key = "My API Key that I am not gonna put in here"
l = Linode.new(:api_key => api_key)
puts l.test.echo(:foo => 'bar', :baz => 'xyzzy')

Windows 10, Ruby 2.2.3p173 (2015-08-18 revision 51636) [x64-mingw32], Gem 2.5.1, Linode 0.9.0

Linode disabled SSLv3 awhile ago.
Can you try changing: https://github.com/rick/linode/blob/master/lib/linode.rb#L96 to
HTTParty.post(api_url, :body => data, :ssl_version => :TLSv1).parsed_response

This feels ultimately like something wrong upstream or in the Windows configuration or behavior.

I replaced that line and received the same exact error including the line numbers.

Can you try simply opening this link in IE (yes, IE) and see what happens? If you get an SSL error, then your system is misconfigured. If you get {"ERRORARRAY":[{"ERRORCODE":4,"ERRORMESSAGE":"Authentication failed"}],"DATA":{},"ACTION":""}, then we have more to look into.

@SirCmpwn IE opens (in a text editor) or saves the JSON file. If I change my default program for JSON files to IE and then hit open, it tries to open it in the download manager.
Edge and Chrome both show the connection is encrypted and trusted.

Interesting. That makes me less sure that it's an issue with your system configuration. I don't think I'll be able to provide further assistance until I can get my hands on a Windows machine to reproduce with.

Getting the same on mac.
	from /Users/erik/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:923:in `block in connect'
	from /Users/erik/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/timeout.rb:74:in `timeout'
	from /Users/erik/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:923:in `connect'
	from /Users/erik/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:863:in `do_start'
	from /Users/erik/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:852:in `start'
	from /Users/erik/.rvm/rubies/ruby-2.2.1/lib/ruby/2.2.0/net/http.rb:1375:in `request'
	from /Users/erik/.rvm/gems/ruby-2.2.1/gems/httparty-0.13.5/lib/httparty/request.rb:101:in `perform'
	from /Users/erik/.rvm/gems/ruby-2.2.1/gems/httparty-0.13.5/lib/httparty.rb:522:in `perform_request'
	from /Users/erik/.rvm/gems/ruby-2.2.1/gems/httparty-0.13.5/lib/httparty.rb:476:in `post'
	from /Users/erik/.rvm/gems/ruby-2.2.1/gems/httparty-0.13.5/lib/httparty.rb:564:in `post'
	from /Users/erik/.rvm/gems/ruby-2.2.1/gems/linode-0.9.0/lib/linode.rb:96:in `post'
	from /Users/erik/.rvm/gems/ruby-2.2.1/gems/linode-0.9.0/lib/linode.rb:81:in `send_request'
	from /Users/erik/.rvm/gems/ruby-2.2.1/gems/linode-0.9.0/lib/linode.rb:15:in `block (2 levels) in has_method'
	from bin/start-spark-cluster.rb:3:in `<main>'```

Just ran `gem install linode` today so it should be latest version.

Seems to be a common error with RVM installations. fix is client side and not an gem error

@danielhickman does @erike's fix work for you?

I don't have RVM. It seems it's not for Windows. Is RVM a requirement?

@danielhickman the linked stackoverflow thread has a lot of different instances of the same error. This was one I found for windows. Try following these steps: http://stackoverflow.com/a/35429863/224732

I tried that one before and a tried it again too.
The only ones that worked were:
Adding this to remove SSL (very bad idea)
require 'openssl'
OpenSSL::SSL::VERIFY_PEER = OpenSSL::SSL::VERIFY_NONE

Installing https://github.com/stevegraham/certified and adding (This method feels kinda hacky)
require 'certified'

source: gharchive/issue

authors: SirCmpwn danielhickman displague erkie

repo: rick/linode

license: mit

license_type: permissive

license_source: bigquery


text:
Variables

I feel as though a simple way to reference variables when inputting coordinates to make inputting repeating values or related values easier and faster, and I imagine easy to implement.

Do you mean to evaluate equations with named constants (which cannot be changed once evaluated) when entering the (x,y) coordinates of a control point? Or do you mean to fully parametrize the scene with a set of variable, so that you can adjust the variables and see the corresponding change?
The former is relatively easy to implement, while the latter is very difficult.

My intention was the latter, however now that I've further reflected on my idea it was a bit lazy of me to request such a feature, especially with the fact that I do not know much about the subject of geometric optics, meaning my idea could be near useless whether it be from a lack of need or from the need already being satisfied by something else, I apologize for opening an issue on this and in the future I will put in more consideration before opening issues.

This is actually a good feature request, and you are not the first one to request this. Actually, at least 15 items in the Gallery would be benefitted by this feature, and I have considered it seriously before (compare https://www.desmos.com/, where almost everything is parametrizable).
The only problem is that the implementation is highly nontrivial, and there are several very different possible approaches, such that once decided, it will be impractical to change to another. I need to know that what the user needs in order to decide which approach is the best, so it is still a good idea if you can provide your original thought. Also, I will keep this issue open for discussion, since there have been other people suggesting this privately before.
Note that, however, this feature is not expected to be implemented in the near future due to its difficulty.

Thanks for reopening it. It can also come in handy to me.
I'd like to check how light propagates through a long light guide with dimples on one side. Since the dimples are all equal in size (length and depth) a variable can help to change one value, e.g. depth, to modify the shape.
At the moment I create a small section and then duplicate it many times, but if I need to change depth (so the y value) I need to replicate the procedure, while with a variable z=.... I could just change that.

Depending on the shape of the dimples, it looks like this automation you are describing may be possible with the handle (the "Group, rotate, or scale object" section in the popup of the "Help" button), such as clicking all the tip points of the dimples, and then move it with the handle.

Also, the main difficulty to implement this is to create the proper user interface. If you don't need a full user interface (such as you need to first edit the scene by editing the JSON code directly, but then the variables can still be adjusted in UI with sliders, and non-parametrized object can be created and edited in the UI as usual), then it is actually not that difficult, and may be done in the near future.
But I do not know how many people would be benefitted by this.

Recently, similar feature requests has been suggested two more times from private emails. One of the suggestion is to use a desmos-like equation sidebar approach, where the user can add objects by typing an equation, such as
C_1 = glass(circle[p, r],gradient[f(x), o])
to create a glass gradient index circle with boundary origin p, radius r, and absolute origin o.
This has a relatively simple implementation without the need to modify a lot of core code (as opposed to previously-proposed approach). We just need to treat the list of equations as a "scene-builder" outside of the existing scene editor UI, and every time the user modifies some variables or equations are modified, just "recompile" those variable/equations into the JSON object of the scene in the original format readable by the core simulator. Also, we do not need to implement all the possible features (as equations) at once, as one can still add objects in the old way in the editor (without appearing in the sidebar).

authors: Medic-Gamingg gbonfi ricktu288


text:
FreshBasePageModel.ToolbarItems Appears to do Nothing

I'm trying to add ToolbarItems to a FreshBaseContentPage using FreshBasePageModel.ToolbarItems. Nothing is happening :( After reviewing the source of this class, it looks like the ToolbarItems should be added to the page, but they're not...
// This shouldn't be necessary, but I want to make sure :)
Device.BeginInvokeOnMainThread(() =>
{
    // I don't think this should be necessary, but a null reference exception is thrown if I don't do this
    if (ToolbarItems == null)
        ToolbarItems = new ObservableCollection<ToolbarItem>();

    var toolbarItem = new ToolbarItem("Delete", null, () => { DeleteCommand.Execute(null); }, ToolbarItemOrder.Primary, 0)
    {
        IsDestructive = true
    };

    ToolbarItems.Add(toolbarItem);
});

Again, the FreshMvvm framework is wired up (FreshBasePageModel & FreshBaseContentPage) and all conventions are followed.
If you're asking why I need to do this, I have a page that Adds OR Updates entities, thus I only want to add the ToolbarItem if the page is updating said entity.
I've accomplished this before (in a non-FreshMvvm ContentPage's code-behind) with the following:
var deleteButton = new ToolbarItem()
{
    Text = "Delete",
    IsDestructive = true,
    Order = ToolbarItemOrder.Secondary
};

deleteButton.Clicked += Delete_Clicked;

ToolbarItems.Add(deleteButton);

@rid00z can you tell me if I am misunderstanding the function of the FreshMvvm.FreshBasePageModel.ToolbarItems property? If this is the intended use of this property, am I missing something?
Thank you for everything you do for us,
-Derek

You should get toolbaritem list from your current page by
var ToolbarItems = this.GetToolbarItems().OfType().ToList();
and then add the new toolbaritem to the above list

I am having the same issue as @dfoulk
I am trying to add to the ToolbarItems in my VM and it appears to do nothing. No toolbar items are displayed in my android app.
I am trying to move them out of the XAML, as i want some dynamic toolbar options.
@masonyc what you are suggesting, doesn't appear to be valid code. At least it doesn't show up in the intellisense.
Following this with interest.

@gazwinter  if you are doing it in your page model, get the toolbar item list by this.CurrentPage.ToolbarItems. Also to let toolbar appear, current page must be in a navigation.

@masonyc that works a charm. Thanks for your help.

authors: dfoulk gazwinter masonyc


text:
PRINT-INSTRUCTION-GENERIC fails to print gate applications with complex-valued parameters

Minimal reproduction case:
echo "RX(i) 0" | ./quilc
! ! ! Error: There is no applicable method for the generic function
               #<STANDARD-GENERIC-FUNCTION CL-QUIL::PRINT-INSTRUCTION-GENERIC (28)>
             when called with arguments
               (#C(0.0d0 1.0d0) #<SB-IMPL::STRING-OUTPUT-STREAM {100501CED3}>).
See also:
  The ANSI Standard, Section 7.6.6

The following files from the parser tests also tickle the bug:
tests/good-test-files/good-complex-complex-number.quil
tests/good-test-files/good-complex-params.quil
tests/good-test-files/good-simple-params.quil

For example:
$ ./quilc < tests/good-test-files/good-simple-params.quil
! ! ! Error: There is no applicable method for the generic function
               #<STANDARD-GENERIC-FUNCTION CL-QUIL::PRINT-INSTRUCTION-GENERIC (28)>
             when called with arguments
               (#C(-0.5d0 1.0d0) #<SB-IMPL::STRING-OUTPUT-STREAM {10054CC323}>).
See also:
  The ANSI Standard, Section 7.6.6

Note that these Quil programs can be parsed and printed just fine, as long as they don't pass through compiler-hook.
CL-USER> (quil::print-parsed-program (quil:parse-quil "RX(i) 0"))
RX(1.0i) 0
NIL
CL-USER> (quil::print-parsed-program
	  (quil:compiler-hook (quil:parse-quil "RX(i) 0")
			      (quil::build-nq-linear-chip 2)))
; Evaluation aborted on #<SB-PCL::NO-APPLICABLE-METHOD-ERROR {100212D953}>.

There is no applicable method for the generic function
  #<STANDARD-GENERIC-FUNCTION CL-QUIL::PRINT-INSTRUCTION-GENERIC (28)>
when called with arguments
  (#C(0.0d0 1.0d0)
   #<SB-IMPL::STRING-OUTPUT-STREAM {100212D163}>).
   [Condition of type SB-PCL::NO-APPLICABLE-METHOD-ERROR]
See also:
  Common Lisp Hyperspec, 7.6.6 [:section]

Restarts:
 0: [RETRY] Retry calling the generic function.
 1: [TRY-NEXT-COMPILER] Ignore this error and try the next compiler in the list.
 2: [RETRY] Retry SLIME REPL evaluation request.
 3: [*ABORT] Return to SLIME's top level.
 4: [ABORT] abort thread (#<THREAD "repl-thread" RUNNING {1001F31BC3}>)

Backtrace:
  0: ((:METHOD NO-APPLICABLE-METHOD (T)) #<STANDARD-GENERIC-FUNCTION CL-QUIL::PRINT-INSTRUCTION-GENERIC (28)> #C(0.0d0 1.0d0) #<SB-IMPL::STRING-OUTPUT-STREAM {100212D163}>) [fast-method]
  1: (SB-PCL::CALL-NO-APPLICABLE-METHOD #<STANDARD-GENERIC-FUNCTION CL-QUIL::PRINT-INSTRUCTION-GENERIC (28)> (#C(0.0d0 1.0d0) #<SB-IMPL::STRING-OUTPUT-STREAM {100212D163}>))
  2: ((:METHOD CL-QUIL::PRINT-INSTRUCTION-GENERIC (T NULL)) #C(0.0d0 1.0d0) #<unused argument>) [fast-method]
  3: ((:METHOD CL-QUIL::PRINT-INSTRUCTION-GENERIC (CL-QUIL:APPLICATION STREAM)) #<error printing GATE-APPLICATION {1002129CC3}> #<BROADCAST-STREAM {100002CD13}>) [fast-method]
  4: ((LABELS CL-QUIL::TRY-COMPILER :IN CL-QUIL::APPLY-TRANSLATION-COMPILERS) #<FUNCTION CL-QUIL::RX-TO-ZXZXZ>)
  5: (SB-KERNEL:%MAP-FOR-EFFECT-ARITY-1 #<CLOSURE (LABELS CL-QUIL::TRY-COMPILER :IN CL-QUIL::APPLY-TRANSLATION-COMPILERS) {100206A1FB}> #(#<FUNCTION CL-QUIL::PHASE-TO-RZ> #<FUNCTION CL-QUIL::RY-TO-XZX> #<F..
  6: (CL-QUIL::APPLY-TRANSLATION-COMPILERS #<RX(1.0i) 0> #<CL-QUIL::CHIP-SPECIFICATION of 2:1 objects> #<CL-QUIL::HARDWARE-OBJECT of order 0 {1001BF0E23}>)
  7: (CL-QUIL::FLUSH-1Q-INSTRUCTIONS-FORWARD #<CL-QUIL::CHIP-SCHEDULE {1002054863}> 0 (#<RX(1.0i) 0>) NIL NIL #<CL-QUIL:PARSED-PROGRAM {1001B4D323}>)
  8: ((LABELS CL-QUIL::FLUSH-1Q-INSTRUCTIONS-AFTER-WIRING :IN CL-QUIL::DO-GREEDY-TEMPORAL-ADDRESSING) 0)
  9: (CL-QUIL::DO-GREEDY-TEMPORAL-ADDRESSING (#<RX(1.0i) 0>) #<CL-QUIL::CHIP-SPECIFICATION of 2:1 objects> :ENVIRONS #<CL-QUIL:PARSED-PROGRAM {1001B4D323}> :INITIAL-REWIRING #S(CL-QUIL::REWIRING :L2P #(0 1..
 10: ((LABELS CL-QUIL::PROCESS-BLOCK :IN CL-QUIL:COMPILER-HOOK) #<CL-QUIL::BASIC-BLOCK ENTRY-BLK-658 len:1 in:0 out:term {1001CC9153}> NIL)
 11: (CL-QUIL:COMPILER-HOOK #<CL-QUIL:PARSED-PROGRAM {1001B4D323}> #<CL-QUIL::CHIP-SPECIFICATION of 2:1 objects> :PROTOQUIL NIL :REWIRING-TYPE NIL)
 12: (SB-INT:SIMPLE-EVAL-IN-LEXENV (CL-QUIL:COMPILER-HOOK (CL-QUIL:PARSE-QUIL "RX(i) 0") (CL-QUIL::BUILD-NQ-LINEAR-CHIP 2)) #<NULL-LEXENV>)
 13: (SB-INT:SIMPLE-EVAL-IN-LEXENV (CL-QUIL::PRINT-PARSED-PROGRAM (CL-QUIL:COMPILER-HOOK (CL-QUIL:PARSE-QUIL "RX(i) 0") (CL-QUIL::BUILD-NQ-LINEAR-CHIP 2))) #<NULL-LEXENV>)
 14: (EVAL (CL-QUIL::PRINT-PARSED-PROGRAM (CL-QUIL:COMPILER-HOOK (CL-QUIL:PARSE-QUIL "RX(i) 0") (CL-QUIL::BUILD-NQ-LINEAR-CHIP 2))))

Woof. Seems like a similar issue #257.

Likewise #272, which I am currently working on. All related to print-instruction bugs, at least.
I'm planning to tackle this one after #272.

Quil tried to get a little more rigid about its typing last summer (cf. https://github.com/rigetti/quil/blob/master/spec/typed-memory.md ), and I think parameter values are forbidden from being complex numbers. However, the Quilt RFC ( https://github.com/rigetti/quil/tree/master/rfcs/analog ) wants complex parameter values in some of its new constructs.
This isn't to say you shouldn't work on this issue (especially since it might become more relevant when Quilt gets under way), but rather to explain why no user has reported the bug in the wild.

Good to know, thank you.
I will take a look in any case. If the fix to support complex params seems simple, maybe we go ahead and do it in anticipation of Quilt support (or maybe not yet).
If it looks like a bigger can of worms requiring medium-to-large changes, perhaps it makes sense to shelve it for now and maybe just update quilc to provide a better error message.
We'll see!

So it turns out that this instruction is actually failing to print in the guts of APPLY-TRANSLATION-COMPILERS when attempting to apply the RX-to-ZXZXZ translator. The translator fails and APPLY-TRANSLATION-COMPILERS attempts to print the instruction as part of the error message.
(restart-case
    (handler-case
        (let ((result (funcall compilation-method instruction)))
          (let ((*print-pretty* nil))
            (format *compiler-noise-stream* "APPLY-TRANSLATION-COMPILERS: Applying compiler ~a to ~a.~%"
                    compilation-method
                    (print-instruction instruction nil)))
          (dolist (instr result)
            (write-string "    " *compiler-noise-stream*)
            (print-instruction instr *compiler-noise-stream*)
            (terpri *compiler-noise-stream*))
          (return-from apply-translation-compilers result))
      (compiler-does-not-apply () nil))
  (try-next-compiler ()
    :report "Ignore this error and try the next compiler in the list."))

I was not paying close enough attention to the backtrace in my above example and incorrectly assumed that the program had made it through compiler-hook and was just falling over at the end in PRINT-PARSED-PROGRAM when emitting the final compiled program.
Given that this will require compiler changes (as opposed to a PRINT-INSTRUCTION bug fix), maybe the sensible thing to do is just to improve the error message for now, and hold off on adding complex-param support until it's actually needed as part of the Quilt RFC mentioned above? @ecpeterson @stylewarning @notmgsk What do folks think?
Note that this error is tangentially related to a code-review comment from earlier today, namely passing a complex param to build-gate winds up in the otherwise clause of capture-param, and so the bare complex value gets propagated.
(defun build-gate (operator params &rest qubits)
  "Shorthand function for constructing a GATE-APPLICATION object from QUIL-like input. OPERATOR must be a standard gate name."
  (check-type params list)
  (check-type qubits list)
  (assert (not (null qubits)))
  (flet ((capture-param (param)
           (typecase param
             (double-float
              (constant param))
             (memory-ref
              (make-delayed-expression nil nil param))
             (otherwise
              param)))
  ...

If I modify capture-param to box any number (as opposed to only double-float) in a constant, then compilation fails in a more obvious way in the compressor:
The value
  #C(-0.0d0 -0.5d0)
is not of type
  REAL
   [Condition of type TYPE-ERROR]
...
0: (CL-QUIL::COMPRESS-INSTRUCTIONS-IN-CONTEXT (#<RZ(pi/2) 0> #<RX(pi/2) 0> #<RZ(1.0i) 0> #<RX(-pi/2) 0> #<RZ(-pi/2) 0>) #<CL-QUIL::CHIP-SPECIFICATION of 1:0 objects> #S(CL-QUIL::COMPRESSOR-CONTEXT :AQVM ..
  1: (CL-QUIL::COMPRESS-INSTRUCTIONS-WITH-POSSIBLY-UNKNOWN-PARAMS (#<RZ(pi/2) 0> #<RX(pi/2) 0> #<RZ(1.0i) 0> #<RX(-pi/2) 0> #<RZ(-pi/2) 0>) #<CL-QUIL::CHIP-SPECIFICATION of 1:0 objects> #S(CL-QUIL::COMPRES..
  2: ((LABELS CL-QUIL::TRANSITION-GOVERNOR-STATE :IN CL-QUIL::COMPRESS-INSTRUCTIONS) 0 0 :FLUSHING NIL)
  3: (CL-QUIL::COMPRESS-INSTRUCTIONS (#<RZ(pi/2) 0> #<RX(pi/2) 0> #<RZ(1.0i) 0> #<RX(-pi/2) 0> #<RZ(-pi/2) 0>) #<CL-QUIL::CHIP-SPECIFICATION of 1:0 objects> :PROTOQUIL T)
  4: ((LABELS CL-QUIL::PROCESS-BLOCK :IN CL-QUIL:COMPILER-HOOK) #<CL-QUIL::BASIC-BLOCK ENTRY-BLK-727 len:1 in:0 out:term {100DD7EDD3}> NIL)
  5: (CL-QUIL:COMPILER-HOOK #<CL-QUIL:PARSED-PROGRAM {100DD7C143}> #<CL-QUIL::CHIP-SPECIFICATION of 1:0 objects> :PROTOQUIL NIL :REWIRING-TYPE NIL)

:) This is a cascade of sloppy typechecking. The parser didn't stop you from passing i as an argument to RX (even though the resulting matrix isn't even unitary), the compiler unboxed it and fed it to build-gate as a parameter, build-gate saw that it wasn't real and put it back into a new instruction as an unboxed number, the native instruction predicate saw that everything of the form "RZ (_) 0" is admissible and so didn't bother unpacking the parameters, the resulting instruction sequence got fed to the compressor, the compressor did a bunch of sorting based only on the arguments, the compressor tried to multiply the matrix representations of these things together, and (finally we hit a piece of code that Robert wrote) the code responsible for building the matrix representation of RZ(i) 0 ultimately threw a fit.

(j/k Robert also wrote the parser)

This is why I like excessively checking types everywhere like some kind of paranoiac :-)
Were complex params previously supported? What has me confused is that these are explicitly tested and permitted in the parser tests (presumably with complex params that at least result in unitary matrices, unlike my silly RX(i) 0 example).
Perhaps the way to go would be to update the parser to complain early, then move these tests cases from good-test-files ---> bad-test-files?

They were previously supported, but it was never a good idea: it's definitely possible to pick parameters in
DEFGATE U(%a, %b, %c, %d):
    %a, %b
    %c, %d

so that the the resulting gate is unitary, but (1) the pattern of legal values is quite nonobvious and (2) an illegal choice of parameters was blamed on the user and resulted in undefined behavior. What happens in practice is more like
DEFGATE RX(%theta):
    cos(%theta), -i*sin(%theta)
    -i*sin(%theta), cos(%theta)

where the pattern is obvious—%theta is required to be real, or else it's hopeless—and, after enforcing that constraint, there's no chance for bad user input. And so we made the decision that classical memory should only support REAL value types, and (I thought) that parameters were required to be real too. If you truly needed an escape hatch, you could still write
DEFGATE U(%ra, %ia, %rb, %ib, %rc, %ic, %rd, %id):
    %ra+i*%ia, %rb+i*%ib
    %rc+i*%ic, %rd+i*%id

but you really have to go out of your way to do such a silly thing.
I'd strongly prefer that we stick with this ^ and remove support for complex parameters in the parser (and the associated tests), but it ought to be (re-)sanctioned by @stylewarning.

I would be happy if we constrained parameters to just be real as a matter of practicality.

Closing this as resolved by #608.
Attempting to pass complex-valued gate parameters now raises a more readable error:
echo "RX(i) 0" | ./quilc --check-sdk-version=false
! ! ! Error: Complex-valued gate parameter #C(0.0d0 1.0d0) not permitted

authors: appleby ecpeterson notmgsk stylewarning

repo: rigetti/quilc

license_source: github-api


text:
[Play] - Miscellaneous Timer Issues

This issue is to collect some miscellaneous timer issues. There are three (and can be grouped into one PR):

The string that shows the time seems to have an issue when the seconds reach zero. It looks like the conversion is wrong, for example when the time goes from 3:00 to 2:59, the string shows 2:00 instead of 3:00. Relevant code: getTimerString function in Timer.tsx

The width of the linear progress bar part of the timer is set to fill the container its in. However, because the width of the timer text string varies based on the time, this means that the timer itself expands and contracts slightly as the time changes. If we can fit the timer text into a container with a fixed max width, then the timer bar will have a consistent width as well (rather than trying to fix the width of the bar directly).  Render function of Timer.tsx, note that <Typography> isn't set into a container or anything.

When the timer reaches zero, the player should be prevented from submitting answers. I think for now, we can just flip the isSubmitted condition to true to make this happen. Bonus points if we can hide the "Thanks for submitting!" message on this condition because it seems kind of weird.

The below video demonstrates each of these conditions.

You can see the inaccurate string condition right at the start of the video. The timer should be at 3:00 but is instead at 2:00 and then goes to 2:59.
You can see the linear progress bar changing more easily at around 2:50 ish, as that's when the width of the string contracts more severely.
I hit the submit button here just to demonstrate the condition that should be flipped. I'm expecting that none of the answers will be selected though (let's just go with that to start).

https://github.com/rightoneducation/righton-app/assets/79417944/9e07a2d7-b309-42f7-987b-84c3009b08ad

hey @Alexandra-Kushnirsky, when you're finished reviewing PR661, you can go ahead and merge it. Then, if you don't mind jumping on this task (based on your availability) that'd be great. This task has three issues that can be wrapped into one PR. Let me know if you have any questions!

repo: rightoneducation/righton-app


text:
POL-62-63 Adding burst info to utilization report

Description
[Describe what this change achieves]
Issues Resolved
[List any existing issues this PR resolves]
Contribution Check List

[ ] All tests pass.
[ ] New functionality includes testing.
[ ] New functionality has been documented in the README if applicable
[ ] New functionality has been documented in CHANGELOG.MD

          2 Errors

:no_entry_sign:
Please add a changelog

:no_entry_sign:
Please add labels to this Pull Request

          1 Warning

:warning:
Should this include readme changes

  Generated by :no_entry_sign: Danger

source: gharchive/pull-request

authors: flexera-ci rshade

license: MIT


text:
nested MAP types not supported by runtime

We have support for basic MAP types, but we are not quite there with the nested values.
The following result set cannot be profiled & currently returns an error in the interface:
select map([['a', 'b'], ['c', 'd']], [[1.1, 2.2], [3.3, 4.4]]);

There are application concerns to fix here as well, but the first step is to get this working.
The top k & tables APIs give the following error:
"map key type not supported by driver"

A good heuristic here is to make sure every MAP query on this page works in both the runtime and the application.

@begelundmuller : Can you take a look or reassign ?

It supports nested values, just not nested keys. I.e. these work:
SELECT map(['B', 'A'], [[1, 2], [3,4]]);
SELECT map(['B', 'A'], [map([1, 2], [3,4]), map([1, 2], [3,4])]);

This is noted it in the maps PR: https://github.com/rilldata/rill-developer/pull/1787. The reason is that Go does not support nested map keys (and for that matter, neither does JSON, JavaScript, Python, or most other languages).
To "fix" it we would have to not use maps to represent DuckDB maps. See details here: https://github.com/marcboeker/go-duckdb/pull/74. Let me know if you think that's worth doing.

Adding context here + see the below screenshot for how DuckDB's CLI handles MAP representations.
We need to make sure that the return values match the user’s expectation. A strong expectation is that the representations of values look like how they’d look in other DuckDB contexts. When we violate that expectation by having less coverage than them, it drains the reservoir of goodwill. This is especially the case with types where the DuckDB examples on the website don’t work out of the box (which is the case that motivated the GH issue). It reduces confidence in the tool when people don’t see things in the interface that are considered elementary.
With this in mind, I would opt to change the output of MAP to a string type and use the duckdb representation here. It’s definitely less useful than a structured object, but we already can’t support that in the interface as-is. The best we can opt for is to have the representations match what users would see in the CLI, so they can make a reasonable decision about how to change their models.

authors: begelundmuller hamilton nishantmonu51

repo: rilldata/rill-developer


text:
fix(charset_filter): Update is_extended_cjk to compatible with Unicode 15.

See also:
CJK Unified Ideographs Extension H
Other CJK ideographs in Unicode, not Unified

@lotem Request for review.

repo: rime/librime


text:
Cleanup unused 3rd-party build system variables

It looks like original pion was designed for re-purposing the whole project for your custom webserver. To the contrary I am trying to use it like a 3rd-party dependency. As such, I am building pion outside of my project, then pull it in.
Now, basing a webserver on a complete webserver stack will always lead to a strong dependency on the specific framework. But at least my own code shouldn't be entangled. It makes developing pion and pulling in new stuff much easier.
That's why I propose to remove all build-related variables (macros) of 3rd-party libraries (for include/link paths) not used by pion itself - they should be pulled in by the custom projects themselves, especially now that there are C++ library/package managers available, vcpkg or conan, just to mention a few.
List of libraries:

libxml2

iconv
icu

bzip2
yajl
python
sqlite
(possibly, though required for spdy) zlib

I myself can only speak confidently about the Visual C++/MSBuild build system. It seems that other build system scripts don't "suffer" from this mess to this extent - I have only seen bzip2.
So, e.g. I would remove from build/third_party_libs_x64.props:
<LIBXML_INC>$(LIB_ROOT)\libxml2-2.9.0\include</LIBXML_INC>
<LIBXML_LIB>$(LIB_ROOT)\libxml2-2.9.0\lib\x64</LIBXML_LIB>
<LIBXML_BIN>$(LIB_ROOT)\libxml2-2.9.0\bin\x64</LIBXML_BIN>

Hi @trueqbit,
You think this should be done before making windows travis successful and publishing as is for one pass?
So people have it as they are familiar.
And then clean up?
I have an old windows box I'm trying to stand up again to better go after the travis windows build

I have seen your effort! If you intend a release it's probably good to wait with my changes (unless targeting windows with travis builds is a never-ending story :) ).

yea:-)  I got windows working on another project
https://github.com/rimmartin/saxon-node
It can be done; but the cmake stuff in this project I'm not as familiar with

authors: rimmartin trueqbit

repo: rimmartin/pion-ng


text:
How to use Middleware in custom routes

Hi,
I have installed the latest version from the fort package.
To keep it as simple as possible, i installed also infyomlabs/laravel-generator.
Everything works fine, I can see the data etc.
But when i run php artisan route:list i see a difference between my own routes and your package routes...
Here is the current result:
https://gist.github.com/noxify/695eb23e7c4e25de4e78b826d4b71288
My routes file is the following: (/routes/web.backend.php)
https://gist.github.com/noxify/b784473f8bab84d3b74b7a4eec6683d2
The app\Provider\RouteServiceProvider.php is the following:
<?php

namespace App\Providers;

use Illuminate\Support\Facades\Route;
use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider;

class RouteServiceProvider extends ServiceProvider
{
    /**
     * This namespace is applied to your controller routes.
     *
     * In addition, it is set as the URL generator's root namespace.
     *
     * @var string
     */
    protected $namespace = 'App\Http\Controllers';

    /**
     * Define your route model bindings, pattern filters, etc.
     *
     * @return void
     */
    public function boot()
    {
        //

        parent::boot();
    }

    /**
     * Define the routes for the application.
     *
     * @return void
     */
    public function map()
    {
        $this->mapApiRoutes();

        $this->mapWebRoutes();

        //
    }

    /**
     * Define the "web" routes for the application.
     *
     * These routes all receive session state, CSRF protection, etc.
     *
     * @return void
     */
    protected function mapWebRoutes()
    {
        Route::group([
            'middleware' => 'web',
            'namespace' => $this->namespace,
        ], function ($router) {
            require base_path('routes/web.php');
	        require base_path('routes/web.backend.php');
        });
    }

    /**
     * Define the "api" routes for the application.
     *
     * These routes are typically stateless.
     *
     * @return void
     */
    protected function mapApiRoutes()
    {
        Route::group([
            'middleware' => 'api',
            'namespace' => $this->namespace,
            'prefix' => 'api',
        ], function ($router) {
            require base_path('routes/api.php');
        });
    }
}

Example Admin Controller:
https://gist.github.com/noxify/57441dff458f45cdcb3aac499dc30573
Any idea how can I enable the automatic generation from the middleware like your package it does?
Thanks!

Ok, got it... it was too easy to solve it directly :D
The parent::__construct(); was missing inside the Admin\UserController.php.

repo: rinvex/fort


text:
Generate Report of Unnecessary Layout Attributes in Component Tree Dev Tool

I really like the new component tree dev tool. After using it to check some components I wrote six months ago and updating them, I thought of a cool feature: generating something like a report of all the unnecessary layout attributes.
For example:
class MyComponent(rio.Component):
    text: str = "Hello, world!"

    def build(self) -> rio.Component:
        return rio.Card(
            rio.Text(
                text=self.bind().text,
                width="grow", # <- useless in my example
                height="grow", # <- useless in my example
            ),
        )

The dev tool already identifies unnecessary attributes, so it would be great if it could generate a "report" to save us from having to click through all the components. Ideally, your IDE would highlight these unnecessary attributes, but we can discuss that in a later stage. 😄
As already discussed:

Attributes might be useless now but could become useful on different screen sizes.
Alternatively, they might be needed if the siblings of a component change.

Can we close this issue? As mentioned in the original message, detecting this correctly is basically impossible, and would likely lead to more confusion than anything else. The dev-tools now also contain a plain English explanation of the layout and already point out several pointless attributes.

repo: rio-labs/rio


text:
fix: do not diagnostic property not found if target is read only

Closes https://github.com/riok/mapperly/issues/329

Codecov Report

Merging #345 (2760b4f) into main (dce4b42) will increase coverage by 0.23%.
The diff coverage is 93.91%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #345      +/-   ##
==========================================
+ Coverage   91.71%   91.94%   +0.23%
==========================================
  Files         109      118       +9
  Lines        3379     3713     +334
  Branches      438      502      +64
==========================================
+ Hits         3099     3414     +315
- Misses        189      205      +16
- Partials       91       94       +3

Impacted Files
Coverage Δ

src/Riok.Mapperly.Abstractions/MapEnumAttribute.cs
100.00% <ø> (ø)

...appings/NewInstanceObjectFactoryPropertyMapping.cs
100.00% <ø> (ø)

...escriptors/Mappings/ObjectPropertyMethodMapping.cs
90.00% <ø> (ø)

...riptors/MappingBuilders/QueryableMappingBuilder.cs
68.42% <68.42%> (ø)

...Descriptors/Mappings/EnumFromStringParseMapping.cs
73.68% <73.68%> (ø)

...criptors/Mappings/PropertyMappings/PropertyPath.cs
89.06% <80.00%> (-3.60%)
:arrow_down:

src/Riok.Mapperly/Helpers/SymbolExtensions.cs
86.56% <81.81%> (+0.85%)
:arrow_up:

...iptors/MappingBuilders/DictionaryMappingBuilder.cs
79.51% <83.33%> (+0.50%)
:arrow_up:

src/Riok.Mapperly/Descriptors/WellKnownTypes.cs
87.23% <83.87%> (-8.92%)
:arrow_down:

...ers/NewInstanceObjectPropertyMappingBodyBuilder.cs
80.43% <91.66%> (+2.83%)
:arrow_up:

... and 42 more

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

authors: codecov-commenter latonz

repo: riok/mapperly


text:
Change typedef to using.

The more eyes on this the better.  It is a massive diff that was mostly mechanically automated.

Should we exclude certain third party files like the json_reader.h and such?

I'm easy.  I hit everything under beast and ripple.  It is fairly easy for me to back anything (even everything) out and try again.  But I'll need guidance as to which files are 3rd party.

I guess I'm okay with changing that file since we took ownership of it.

We've already decided to just adopt the JSON stuff as our own - so we may as well clean them up.

We shouldn't touch xxhash.c

Files to exclude:
src/beast/beast/chrono/chrono_io.h
src/beast/beast/crypto/impl/sha2/sha2.c
src/beast/beast/crypto/impl/sha2/sha2.h
src/beast/beast/hash/impl/xxhash.c
src/beast/beast/hash/impl/xxhash.h
src/beast/beast/hash/impl/spookyv2.h
src/beast/beast/http/impl/http-parser/http_parser.h

@HowardHinnant I finished the diff with my branch. Other than the two issues flagged above everything else looks good.

Thanks Scott!  I'll take care of these.

Fishing for thumbs... :-)

:+1: LGTM

:+1:

:+1:

authors: HowardHinnant nbougalis seelabs vinniefalco ximinez

repo: ripple/rippled

license: ISC


text:
[Trivial] Reduce log level of "Unable to find ledger" message: fixes #3996.

High Level Overview of Change
GitHub issue https://github.com/ripple/rippled/issues/3996  notes a lot of unhelpful noise from the "Unable to find ledger ..." log message.  The proposed change is to reduce the log level from warn() to debug().
Context of Change
Work to reduce noise in the log noted by GitHub issue https://github.com/ripple/rippled/issues/3996.
Type of Change

[x] Bug fix (non-breaking change which fixes an issue)

To me it looks like we're processing a request for a ledger from a peer.  If the requested ledger is not available locally this message is generated.  Doesn't really seem like a warn() is called for.

Merged into 1.9.1-b1.


text:
Remove filetype and filename echo on Aerojump start

I have kept get_output_of_vim_cmd function maybe you had other uses for it.

Thx man!

I enjoy using your plugin. Thanks

authors: khalidchawtany ripxorip


text:
profiles.adoc is missing

Hi, there
I just tried this repo, and got the following failrue:
workspace/iopmp-spec$ make
    asciidoctor-pdf \
    -a toc \
    -a compress \
    -a pdf-style=docs-resources/themes/riscv-pdf.yml \
    -a pdf-fontsdir=docs-resources/fonts \
    --failure-level=ERROR \
    -o profiles.pdf profiles.adoc
Building asciidoc
asciidoctor-pdf \
    --attribute=mathematical-format=svg \
    --attribute=pdf-fontsdir=docs-resources/fonts \
    --attribute=pdf-style=docs-resources/themes/riscv-pdf.yml \
    --failure-level=ERROR \
    --require=asciidoctor-bibtex \
    --require=asciidoctor-diagram \
    --require=asciidoctor-mathematical \
    --out-file=riscv_iopmp_specification.pdf \
    header.adoc
asciidoctor: FAILED: input file profiles.adoc is missing

This is fixed as the build defaults to using a Docker container.

authors: space-mit wmat

repo: riscv-non-isa/iopmp-spec


text:
Question of using indexed load intrinsics

I try to use vluxei and vloxei intrinsics and write a code snippet. However, the results are confusing.
Is this a compiler bug or my misunderstanding?
Code:
#include <riscv_vector.h>
int printf(const char *, ...);
#define dataLen 10

uint64_t idx[dataLen];
int32_t a[dataLen];
int32_t b[dataLen];

int main(){
  uint64_t tmp_idx[dataLen] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, };
  int32_t tmp_a[dataLen] = {137, 151, 121, 19, 11, 17, 222, 31, 4, 57, };
  for (int i = 0; i < dataLen; ++i) { idx[i] = tmp_idx[i]; }
  for (int i = 0; i < dataLen; ++i) { a[i] = tmp_a[i]; }
  for (int i = 0; i < dataLen; ++i) { b[i] = 0; }

  int placeholder0 = dataLen;
  uint64_t* ptr_idx = idx;
  int32_t* ptr_a = a;
  int32_t* ptr_b = b;
  for (size_t vl; placeholder0 > 0; placeholder0 -= vl){
    vl = __riscv_vsetvl_e32m2(placeholder0);
    vint32m2_t va = __riscv_vluxei64_v_i32m2(ptr_a, __riscv_vle64_v_u64m4(ptr_idx, vl), vl);
    __riscv_vse32_v_i32m2(ptr_b, va, vl);
    ptr_idx += vl;
    ptr_a += vl;
    ptr_b += vl;
  }
  for(int i=0; i<dataLen; ++i) { printf("%d ", b[i]); } printf("\n");
  return 0;
}

Just load and store the data. Here are results:
$ riscv64-unknown-elf-gcc -march=rv64gcv_zvfh -mabi=lp64d -Wno-psabi -static -O0 1.c -o a.out && qemu-riscv64 a.out
$137 -1761607680 9895936 38656 151 2030043136 7929856 30976 137 0
$ clang -march=rv64gcv_zvfh -mabi=lp64d -Wno-psabi -static -O0 1.c -o a.out && qemu-riscv64 a.out
$137 -1761607680 9895936 38656 151 2030043136 7929856 30976 137 0

However, I think the results should be the data in tmp_a[dataLen].
Is this a compiler bug or my misunderstanding?
Version:
$ riscv64-unknown-elf-gcc --version
riscv64-unknown-elf-gcc () 14.2.0
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ clang --version
clang version 19.1.0
Target: riscv64-unknown-linux-gnu
Thread model: posix
InstalledDir: ...
$ qemu-riscv64 --version
qemu-riscv64 version 9.1.0
Copyright (c) 2003-2024 Fabrice Bellard and the QEMU Project developers

The indices taken by indexed load/store are in byte granularity, not element granularity; that is, you want to shift the index argument left by 2 (i.e. __riscv_vsll_vx_u64m4(__riscv_vle64_v_u64m4(ptr_idx, vl), 2, vl)).

The indices taken by indexed load/store are in byte granularity, not element granularity; that is, you want to shift the index argument left by 2 (i.e. __riscv_vsll_vx_u64m4(__riscv_vle64_v_u64m4(ptr_idx, vl), 2, vl)).

Oh, i see. Thank you very much!

authors: Yibo-He dzaima

repo: riscv-non-isa/rvv-intrinsic-doc


text:
Como instalar no Cpanel?

Excelente trabalho! Tenho uma VPS com AAPanel instalado, talvez você nunca tenha usado esse painel. Mas é possivel instalar num CPanel?

Não sei dizer, sinceramente.
Você precisa procurar uma forma de rodar script shell pelo CPanel.

Não sei dizer, sinceramente.
Você precisa procurar uma forma de rodar script shell pelo CPanel.

Eu tentei hoje, instalando primeiro o AAPanel e dentro dele, tentei rodar sua instalação express, mas não deu certo.

Cara, você chegou a vê aquele erro de não conectar após ler o QR CODE? No cel diz que tá conectado, mas no sys não. O pessoal comentou na comunidade, mas ficou bem confuso (eu tô começando agora).

Cara, você chegou a vê aquele erro de não connect após ler or QR CODE? No cel diz que tá conectado, mas no sys não. O pessoal comementou na comunidade, mas ficou bem confuso (eu tô começando agora).

tengo ese error alguna solucion-?

Logré instalar en Cpanel  aún tienes dudas o problemas para ayudarte?

Logré instalar en Cpanel aún tienes dudas o problemas para ayudarte?

Saludos, me puede indicar por favor como es el proceso en cpanel con hosting compartido, agradezco la orientacion

Logré instalar en Cpanel aún tienes dudas o problemas para ayudarte?

Saludos, me puede indicar por favor como es el proceso en cpanel con hosting compartido, agradezco la orientacion

Claro lo primero que tienes que hacer es en el apartado de Dominios dirigirte a DOMAIN DNS crear un subominio y en la parte de IP le das a esa opción y luego agregas la IP en la cual te conectas a tu vps haces tanto para backend y frontend

authors: Jolu54 adrianofreires dantaspaulo lolalos ojrios riservato-thiagomelo

repo: riservato-xyz/whaticket-installer

license: WTFPL


text:
In-memory CDC data generation

Is your feature request related to a problem? Please describe.
For the convenience of testing, benchmarking, and local dev...
Does it make sense?
Describe the solution you'd like
No response
Describe alternatives you've considered
No response
Additional context
No response

Need to first sort #4555 out

repo: risingwavelabs/risingwave


text:
Extension issues live server notworking

Issue Type: Bug
Extension Name: LiveServer
Extension Version: 5.6.1
OS Version: Windows_NT ia32 6.1.7601
VS Code version: 1.57.1

:warning: We have written the needed data into your clipboard. Please paste! :warning:

repo: ritwickdey/vscode-live-server


text:
Can you set up live reload for websites that are already hosted on a remote server?

Let's say I am using a server for development that is hosted with Bluehost etc. The domain pointing to it is 'abc.xyz'. Can I set up the live server such that my browser reloads every time I save the file in VSCode (I am using ftp-simple to edit files directly on the server)?
Thanks in advance.

Hi, First, thanks for the feedback.  It is not possible.
Live Server inject few lines of JS code when it serves any HTML page for live reload feature.
Best Way :
Make a local Package -> start git tracking. -> modify code -> commit -> Push to FTP Server.

Thanks Ritwick. Yes, I guess that is what I'll have to do.
On 17-Sep-2017 18:10, "Ritwick Dey" notifications@github.com wrote:

Hi, First, thanks for the feedback. It is not possible.
Live Server inject few lines of JS code when it serves any HTML page for
live reload feature.
Best Way :
Make a local Package -> start git tracking. -> modify code -> commit ->
Push to FTP Server.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ritwickdey/vscode-live-server/issues/25#issuecomment-330041057,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIa8e7GW_u_RZcejjjfY0gVAZk5vZFXmks5sjRNIgaJpZM4PZUQA
.

authors: architchandra ritwickdey


text:
Touch events do not get passed to the state machines

Description
I'm trying several rive animations from the community site and although RiveAnimationView obviously consumes touch events, they seem to never arrive to the actual scene: it continues playing "idle" animations. At the same time clicking scene on the community web site does play animations.
Provide a Repro

Insert this scene into any RiveAnimationView
Try clicking on the view
Observe that nothing happens

Source .riv/.rev file
Download riv file from here:
https://rive.app/community/3783-7910-point-and-click/
Device & Versions (please complete the following information)

Device: Samsung S10fe
Android SDK API Level 30
Rive-android version: 4.2.2

Thanks @dimsuz ! We'll take a look to see what's going on

This should be resolved in the latest version. Please reopen and provide sample code if that is not the case.

authors: HayesGordon dimsuz zplata

repo: rive-app/rive-android


text:
The input fields in the “Register Here” and “Keep In Touch”sections does not have any format validation.

Description:
When the user fill out the inputs the application does not validate if the introduced data has the correct format for the field.
-Env:
Device: Android 7.1.1
Google Chrome Version 55.0.2883.79
Mozilla Firefox 53.0.2
Device: Iphone 7
Google Chrome Version 58.0.30.29.113
Safari IOS 10.3
STEPS:
Steps

Open the Crafter studio with the Event site.
Go to the “Register” section.
3 Fill out the fields with the next text.
First name: leave in blank
Last Name: leave in blank
Phone Number: leave in blank
Email: juan.com
4.Click on the Register Button.

*Same test for the “Keep In Touch” section.
CURRENT RESULT:
The application allows the user to registered successfully by displaying a “Your request has been processed correctly.” message, although some fields are with no data and the email has an incorrect format.
EXPECTED RESULT:
The application should not allow the user to register, unless all the fields are filled out and have the correct format.

Fixed

Bug verified and closed as fixed in build b0bc526.

authors: LorenzoRodriguezRivetlogic juacamar

repo: rivetlogic/craftercms-bp-events


text:
[RSScrawler] SJ suche wird nicht periodisch ausgeführt

Dringend zu behebender Bug. Scheint von Beginn an enthalten zu sein?!

Voerst wird der Feed wieder durchsucht, auch wenn ein Platzhalter gefunden wurde. Besser als die Suche nur einmal auszuführen!


text:
Distribute via F-Droid

Would it be possible to distribute this app via the open source app store F-Droid?
https://f-droid.org/

great idea, I see most open source android app also distribute their app to F-Droid, what do you think guys @rizmaulana @pandubaraja ?

Good idea, will try to distribute to F-Droid

and also lets try to distribute it to Github releases as well, like we have discuss early on

Agree 👍

Already publish on github release https://github.com/rizmaulana/kotlin-mvvm-covid19/releases
Btw is FDroid only support publishing from gitlab ? Ref : https://gitlab.com/fdroid/fdroiddata/blob/master/CONTRIBUTING.md#merge-requests

Btw is FDroid only support publishing from gitlab ? Ref : https://gitlab.com/fdroid/fdroiddata/blob/master/CONTRIBUTING.md#merge-requests
The data repository is hosted on gitlab, so when metadata is to be added to it, the merge request has to be on gitlab.
The actual source code of a project, which is to be added, can be hosted on any git repo you want.

I hope this answers the question sufficiently. :)

+1 would love to see this get published on f-droid

authors: Still34 dduenker fajarnuha pandubaraja rizmaulana


text:
trace: allow enabling packet trace at runtime

If the -t, --test-mode flag is used, enable packet tracing instead of
relying on an undocumented compilation flag. The performance impact
should be minimal when it is not enabled.

On the principle, it looks good, but I suspect it has a non negligeable impact on performance.

Out of curiosity, I ran a simple IP forwarding performance test, before and after this patch.
before: 23.56 MPPS

GROUT: main: starting grout version v0.1-1-gbed15f4ef48e

NODE        CALLS  PACKETS  PKTS/CALL  CYCLES/CALL  CYCLES/PKT
ip_input     1988   315693      158.8       8367.9        52.7
port_rx      2176   315693      145.1       5573.3        38.4
port_tx      1988   315693      158.8       4400.9        27.7
eth_input    2176   315693      145.1       3263.6        22.5
ip_output    1988   315693      158.8       3168.4        20.0
eth_output   1988   315693      158.8       3135.6        19.7
ip_forward   1988   315693      158.8       1741.1        11.0

after: 23.56 MPPS

GROUT: main: starting grout version v0.1-2-ge3133c7c1c80

NODE        CALLS  PACKETS  PKTS/CALL  CYCLES/CALL  CYCLES/PKT
ip_input     2354   315196      133.9       7055.5        52.7
port_rx      2624   315196      120.1       4626.7        38.5
port_tx      2354   315196      133.9       3678.2        27.5
eth_input    2624   315196      120.1       2708.8        22.6
ip_output    2354   315196      133.9       2681.7        20.0
eth_output   2354   315196      133.9       2621.4        19.6
ip_forward   2354   315196      133.9       1455.5        10.9

If this patch has any impact, it is not noticeable in this particular test.

authors: david-marchand rjarry

repo: rjarry/grout


text:
Location of accept/copy buttons

I like to read the suggested code and then accept/copy so I find myself constantly scrolling back to find those buttons.
Can we move those to below the suggested code? Or alternatively have them in both locations? Have a feature flag in settings for the location(s) is also an option. But in that case an advanced settings area might start making sense.

This is a great suggestion, moving the buttons to the bottom makes a lot of sense.  This was a quick and dirty solution when I first implemented it.
Many thanks,

Hey @ericvrp in version 3.3.4 the buttons are at the bottom of the code blocks.
Many thanks,

authors: ericvrp rjmacarthy

repo: rjmacarthy/twinny


text:
keep profile images in repo

ok, one of the main reasons the website build fails is becuase the profile image from this repo's url does not resolve anymore.
While I have tried capturing this in Hugo so that it does not fail, it just keeps happening.
I wonder if we might keep the images in this repo, as a way to combat that?

Oh no :/ so you mean like storing them in a folder (permanently) and accessing them from here? We'd need to double check to be safe on the GDPR side + I'd also want to ask for consent. Just thinking out loud - wouldn't be another alternative to capture a random screenshot of the website and adding that as an image on the website? Or, even better, create a link card instead?

oh yes, we for sure cannot do that without asking first!
a link card could be good, but I struggled getting that working with hugo. Want to give it a try @cosimameyer ? If we can get link cards, then we can simplify the json information too (like getting page title etc from OG directly)

I looked into it yesterday; I don't have a working solution yet but I'm on it :)

I had an idea. I don't know what you are thinking, but what if we setup a script that runs curl to fetch website info, grab the og data and add the og data to the Json? That could also minimize the information we ask people to supply to us, as we would get it from the source?

authors: cosimameyer drmowinckels

repo: rladies/awesome-rladies-blogs


text:
Command for getting metadata of an object only, without downloading

For instance, to check for an object's existence on s3 before uploading.

Something similar to the info subcommand of s3cmd the python tool.

I'm currently working on adding this functionality, @rlmcpherson I'm wondering if you have any thoughts as to what the output should look like? Should we just dump the http.Header? Exit with an error if we get a non-2XX code?


text:
🛑 Library is down

In a008f26, Library (http://library.cvsu.edu.ph) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Library is back up in 2ff0b22 after 6 minutes.

repo: rlvillacarlos/cvsu-site-monitor


text:
🛑 Mastodon Node is down

In 2c2f4b4, Mastodon Node (https://node.mateu.me/about) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Mastodon Node is back up in b5f71d4.

repo: rmateu/statuspage


text:
Does not work with knockout 3.5.0

I tried to execute the example draggable.html with knockout 3.5.0 but, dragging the options, i have this error:
knockout-3.5.0.js:133 Uncaught TypeError: Cannot read property 'nb' of undefined
at q (knockout-3.5.0.js:133)
at a.a.cc (knockout-3.5.0.js:134)
at Object.K (knockout-3.5.0.js:41)
at y (knockout-3.5.0.js:126)
at a.gc.kc (knockout-3.5.0.js:128)
at Function.notifySubscribers (knockout-3.5.0.js:38)
at Function.b.notifySubscribers (knockout-3.5.0.js:48)
at c (knockout-3.5.0.js:48)
at d (knockout-3.5.0.js:48)
at Function.b.Qa (knockout-3.5.0.js:49)

See #198 . There is workaround using alternate syntax for now, while we wait for the official fix to be pushed to the master branch.

Version 1.2.0 is out that addresses 3.5.0 and 3.5.1 compatibility issues.

authors: JasperTey fabiof88 rniemeyer

repo: rniemeyer/knockout-sortable


text:
Feat: Tasks CRUD

As a User
I want to create, read, update and delete Tasks
To manage the Team's Tasks

:tada: This issue has been resolved in version 1.2.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

repo: roalcantara/nxtodo


text:
I the service (slowwly.robertomurray.co.uk) down permanently?

I noticed (actually, couple of weeks already) the service http://slowwly.robertomurray.co.uk is down permanently - the response from Heroku is:

Application error
An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details.

Is this the end of service? Any ideas how to "extend" the plan?
Thanks.

@andrii-kovalenko-ct you can checkout https://flash.siwalik.in which is a similar service I wrote but with more configuration options!

Hi, Yeah it runs on Heroku free tier - the dyno gets shut down after a period of inactivity and takes time to boot.

authors: andrii-kovalenko-ct rob-murray siwalikm

repo: rob-murray/slowwly


text:
Matcher map README bug and limitations

If you apply the Mandatory Locking README example:
apiVersion: klock.rnemet.dev/v1
kind: Lock
metadata:
  name: lock-red-blue
  namespace: argocd
spec:
  operations:
    - UPDATE
    - DELETE
  matcher:
    aura: red
    aura: blue

Only aura: blue matcher will be created, as they are defined as maps of string.
This could become a major limitation of the matching strategies as requires creating different Locks for matching appropriate resources. Would be really cool to be able to able to define those as arrays instead of maps, also in that way could grow in the future with operators (AND/OR)

Yes. Thanks. Indeed some logic in matcher would be helpful. This is what I'm working on in this branch.

repo: robert-nemet/klock


text:
Upgrade Lodash

When pulling down node-instapaper I noticed the following error with npm audit
added 65 packages from 83 contributors and audited 66 packages in 4.532s

3 packages are looking for funding
  run `npm fund` for details

found 7 vulnerabilities (1 low, 2 moderate, 3 high, 1 critical)
  run `npm audit fix` to fix them, or `npm audit` for details

The current version of lodash was to blame for all the vulnerabilities. Running npm audit fix --force updated lodash to fix the vulnerabilities (--force due to a breaking change). Running a quick grep it appears that lodash is only used for merge a single set of options, and should not be affected by the breaking change 🙂
~/repos/node-instapaper patch-vulns
❯ grep -r --exclude-dir="node_modules" lodash ./
.//package.json:    "lodash": "^4.17.21",
.//lib/index.js:var lodash  = require('lodash');
.//lib/index.js:  this.opts = lodash.merge({}, DEFAULTS, opts);

A fresh run of npm audit confirms this:
~/repos/node-instapaper patch-vulns*
❯ npm audit

                       === npm audit security report ===

found 0 vulnerabilities
 in 58 scanned packages

Thanks! Might be time to drop lodash altogether if it's only being used for that (but to be honest, I haven't used this module, or Instapaper, for years… 😬).

authors: morriswchris robertklep

repo: robertklep/node-instapaper


text:
Better feedback for Discrete Allocation

Is your feature request related to a problem? Please describe.
Yes. When we run discrete allocation, if a NaN is found then the allocation fails. We however do not know what security causes that NaN Value
Describe the solution you'd like
I would like to know what security causes the NaN value

@silvavn Thanks for reaching out!
I'm afraid I don't understand exactly what the issue is. Are there NaNs in the inputs to DiscreteAllocation (weights or latest prices?)

I believe that there is some calculation that needs a try catch.
I am inputting valid stocks and values and I get the following error:
Traceback (most recent call last):
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/app.py", line 2463, in __call__
    return self.wsgi_app(environ, start_response)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/app.py", line 2449, in wsgi_app
    response = self.handle_exception(e)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask_cors/extension.py", line 165, in wrapped_function
    return cors_after_request(app.make_response(f(*args, **kwargs)))
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/app.py", line 1866, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/app.py", line 2446, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/app.py", line 1951, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask_cors/extension.py", line 165, in wrapped_function
    return cors_after_request(app.make_response(f(*args, **kwargs)))
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/app.py", line 1820, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/app.py", line 1949, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/flask/app.py", line 1935, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/ubuntu/Faidh/faidh_api.py", line 125, in get_optimized_portfolio
    alloc = popt.get_discrete_allocation(float(content["portfolioSize"]), 0.03)
  File "/home/ubuntu/Faidh/p_optimizer.py", line 32, in get_discrete_allocation
    return da.greedy_portfolio()
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/pypfopt/discrete_allocation.py", line 186, in greedy_portfolio
    n_shares = int(weight * self.total_portfolio_value / price)
ValueError: cannot convert float NaN to integer

This is the segment that seems to be throwing the error:

        for ticker, weight in self.weights:
            price = self.latest_prices[ticker]
            # Attempt to buy the lower integer number of shares
            n_shares = int(weight * self.total_portfolio_value / price)

Based on the stack trace, either weight, total_portfolio_value, or price is NaN. Could you please check the weights and latest_prices you provide to the constructor for DiscreteAllocation?
Cheers,
Robert

So the weights are all nan for some reason. What I did was add a try/except  block around n_shares =... returning 0 whenever a nan value is found.
I have also changed the typecast to use an integer division (not that it makes any diff).

@silvavn
Interesting, but the weights come from the output of the portfolio optimisation and shouldn't be NaN, so maybe for now you could drop NaNs from your weights/prices?
You're probably right that I should add some handling for NaNs; I guess I didn't anticipate that there would be any
Robert

Fixed in v1.3.0

Fixed in v1.3.0


text:
🛑 Revista Cómo ves is down

In eb22803, Revista Cómo ves (http://www.comoves.unam.mx) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Revista Cómo ves is back up in 389bc16.

repo: robertormzg/upptime-dgdc


text:
🛑 Revista Cómo ves is down

In 153d454, Revista Cómo ves (http://www.comoves.unam.mx) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Revista Cómo ves is back up in 7098da9 after 5 minutes.


text:
🛑 Educación continua is down

In 68c2e0d, Educación continua (https://educacioncontinua.dgdc.unam.mx) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Educación continua is back up in e4ec51b after 7 minutes.


text:
Deprecated Config warning

Following the example, I get a deprecation warning when including the gem:
irb(main):001:0> require 'win32/autogui'
C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/win32-autogui-0.5.2/lib/win32/autogui.rb:25:in <module:Autogui>': Use RbConfig instead of obsolete and deprecated Config. C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/win32-autogui-0.5.2/lib/win32/autogui.rb:25:in module:Autogui': Use RbConfig instead of obsolete and deprecated Config.
C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/win32-autogui-0.5.2/lib/win32/autogui.rb:26:in `module:Autogui': Use RbConfig instead of obsolete and deprecated Config.

Seems to totally fail now on ruby-2.2.5p319

authors: asfarley globalcitizen


text:
🛑 robingenz.dev is down

In 5ee2da9, robingenz.dev (https://robingenz.dev/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: robingenz.dev is back up in c053ec4.

repo: robingenz/upptime


text:
How to secure connection via server public certificate in FluentFTP  (.cer)

I am using FluentFTP to connect to my company's public FTP server, I was given the server's public certificate (.cer).
I want to know what security measure is required to secure the connection?
Below is currently used.
FtpClient client = new FtpClient(hostname, username, password); // or set Host & Credentials
client.EncryptionMode = FtpEncryptionMode.Explicit;
client.SslProtocols = SslProtocols.Tls;
client.ValidateCertificate += new FtpSslValidation(OnValidateCertificate);
client.Connect();
void OnValidateCertificate(FtpClient control, FtpSslValidationEventArgs e) {
    // add logic to test if certificate is valid here
    e.Accept = true;
}

Do i need to use either method below to validate the server's certificate?
Is method 2 securer than method 1?
In method 2, is it correct that first I save the content of the server's certificate to a file, and use it to validate against the server's certificate on subsequent requests in the future? Can this prevent man-in-the-middle attack? Is this security measure secure?
Is it correct that the server's public certificate that I was given is not required?

The problem is that the DNS on the certificate that we received is not specified. Thus, we cannot use the client certificate method , which was initially tried before opening this ticket.
I wonder if there is another way to secure the connection.

Then try Method 2.

Sorry I don't know how to help you. If you find a solution feel free to post it.

Does using method 2 without using this: https://github.com/robinrodricks/FluentFTP#faq_certs provide good security or the same security?

Look at https://github.com/robinrodricks/FluentFTP/wiki/FTP-Connection and scroll down

authors: FanDjango PingPongSet robinrodricks

repo: robinrodricks/FluentFTP


text:
Support any namespace\class for the migration base class.

Allow migration base class to be any namespace\class.

Didn't realize this was targeting the wrong branch. In the future, please only target the -dev branches.
Corrected merge commit is a67a301ad8d8e85a2e0bcbabfa6ef2c03be6b91b.

authors: RQuadling shadowhand

repo: robmorgan/phinx


text:
failed to replace object: Service "NNN" is invalid: spec.clusterIP: Invalid value: "": field is immutable

After running helmfile sync the first time, the release was installed successfully.
However, a second run generates this error.
FAILED RELEASES:
NAME
frontend
in ./helmfile.yaml: failed processing release frontend: helm exited with status 1:
  client.go:399: Replaced "frontend-nginx-ingress-controller" with kind Deployment for kind Deployment
  client.go:399: Replaced "frontend-nginx-ingress-default-backend" with kind Deployment for kind Deployment
  client.go:399: Replaced "frontend-nginx-ingress-controller" with kind Deployment for kind Deployment
  client.go:399: Replaced "frontend-nginx-ingress-default-backend" with kind Deployment for kind Deployment
  Error: UPGRADE FAILED: an error occurred while rolling back the release. original upgrade error: failed to replace object: Service "frontend-nginx-ingress-controller" is invalid: spec.clusterIP: Invalid value: "": field is immutable && failed to replace object: Service "frontend-nginx-ingress-default-backend" is invalid: spec.clusterIP: Invalid value: "": field is immutable: failed to replace object: Service "frontend-nginx-ingress-controller" is invalid: spec.clusterIP: Invalid value: "": field is immutable && failed to replace object: Service "frontend-nginx-ingress-default-backend" is invalid: spec.clusterIP: Invalid value: "": field is immutable

I suspect it might be realted to the fact that I'm using helm v3. Could this be part of the incompatibility? My cluster is not running tiller ever since I migrated to helm v3.
EDIT: Using

helmfile version v0.93.2
helm v3.0.0

Apologies for the unrelated issue.
This seems to be a problem with the chart or helm v3 itself. It happens regardless of using helmfile or not.
Closing.

For reference:
https://github.com/helm/helm/issues/6378

It is problem with 90% charts inherited from Helm 2. @juliohm1978 are you *ing jocking ? Fix Helm2 to Helm3 Chart migration then. Don't close eyes on very commented and top issue of Helm 3. Migration should be smooth. It's reasonable to display deprication message or something like that. Not "error: fuck you all Helm 2 users!". Just silencing issue won't help. We will open 10 new issues like that.

@juliohm1978 For reference #googlehelm3sucks

same

hey @mumoshu I have a chart that doesn't declare clusterIP either and I'm running into this w/ helm 3, I know this issue is closed, but it seems to be related maybe w/ the use of force and transitioning from helm2 to helm3 and what force means in helm3 vs helm2? any insights?

i.e. i get this
Upgrading release=myapp-stage-c1-8-4-3-1--2-1, chart=bitsofinfo-appdeploy/appdeploy
exec: helm3 upgrade --install --reset-values myapp-stage-c1-8-4-3-1--2-1 bitsofinfo-appdeploy/appdeploy --version 1.1.15 --wait --timeout 900s --force --namespace my-apps --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values376777632 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values382279807 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values559379922 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values213438729 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values549035732 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values408969251 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values333445414 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values876916301 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values563347272 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values601963527 --history-max 10
exec: helm3 upgrade --install --reset-values myapp-stage-c1-8-4-3-1--2-1 bitsofinfo-appdeploy/appdeploy --version 1.1.15 --wait --timeout 900s --force --namespace my-apps --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values376777632 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values382279807 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values559379922 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values213438729 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values549035732 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values408969251 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values333445414 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values876916301 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values563347272 --values /var/folders/j1/_6q1h_w13mqgpxd5l2rcr0cm0000gs/T/values601963527 --history-max 10:
worker 1/1 finished

FAILED RELEASES:
NAME
myapp-stage-c1-8-4-3-1--2-1
err: release "myapp-stage-c1-8-4-3-1--2-1" in "deployments.helmfile.yaml" failed: failed processing release myapp-stage-c1-8-4-3-1--2-1: helm3 exited with status 1:
  coalesce.go:165: warning: skipped value for env: Not a table.
  coalesce.go:199: warning: destination for limits is a table. Ignoring non-table value <nil>
  coalesce.go:199: warning: destination for requests is a table. Ignoring non-table value <nil>
  coalesce.go:199: warning: destination for annotations is a table. Ignoring non-table value <nil>
  coalesce.go:199: warning: destination for labels is a table. Ignoring non-table value <nil>
  Error: UPGRADE FAILED: failed to replace object: Service "myapp-stage-c1-8-4-3-1--2-1" is invalid: spec.clusterIP: Invalid value: "": field is immutable
in ./deployments.helmfile.yaml: failed processing release myapp-stage-c1-8-4-3-1--2-1: helm3 exited with status 1:
  coalesce.go:165: warning: skipped value for env: Not a table.
  coalesce.go:199: warning: destination for limits is a table. Ignoring non-table value <nil>
  coalesce.go:199: warning: destination for requests is a table. Ignoring non-table value <nil>
  coalesce.go:199: warning: destination for annotations is a table. Ignoring non-table value <nil>
  coalesce.go:199: warning: destination for labels is a table. Ignoring non-table value <nil>
  Error: UPGRADE FAILED: failed to replace object: Service "myapp-stage-c1-8-4-3-1--2-1" is invalid: spec.clusterIP: Invalid value: "": field is immutable

Just got to know about this. Can we do anything other than fixing charts like explained in https://github.com/helm/helm/issues/6378#issuecomment-557746499?

Well that guys comment is a bit of a specific example. I'm not even defining an explicit spec.clusterIP anywhere in the current release and I am getting this.
It does seem to be better if I set force: false... but I think its some semantics in helm in the way in v3 they implement force vs how it behaved in v2....
see: https://github.com/helm/helm/issues/7082 and https://github.com/helm/helm/pull/7431
i'm not sure if helmfile can do anything or maybe note it in the docs. I'm still trying to better understand it myself. Its just unfortunate as right now is a blocker.

@mumoshu https://github.com/helm/helm/issues/7082#issuecomment-590612617

@bitsofinfo Thanks a lot for sharing!
I think we want two things. First, we should fix the empty clusterIP issue as that makes no sense. This can be done either by fixing charts, or by enhancing helmfile to automatically remove clusterIP: "" lines from the generated manifests before installing.
For cases we do want the "upgrade or replace" behaviour, as --force doesn't work as the same as it was in Helm 2, we should wait for https://github.com/helm/helm/pull/7431 to land and helmfile should be enhanced to use --recreate or --force --recreate for force: true.

well not sure. From what I can gather it's not always the charts issue for example I'm not generating a clusterIP in the release I'm dealing with. It also appears to vary and affect other k8s resources per those helm issues. Its definitely not a helmfile bug, but yeah I guess something might be able to be done in helmfile to helm mitigate it until helm figure out their final resolution to it.

@mumoshu another interesting note https://github.com/helm/helm/issues/7350
Can you re-open this issue, or should I create another issue in helmfile just to track this if people stumble on it or just in case helmfile wants to add some workarounds?

Very late apologies, everyone. This clearly seems to be related to helm3. I'm reopening for the sake of everyone else. But I'm not at all sure how to reproduce this right now. I have long moved to helm3 by either fixing charts or just plain helm del && helm install all over.
Any reproducible examples are welcome.

I find this very easy to reproduce:
$ helm version
version.BuildInfo{Version:"v3.3.0", GitCommit:"8a4aeec08d67a7b84472007529e8097ec3742105", GitTreeState:"dirty", GoVersion:"go1.14.7"}
$ helm create test
Creating test

$ helm upgrade --install test ./test --wait --force --namespace testnamespace
Release "test" does not exist. Installing it now.
NAME: test
LAST DEPLOYED: Fri Aug 28 18:44:27 2020
NAMESPACE: testnamespace
STATUS: deployed
REVISION: 1
NOTES:
1. Get the application URL by running these commands:
  export POD_NAME=$(kubectl get pods --namespace testnamespace -l "app.kubernetes.io/name=test,app.kubernetes.io/instance=test" -o jsonpath="{.items[0].metadata.name}")
  echo "Visit http://127.0.0.1:8080 to use your application"
  kubectl --namespace testnamespace port-forward $POD_NAME 8080:80
$ helm upgrade --install test ./test --wait --force --namespace lutz028
Error: UPGRADE FAILED: failed to replace object: Service "test" is invalid: spec.clusterIP: Invalid value: "": field is immutable
$ ls -l ~/.helm/starters
total 0

authors: antonakv bitsofinfo juliohm1978 mumoshu ribx

repo: roboll/helmfile


text:
For-loop "IN KEYWORD" (also with Python generators?)

Much like we can currently make a for-loop IN RANGE, it would be nice if we could loop IN KEYWORD.
It is my hope that this would also let us power a for-loop with a Python-defined keyword that's actually a generator function.
# FooLibrary.py
def trivial_range_example(arg):
    for x in xrange(arg):
        yield x

# Robot Suite
Library     FooLibrary

*** Test cases ***
Test My Keyword
    :FOR    ${x}     IN KEYWORD    Trivial Range Example    5
    \     Log    ${x}

This could be especially helpful with for-loop-based Templated tests.

I don't think FOR IN KEYWORD is a good idea. Running a keyword first and then using its return values as for loop parameters is simple enough. That way it is possible to use different for loop flavors, not only the standard for loop. This is especially important when RF 2.9 will get new FOR IN ZIP and FOR IN ENUMERATE loops (#1952).
Additionally, for loops support generators already now. It's possible to assing an returned generator to a variable and then use it as a list variable in for loop parameters. The generator will be exhausted when the list variable is evaluated.

authors: edbrannin pekkaklarck

repo: robotframework/robotframework


text:
add glove option to the Oculus Retargeting Module

With this PR, we add the option in the oculus module to have sense Glove.
In the config files, at the moment, this is only done for Teleoperation scenario with Xsens. We can also add the option for oculus teleoperation setup later, if it works.

Thanks for the review. Merging.

repo: robotology/walking-teleoperation


text:
Release 1.0.0 to signify maturity

This library rocks and hasn't changed recently.  Do you think it is worthwhile to release a 1.0?

Sounds good to me.  Closed with 6bbed5f

Sounds good to me.  Closed with 6bbed5f

authors: phated robrich

repo: robrich/pretty-hrtime


text:
Add mcauley-penney/visual-whitespace.nvim

Add mcauley-penney/visual-whitespace.nvim
Repo URL:
https://github.com/mcauley-penney/visual-whitespace.nvim
Checklist:

[x] The plugin is specifically built for Neovim, or if it's a colorscheme, it supports treesitter syntax.
[x] The lines end with a .. This is to conform to awesome-list linting and requirements.
[x] The title of the pull request is Add/Update/Remove `username/repo`  (notice the backticks around `username/repo`) when adding a new plugin.
[x] The description doesn't mention that it's a Neovim plugin, it's obvious from the rest of the document. No mentions of the word plugin unless it's related to something else.
[x] The description doesn't contain emojis.
[x] Neovim is spelled as Neovim (not nvim, NeoVim or neovim), Vim is spelled as Vim (capitalized), Lua is spelled as Lua (capitalized), Tree-sitter is spelled as Tree-sitter.
[x] Acronyms should be fully capitalized, for example LSP, TS, YAML, etc.

Thanks for the PR!

authors: mcauley-penney tversteeg

repo: rockerBOO/awesome-neovim


text:
Add SmiteshP/nvim-navic

Checklist:

[x] The plugin is specifically built for Neovim.
[x] The lines end with a .. This is to conform to awesome-list linting and requirements.
[x] It's not already on the list.
[x] If it's a colorscheme, it supports treesitter syntax.
[x] The title of the pull request is Add `username/repo`  when adding a new plugin.
[x] Neovim is spelled as Neovim (not nvim, NeoVim or neovim), Lua is spelled as Lua (capitalized).

Thanks for the PR!


text:
when github credential has @! for a repo, git clone fails

when github credential has @! for a repo, git clone fails. Pls help.

when github credential has @! for a repo, git clone fails. Pls help.

repo: rocketeers/rocketeer


text:
error: package com.visioncameracodescanner does not exist

filepath:
android/app/build/generated/rncli/src/main/java/com/facebook/react/PackageList.java:143: error: package com.visioncameracodescanner does not exist
import com.visioncameracodescanner.VisionCameraCodeScannerPluginPackage;
can somebody help me out from this?

@rodgomesc can any help me out from this?

filepath: android/app/build/generated/rncli/src/main/java/com/facebook/react/PackageList.java:143: error: package com.visioncameracodescanner does not exist import com.visioncameracodescanner.VisionCameraCodeScannerPluginPackage;
can somebody help me out from this?

getting same issue!

Try this https://www.youtube.com/watch?v=sE0MEyFA7E4&list=PLQhQEGkwKZUrempLnmxjt7ZCZJu1W3p2i&index=7 & https://www.youtube.com/watch?v=BFkIIIKgjnE&list=PLQhQEGkwKZUrempLnmxjt7ZCZJu1W3p2i&index=80

repo: rodgomesc/vision-camera-code-scanner


text:
I would like to be warned before

Look, I'm okay with the existence of this fork, it's the principle of open source, right? But I'm not okay with three things:

The name very very similar of the extension
the exact same screenshots being used. I feel like it gives a weird feeling of a scammy/counterfeit practice
I would love to have known this before

Plus it appears that the official Twitter emojis supports the new additions of emoji so I am not opposed anymore to merge this in the main project :)

To be completely honest, I cloned your git repo and made the changes, then I told you and my friends about the additions I did, as you have stated, you wouldn’t add the new additions because the emojis used are from Apple and not the ones that Twitter use, and that’s fine.
But later on, some of my friends ask me to publish my additions, first thing I did was to pack the extension as a CRX using Chrome and share it with them, but some friends told me they didn’t understand how to install the extension, so after some requests I decided to publish the extension, it is the first and only extension I have published and I expended some money to do so hahahahaha, my goal was to share my improvements to the extension, never to steal or take credit, in the extension page is very clearly stated that is a fork from your work and all credit goes to you, the only thing I added was the new emojis and the replacement function which at the time needed the new emojis in order to display the all new emojis, I almost didn’t change the screenshots but I finally did to show the new emojis and I can’t publish the extension using the very same name you use, I though it wasn’t fair to use a completely different name, the closest thing I found to be fair first with your work and then for the additions was to add something different to the name using almost the same name.
It took more than two months for Twemoji to publish the new emojis and for Twitter to implement the new emojis, and having the new Apple emojis was my motivations, being able to see the emojis, if someone had done the new emojis aditions before, I had not had the need to do this repository.
So, in an honest good faith I published this fork under some friends request, now that Twemoji has finally added the new emojis I’ll add them and push a pull request to you as soon as I can, I’m even thinking on adding an option to choose which emoji version to use, having Apple, Emoji One and Twemoji as options. Again, there was no malicious or bad intention behind publishing the enhanced extension, just sharing the possibility to type and see the latest emojis.

I know it's was out of good intentions, no worries, it's just that the screenshots could be (imo) somehow misleading. Even I get sometimes general support about TweetDeck itself, so imagine the potential confusion that you could get :p
I like the idea of choosing multiples styles of emoji as well ! I just advise you not to spend too long on this since I'm going to rewrite BTD in a v3 during 2016

@rodrigopolo Can you unpublish the extension from the Store? It doesn't have been updated for almost 2 years and some users are confusing it with the "real" Better TweetDeck.

It is unpublished right now.

@rodrigopolo awesome, thanks!

authors: eramdam rodrigopolo

repo: rodrigopolo/EvenBetterTweetDeck


text:
Help setup motion detection recording

I have no idea how NVRs work. I managed to get my camera to work in viseron but I don't know what I need to do to make it record on any kind of motion. I don't need any object detection. Cameras will be in a dark-ish loft and I'm just trying to see where rats are coming from.
The following config allows me to see a live feed from a camera but I see no recordings. Am I missing something?
ffmpeg:
  camera:
    bullet:  # This value has to be unique across all cameras
      name: bullet
      host: 172.16.200.201
      port: 554
      path: /media/video1
      fps: 25

mog2:
  motion_detector:
    cameras:
      bullet:  # Attach detector to the configured camera_2 above
        fps: 5

nvr:
  bullet:

By default motion does not trigger recordings. By using trigger_recorder: true you can accomplish this tho
ffmpeg:
  camera:
    bullet:  # This value has to be unique across all cameras
      name: bullet
      host: 172.16.200.201
      port: 554
      path: /media/video1
      fps: 25

mog2:
  motion_detector:
    cameras:
      bullet:  # Attach detector to the configured camera_2 above
        fps: 5
        trigger_recorder: true

nvr:
  bullet:

You might need to play around with area as well to make it more sensitive. You can find more info on this in the component docs: https://viseron.netlify.app/components-explorer/components/mog2

@roflcoopter Thanks for that. Could you clarify how to adjust the sensitivity? Lower area value means higher sensitivity, therefore more likely for a recording to be made? If that's correct, what is the most sensitive setting?

Correct, lower value = more sensitive = more recordings.
Its a float between 1 - 0 so you can go as low as you want really, something like 0.001 should be low enough to trigger on pretty much any movement

authors: roflcoopter smolattack

repo: roflcoopter/viseron


text:
Wire 0.8.2 is not compatible with 0.8.1

It fails when deserialising datetime or datetimeoffset types
Not sure if this is a bug, or an intentional change.

Are you certain that the version used to generate the previous payload was 0.8.1?
there was an introduction of serializing the DateTime.Kind and DateTimeOffset.Kind properties in a much earlier version.
Which would be my first bet. as the payload for those types increased with one byte.
Ore those part of a bigger message?
Anything with exotic collections?
Important to know here is that version tolerance is not yet implemented.

Related to #33

Its part of a much bigger message. The message does has one collection. But thats a standard .net list.
I realize there is no hard backwards compat guarentee anywhere. But i guess that it stemmed from the fact that its not mentioned anywhere. Combined with the fact that some previous releases had been (afaik) (seemingly) backwards compatible.
Some small release notes when you publish a new version here in the github repo would help in creating awareness. Or it could just be me ;)
But im sure it was serialized with 0.8.1 . After i downgraded the deserializing side to 0.8.1 it started working.
I since moved both sides to 0.8.2.

There are no changes in schema or functionality between 0.8.1 and 0.8.2, it's a patch for the hash set serialization performance.
If you are able to replicate it, please let me know.
Because if there is schema breakage between the two versions, that's likely a bug.
The versioning strategies of Wire are described here:
https://github.com/rogeralsing/Wire#version-tolerance
Nr 3) there should be expanded on as this is the part that is not implemented.

Ill check about reproducing it. Ill get back to you on that next monday

I cant seem to reproduce it. So it seems there are some other issues involved that i've missed. Im suspecting some internal-project old-build shenanigans that i probably solved with a hard rebuild all.
Closing this issue

authors: Danthar rogeralsing

repo: rogeralsing/Wire


text:
Hotfix/633 docker build error

Description
Please provide a summary of the pull request and the issue it fixes. Please add necessary details, context, dependencies, explanation of when review is needed (see next section), etc.
This pull request fixes docker build errors in Events, Logging, Authentication Building Blocks in version 1.9.0 and makes Dockerfiles for different building blocks more standardized.
Fixes #633
Review Time Estimate
Please give your idea of how soon this pull request needs to be reviewed by selecting one of the options below. This can be based on the criticality of the issue at hand and/or other relevant factors.

[x] Immediately
[ ] Within a week
[ ] When possible

Type of changes
Please select a relevant option:

[x] Bug fix (non-breaking change which fixes an issue).
[ ] New feature (non-breaking change which adds functionality).
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected).
[ ] Other (any another change that does not fall in one of the above categories.)

Checklist:
Please select all applicable options:

[ ] I have signed the Rokwire Contributor License Agreement (CLA). (Any contributor who is not an employee of the University of Illinois whose official duties include contributing to the Rokwire software, or who is not paid by the Rokwire project, needs to sign the CLA before their contribution can be accepted.)
[x] I have updated the CHANGELOG.
[x] I have read the Contributor Guidelines.
[x] I have performed a self-review of my own code.
[ ] I have commented my code, particularly in hard-to-understand areas.
[ ] My change requires updating the documentation.
[ ] I have made necessary changes to the documentation.
[ ] I have added tests related to my changes.
[ ] My changes generate no new warnings.
[ ] New and existing unit tests pass locally with my changes.
[ ] Any dependent changes have been merged and published in downstream modules.

I am keep having an error building logging building block docker in cryptography... It doesn't even have a crpytography in requirments, weird. I will test more.

@ywkim312, Cryptography is coming from auth-middleware. This is what I used to build the docker image: docker build --pull -t rokwire/logging-building-block:latest .

I am keep having an error building logging building block docker in cryptography... It doesn't even have a crpytography in requirments, weird. I will test more.

@ywkim312, Cryptography is coming from auth-middleware. This is what I used to build the docker image: docker build --pull -t rokwire/logging-building-block:latest .

You're right about crpytography, but I believe that we need to check building it from the scratch as well instead of pulling and building from the repository?

I am keep having an error building logging building block docker in cryptography... It doesn't even have a crpytography in requirments, weird. I will test more.

@ywkim312, Cryptography is coming from auth-middleware. This is what I used to build the docker image: docker build --pull -t rokwire/logging-building-block:latest .

Okay, logging finally got built... I don't know why the previous ones got failed but it was stuck at the gevent installation everytime and failed at crpytography. But this time it passed. I suspect that it is probably not the real problem but my own situational problem? Anyway, profiles and loggin built successfully.

Successfully built for both Auth building block and App config building block.

authors: sandeep-ps wenjzhu ywkim312

repo: rokwire/rokwire-building-blocks-api


text:
Change wifi network to yi home 1080p

Hello good, I have installed the yi hack Allwinner v2 in the yi home 1080p and I would like to know how I can change the wifi network to which the camera connects

See the wiki.

I have read the wiki and I have a question, after putting the files with the new wifi configuration on the sd card that has the yi hack and waiting for the restart, do you have to delete the wifi configuration files that I copied to the sd card?

Yes.

thank you very much

I have an YI 1080p Home BFUS with 9.0.19* firmware. I installed the y21ga 0.1.4 firmware and worked perfectly 👍
I tried however to change the WiFi ssid and password with your description and this doesn't work. I know the procedure since I used it many times with the "yi-hack-Allwinner". After step "6. The cam will reboot once.", the cam doesn't change the WiFi connection. It is still connected to the old WiFi ssid.

authors: GqSteve albertopalotes35 roleoroleo


text:
New module: RollbarSwift

Description of the change

Added new RollbarSwift module. It helps in handling NSExceptions within Swift code.
Added macosAppSwift demo app demonstrating use of the RollbarSwift module
Prepared for v2.0.0-beta3

Type of change

[ ] Bug fix (non-breaking change that fixes an issue)
[x] New feature (non-breaking change that adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Related issues

n/a

Checklists
Development

[x] Lint rules pass locally
[x] The code changed/added as part of this pull request has been covered with tests
[x] All tests related to the changed code pass in development

Code review

[ ]  This pull request has a descriptive title and information useful to a reviewer. There may be a screenshot or screencast attached
[ ] "Ready for review" label attached to the PR and reviewers mentioned in a comment
[ ] Changes have been reviewed by at least one other engineer
[ ] Issue from task tracker has a link to this pull request

@bishopb , thank you!

repo: rollbar/rollbar-apple


text:
Attempting to filter something by time with only 1 time values results in an index error

 rompy/rompy/core/data.py(413)_filter_time()
    411         end = time.end
    412         if self.coords.t in self.ds.dims:
--> 413             dt = self.ds[self.coords.t][1].values - self.ds[self.coords.t][0].values

in the above len(self.ds[self.coords.t]) == 1 and thus indexing by 1 is out of range

This will be fixed with https://github.com/rom-py/rompy/pull/98

authors: benjaminleighton rafa-guedes

repo: rom-py/rompy