What do you think about dividing a scenario into subsections?

Let's say I have a big test suite of feature specs (capybara + poltergeist) where I test a bunch of complex stuff, for example spec/features/payment_spec.rb which has 15 scenarios.
At the beginning, I was doing a "visit xxx_path" before each scenario. But xxx is quite a complex page to build, that takes 500ms in development and a full 1sec to leave the capybara visit method (poltergeist setup I guess). That alone added 15secs of running time, plus the actual stuff, multiply that for a lot of other pages.
Then I read that is common in feature specs to test 4 or 5 related things for performance reasons, and because most of my scenarios don't have hard interdependencies I grouped them, let's say in 3 related scenarios which reduced the running time considerably. To divide the code, where it used to be a new scenario, I usually add a "comment line separator".
But now, when a test fails, I only get the "general" scenario description, to see what failed specifically I have to go inside the code and look what the code was doing or guess it by the failed line. Also, running with the "--format doc" is not the same at all (big fan of doc format).
Now I'm thinking.. given that we all accept that sometimes for performance reasons is sensible to test multiple things in a single scenario (we do, right? =), why can't rspec support this?
feature 'payments' do
  scenario 'complete payment' do
    visit payments_path
    section 'fill header' do
      fill_in ...
      expect(page).to ...
    end
    section 'append checks' do
      select ...
      expect(page).to ...
    end
    section 'approve transaction' do
      click_on
      expect(page).to ...
    end
  end
end

Of course you can replace section with whatever keyword.. basically it's an "it" nested within another "it". If one fails, none of the following ones run. But this will allow to document exactly what the code was doing when failed.
Also this can be done with a shared before :all and forcing the scenarios to run in order not random, but I really feel this syntax describes better the code intentions.. what do you think? this should go to rspec-core?

@vizcay thanks for taking the time to write such a detailed description of your feature request :smiley_cat: (see TLDR; and https://github.com/rspec/rspec-expectations/issues/733)
In regards to testing multiple things in one spec, this isn't limited to just features specs. Much of the older documentation does show a single expectation per spec. However, many of us feel the intent of that "rule" was to "test one behavior"; where a behavior can be defined across multiple expectations. It is also true that when one expectation fails only the failing expectation is the message reported.
In RSpec 2.x the only way around this was to write a custom matcher. I feel this limitation further encouraged the "one expectation per spec" philosophy instead of the "test one behavior" :frowning:. Now in RSpec 3.x we have compound and composable matchers. Much work has been done to improve the output and failure messages when using these. I believe that feature was a big win, more easily allowing for testing a complete idea of the single behavior instead of breaking each sub-expectation into a different spec.
Coming back to feature specs, as your example illustrates one common use for them is testing "workflows". This often spans across pages. The composable matchers, while still useful, does not fully solve the multi-expectation scenario in these cases.
One thing about feature specs is that they are not really provided by rspec-rails. rspec-rails does provide the base type module. However, the core functionality and the feature, scenario, etc DSL is all provided by Capybara. Any change to that DSL specifically will need to come from Capybara.
Introducing the concept of a nested it isn't something we are currently looking to start supporting. The complexity it would create out does not justify it's use over simply using before(:all), context, and it. Adding the feature also means the formatters would need to learn a new concept, which would be a breaking change and have to wait until RSpec 4; which is currently a ways away.
I don't want you to think I'm just dismissing this feature. I fully appreciate the problem it is trying to solve :blue_heart: :blue_heart:. I'd like you to know that one thing we are trying hard to do is streamline our feature set to focus on the core behavior. At the same time we are also encouraging the community to develop extension gems. We are always happy to see an extension gem gain popularity :smiley_cat:. We are very open to evaluating popular extensions and bringing them into our core libs (such as with rspec-fire).
TLDR; so what are the options moving forward:

please comment on a new feature we are considering aggregate_failures: https://github.com/rspec/rspec-expectations/issues/733

create an rspec extension gem :heart: which adds your feature

use before(:all), context and scenario; you can create aliases for groups and examples to make easy simple custom DSLs

write custom matchers

add custom failure messages to expectations:
expect(page).to include("I'm sorry Dave"), "Hal is offline"

As the custom failure message is inside the it block, it has access to everything the spec does. So you can string interpolate additional information in it.

To expand on what @cupakromer, it would be pretty easy to write an extension gem that adds this.  As of rspec/rspec-core#1869, RSpec's reporter now supports the publication of custom events, so your extension gem could define section to publish :example_section_started and :example_section_finished events:
module ExampleSections
  def section(name)
    RSpec.configuration.reporter.publish(:example_section_started, :name => name)
    yield
  ensure
    RSpec.configuration.reporter.publish(:example_section_finished, :name => name)
  end
end

RSpec.configure do |c|
  c.include ExampleSections
end

Your extension gem could then ship with a custom formatter that handled those events and printed it in the output.  If you decide to build an extension gem and want help or input from us, let us know!

Thank you all for your good feedback, unfortunately I haven't a lot of time lately for this.
I'm currently looking at https://github.com/LRDesign/rspec-steps that looks like what I'm looking for.


Feature/handle dev versions

Well, this is nice! I was about to write something to increment versions automagically and I stumbled on this.
Sadly my use-case* requires dev versions and release versions only (perhaps with a release candidate option somewhere down the line) and I decided to have a stab at folding the functionality in rather than reinvent this particular wheel. Let's say I now intuitively understand both a) why you haven't implemented this yet and b) PEP440 discourages various types of dev and post releases...
That said, I've given it a shot.

I've tried to keep to your style. I did amend a couple of things but it was a very light touch.
I've tried to logically break the change down into commits as it's turned out to be fairly extensive.
I went for bulk tests rather than try to finesse it. I'm moderately happy now but please feel free to check them carefully as there were a few false starts and I'm not sure I've caught the edge/corner cases. I had to backtrack a few times...
I elected to not bother dealing with a dev version of a new pre-release phase (e.g. 0.1.1a1.dev1) so that can never happen. I think. I suspect this needs an optional dev parameter everywhere and I felt I'd changed enough. next_dev() increments the pre-release everywhere, so ...a1.next_dev() jumps to ...a2.dev1
Naming things was quite hard. Not everything had an obvious name and some things are ambiguous (e.g. "segment", "suffix" "marker"). Feel free to suggest alternatives.
I'm not a fan of the explosion of internal module functions, but I was reluctant to break away from the pattern too much.
I actually feel there is some support for local segments and other things perhaps solve the problem.*
I suspect .postN releases can be handled similarly but I fear the ifs involved.
My gut feel is that this is actually a graph problem but I wasn't going to go down that road.

Anyway, hope this is useful. I'll try not to submit and run but I'm fairly snowed under at the moment so please bear with me :)

*I'll explain my use case a little more because it might help: I stumbled on versioneer and that handles "what is the current version?" fantastically. I was looking for something in a CI Azure Pipeline that would take a version with a local segment and, under certain conditions, increment to a dev version. These changes now achieve that.

hey @corriander ! sincere apologies for not seeing your pull request earlier. Thanks a lot for the detailed write-up! I'm curious if you actually used the changes in your PR to solve your use case. If so, did it work like expected in your workflow?


VS Code will modify my data in Python script when i debug with it

VSCode Version: 1.19.3
OS Version: Windows 10

Steps to Reproduce:
the VS Code IDE will modify my property in Python script when i debug with it. my test code as below
'''
bytesIO = io.BytesIO(...)
bytesIO.seek(0)
print(bytesIO.realine())   # will output the first line
'''

Suppose i have a stream-like object in my Python script(such as BytesIO object called 'bytesIO'), call 'byteIO.seek(0)' to set offset to start position.
set breakpoint at the code line 'byteIO.readline()'
use the 'variable monitor' to watch the data inside bytesIO object
press F10 to continue run the code.

result:    print(bytesIO.readline()) output nothing.
expect:  print(bytesIO.readline()) will output the first line.
if i add 'bytesIO.seek(0)' after i watch the variable by vs code ide, the output is right.  I wander if the ide has modified the data inside the bytesIO object, such as it called its iterator and changed the position flag inside the object.
hope it helps!

Does this issue occur when all extensions are disabled?: Yes/No  (i cannot debug with it if i disable the Python extensions, right?)

Please file this against the Python extension.


RTL support

Hi,
I'm trying to make the progress-bar load from right-to-left.
tried to simply change that with css transform rotate-y(180deg),
and since I'm using Angular tried to add [dir]="'rtl'" in the pace.js file like so:

but both methods didn't work for me,
can you please give me a direction,
Thanks

any updates about this issue ? Thanks


Saving '&' as a variable

Hi, in my code I save & into variable $parent and after that I use it as a selector.
(I use the gulp-sass which using node-sass)
Example of my code is below - which uses my super idea how to make the .switch--people__radio:checked + .switch--people__label selector.
  &--people {
    $parent: &;

    &__radio {
      display: none;
      margin: 0;
      padding: 0;

      &:checked + #{$parent}__label {
        font-weight: $g-weight-semi-bold;
        color: $g-color-primary;
      }
    }

But it throws an error.
[14:29:17] Starting 'sass'...

stream.js:94
      throw er; // Unhandled stream error i
n pipe.
            ^
Error: error reading values after :

Is there any way how to fix it?
I want to use node-sass, because it is much faster than the ruby version (in my case 328ms vs ~2,5s - which is a really big difference).

The problem lives in Libsass, specifically sass/libsass#548
That being said, that says it's closed there, I can't get this to work with node-sass 3.0.0-beta.4

@Snugug thank you for the info. I will wait a few more days until the next release. :)

Lets track the progress at #827.


vim9 call closure from autocmd_add()

You can easily reference closure from autocmd_add() cmd key in legacy vimscript. As example
function! s:Foo() abort
  let baz = 'baz'
  function! s:Bar() closure
    echom 'foobar' .. baz
  endfunction
  call autocmd_add([#{event: 'CursorMoved', pattern: '*', cmd: 'call s:Bar()'}])
endfunction

call s:Foo()

How to achieve the same with vim9? Tested a lot of the things without any success.
vim9script

def Foo()
  const baz = 'baz'
  def Bar()
    echom 'foobar' .. baz
  enddef
  autocmd_add([{event: 'CursorMoved', pattern: '*', cmd: 'Bar()'}])
enddef

Foo()

Error detected while processing CursorMoved Autocommands for "*": E117: Unknown function: Bar

How about this?  This worked at least in my environment.
Runned steps:

vim --clean
Put this script on the buffer
:%so

vim9script

var BarRef: func(): void
def Foo()
  const baz = 'baz'
  def Bar()
    echom 'foobar' .. baz
  enddef
  BarRef = Bar
  autocmd_add([{event: 'CursorMoved', pattern: '*', cmd: 'BarRef()'}])
enddef

Foo()
doautocmd CursorMoved
# => foobarbaz

Environment:

Vim 9.0.1222
Arch Linux

Maybe :h E1058 is related to this:
When using `:function` or `:def` to specify a nested function inside a `:def`
function and no namespace was given, this nested function is local to the code
block it is defined in.  It cannot be used in `function()` with a string
argument, pass the function reference itself: >
	def Outer()
	  def Inner()
	    echo 'inner'
	  enddef
	  var Fok = function(Inner)     # OK
	  var Fbad = function('Inner')  # does not work

Detail: this is because "Inner" will actually become a function reference to a
function with a generated name.

It is not possible to define a script-local function in a function.  You can
define a local function and assign it to a script-local funcref (it must have
been declared at the script level).  It is possible to define a global
function by using the "g:" prefix.

And now Bar isn't local at all
I have simplified the example. This is working yes, but now try this
var BarRef: func(): void
def Foo(boo: string)
  const baz = 'baz'
  def Bar()
    echom $'foobar{baz}{boo}'
  enddef
  BarRef = Bar
  autocmd_add([{event: 'CursorMoved', pattern: '*', cmd: 'BarRef()'}])
enddef

Foo('moo')
Foo('boo')

moo is overriden by boo

Ok i have tried legacy script version and i doesn't work too :(

Any workaround to achieve what I want? Dynamically create autocommands?

I came up with two workarounds, but both of this is not good at managing added autocmds...
vim9script
var BarRefs: list<func(): void>
def Foo(boo: string)
  const baz = 'baz'
  def Bar()
    echom $'foobar{baz}{boo}'
  enddef
  BarRefs->add(Bar)
enddef

def OnCursorMoved()
  for F in BarRefs
    F()
  endfor
enddef
autocmd_add([{event: 'CursorMoved', pattern: '*', cmd: 'OnCursorMoved()'}])

Foo('moo')
Foo('boo')

vim9script

def Bar(baz: string, boo: string)
  echom $'foobar{baz}{boo}'
enddef

def Foo(boo: string)
  const baz = 'baz'
  autocmd_add([{event: 'CursorMoved', pattern: '*', cmd: printf('call("Bar", %s)', [baz, boo])}])
enddef

Foo('moo')
Foo('boo')

@mityu Thank You. Will test if any of those works for my needs and then will report.

Ok I did something similar to you first suggestion and it works, too bad that there is no simpler solution, that do not require some dangling list/dict. I will leave this open for a few days, maybe someone would suggest something better. Thank You nevertheless.

@mityu Thank You. Will test if any of those works for my needs and
then will report.

The autocommand is executed outside of the script, but the script
context is set for it.  Thus it can access script-local items.  But not
function-call-local items.
There is no way to pass the function call context to the autocommand.
The Bar() function is created for each time the function is called.  It
actually uses the same lambda, but it access the outer context, which in
this case gets it the function argument.
Only inside the function this reference to the Bar() function exists.  I
don't really see any other way than to store it somewhere.  Using a
list, as mityu suggested, works.  I would use it differently though:
vim9script

var BarRefs: list<func(): void>

def Foo(boo: string)
  const baz = 'baz'
  def Bar()
    echowin $'foobar{baz}{boo}'
  enddef
  var idx = len(BarRefs)
  add(BarRefs, Bar)
  autocmd_add([{event: 'CursorMoved', pattern: '*', cmd: $'BarRefs[{idx}]()'}])
enddef

Foo('moo')
Foo('BOO')

This works.  Things are kept local to the script at least.
--
It was recently discovered that research causes cancer in rats.
/// Bram Moolenaar -- @.*** -- http://www.Moolenaar.net   \
///                                                                      \
\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Thank you, Bram.

I think it would be neat to allow a funcref in autocmd_add and add a callback_T cmd_cb field to the auto command struct for it. The same would be nice for options like omnifunc. Interestingly these are stored into the buffer structure as callback objects but only set as strings.
I started working on a patch to allow a funcref as the cmd option in autocmd_add but ran into a conceptual limitation: these places cannot be extended to hold funcrefs without slightly breaking compatibility. There are potentially scripts that rely on the fact that these values are accessed as strings. Now the common pattern of saving an option value and then restoring it should work the same (except if it is a vim9 script that is using the string type for the variable) and autocmd_get is only since vim9 so maybe this slight incompatibility is acceptable.

Hi,
On Tue, Jan 24, 2023 at 7:12 PM Geoff Reedy @.***>
wrote:

I think it would be neat to allow a funcref in autocmd_add and add a
callback_T cmd_cb field to the auto command struct for it.

The same would be nice for options like omnifunc. Interestingly these are
stored into the buffer structure as callback objects but only set as
strings.

You can set 'omnifunc' and other similar '*func' options to a funcref.  You
can refer to the following help
topic: https://vimhelp.org/options.txt.html#option-value-function
The following commit added this support:
https://github.com/vim/vim/commit/8658c759f05b317707d56e3b65a5ef63930c7498

Yegappan

I started working on a patch to allow a funcref as the cmd option in
autocmd_add but ran into a conceptual limitation: these places cannot be
extended to hold funcrefs without slightly breaking compatibility. There
are potentially scripts that rely on the fact that these values are
accessed as strings. Now the common pattern of saving an option value and
then restoring it should work the same (except if it is a vim9 script that
is using the string type for the variable) and autocmd_get is only since
vim9 so maybe this slight incompatibility is acceptable.


MNT Fix github action for deploying userdocs

Set the branches that activate the action to match the ones used by userhelp according to the userhelp sources json
Also more clearly and accurately identify the specific action (main.yml is hardly specific).
Parent Issue

https://github.com/silverstripe/doc.silverstripe.org/issues/246

The scrutinizer failure can be ignored for this PR - we don't use it anymore, and it will be removed as a part of https://github.com/silverstripeltd/product-issues/issues/567

In theory, if any of the repos are updated the user help should be rebuilt. Would it make more sense to build this on a cron instead?

maybe? I don't think either approach is really more-or-less valuable than the other.
The current approach means it only gets rebuilt when there are actually changes to make - but it might result in rebuilding the site multiple times in quick succession for weird situations where we find multiple related issues.
A cron approach would mean we rebuild unnecessarily a lot (userdocs are not updated frequently at all) but would mean we don't have to worry about adding and updating these actions anywhere that userdocs sit.
I can see some value in both approaches but I don't think there is enough value in the cron approach to warrant changing it right this very second. Maybe create a new issue for that if you think it's worthwhile?


Eslint And Prettier Fix

Problems with eslint and prettier check

Please specify problem

Resolved in #4 . All checks successful


Windows build fixs

This PR fixes a couple of issues and makes improvements for the windows build.

an incompatibility use issue with close_fds in the version file. It will now be false if found to be on windows.
will now default to Gtk style CSSv1 file if on windows, no more manually changing files
for build_msi.bat added in error level checking for build commands, allowing it to cleanly exit the script and report the error code.
cx_freeze.py will now use re.sub to get version from the version file, as cx_freeze does not allow letters to be in versions.
cx_freeze.py is now set to be used from the development tools folder, and removed goes from manually being bundled.

Just the one comment, the rest looks good.

@zeroSteiner Its ready for ya ;)

Landed, thanks @wolfthefallen


Allow unlimited tags in ASG

Thanks to @Jamie-BitFlight, closes #30

Cool :) thanks.

Nice!  Thanks for cleaning this up!


For dashd v<IP_ADDRESS>-RC1 getinfo RPC has been deprecated, but sentinel still uses it

At least that is how it seems to me.  Two locations where getinfo is referenced and I see it in my sentinel output when I run the tests.  I am using the develop branch.
https://github.com/dashpay/sentinel/blob/develop/test/integration/test_jsonrpc.py#L34
https://github.com/dashpay/sentinel/blob/develop/README.md
Sentinel seems to still work with this issue, TBH I don't really know, I do know the tests fail.

Thanks for reporting. This is only used in the "integration test", which really isn't in scope for what the code base does (this external JSONRPC connection test could be done upon startup, for example -- a test isn't needed). I'll open a PR to remove the test.

Fixed in #69.


Support for other blob providers? how do save the image in the markdown itself rather than uploading it in the blob storage.

You will most likely want to review the upload-image.tsx plugin in the code base, and change the route.ts in the api upload folder. You can modify the code to store the blob in another provider.


Error while trying to use openzipkin with elastic search engine

Hi, I am trying to start an open zipkin stack with docker and elastic search as data storage engine, I am using openzipkin/zipkin-elasticsearch7 image for starting elasticsearch7. however, starting the container fails and in the log section there is this error:
/elasticsearch/bin/elasticsearch: /elasticsearch/bin/elasticsearch-env: line 113: syntax error: unexpected word (expecting ")")

This is legit.
± |master {1} ?:3 ✗| → docker run -d -p 9200:9200 openzipkin/zipkin-elasticsearch7
c7fcf7c00998136518164158dd42708c99499cf75d4aaab2ded1fee3ea9721ff
 2020-03-25 08:58:43 ⌚  MacBook-Pro-8 in ~/oss/brave-webmvc-example
± |master {1} ?:3 ✗| → docker logs c7fcf7c00998136518164158dd42708c99499cf75d4aaab2ded1fee3ea9721ff
/elasticsearch/bin/elasticsearch: /elasticsearch/bin/elasticsearch-env: line 113: syntax error: unexpected word (expecting ")")


Package management system like Go?

Package or deps management system like Go?

Yes. will reuse go module.


Base the training material on official flavours.

Thinking about our Docker Images, it would probably make sense to base the training image on some official flavors?
https://github.com/bgruening/docker-recipes/tree/master/galaxy-exom-seq
Disadvantage is that in the resulting training container could contain more tools than needed. How bad is this?
ping @bebatut

startup_lite is also part of the container already and does not need to be included here.

+1 for 'official flavors'

Beginning is here: https://github.com/bgruening/training-material/pull/39
I also would like to build the images via travis and test them.

Is this issue still topical?

Docker


TS >=4.1: Cannot assign because it is not a variable (require does not work with let anymore)

Starting with TS 4.1 and also in TS 4.2, it seems that required code is frozen and cannot be reassigned.
We had some code that would require a JSON and conditionally overwrite it, however that code is no longer valid. See example below for a minimal reproduction.
I couldn't find anything in the release notes or breaking changes.

TypeScript Version:  4.1.2

Search Terms:
require json cannot assign let
Code
let a = require('./package.json');
a = {...a};

Expected behavior:
No warnings should be raised for this code. Alternatively at the least I would expect another warning about defining a with let.
Actual behavior:
 Cannot to 'a' because it is not a variable.

Playground Link:
https://www.typescriptlang.org/play?ts=4.2.0-dev.20201121&useJavaScript=true#code/DYUwLgBAhhC8ECcQEcCuBLJAKA5AOgHoAHKAYwGsoBzEPAKwGcB7AOxwEoBuAWACgZ4AbzwioAXz5A
Related Issues:

This might need to be ported back to a 4.1.3 release.

I think that's because TS binds let x = require('y') statements the same way as import x = require('y'); - as an alias - https://github.com/microsoft/TypeScript/pull/39770. Not sure, maybe the binder should only set the alias flag for const variables
https://github.com/microsoft/TypeScript/blob/d070acf29d579bf0afbfd97a4941bf9171966305/src/compiler/binder.ts#L3305-L3306

I looked at the frequency of const, let and var in conjunction with require and found that const outnumbers let about 100 to 1. var outnumbers let more than 200 to 1. Unfortunately, I couldn't think of an easy way to find re-assignments without compiling all the code I searched through. So I looked at the user tests, which are compiled. But it didn't have any errors like this.
I can think of two possible fixes:

Correctly allow assignments to both let and var, since both are technically mutable (although it's rare in practice).
Allow assignment to let only, since it's rare and it lets us keep the improved declaration emit and goto-def for var, which is more common.

And of course there's always:
0. Do nothing.
(1) causes us to lose aliasing for var, which is a big loss. (2) makes another corner of JS handling more complex. Since this only affects projects with checkJs: true and use var/let with require to mutate the binding, I think the best course is to do nothing. I would recommend // @ts-ignore for cases where you need to write this in a checked JS file.
Side note: I don't think we've noted breaking changes to checkJs features in the past. We need to improve that. And of course I just missed that this would be a break at the time.


Allow marking multiple tasks as completed by holding SHIFT

While holding shift, clicking on 1st task and last should mark as completed all tasks between them.

Hi @mnosov622, can I work on this issue.

Sure!

Hi @mnosov622, I had solved the issue and made the pull request. https://github.com/mnosov622/todo-list/pull/30
Please review and merge it.
Thank You


Problem with http3 when trying to make a call()

Hello,
I'm sorry if this error is stupid, but i can't make a simple call with the  solanaj client.
I'm working with spring boot. I compiled successfully solanaj and integrated it in my maven pom, build is ok.
I'm just trying to call the "getProgramAccounts" endpoint like this :
 RpcClient client = new RpcClient(Cluster.MAINNET);
 String result = client.call("getProgramAccounts", List.of("PUBLIC_KEY"), String.class);
 LOGGER.info(result);

Error returned :

java.lang.NoSuchMethodError: 'okhttp3.RequestBody okhttp3.RequestBody.create(java.lang.String, okhttp3.MediaType)'
at org.p2p.solanaj.rpc.RpcClient.call(RpcClient.java:56) ~[solanaj-1.6-SNAPSHOT.jar:na]

It looks like the okhttp3 method used by solanaj don't exist. I tried to put manually the okhttp3 dependency in the pom like mentionned here, but same error again : https://github.com/web3j/web3j/issues/1271#issuecomment-732106618
Again, i'm sorry if i missed something. I haven't found any documentation on this .call() method..
If anybody can help me it will be really appreciable.
Anyway, thank you for your work with solanaj.
JDK version : 11
Springboot version : 2.5.7
Solanaj version : 1.6-SNAPSHOT

Ok so yes i was stupid, i just see the client.getApi().getProgramAccounts method..
But i have another error and i really don't understand, there is the error :

java.lang.NoSuchFieldError: Companion
at okhttp3.internal.Util.(Util.kt:71) ~[okhttp-4.9.0.jar:na]
at okhttp3.internal.concurrent.TaskRunner.(TaskRunner.kt:309) ~[okhttp-4.9.0.jar:na]
at okhttp3.ConnectionPool.(ConnectionPool.kt:41) ~[okhttp-4.9.0.jar:na]
at okhttp3.ConnectionPool.(ConnectionPool.kt:47) ~[okhttp-4.9.0.jar:na]
at okhttp3.OkHttpClient$Builder.(OkHttpClient.kt:471) ~[okhttp-4.9.0.jar:na]
at org.p2p.solanaj.rpc.RpcClient.(RpcClient.java:41) ~[solanaj-1.6-SNAPSHOT.jar:na]
at org.p2p.solanaj.rpc.RpcClient.(RpcClient.java:36) ~[solanaj-1.6-SNAPSHOT.jar:na]

And the source code used for that :
RpcClient client = new RpcClient(Cluster.MAINNET);
        ProgramAccountConfig conf = new ProgramAccountConfig(RpcSendTransactionConfig.Encoding.base64);
        List<ProgramAccount> result = client.getApi().getProgramAccounts(new PublicKey("PUB_KEY"), conf);
        for(ProgramAccount p : result){
            LOGGER.info(p.getPubkey());
        }

I don't understand what is this field "Companion", can someone help me a little please ?..

Ok, so strange.
Theses error happens when i start the project directly with the spring boot starter on intellij.
When i start the war builded with "java -jar my-war.war", no problem, it works well.
So, sorry for this useless issue.


Capistrano 3.6.0 breaks when used with Rake < 11.0.0, despite gemspec that allows it

Steps to reproduce

Have rake version '>= 10.0.0' and '< 11..0.0' installed either via dependencies or specified in Gemfile
Install Capistrano
bundle exec cap -T --trace

Expected behaviour
Should show available capistrano tasks
Actual behaviour
cap aborted!
NoMethodError: undefined method `already_invoked' for <Rake::Task load:defaults => []>:Rake::Task
/home/current_user/shared/bundle/ruby/2.2.0/gems/capistrano-3.6.0/lib/capistrano/dsl.rb:16:in `invoke'
/home/current_user/shared/bundle/ruby/2.2.0/gems/capistrano-3.6.0/lib/capistrano/application.rb:91:in `load_imports'
/home/current_user/shared/bundle/ruby/2.2.0/gems/rake-10.5.0/lib/rake/application.rb:697:in `raw_load_rakefile'
/home/current_user/shared/bundle/ruby/2.2.0/gems/rake-10.5.0/lib/rake/application.rb:94:in `block in load_rakefile'
/home/current_user/shared/bundle/ruby/2.2.0/gems/rake-10.5.0/lib/rake/application.rb:176:in `standard_exception_handling'
/home/current_user/shared/bundle/ruby/2.2.0/gems/rake-10.5.0/lib/rake/application.rb:93:in `load_rakefile'
/home/current_user/shared/bundle/ruby/2.2.0/gems/rake-10.5.0/lib/rake/application.rb:77:in `block in run'
/home/current_user/shared/bundle/ruby/2.2.0/gems/rake-10.5.0/lib/rake/application.rb:176:in `standard_exception_handling'
/home/current_user/shared/bundle/ruby/2.2.0/gems/rake-10.5.0/lib/rake/application.rb:75:in `run'
/home/current_user/shared/bundle/ruby/2.2.0/gems/capistrano-3.6.0/lib/capistrano/application.rb:14:in `run'
/home/current_user/shared/bundle/ruby/2.2.0/gems/capistrano-3.6.0/bin/cap:3:in `<top (required)>'
bin/cap:17:in `load'
bin/cap:17:in `<main>'

looking at line 16 of capistrano-3.6.0/lib/capistrano/dsl.rb reveals
      if task && task.already_invoked

Digging around the rake github repo reveals that Rake::Task#already_invoked is available only in 11.0.0, capistrano.gemspec specifies:
  gem.add_dependency "rake", ">= 10.0.0"

Your configuration
Gemfile contains
gem 'rake', '~> 10.5.0'
gem 'capistrano'

Paste Capistrano's doctor output here (cap <stage> doctor):
(Backtrace restricted to imported tasks)
cap aborted!
NoMethodError: undefined method `already_invoked' for <Rake::Task load:defaults => []>:Rake::Task

Tasks: TOP => staging
(See full trace by running task with --trace)

Workaround
Until gemspec/method is fixed, place rake in Gemfile with version above 11.0.0.
gem 'rake',  '~> 11.2.2'

Thank you very much for the report! Yes, this is a serious bug.

@troelskn since this is related to your PR #1730, can you investigate and propose a fix for this? Perhaps we need to monkey patch Rake < 11 to expose already_invoked.

BTW, this is the Rake PR that exposed already_invoked: https://github.com/ruby/rake/pull/93

Yep. I'll take a look at it.


Test with Ruby 3.3

Description
Add Ruby 3.3 to the test matrix
Completed Tasks

[x] I have read the Contributing Guide.
[x] The pull request is complete (implemented / written).
[x] Git commits have been cleaned up (squash WIP / revert commits).
[x] I wrote tests and ran bundle exec rake locally (if code is attached to PR).

Thanks for the contribution!


Operate ST95 in tag mode

upon user input (button pressed), switch to tag mode
during interrogation, provide stored data to the interrogator via NFC

http://www.st.com/content/st_com/en/products/embedded-software/st25-nfc-rfid-software/stsw-st95hf001.html

not relevant due to change in RFID technology


Overlay for redistributable + relocatable packages

Describe the bug
The question of how to distribute nixpkgs packages to non-nix system comes up often and in many different forms. The nix ecosystem has a lot of advantages for developing and building software from the perspective of the people writing the software, but many of those advantages are not relevant from a user's perspective, so it can be limiting to require users to install and use nix to use software built with nix.
So far nix bundle with https://github.com/matthewbauer/nix-bundle is the most generally applicable solution we have for that. That however requires the use of namespaces which aren't available on macOS, has considerable invocation overhead, and can be confusing for users as it is very non-idiomatic.
An option to make many packages redistributable is to statically link them. As long as they don't reference any other packages or themselves other than via linking, the resulting package will not have any such references, making it work both on systems regardless of whether nix installed (redistributable), and regardless of which path they're copied to (relocatable). If they do reference other packages or themselves, those references should be made relative to the executable, and the executable and the referenced files should be moved together. This is especially useful on macOS since applications are packaged as directories, but even for other kinds of packages and on other systems distributing packages as archived directories is very simple.
Currently not all statically linked packages are redistributable and relocatable, and for users looking for those packages it can be confusing to navigate. An overlay separate from pkgsStatic can clarify this.
Note that non-trivial packages might require a lot of work to make relocatable, so it's also possible that statically linked packages being relocatable is an unintended side effect. In that case we should document this so that the option of static linking stop misleading people looking to redistribute packages.
Related issues:
https://github.com/NixOS/nixpkgs/issues/214611
https://github.com/NixOS/nixpkgs/issues/43795
Notify maintainers
@NixOS/static
@NixOS/darwin-maintainers

So you propose to get rid of using absolute paths ever?
That would remove a need for having https://github.com/NixOS/nix/issues/1971. See also https://github.com/NixOS/nix/issues/7224.

Currently not all statically linked packages are redistributable and relocatable, and for users looking for those packages it can be confusing to navigate. An overlay separate from pkgsStatic can clarify this.

Could you give some examples of:

What packages are good candidates for additional overrides/changes required to be redistributable and relocatable?
What sort of changes are often required for packages to be redistributable/relocatable?
Do you expect that this overlay would be hard to maintain?  (i.e. that it would require a lot of work to keep everything compiling)

Unfortunately I believe a relocatable overlay is a pipe dream. Somehow rewriting absolute references to relative ones would not be enough, as absolute paths can't necessarily be replaced with relative ones, as the reference point would not be fixed. Instead software would need to be patched somehow to resolve these references correctly – and already discovering your own location can be error prone. Maintaining such invasive patches that are not strictly required does not seem viable to me.
What would be possible would be to have an setup hook that verifies that a store path is “relocatable”, i.e. it has no references to other store paths, but you can kind of already see that from nix-store -q --references, so it'd just be valuable preventing regressions.

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/my-issues-when-pushing-nixos-to-companies/28629/10


The CFS reports errors

Thank you very much for your contribution!
I got this error when I try to run CFS. I use MATLAB R2019b.
The problem is infeasible.

During presolve, quadprog found the constraints to be inconsistent
to within the constraint tolerance.

Index exceeds the number of array elements (0).

Error in temporal_opt (line 84)
        reftnew = soln(1:nstep-1);

Do you have any suggestions?
Thank you very much!

Is your soln an empty array? You need to check the formulation of your QP to ensure feasibility.

In the cloned code, this part (line 79 to line 82) was commented. Should it be like this?
Thank you!
%         [~,Aeq,beq] = t2y_lin(reft,path,theta,vref,[v0;0],delta/v0);
%         soln = quadprog(Q,[],A,b,Aeq,beq);
%         soln_lin = quadprog(Q,[],A,b,L(1:5*(nstep-1),:),S(1:5*(nstep-1)));
%         soln_lin = quadprog(Q,[],A,b,L(5*(nstep-1)+1:end,:),S(5*(nstep-1)+1:end));

in line 77, it is solving a QP. You may want to check whether the constraint in 'Lstack' and 'Sstack' makes sense.
soln = quadprog(Q,[],Lstack,Sstack);

same problem with original codes:

temporal_opt

yaxis =
Columns 1 through 25
 0     2     4     6     8    10    12    14    16    18    20    22    24    26    28    30    32    34    36    38    40    42    44    46    48

Columns 26 through 34
50    52    54    56    58    60    62    64    66

Solver stopped prematurely.
quadprog stopped because it exceeded the iteration limit,
options.MaxIterations = 200 (the default value).
Minimum found that satisfies the constraints.
Optimization completed because the objective function is non-decreasing in
feasible directions, to within the default value of the optimality tolerance,
and constraints are satisfied to within the default value of the constraint tolerance.

Minimum found that satisfies the constraints.
Optimization completed because the objective function is non-decreasing in
feasible directions, to within the default value of the optimality tolerance,
and constraints are satisfied to within the default value of the constraint tolerance.

Minimum found that satisfies the constraints.
Optimization completed because the objective function is non-decreasing in
feasible directions, to within the default value of the optimality tolerance,
and constraints are satisfied to within the default value of the constraint tolerance.

Solver stopped prematurely.
quadprog stopped because it exceeded the iteration limit,
options.MaxIterations = 200 (the default value).
No feasible solution found.
quadprog stopped because it was unable to find a point that satisfies
the constraints within the default value of the constraint tolerance.

The problem is infeasible.
During presolve, quadprog found the constraints to be inconsistent
to within the constraint tolerance.
Index exceeds the number of array elements (0).
Error in temporal_opt (line 84)
reftnew = soln(1:nstep-1);


Fixed #16976 .label without .label-* is invisible

I moved the label color declarations to the variants themselves so that any existing non-Bootstrap HTML using .label class declarations don't just have elements disappear so that they have to be noticed & found before we even start figuring out why they disappeared in the first place.
Also it just makes sense.  color & background should be declared at the same time.

Also it just makes sense. color & background should be declared at the same time.

Except the same properties—which don't change by variant—are now unnecessarily repeated.
I understand the problem, but changing things like this so late in v3's development isn't going to be helpful to folks. Thanks, but we'll pass for now <3.

I'm really impressed with you guys' fast responses on this!
Not happy, but I understand your point.  I'd thought about including @label-color and @label-link-hover-color variants to match, but I thought that it might be a bit much for adoption in the middle of a release cycle.
Any chance of getting the problem fixed in version 4?

Any chance of getting the problem fixed in version 4?

We're close to locking things down for the first v4 alpha, but so far we haven't made any changes here.


filter for gluten free options

Is your feature request related to a problem? Please describe.
There is an option to only show vegetarian or vegan options but no way to only show gluten free options.
Describe the solution you'd like
Please add an option to only show gluten free options. Gluten is allergen code 40, wheat is allergen code 40a.
Describe alternatives you've considered
I've considered --show-all-allergens but that's not a filter and the output is a little cluttered for my purpose.
Additional context
not necessary, I think

Implemented in the current development version will be in the new releae when some other features are finished.
Usable with the flag --glutenfree


Improve Eqaulity.stencil.swift

For now I just fixed some typos in current version of template to make it work on Insanity own model types.
But I'd like to improve that template to make it more generic:

We may add if lhs === rhs { return true } in the second line of the isEqual for classes.
For structs instead of generating isEqual template should generate Equitable conformance.
For enums with associated values we may generate Equatable conformance based on switch like the following.

swift (lhs, rhs):
case let (.{{ case }}(lhsValue), .{{ case}}.(rhsValue)): return lhsValue == rhsValue

But that will probably require some additional checks (like in #6 for instance) and maybe a separate issue/pr will be better.

Aslo having https://github.com/kylef/Stencil/pull/32 would be cool. But in meantime maybe we should  patch Stencil the same way as @AliSoftware patched it in SwiftGen?

This template is for Insanity itself, We can add a generic one but might be worth doing that in top root folder under ExampleTemplates ?
In this pr you just tweaked spaces right? I used this template to code generate the boilerplate code for the tool so it worked, I think the spaces were inserted either by Xcode or I've to correct Swiftlint ignore entry

Yes, there were few problems with spaces and new lines. With that I was able to generate the same code as what is currently checked in.
Regarding where to create a more generic template I was going to create a separate issue asking about your plans on how to distribute custom templates. This one used internally by the tool can be different and "private", but I guess there will be more useful templates coming and they will drive new features in generator. Let's discuss that there =)


Add meta data if query params exists

I've added the metadata if there are query params in the URL.
I've used the react-helmet library to add metadata. I wasn't able to test it though because it didn't overwrite the metadata from _document.tsx.
Please review this and suggest the required changes.

LGTM, will approve and merge once @Cali93 goes through it as well!

Hey @Nazeeh21 I think that it would be more appropriate to use the Next head compononent
https://nextjs.org/docs/api-reference/next/head

@Cali93 I tried that but <Head> component cant be used in files other than _document.tsx and I want to use it index.tsx.  Though I'll try getting the query params in _document.tsx and update the metadata in _document.tsx itself using <Head> from nextjs.

@Cali93 I've replaced the <Helmet> with <Head> from Nextjs. Please have a look and provide suggestions. 😃

Alright! workflows seem to be happy now. 😅
@Cali93 Please have a look at the content inside the Head tag in index.tsx and if you feel to replace something or update something, please LMK. Thanks.


iOS builds always fail. With error Unable to add a source with url https://cdn.cocoapods.org/ named trunk

Build/Submit details page URL
https://expo.dev/accounts/santeacademie/projects/test-build/builds/0c40cac3-2079-4ac2-8193-4415987b9cee
Summary
Today (may the 11th) , all of my iOS builds with eas are failing. Yesterday there were no problems.
During the build, in the step, there is this error :

Here is my package.json :
{
  "name": "test-build",
  "version": "1.0.0",
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "web": "expo start --web",
    "eject": "expo eject"
  },
  "dependencies": {
    "expo": "~45.0.0",
    "expo-status-bar": "~1.3.0",
    "react": "17.0.2",
    "react-dom": "17.0.2",
    "react-native": "0.68.2",
    "react-native-web": "0.17.7"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9",
    "@types/react": "~17.0.21",
    "@types/react-native": "~0.66.13",
    "typescript": "~4.3.5"
  },
  "private": true
}

My eas.json :
{
  "cli": {
    "version": ">= 0.52.0"
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal"
    },
    "preview": {
      "distribution": "internal"
    },
    "production": {}
  },
  "submit": {
    "production": {}
  }
}

and my app.json :
{
  "expo": {
    "name": "test-build",
    "slug": "test-build",
    "version": "1.0.0",
    "orientation": "portrait",
    "icon": "./assets/icon.png",
    "userInterfaceStyle": "light",
    "splash": {
      "image": "./assets/splash.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "updates": {
      "fallbackToCacheTimeout": 0
    },
    "assetBundlePatterns": [
      "**/*"
    ],
    "ios": {
      "supportsTablet": true,
      "bundleIdentifier": "com.company.testbuild"
    },
    "android": {
      "adaptiveIcon": {
        "foregroundImage": "./assets/adaptive-icon.png",
        "backgroundColor": "#FFFFFF"
      }
    },
    "web": {
      "favicon": "./assets/favicon.png"
    }
  }
}

Managed or bare?
Managed
Environment
  expo-env-info 1.0.3 environment info:
    System:
      OS: macOS 12.3.1
      Shell: 5.8 - /bin/zsh
    Binaries:
      Node: 14.16.0 - ~/.nvm/versions/node/v14.16.0/bin/node
      Yarn: 1.22.18 - ~/.yarn/bin/yarn
      npm: 7.20.0 - ~/.nvm/versions/node/v14.16.0/bin/npm
      Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
    Managers:
      CocoaPods: 1.11.3 - /usr/local/bin/pod
    SDKs:
      iOS SDK:
        Platforms: DriverKit 21.4, iOS 15.4, macOS 12.3, tvOS 15.4, watchOS 8.5
    IDEs:
      Android Studio: 2021.1 AI-211.7628.21.2111.8092744
      Xcode: 13.3.1/13E500a - /usr/bin/xcodebuild
    npmPackages:
      expo: ~45.0.0 => 45.0.3
      react: 17.0.2 => 17.0.2
      react-dom: 17.0.2 => 17.0.2
      react-native: 0.68.2 => 0.68.2
      react-native-web: 0.17.7 => 0.17.7
    npmGlobalPackages:
      eas-cli: 0.52.0
      expo-cli: 5.4.3
    Expo Workflow: managed

Error output
Installing pods
Using Expo modules
[Codegen] Generating ./build/generated/ios/React-Codegen.podspec.json
Analyzing dependencies
Fetching podspec for `DoubleConversion` from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`
[Codegen] Found FBReactNativeSpec
Fetching podspec for `RCT-Folly` from `../node_modules/react-native/third-party-podspecs/RCT-Folly.podspec`
Fetching podspec for `boost` from `../node_modules/react-native/third-party-podspecs/boost.podspec`
Fetching podspec for `glog` from `../node_modules/react-native/third-party-podspecs/glog.podspec`
Adding spec repo `trunk` with CDN `https://cdn.cocoapods.org/`
[!] Unable to add a source with url `https://cdn.cocoapods.org/` named `trunk`.
You can try adding it manually in `/Users/expo/.cocoapods/repos` or via `pod repo add`.
pod exited with non-zero code: 1

Reproducible demo or steps to reproduce from a blank project
Run expo init test-build
Go in the project, and then launch eas build --platform ios --profile preview
I choose a generic iOS bundle identifier com.company.testbuild
I used registered devices to test

Sorry, error with the screenshot of the error, here you are :

duplicate https://github.com/expo/eas-cli/issues/1099

The issue can be tracked https://status.cocoapods.org/ or https://status.expo.dev/
Closing in favor of the other issue.


CorefUD

Can I point you in the direction of this project:
https://ufal.mff.cuni.cz/corefud

I already know the project (it was already listed on my list, under multilingual datasets) and I had the chance to meet people working on it during LREC 2022 and LREC-COLING 2024. Such an interested and needed project!
I was thinking on adding the Basque coref dataset in it, but unfortunately I changed on research topics for my PhD and I don't work on coreference anymore.

Good point, I'd missed the multilingual section


mapmap: Fix startup issues and unbreak the derivation.

Motivation for this change
mapmap has been broken as far as I can see for two reasons:

It segfaulted on startup due to a too early initialization of it's message handler. See: https://github.com/mapmapteam/mapmap/pull/519
It did not use wrapQtAppsHook and therefor failed on startup with the usual error message.

I'm not familiar with mapmap right now, so I so far can only tell that it starts up again.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Thank you very much for fixing mapmap. Additionally to @SuperSandro2000's comment I'd prefer it if you could squash the three commits into one.

Result of nixpkgs-review pr 105793 run on x86_64-linux 1

1 package built:

mapmap

Thank you very much for fixing mapmap. Additionally to @SuperSandro2000's comment I'd prefer it if you could squash the three commits into one.

Done.

Result of nixpkgs-review pr 105793 run on x86_64-linux 1

1 package built:

mapmap

Result of nixpkgs-review pr 105793 run on x86_64-darwin 1


Update stable version in repo from 1.3.4 to 1.3.5

Think about update stable version to 1.3.5
Version: stable=1.3.4 (476 days old) => latest=1.3.5 (15 days old)
Installs: stable=2499 (80.87%), latest=365 (11.81%), total=3090
Click to edit

This issue seems to be outdated.
This issue suggests to update the stable version of this adapter to 1.3.5 but the current stable version is already 1.3.5.
So this issue should be closed.


Trouble converting mesh from vtk to obj

Hi there,
created a .vtk sequence with reconstruct and would like to convert it to obj...
.\splashsurf.exe convert --domain-max="1000;1000;1000" --domain-min="0;0;0" --mesh out\ParticleData_Fluid_surface_151.vtk -o obj_con\Surface_151.obj
Reading mesh from "out\ParticleData_Fluid_surface_151.vtk"...
[2023-04-17T12:12:58.423520+02:00][splashsurf][ERROR] Error occurred: Failed to load surface mesh from file "out\ParticleData_Fluid_surface_151.vtk"
[2023-04-17T12:12:58.423824+02:00][splashsurf][ERROR]   caused by: Expected only triangle cells. Invalid number of vertex indices (3) of cell 0
Could you please help?
Kind regards

Have seen issue #174... If you could implement obj to sequences that would work for me fine too

Sorry, this was a bug that is fixed in the repository now but I did not make a new release since then.
Until I make a new release (hopefully soon) you can install the current version from this repository using
cargo install --git https://github.com/w1th0utnam3/splashsurf.git

@Perpetual3134 I just published a new release (v0.9.0) which should fix the error and which also allows you to directly output .obj files from a sequence. If you use --input-sequence=file_{}.vtk, just specify additionally --output-file=file_surace_{}.obj and it should work.
You can install the latest version of splashsurf normally using cargo install splashsurf.


Typing parenthesis in text mode results in invalid Latex

Platform

Logseq v0.10.0
Live Math v1.2.3
No other plugins installed

Problem
Trying to type parenthesis in text mode results in invalid Latex. This used to be a problem with old MathLive versions but was fixed a while ago in ac2f460. Furthermore, the problem does not exist in the latest MathLive demo (v0.97.4). Which is quite odd, since Live Math v1.2.3 should be using the same version.
Screenshots

Input

Output

I wonder if the update didn't fully apply until I restarted.

Yes, I didn't work on this and many setting changes require a restart.

PS: I can confirm that the update hadn't fully applied actually. Since the new version has a new hamburger menu. On a side note, clicking the hamburger menu and selecting an option doesn't release the cursor so you will not be able to type in the math field afterwards.


Link to Atlassian "Open Source Project License Request"

Open Source Projects can request a license for Atlassian products, including Confluence. While at least Confluence appears in the list, finding the request form from the link given in the list is not straight forward. Hence I suggest to change the link to: https://www.atlassian.com/software/views/open-source-license-request

Hey @devurandom, that's smart, I'll put some time in the schedule to make sure Atlassian is more accurately represented and properly linked. Thanks for the heads up!


Inconsistent vendor name used in CPE on same products... Vendor: ashlar_vellum / ashlar

Inconsistent vendor name used in CPE on same vendor/products... ashlar_vellum / ashlar
This should be consistent across the CVEs.
CPE Examples:
cpe:2.3:a:ashlar_vellum:cobalt::::::::
cpe:2.3:a:ashlar:cobalt::::::::
CVEs listed under this vendor:
CVE-2023-44438
CVE-2023-35710
CVE-2023-35712
CVE-2023-35713
CVE-2023-35714
CVE-2023-35715
CVE-2023-44437
CVE-2023-34290
CVE-2023-34286
CVE-2023-34300
CVE-2023-34291
CVE-2023-34302
CVE-2023-34292
CVE-2023-34293
CVE-2023-34289
CVE-2023-34304
CVE-2023-34309
CVE-2023-42103
CVE-2023-34306
CVE-2023-34307
CVE-2023-34308
CVE-2023-44439
CVE-2023-35716
CVE-2023-34310
CVE-2023-34287
CVE-2023-34288
CVE-2023-34303
CVE-2023-34299
CVE-2023-34305
CVE-2023-42104
CVE-2023-42102
CVE-2023-42101
CVE-2023-44440

@patrickmgarrity Good catch. At issue here is that there is not much information in the NVD CPE dictionary for Ashlar-Vellum. In fact, it appears that there is only one entry, for Graphite 13.0.48. There are entries that have been used in NVD data previously, though, which all appear under the "ashlar" vendor name.
I've asked our analysts to review these CPEs and check to see if we can make them consistent. I'll leave this open as we track that.

These have been made consistent. The last couple of updates should be present within the next 60 minutes.


Implemented BFS.py

Graph Traversal Using BFS for implicit Graphs..

Looks good to me. I'm gonna merge it now.


docs: use PHP 8.3 for the TYPO3 Quickstart

The current stable requires PHP 8.2+ (making the current snippet fail) and v11+ supports PHP 8.3 so it seems like a good default.

The Issue
PHP 8.1 is not supported by the latest stable TYPO3 version (v13.0.1) which gets installed by default
How This PR Solves The Issue
Manual Testing Instructions
Follow the steps from the paragraph.
Automated Testing Overview
none

Related Issue Link(s)
none
Release/Deployment Notes
none

You mean a default PHP version for that project type?
Hmm, not sure. I don't think it is needed.


railway: 3.9.0 -> 3.9.3

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/railwayapp/cli/releases.
meta.description for railway is: Railway.app CLI
meta.homepage for railway is: https://github.com/railwayapp/cli
meta.changelog for railway is: https://github.com/railwayapp/cli/releases/tag/v3.9.3
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 3.9.3 with grep in /nix/store/ijhkpfnkii0v8ml6zd90wj460nx2sw8c-railway-3.9.3
found 3.9.3 in filename of file in /nix/store/ijhkpfnkii0v8ml6zd90wj460nx2sw8c-railway-3.9.3

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

2 package rebuild(s)

First fifty rebuilds by attrpath

railway

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/ijhkpfnkii0v8ml6zd90wj460nx2sw8c-railway-3.9.3 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A railway https://github.com/r-ryantm/nixpkgs/archive/6cd7359f52cfdfd3cba1072f901027f5b75adc17.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/6cd7359f52cfdfd3cba1072f901027f5b75adc17#railway

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/ijhkpfnkii0v8ml6zd90wj460nx2sw8c-railway-3.9.3
ls -la /nix/store/ijhkpfnkii0v8ml6zd90wj460nx2sw8c-railway-3.9.3/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review --extra-nixpkgs-config '{ allowInsecurePredicate = x: true; }' run on x86_64-linux 1

1 package built:

railway

Maintainer pings
cc @Craftzman7 @techknowlogick for testing.

@wegank ack, thanks for catching that.


Charts/Charts.h file not found

Everytime I try to archive in Ad Hoc mode, it gives me this error. I added this as an embedded framework. I tried to mirror the ChartDemo settings as much as possible. Does anyone else get this and if so, how did you resolve this.
Thx in advance.

import swift from Objective-C, use
@import Charts;

Thanks @baryon!

@baryon hello, @import Charts; where to put this code


CP2K trajectories failing

The CP2K geometry optimization trajectories aren't being extracted in the following entry: https://nomad-lab.eu/prod/v1/gui/search/entries/entry/id/l6-B-6K9H9oF9-mol6-jlDQSx1TU

As communicated to the author, I will take this issue after Easter at the earliest.


[Bug]: BeSLighthouse not adapting to mobile browser screen size

Contribution guidelines

[X] I've read the contribution guidelines and wholeheartedly agree

Description
BeSLighthouse not adapting to mobile browser screen size. The menu is not visible.
Expected behaviour
BeSLighthouse should adjust itself for a mobile browser screen with the menus.
Actual behaviour
BeSLighthouse not adapting to mobile browser screen size. The menu is not visible.
Steps to reproduce
Open BeSLighthouse in any browser in a mobile phone. You will see the webpage is not adapting to the screen size.
Relevant screenshots
Screenshots not available.
What browsers are you seeing the problem on?
Firefox, Chrome, Safari, Microsoft Edge
Relevant log output
No response

Fixed this bug in https://github.com/Be-Secure/BeSLighthouse/pull/499


[ErrorException] strtotime(): Epoch doesn't fit in a PHP integer during date validation when exceeding current epoch.

Laravel Version: 8
PHP Version: 8
Database Driver & Version: MariaDB Latest docker image

Description:
In cases of extreme oversight, there's a way to run into an exception if you try to put in some obscenely far away date, as it'd exceed PHP's integer size when trying to use strtotime.
Petition to have exception handling introduced to have a safety fallback.
Steps To Reproduce:

Setup a date field frontend, relying solely on backend validation.
Try to setup that date field validate using the inbuilt date callback function.
Call the validator on a date callback, with an example value of 12-2-4123.
Encounter the problem.

Problematic code area:
laravel\framework\src\Illuminate\Validation\Concerns\ValidatesAttributes.php:452
Workaround:
Validate client side, add a custom function for date fields until resolved.

Is there interest in having this issue fixed? I'd be more than happy to contribute a fix.
Proposed solution:

Cleanest: Add in a simple check in the if condition to check if the date exists within this epoch.
More thorough: introduce a try-catch block when trying to call strtotime.

I'd like to point further that this isn't strictly a laravel related issue, other libraries face the same issues when calling the function. It's more to do with PHP than Laravel. Still having a fix for this would be great, as dates are indispensable :)

Hmm, yeah it might be best to fix this. I think the try/catch can be a good first attempt and if that's refused, maybe the other solution. Can you maybe also give a really easy snippet with the validator to reproduce the issue?

Hmm, just tried it with this and that works:
Validator::make( [
  'foo' => '12-2-4123',
], [
  'foo' => 'date',
])->validate();

Can you provide the exact code that causes this?

Sure thing :)
        $validationObject = Validator::make($request->all(), $this->validationRules);
        try {
            $validationFlag = $validationObject->fails();
        } catch( \Exception $e ) {
            $validationFlag = false;
        }

Despite this, I end up getting the error.

I'll need the exact data and the exact rules

```

[
'created_at' => [
'label' => __('Created At'),
'placeholder' => __('Select appropriate Date'),
'validation' => 'sometimes|date|before:2099-01-01',
'required' => false,
'type' => 'date',
'render' => false,
'hidden' => true
],
'valid_until' => [
'label' => __('Valid Until'),
'placeholder' => __('Select appropriate Date'),
'validation' => 'required|date|before:2099-01-01',
'required' => true,
'type' => 'date',
'render' => true,
'hidden' => false
],
'updated_at' => [
'label' => __('Updated At'),
'placeholder' => __('Select appropriate Date'),
'validation' => 'sometimes|date|before:2099-01-01',
'required' => false,
'type' => 'date',
'render' => false,
'hidden' => true
],
'deleted_at' => [
'label' => __('Deleted At'),
'placeholder' => __('Select appropriate Date'),
'validation' => 'nullable|date|before:2099-01-01',
'required' => false,
'type' => 'date',
'render' => false,
'hidden' => true
]
I used `12-12-4999` to first encounter this bug.

Please post it like the example I shared. The exact code snippet with data.

My request data was this(Laravel's Dump and die request object):
array:7 [▼
  "_token" => "aAI55QeK5Lv1G1N0psaJuqN8OwQcuinF6eJkeOhy"
  "name" => "qweqweqwe"
  "phone" => "9888888888"
  "email" =><EMAIL_ADDRESS>  "license_data" => "{}"
  "user_id" => "1"
  "valid_until" => "4123-12-04"
]

All I did was
        $validationObject = Validator::make($request->all(), $this->validationRules);
        $validationFlag = $validationObject->fails();

$this->validationRules is as follows:
array:10 [▼
  "name" => "required|max:160"
  "phone" => "nullable|digits:10"
  "email" => "nullable|regex:/^.+@.+$/i|max:255"
  "license_key" => "nullable|alpha_num|length:10"
  "license_data" => "required|json"
  "user_id" => "nullable|integer"
  "created_at" => "sometimes|date"
  "valid_until" => "required|date"
  "updated_at" => "sometimes|date"
  "deleted_at" => "nullable|date"
]

Wrapping the function in a try-catch does basically make the redirect back fire with nothing in the validation error message bag.
Here's my PHP info (I use laragon on a windows env)

Do kindly let me know if you need any more info. I'm currently working on a fix on this.

Entire stack shared here: https://flareapp.io/share/yPay4laP

I'm sorry but I can still not reproduce it with the data you provided:
Validator::make([
  "_token" => "aAI55QeK5Lv1G1N0psaJuqN8OwQcuinF6eJkeOhy",
  "name" => "qweqweqwe",
  "phone" => "9888888888",
  "email" =><EMAIL_ADDRESS>  "license_data" => "{}",
  "user_id" => "1",
  "valid_until" => "4123-12-04",
], [
  "name" => "required|max:160",
  "phone" => "nullable|digits:10",
  "email" => "nullable|regex:/^.+@.+$/i|max:255",
  "license_key" => "nullable|alpha_num|length:10",
  "license_data" => "required|json",
  "user_id" => "nullable|integer",
  "created_at" => "sometimes|date",
  "valid_until" => "required|date",
  "updated_at" => "sometimes|date",
  "deleted_at" => "nullable|date",
])->validate();

This passes for me on the latest Laravel 8 version. I'll need to redirect you to a support channel:

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

@driesvints I'm sorry, but let me get this straight: Just because you're not able to replicate the issue, the issue doesn't exist? I've seen people face pitfalls with that attitude, but I'll trust your judgement with this one, I have no need for support.
I'll make a PR regardless, it should be non-invasive, add in a bit of defensive programming against strtotime failing in case of an integer overflow during conversion. I invite you to close the issue if you think it's a waste of your time.

@coderkoala more than welcome to send in the PR but I can't verify the issue if I can't reproduce it.

@coderkoala is the machine you are running PHP on 32-bit?


Access Return Filename in done function

Hi,
In my php/index.php I have renamed my uploaded files with a random code,
and at the end of the handle_file_upload function I have changed return $file to return $code,
how would I go about retrieving this in done function in jquery.fileupload-ui.js file

got it, I just used data.result.join(",")


Error js after build

Hello,
I have this error after build my project with webpack :
"Uncaught TypeError: Cannot set property 'exports' of undefined"
e.event=t,c[t]=e,l.props[t+"Options"]={type:Object,default:function(){return{}}}}.bind(f),f.component=l,t.exports=f})}])}

Do you mind showing how you use/import the component (vue-tabs) ?

in my .vue import
import {VueTabs, VTab} from 'vue-nav-tabs'
import 'vue-nav-tabs/dist/vue-tabs.min.css'

 components: {
      VueTabs,
      VTab }

Do you use vue-cli? I'll try to reproduce that.

Yes i use vue-cli

Had no issues building with the webpack template from vue-cli. Can you provide a bit more info about the setup ? package.json maybe or other relevant details

my package.json
{
  "name": "studio",
  "version": "0.1.1",
  "description": "Iaso studio",
  "author": "Olivier Romeyer",
  "private": true,
  "scripts": {
    "dev": "node build/dev-server.js",
    "build": "node build/build.js",
    "build-preprod": "node build/buildpreprod.js",
    "lint": "eslint --ext .js,.vue src"
  },
  "dependencies": {
    "axios": "^0.16.1",
    "bootstrap-sass": "^3.3.7",
    "gojs": "^1.7.7",
    "jquery": "^2.2.4",
    "jsplumb": "^2.3.2",
    "mini-toastr": "^0.6.5",
    "moment": "^2.18.1",
    "qs": "^6.4.0",
    "vue": "^2.2.2",
    "vue-axios": "^2.0.2",
    "vue-json-tree-view": "^2.0.3",
    "vue-nav-tabs": "^0.1.2",
    "vue-notifications": "^0.8.0",
    "vue-router": "^2.2.0",
    "vue-sortable": "^0.1.3",
    "vue2-dropzone": "^2.0.0",
    "vued3tree": "0.0.2",
    "vuex": "^2.2.1",
    "vuex-router-sync": "^4.1.2"
  },
  "devDependencies": {
    "autoprefixer": "^6.7.2",
    "babel-core": "^6.22.1",
    "babel-eslint": "^7.1.1",
    "babel-loader": "^6.2.10",
    "babel-plugin-transform-runtime": "^6.22.0",
    "babel-preset-env": "^1.2.1",
    "babel-preset-stage-2": "^6.22.0",
    "babel-register": "^6.22.0",
    "chalk": "^1.1.3",
    "connect-history-api-fallback": "^1.3.0",
    "copy-webpack-plugin": "^4.0.1",
    "css-loader": "^0.26.1",
    "eslint": "^3.14.1",
    "eslint-config-standard": "^6.2.1",
    "eslint-friendly-formatter": "^2.0.7",
    "eslint-loader": "^1.6.1",
    "eslint-plugin-html": "^2.0.0",
    "eslint-plugin-promise": "^3.4.0",
    "eslint-plugin-standard": "^2.0.1",
    "eventsource-polyfill": "^0.9.6",
    "express": "^4.14.1",
    "extract-text-webpack-plugin": "^2.0.0",
    "file-loader": "^0.10.0",
    "friendly-errors-webpack-plugin": "^1.1.3",
    "function-bind": "^1.1.0",
    "html-webpack-plugin": "^2.28.0",
    "http-proxy-middleware": "^0.17.3",
    "node-sass": "^4.5.2",
    "opn": "^4.0.2",
    "optimize-css-assets-webpack-plugin": "^1.3.0",
    "ora": "^1.1.0",
    "rimraf": "^2.6.0",
    "sass-loader": "^6.0.3",
    "semver": "^5.3.0",
    "url-loader": "^0.5.7",
    "vue-loader": "^11.1.4",
    "vue-style-loader": "^2.0.0",
    "vue-template-compiler": "^2.2.4",
    "webpack": "^2.3.3",
    "webpack-bundle-analyzer": "^2.2.1",
    "webpack-dev-middleware": "^1.10.0",
    "webpack-hot-middleware": "^2.16.1",
    "webpack-merge": "^2.6.1"
  },
  "engines": {
    "node": ">= 4.0.0",
    "npm": ">= 3.0.0"
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not ie <= 8"
  ]
}

I have tried with exactly the same package.json and didn't get any errors. Are you sure this error is caused by vue-tabs ? If you remove the component it works ?

The build is ok, when i open my project in Chrome i have this issue. When i remove the component all is ok :(

Hm. Any other stack trace information about the errror?

vue-tabs.js:7 Uncaught TypeError: Cannot set property 'exports' of undefined
    at vue-tabs.js:7
    at vue-tabs.js:7
    at Object.<anonymous> (vue-tabs.js:7)
    at t (vue-tabs.js:1)
    at Object.defineProperty.value (vue-tabs.js:1)
    at t (vue-tabs.js:1)
    at Object.<anonymous> (vue-tabs.js:1)
    at t (vue-tabs.js:1)
    at Object.me (vue-tabs.js:1)
    at t (vue-tabs.js:1)

Thanks for the details! Fixed it. Please update to the latest version 0.2.2 It seems the issue was caused by a third party component VTouch which I removed anyway since it was used to swipe tabs and was more experimental

Thanks a lot for your time ! work perfectly


Update CI to use 0.30.0

😢 oh, dear.

Assertion failed: (getActiveBits() <= 64 && "Too many bits for uint64_t"), function getZExtValue, file /var/cache/omnibus/src/llvm/llvm-6.0.1.src/include/llvm/ADT/APInt.h, line 1545.

Strange, it works fine on my machine with the same LLVM version (6.0.1).
I'm almost sure it's related to 128 bit integers. The error seem to happen in some LLVM code that uses big integers (and I assume they use that for i128, but I'm not sure).
It should be easy to debug (if reproducible) with gdb, when the crash happens you'll see what in our code caused it.

Another thing: it seems in Mac CI, and also while developing locally in Mac, LLVM 6 is used and not LLVM 8. The reason is that LLVM comes with OSX:
$ which llvm-config
/usr/local/bin/llvm-config
$ llvm-config --version
6.0.1

LLVM 8 is here:
/usr/local/opt/llvm/bin/llvm-config

brew recommends doing export PATH="/usr/local/opt/llvm/bin:$PATH" so it can find it.
So maybe one way to fix it would be to add /usr/local/opt/llvm/bin/llvm-config to the list of locations, before the default llvm-config. I don't know... Or just exporting that PATH in the Makefile.

@asterite the thing you are pointing it regarding the llvm used, are you saying it considering that these scripts in the build are using the omnibus package declaration? or you are comparing your local dev that is using llvm@8 due to homebrew?

I'm not sure I understand the question, but when I run make crystal locally it's using LLVM 6.0.1 instead of LLVM 8 (which I have in homebrew). And in CI it's also using LLVM 6.0.1, but I thought it would be using LLVM 8 by now.

The package built via omnibus is was bumped in this release from 3.9.1 to 6.0.1. 6.0.1 was built by circle ci recently in https://github.com/crystal-lang/distribution-scripts/pull/41/files and uploaded in the S3 where 3.9.1 was located since the beginning of times.
homebrew was bumped from 6.0.1 to 8.0.0.

Oh, sorry, I got confused. It seems CI is building crystal from source for some reason... I don't know how the build process is to I'll be silent from now on 😊

Damn, I thought you were on to something 🐇 😄

😄
I guess my question is: why CI installs Crystal like that instead of using homebrew?

That's because we are (and should be) independent of brew cycle. Maybe the new custom llvm 6.0.1 package has something wrong. I'm still investigating. It seems to happen on release builds (even without omnibus in the middle). 🚧

It seems to explode in GlobalOptLegacyPass with something that returns a constant with size of 127 bits...
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00007fff68e542c6 libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff68f0fbf1 libsystem_pthread.dylib`pthread_kill + 284
    frame #2: 0x00007fff68dbe6a6 libsystem_c.dylib`abort + 127
    frame #3: 0x00007fff68d8720d libsystem_c.dylib`__assert_rtn + 324
    frame #4: 0x000000010d96ba54 crystal`llvm::APInt::getZExtValue() const + 76
    frame #5: 0x000000010d6c6923 crystal`processInternalGlobal(llvm::GlobalVariable*, llvm::GlobalStatus const&, llvm::TargetLibraryInfo*, llvm::function_ref<llvm::DominatorTree& (llvm::Function&)>) + 9378
    frame #6: 0x000000010d6c43d8 crystal`processGlobal(llvm::GlobalValue&, llvm::TargetLibraryInfo*, llvm::function_ref<llvm::DominatorTree& (llvm::Function&)>) + 273
    frame #7: 0x000000010d6c3772 crystal`optimizeGlobalsInModule(llvm::Module&, llvm::DataLayout const&, llvm::TargetLibraryInfo*, llvm::function_ref<llvm::DominatorTree& (llvm::Function&)>) + 1656
    frame #8: 0x000000010d6cd984 crystal`(anonymous namespace)::GlobalOptLegacyPass::runOnModule(llvm::Module&) + 80
    frame #9: 0x000000010ddc63ea crystal`llvm::legacy::PassManagerImpl::run(llvm::Module&) + 618
    frame #10: 0x000000010dd5daf3 crystal`LLVMRunPassManager + 14
    frame #11: 0x000000010cc925f1 crystal`*Crystal::Compiler::CompilationUnit#compile:(LLVM::Module | Nil) + 2721
    frame #12: 0x000000010cc06df2 crystal`*Crystal::Compiler#codegen<Crystal::Program, Crystal::ASTNode+, Array(Crystal::Compiler::Source), String>:(Tuple(Array(Crystal::Compiler::CompilationUnit), Array(String)) | Nil) + 7506
    frame #13: 0x000000010cfb4607 crystal`*Crystal::Compiler#compile<Array(Crystal::Compiler::Source), String>:Crystal::Compiler::Result + 119
    frame #14: 0x000000010cf9e502 crystal`*Crystal::Command#run:(Bool | Crystal::Compiler::Result | Nil) + 1090
    frame #15: 0x000000010c6d37db crystal`__crystal_main + 14603
    frame #16: 0x000000010c6d82a8 crystal`main + 56
    frame #17: 0x00007fff68d193d5 libdyld.dylib`start + 1
    frame #18: 0x00007fff68d193d5 libdyld.dylib`start + 1

how to get the backtrace?

make clean deps
mkdir -p .build
cp /path/to/crystal-0.30.0-1/embedded/bin/crystal .build/crystal
sleep 2
touch src/compiler/crystal.cr

export CRYSTAL_CONFIG_LIBRARY_PATH="/path/to/crystal-0.30.0-1/embedded/lib"
export CRYSTAL_CONFIG_BUILD_COMMIT="4f8637f18"

lldb
(lldb) break set -E C++

./bin/crystal build -D preview_overflow -D compiler_rt --release  -o .build/crystal-fail src/compiler/crystal.cr -D without_openssl -D without_zlib

(lldb) process attach --pid 12801
... wait for it ...

(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT

Oh, the stack trace points to Crystal::Compiler::CompilationUnit#compile, so it's when we are calling LLVM to compile the module... I'm almost sure it's a bug in LLVM.

But it’s odd. We’ve been using llvm 6 via brew and compiling the compiler in release mode every now and then locally.
Either the code now emits big constants somewhere. Or which passes are executed depends on how llvm was compiled. Or probably something else...

Status update:
llvm@6 in hombrew was always built with LLVM_ENABLE_ASSERTIONS=OFF (Defaults to ON if and only if CMAKE_BUILD_TYPE is Debug).
The llvm@6 we built in distribution-scripts has LLVM_ENABLE_ASSERTIONS=ON because we preferred that way since the beggings of time.
The issue is still present in llvm 8 (when LLVM_ENABLE_ASSERTIONS=ON).
The issue seems to be an llvm bug but since usually LLVM_ENABLE_ASSERTIONS=OFF, nobody notices/cares.
🚧🚧 still working 🚧🚧

This is the LLVM bug https://bugs.llvm.org/show_bug.cgi?id=42932
A workaround is on its way, but I am reaching another failing assert, but since it's scoped to debug information it is not a stopper issue.

backtrace of assert failing in debug info

* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00007fff68e542c6 libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff68f0fbf1 libsystem_pthread.dylib`pthread_kill + 284
    frame #2: 0x00007fff68dbe6a6 libsystem_c.dylib`abort + 127
    frame #3: 0x00007fff68d8720d libsystem_c.dylib`__assert_rtn + 324
    frame #4: 0x00000001053b7b09 crystal`llvm::LexicalScopes::getOrCreateRegularScope(llvm::DILocalScope const*) + 397
    frame #5: 0x00000001053b72bd crystal`llvm::LexicalScopes::extractLexicalScopes(llvm::SmallVectorImpl<std::__1::pair<llvm::MachineInstr const*, llvm::MachineInstr const*> >&, llvm::DenseMap<llvm::MachineInstr const*, llvm::LexicalScope*, llvm::DenseMapInfo<llvm::MachineInstr const*>, llvm::detail::DenseMapPair<llvm::MachineInstr const*, llvm::LexicalScope*> >&) + 337
    frame #6: 0x00000001053b70dc crystal`llvm::LexicalScopes::initialize(llvm::MachineFunction const&) + 124
    frame #7: 0x00000001053bf2e2 crystal`llvm::LiveDebugVariables::runOnMachineFunction(llvm::MachineFunction&) + 3200
    frame #8: 0x000000010542d5e9 crystal`llvm::MachineFunctionPass::runOnFunction(llvm::Function&) + 95
    frame #9: 0x0000000105d716af crystal`llvm::FPPassManager::runOnFunction(llvm::Function&) + 295
    frame #10: 0x0000000105d718dd crystal`llvm::FPPassManager::runOnModule(llvm::Module&) + 57
    frame #11: 0x0000000105d71cba crystal`llvm::legacy::PassManagerImpl::run(llvm::Module&) + 624
    frame #12: 0x000000010559c760 crystal`LLVMTargetMachineEmit(LLVMOpaqueTargetMachine*, LLVMOpaqueModule*, llvm::raw_pwrite_stream&, LLVMCodeGenFileType, char**) + 217
    frame #13: 0x000000010559c604 crystal`LLVMTargetMachineEmitToFile + 152
    frame #14: 0x000000010486d57d crystal`*Crystal::Compiler::CompilationUnit#compile:(LLVM::Module | Nil) + 861
    frame #15: 0x00000001047e086d crystal`*Crystal::Compiler#codegen<Crystal::Program, Crystal::ASTNode+, Array(Crystal::Compiler::Source), String>:(Tuple(Array(Crystal::Compiler::CompilationUnit), Array(String)) | Nil) + 6893
    frame #16: 0x0000000104b9c087 crystal`*Crystal::Compiler#compile<Array(Crystal::Compiler::Source), String>:Crystal::Compiler::Result + 119
    frame #17: 0x0000000104b86d8f crystal`*Crystal::Command#run:(Bool | Crystal::Compiler::Result | Nil) + 655
    frame #18: 0x00000001042b9e68 crystal`main + 56
    frame #19: 0x00007fff68d193d5 libdyld.dylib`start + 1
    frame #20: 0x00007fff68d193d5 libdyld.dylib`start + 1

A 0.30.0-2 darwin package will be released with llvm 3.9.1. And the workaround to use llvm 6 with assertions will come in the next release (0.31.0 or maybe 0.30.1). That way the CI will be able to move forward.

PR updated to build 0.31-dev against 0.30.1. Once build pass and merged the PRs to merge can be rebased on top of master. Hopefully, the 32 bits CI will fail less often 🤞.


Source Control: "open changes" menu item shows twice

VSCode Version: 1.40.1
OS Version:

Steps to Reproduce:

Open some project with Git as the source control
make some changes
open the source control panel
right-click on one of the files

Result: the item "Open Changes" shows twice
snapshot:

/confirm

Hi @joaomoreno
I think someone has alredy solved it.
The lastest version (v1.40.1) from https://code.visualstudio.com/ really has this "bug", but I wasn't able to reproduce it from the source code.
I packaged it and wasn't able to reproduce the "bug" as well (v1.41.0)
I suggest to close this issue.

Yup, I've fixed this in master. Didn't make the recovery candidate, so it will come in November's stable release.


Fix issues #317 #316 #309

Now the result is this:
/**
* [test description]
* @param  [type]   $argument  [description]
* @param  type     $argument2 [description]
* @param  ArfFof   $arg3      [description]
* @param  string   $arg4      [description]
* @param  array    $Arg5      [description]
* @param  [type]   $arg6      [description]
* @param  string   $arg7      [description]
* @param  int      $arg8      [description]
* @param  array    $arg9      [description]
* @param  ArgArray $arg10     [description]
* @param  [type]   ...$arg11  [description]
* @return [type]              [description]
*/
public function test($argument, type $argument2, Arf\Fof $arg3, $arg4 = 'value', $Arg5 = [], $arg6 = null, $arg7 = '', $arg8 = 8, Arg\Array $arg9 = [], Arg\Array $arg10, ...$arg11)

Sorry, I've never got around to reviewing this. Keep in mind this package is pretty much unmaintained but I am still willing to merge clean PRs and publish new releases. This PR seems to be that. Also fixing a lot of old bugs would be great.
If anyone is willing to make sure this still works, I'd love to merge this.


example of agent config file

It is not clear to me from the docs or from the source code, how the agent knows where the server is. I'm guessing you can specify that in the config file; is there a template agent config file you can add to the repo?

The agent can operate on the config file if you are launching it manually with the -c  or --cfgflag. But often it can operate  off of the embedded resource as it is launched. See project file (https://github.com/dsnezhkov/racketeer/blob/053a12310a39822b35ddbb7f2e3b466fe8840902/agent/FileConnector/FileConnector.csproj#L128 ) .policy-minimal-network.jsonis the minimal file you want to modify to point to the C2. Specifically, you want to manage theExtEndpoints` directive in JSON file which will point to the server to connect to.
The embedded file is can be modified and the agent "cut"  with initial configuration, possibly including predetermined targeted assets and authentication for scenarios when the agent does not want to reach to C2 for further policy load from the operator, but can immediately go to work on the provided policy. More extensive examples of what policy can include can be found in agent/configs folder.
Hope that helps.


how to get a priority from a sql

Describe the bug
A clear and concise description of what the bug is.
how to get a priority from a sql
To Reproduce
Steps to reproduce the behavior:
select * from mytable where a>10 and b>1 and c>100 or d>10 or e>4
such a>10 and b>1 and c>100  priority higher than d>10 or e>4
which part can provide the function?
Expected behavior
A clear and concise description of what you expected to happen.
System

Database you are using
Java Version
JSqlParser version

JSqlParser builds an object tree that is ordered exactly for this priority. The computation should go from the leaves to the root of the tree.

would you mind give me a demo. thx

Here is a little example doing this for addition and multiplication: https://github.com/JSQLParser/JSqlParser/wiki/Example-of-expression-evaluation

So was this enough help? Can we close this issue?


Expose ConeShape from bullet

Exposed ConeShape from Bullet, as it was once requested in #2138 and #17252.

This likely needs a proposal to go along with it. These sorts of PRs are great (thank you!), but it is very unclear whether other users need this. The two PRs you linked are both closed and reading them briefly it looks like they were closed due to lack of demand.
So could you please open up an issue on https://github.com/godotengine/godot-proposals (note the rules in the README) so that we can gauge interest in this?

Thanks, I just did that.
Regarding the failed checks; what would be the best way to let them rerun? Push an empty commit or close and reopen the PR? Travis seems to have run into an error and AppVeyor suffered from another issue akien recently opened a PR for.

Force push nothing. That way you don't add another commit.

Will need a rebase eventually to be merged.
But before merging, it also needs to be discussed with @reduz to see how to handle this concern: https://github.com/godotengine/godot/issues/2138#issuecomment-168417544
We did implement CylinderShape as a Bullet-only, but it might be problematic soon when @reduz improved the GodotPhysics3D engine and aims to bring it to par with the Bullet features we use. We need to reassess whether implementing Bullet-only features is future proof.

I think this is unlikely to be merged as the plans for Godot 4.0 is to make the GodotPhysics engine the default one, and as such adding more Bullet-specific options is likely not the right path. @pouleyKetchoupp recently implemented CylinderShape in GodotPhysics to match Bullet, but ConeShape would also need to be implemented before we can expose Bullet's.

Agreed, adding support for cone shape is welcome but this PR can't be merged as it is.
The Bullet physics server is broken on master at the moment, and the plan is to move it into a gdnative plugin instead. It's probably a matter of weeks before it happens, so the Bullet specific changes from this PR will most likely go into this plugin directly.
Godot Physics needs support for cone as well, and as a first step it can be implemented by just generating a convex polyhedron internally. It will just not roll very smoothly. Proper cone support is a bit more involved but it's possible in the future.
Once all of this is done and tested, cone support could be backported to 3.2 as well (including Bullet physics server changes).

Thanks for your work on this, but as discussed this is currently unlikely to be merged as due to the above - still may be useful for an eventual plugin/extension or if the direction is changed.


[Frontend] Add -exit-on-first-error

This terminates the compiler as soon as an error is encountered.
rdar://123630771

@swift-ci please test

@swift-ci please test


RKE2/K3s cluster cannot provision successfully using cluster scoped registry

Seen in v2.6-head. To reproduce:

Install Rancher normally with the default private registry
Go to the global settings and set system-default-registry to an invalid global registry. I'm calling it invalid.io
Provision an RKE2 cluster in Digital Ocean. In the Registries section of the cluster configuration form, enter a valid private registry. I'm using docker.io:

If you click Edit as YAML, it appears as if the registry has been correctly configured at rkeConfig.machineSelectorConfig[0].config['system-default-registry']:

Finish creating the cluster
The cluster gets stuck in provisioning mode, with the message "Waiting for viable init node"

7. If you delete the cluster from the UI, it doesn't get removed. It just gets stuck waiting for the machine to delete.
The expected behavior is that the cluster gets created successfully because its images are supposed to be pulled from the valid registry, and it is supposed to be able to be deleted even if it gets stuck.
If the above mentioned YAML config is invalid, it's a frontend issue. If it's valid, it's a backend issue.

I couldn't reproduce this in v2.7-head 4092002, moving to test to validate

Ticket #7127 - Test Results
With Docker on a single-node instance:
Veri-FAILED on rancher v2.7-acb99e9d0aefb6fcca70963beba3423b8898a49d-head:

Fresh install of rancher v2.7-head
From Global Settings > system-default-registry, set the value to an invalid registry - [e.g. invalid.io]
Provision a downstream RKE2 cluster w/ cluster level registry set to docker.io
Veri-FAILED - cluster fails to successfully provision, unable to resolve past waiting for viable init node, cluster hangs in removal state upon deletion

Screenshot:

Additional Comments:

RKE1 clusters provision fine w/ invalid global registry set and valid cluster level registry set
RKE2/K3s does NOT provision w/ invalid global registry set and valid cluster level registry set

I'm wondering how this issue is related to Dashboard?  Any insights would be appreciated

I'm wondering how this issue is related to Dashboard? Any insights would be appreciated

@gaktive It sounds like it isn't a dashboard issue after all. Because Harrison confirmed/tested that the YAML is correct, I'm thinking the issue should be transferred to the backend.


Add observability addon namespace to managed collection

Issue: https://github.com/open-cluster-management/backlog/issues/11138
Description of Changes:
Adding the open-cluster-management-addon-observability namespace to collection from must-gather. This change is present in 2.3 release, but was missing in 2.2 release. Backport.
Is this a Hub or Managed cluster change?: Managed
Notes:
Documenting process for later reference.
How to backport:

Clone upstream project git clone
Checkout Release Branch git checkout release-2.2
Branch from release Branch git checkout -B <branch name>
Make your change
Create Pull request into release branch
smile :)

/lgtm

Agreed @mqhackett . If we do a clean up issue, we can move forward with this check in.

Linking clean up issue: https://github.com/open-cluster-management/backlog/issues/12849


License + Acknowledgments

Change license to ISC and acknowledge PyGObject docs repo.

Won't continue working on this, closing.


SPAzureAccessControlServiceAppProxy/SPOAppPrincipalMgmtServiceAppProxy: Add new resources for ACS and SPO app mgmt

Pull Request (PR) description
Add new resources for Azure Access Control Service Application Proxy and SharePoint Online Application Principal Management Service Application Proxy
This Pull Request (PR) fixes the following issues
None
Task list

[x] Added an entry under the Unreleased section of the change log in the CHANGELOG.md.
Entry should say what was changed, and how that affects users (if applicable).
[x] Resource documentation added/updated in README.md in the resource folder.
[x] Resource parameter descriptions added/updated in schema.mof
and comment-based help.
[x] Comment-based help added/updated.
[ ] Localization strings added/updated in all localization files as appropriate.
[x] Examples appropriately added/updated.
[x] Unit tests added/updated. See DSC Resource Testing Guidelines.
[ ] Integration tests added/updated (where possible). See DSC Resource Testing Guidelines.
[x] New/changed code adheres to DSC Resource Style Guidelines and Best Practices.

This change is

@ykuijs any input on my latest reply?

Sorry for not replying any sooner! Have been working on other things and this slipped through. Thanks for the reminder.
If you ran the "./build.ps1 -Tasks Build" script in the root of the repo, you can then go to the tests folder (cd tests\Unit\SharePointDsc) and run your Pester test file (.\SharePointDsc.[resource].Tests.ps1). That should run your Pester test correctly.

There is another issue with Pester tests, that is not caused by your PR. I will submit a new PR, which will fix this issue. After that is merged you can update your PR with this update.

Please update from Master to pull in the fixes for the failing Pester test

I've merged the changes from master now

@jensotto Great work, thanks a lot!


user docs: the-all-messages-view

Splitting out the articles from to todo list here: 32f6a76
@zulipbot label "area: documentation (user)"

https://github.com/zulip/zulip/issues/8889


[Help please] How to debug "Invalid OAuth callback." error?

I am stuck on Shopify app installation with "Invalid OAuth callback." error in auth/callback stage.
How can I debug whether hmac or state causes this error?
The relevant code is as follows. Shop name should be fine (bc-prod-paul.myshopify.com).
    if (!validQuery(query, currentSession)) {
      throw new ShopifyErrors.InvalidOAuthError('Invalid OAuth callback.');
    }

...

function validQuery(query: AuthQuery, session: Session): boolean {
  return (
    validateHmac(query) &&
    validateShop(query.shop) &&
    safeCompare(query.state, session.state as string)
  );
}

Thanks!

In my case most of the times this error popped out was because of this the last comparison made in the validQuery helper function safeCompare(query.state, session.state as string).
The comparison was failing because the current session (which you get by using the Shopify util loadCurrentSession) had a different state than the one that was expected by Shopify. This happened because for some reason on installation the authentication route was being called twice in a span of less than 2 seconds, as a consequence the storeCallback was being called twice, overriding the original session that Shopify now uses to compare state.
So basically the validQuery function was comparing the first session's state to the session I had saved in my DB (which is the wrong one, result of the second call to the auth route).
I know this is very confusing, I suggest you console.log your way through the whole OAuth flow, to get a full picture of what is happening. Log every time your storeCallback and loadCallback fire and log the payload, so that you can understand which part fails the validQuery util.

Thank you for this information and you are right. I have 2 server instances behind a load balancer. After removing one instance, the issue is resolved. Maybe the installation is called on both instances? That can perfectly explain the symptom. I will try to see if I can introduce a "lock" mechanism to prevent both instances firing the installation.

@paul4156  Hi, I have exactly the same error here now.
Do you have a solution how to manage multi instance now?

@paul4156 Hi, I have exactly the same error here now. Do you have a solution how to manage multi instance now?

Yes. I have 2 web servers and was using in memory session storage. Changing to redis session storage resolved the problem. See https://github.com/Shopify/shopify-node-api/blob/main/docs/usage/customsessions.md

Hi @zakariamofaddel & @paul4156  , many thanks guys for useful explanation above and I believe I have the same issue as yours so if you don't mind can you provide me with insights of how have you solved yours.
Here is my findings to help you digest the issue:

I have console.log at the begging of storeCallback and at the begging of loadCallback and every time this
method called the state is the same within req.query  so all fine.
and one more initiative thing state is same in both storeCallback and loadCallback, maybe there is
override 😅 who knows. Till validQuery  function and exactly in validateHmac function the generated local
hmac is never ever the same hmac coming from req.query I have doubted in every step in validateHmac.
Even I have written my own validateHmac(only for test purpose) but unfortunately I still have no
idea when/how/why received hmac is never the same of local generated hmac. here is the functions i have used
for validating hmac and their output within /auth/callback route.

function safeCompare(strA, strB) {
  if (typeof strA === typeof strB) {
    var buffA = void 0;
    var buffB = void 0;
    if (typeof strA === 'object' && typeof strB === 'object') {
      buffA = Buffer.from(JSON.stringify(strA));
      buffB = Buffer.from(JSON.stringify(strB));
    }
    else {
      buffA = Buffer.from(strA);
      buffB = Buffer.from(strB);
    }
    if (buffA.length === buffB.length) {
      return crypto.timingSafeEqual(buffA, buffB);
    }
  }
  else {
    throw new ShopifyErrors.SafeCompareError("Mismatched data types provided: " + typeof strA + " and " + typeof strB);
  }
  return false;
}

function validateHmac(query) {

  var hmac = query.hmac;
  var localHmac = generateLocalHmac(query);
  return safeCompare(hmac, localHmac);
}

function generateLocalHmac(_a) {
  var code = _a.code, timestamp = _a.timestamp, state = _a.state, shop = _a.shop, host = _a.host;
  var queryString = stringifyQuery(({
    code: code,
    timestamp: timestamp,
    state: state,
    shop: shop }, (host && { host: host })));
  return crypto.createHmac('sha256',  process.env.SHOPIFY_API_SECRET)
      .update(queryString)
      .digest('hex');
}

function stringifyQuery(query) {
  var orderedObj = Object.keys(query).map(key =>`${key}=${Array(query[key]).join(',')}`).join('&');
  return queryString.stringify(orderedObj);
}

What's make it very weired is if I try to console.log in /auth/callback route both safeCompare and validateHmac
console.log('#before validateAuthCallback ** validateHMAC #', validateHmac(req.query));
// output -> false

console.log('#before validateAuthCallback ** safeCompare result#', safeCompare(req.query.state, (await Shopify.Utils.loadCurrentSession(req, res, true)).state));
// output -> true

Please note: I have used shopify cli to generate this app. I have deployed my app to heroku and using
Heroku Data for Redis addon. Node v16.13.0, @shopify/shopify-api v3.0.0,
That said, I have implemented CustomSessionStorage with redis and it's works fine. I don't know if i have covered all
required information to help you guys know what's going on within  my code. Please if you would like to know
more information please let me know.
I highly appreciate your help.
Many thanks in advance

@hashhesh Did you ever figure this out? I'm running into the same issue

the generated local hmac is never ever the same hmac coming from req.query

@hashhesh @devstein Did you setup API_KEY and API_SECRET correctly? In your cases, hmac seems not correct. It is not related to the issue of running multiple server instances. Please run one server and verify the auth working first.

@devstein  Had the same problem and figure out it was my API_SECRET, thanks for finding this error