Issue State Description

Feature Description
Instead of using labels to describe issue states (dupe, archived, etc..), additional descriptive metadata could be added to issues.
To ensure backwards compatibility, open/closed could be kept, but then you could add search by state, etc.. We have "mentioned in issues #xyz" issue linking, and we could leverage that to be "duplicate issue #abc marked as duplicate of this issue. The subscribers to the initial ticket that is marked as dupe could be transferred to the open ticket.
type IssueState int64
const (
  Archived IssueState = iota
  Duplicate
  Draft   // Issue that is open but still being worked on, similar to draft PR. We could also use this for draft PRs.
  // ...
)

Screenshots

Do we really need to split the "not planned" state? I think it's unnecessary and by having these sub-states, migrations from GitHub will become more inaccurate too.

I disagree at least to some extent:
We certainly need a third issue state to distinguish between closed successfully (merged, implemented, bug fixed), and closed unsuccessfully (not planned, duplicate, stale, …).
That one is certainly needed.
However, I'm not sure if we (should) need anything on top of that.
I think GitHub made a wise decision only allowing these three states (open, closed successfully, closed without success).
Everything else complicates the UI.
What we can rather think about is offering an additional "reason" field when closing an issue, i.e. a combobox with no default.
The only difference will then be the reason for closing in the issue timeline.
But that one is not pressing as adding a third issue state.

@delvh I see no disagreement in your comment. So GitHub has:
open, close (completed), close (not planned)
With https://github.com/go-gitea/gitea/pull/25362 we would:
open, close (resolved), close (archived), close (stale)
I think it's very unwise to picture reason in state. What if for example someone requests close (spam) state? Would we then make a fifth state? By being decisively unspecific with the "grey state", we avoid having to implement more odd states in the future.

I can agree with the arguments: I think we shouldn't clutter the UI with too specific issue states.
I'd also say we only really need three of them, but I'm not a fan of GitHub's naming though. I'd suggest the following three:

open
resolved
closed (without success)

I do prefer GitHub's way because a "resolved" issue is still closed, so state (open/close) should remain a boolean, which also makes APIs easier to consume and more importantly not break by introducing the third state.

I mean, just because we call it resolved doesn't mean we can't treat it as closed…

What we display in UI vs. what we store in DB can be different. For DB I suggest:
state: open | closed
closeReason: completed | notPlanned
UI could show single string Open, Completed, Not Planned.

Just link a related comment here: https://github.com/go-gitea/gitea/issues/14893#issuecomment-1132813357

We should probably keep 2 states (open/close) state and maybe add a field like closeReason.

GitHub also still keeps 2 states (open/close), the extra info is provided by an additional attribute names state_reason, with currently two possible value complete (the default one) and not-planned.
Personally, I would like to +1 for do the same instead of recommend user to fiddle with tags, since:

Reason of closing an issue could be very, but the state_reason represent the two main type/catalog of close reason: positive and negative, or say, valid and invalid. If detailed reason needs to be provided, then tag could be useful.
Currently issue tags cannot be modular/grouped, which results in a bunch of tags to select even if we only want to add a single dimension of data.
There is actually a feature request for this: https://github.com/go-gitea/gitea/issues/18583
Although GitHub's issue tags also aren't modular, GitHub does have a pretty useful Project (the one currently in beta, not the old Kanban-only style one) panel allow adding extra field that's modular. Also see this.


Allow specifying max_combinations settings in test combination settings.

BREAKING CHANGE the settings for test combinations now have an object instead of a single value.
This additional setting allows configuring different RESTler runs with different maximum values for
combinations.  For example, shorter CI/CD invocations may be configured with fewer combinations than
longer or one-off regression tests.

Are changes supersede the global max_combinations, for example if I have:
	"max_combinations": 100,    <------ Global max_combinations
	"dyn_objects_cache_size": 40,
	"test_combinations_settings": {
		"header_param_combinations": {
			"max_combinations": 10,   <---- max_combinations of header params
			"param_kind": "optional"
		},
		"query_param_combinations": {
			"max_combinations": 15, <---- max_combinations of body params
			"param_kind": "required"
		},
		"example_payloadds": {
			"payload_kind": "all"
		}
	},

Which max_combinations are in prior?


Using Google Translate impacts access to navigation

I noticed today that when using the Google Translate tool embedded on the site, the tool covers up the top navigation. Can you look into what can be adjusted to ensure navigation options are still visible for people translating the site?

Done and deployed.


Unable to install on Raspberry Pi 3

Hi,
I am unable to install your package on Raspberry Pi 3.  Here is the error:

ostuninstall<EMAIL_ADDRESS>2731 error<EMAIL_ADDRESS>install: node-gyp rebuild
2731 error Exit status 1
2732 error Failed at the<EMAIL_ADDRESS>install script.
2732 error This is most likely a problem with the bluetooth-hci-socket package,
2732 error not with npm itself.
2732 error Tell the author that this fails on your system:
2732 error     node-gyp rebuild
2732 error You can get their info via:
2732 error     npm owner ls bluetooth-hci-socket
2732 error There is likely additional logging output above.

@IgorGanapolsky any more details from the console output, there's not really much we can help you out without more details.
Please provide mode details and re-open this issue.

@sandeepmistry I was able to resolve it by npm install -g node-gyp


Add block to handle null task payload in pull queue REST sample

LGTM

Sorry - some reason I didn't see this, this AM.


[feature] support two phase commit

Proposed changes
Spark doris connector support two-phase commit.
Set the option doris.sink.enable-2pc to true to enable two-phase commit for stream load.
After enabled, the behavior is as follows:
Pre-submit stream load requests for each batch load, and then

When the job succeeds, all pre-committed transactions will be committed.
When the job fails, all pre-committed transactions will be aborted.

Checklist(Required)

Does it affect the original behavior: (Yes/No/I Don't know)
Has unit tests been added: (Yes/No/No Need)
Has document been added or modified: (Yes/No/No Need)
Does it need to update dependencies: (Yes/No)
Are there any changes that cannot be rolled back: (Yes/No)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

good job


Support changing ID for "Table of Contents" header

how hard would it be to add the id to the h1 "Table of Contents" header too? would make styling a lot easier with both having the set ListID.
edit: just remembered how ids work in html; how could I go about setting a #toctitle id to the header instead?
Originally posted by @acsqdotme in https://github.com/abhinav/goldmark-toc/issues/35#issuecomment-1825101048

@acsqdotme added in v0.8.0. It'll pick up an ID automatically based on the title, but you can specify an override with the HeadingID option.

woah this is awesome; thanks a ton.


Resolve compiler warnings/errors

Describe your changes
Changes to remove compiler errors and warnings when compiled under MSVC and GCC.
Sorry, I don't know if these changes belong to this repository or the code that generates these files.
The change to exi_bitstream.h to alter structure definition to "typedef struct exi_bitstream " is to allow forward declaration of exi_bitstream in c++.
NOTE:  There are also some flagged lines (not to be merged) in iso2_msgDefEncoder.c that may indicate an error with the code generator.
Issue ticket number and link
Checklist before requesting a review

[yes] I have performed a self-review of my code
[ yes] I have made corresponding changes to the documentation
[ yes] I read the contribution documentation and made sure that my changes meet its requirements

I also noticed there are also a lot of if (1 == 0) lines in din_msgDefEncoder.c too.  These cause C4127: conditional expression is constant warnings in MSVC.

Hi,  thanks for taking the time to look over my PR.  Just for reference, here are the compiler flags used:
MSVC: /W4
GCC: -g -Wall -Werror -pedantic -Wextra -Wwrite-strings -Winit-self -Wcast-align -Wcast-qual -Wpointer-arith -Wstrict-aliasing -Wformat=2 -Wmissing-declarations -Wmissing-include-dirs -Wno-unused-parameter -Wuninitialized -Wold-style-definition -Wstrict-prototypes -Wmissing-prototypes

Since libcbv2g is a pure c library except for the tests, I don't see the point of the forward declaration right now: typedef struct exi_bitstream {
Seeing as the suggested syntax is still pure C, and it improves the compatibility with C++, which IMO is the most likely language that would be used to include this library (like your libV2G), and there is basically zero risk, it would be helpful if the suggested change was added :-)

The if (1 == 0) thing is not an issue, can just disable that warning for those files.  I just wanted to bring it to attention in case it was an issue with the code generator, or could cause the exi encoding to go wrong.

OK, I will see if I can get some time allocated to look at doing a Pr for cbexigen

This issue can be closed/deleted.  Refer to PR on cbexigen https://github.com/EVerest/cbexigen/pull/81


fis-gtm does not run

This is what I see.
samha@DESKTOP-9LM60MK:/usr/lib/fis-gtm/V6.0-003_x86_64$ ./mumps _date.m
%GTM-E-DLLNOOPEN, Failed to load external dynamic library ./libgtmshr.so
%GTM-E-TEXT, ./libgtmshr.so: cannot enable executable stack as shared object requires: Invalid argument
It seems that dlopen fails.
Here's what strace says:
samha@DESKTOP-9LM60MK:/usr/lib/fis-gtm/V6.0-003_x86_64$ strace ./mumps _date.m
strace: Test for PTRACE_O_TRACESYSGOOD failed, giving up using this feature.
execve("./mumps", ["./mumps", "_date.m"], [/* 17 vars */]) = 0
brk(0)                                  = 0x603000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ff5ffee0000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=22386, ...}) = 0
mmap(NULL, 22386, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ff5ffff9000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\16\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14664, ...}) = 0
mmap(NULL, 2109744, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ff5ff9f0000
mprotect(0x7ff5ff9f3000, 2093056, PROT_NONE) = 0
mmap(0x7ff5ffbf2000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7ff5ffbf2000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\37\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1840928, ...}) = 0
mmap(NULL, 3949248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ff5ff620000
mprotect(0x7ff5ff7db000, 2093056, PROT_NONE) = 0
mmap(0x7ff5ff9da000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1ba000) = 0x7ff5ff9da000
mmap(0x7ff5ff9e0000, 17088, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ff5ff9e0000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ff5ffed0000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ff5ffec0000
arch_prctl(ARCH_SET_FS, 0x7ff5ffec0740) = 0
mprotect(0x7ff5ff9da000, 16384, PROT_READ) = 0
mprotect(0x7ff5ffbf2000, 4096, PROT_READ) = 0
mprotect(0x601000, 4096, PROT_READ)     = 0
mprotect(0x7ff5ffe22000, 4096, PROT_READ) = 0
munmap(0x7ff5ffff9000, 22386)           = 0
brk(0)                                  = 0x603000
brk(0x624000)                           = 0x624000
open("./libgtmshr.so", O_RDONLY|O_CLOEXEC) = 3
read(3<EMAIL_ADDRESS>832) = 832
fstat(3, {st_mode=S_IFREG|0664, st_size=2239248, ...}) = 0
getcwd("/usr/lib/fis-gtm/V6.0-003_x86_64", 128) = 33
mmap(NULL, 4522072, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ff5ff1c0000
mprotect(0x7ff5ff3d2000, 2093056, PROT_NONE) = 0
mmap(0x7ff5ff5d1000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x211000) = 0x7ff5ff5d1000
mmap(0x7ff5ff5e3000, 184408, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ff5ff5e3000
mprotect(0x7ff5ffe22000, 3668, PROT_READ|PROT_WRITE) = 0
mprotect(0x7ff5ffe22000, 3668, PROT_READ) = 0
mprotect(0x7ff5fffef000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) = -1 EINVAL (Invalid argument)
close(3)                                = 0
write(2, "%GTM-E-DLLNOOPEN, Failed to load"..., 73%GTM-E-DLLNOOPEN, Failed to load external dynamic library ./libgtmshr.so
) = 73
write(2, "%GTM-E-TEXT, ./libgtmshr.so: can"..., 104%GTM-E-TEXT, ./libgtmshr.so: cannot enable executable stack as shared object requires: Invalid argument
) = 104
exit_group(150379250)                   = ?
<... exit_group resumed> _exit returned!
)              = ?
+++ exited with 242 +++

I just upgraded to Build 14342. Same errors.

Thanks for reporting the issue.  The "cannot enable executable stack as shared object requires: Invalid argument" is coming from the loader because of this failure:
mprotect(0x7ff5fffef000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) = -1 EINVAL (Invalid argument)
WSL does not currently have support for the PROT_GROWSDOWN flag.  In some cases, the executable stack flag isn't needed so you might want to create a backup of the original binary and run execstack -c libgtmshr.so to manually clear the executable stack flag in the binary.
Please give us feedback for this scenario on the uservoice so we can prioritize.

I actually know the source code of this application to some extent as I am
involved in porting it to other platforms. It NEEDS an executable stack.
Having said that, I will try your suggestion and see what happens.
On Tue, May 17, 2016 at 7:25 AM, stehufntdev<EMAIL_ADDRESS>wrote:

Thanks for reporting the issue. The "cannot enable executable stack as
shared object requires: Invalid argument" is coming from the loader because
of this failure:
mprotect(0x7ff5fffef000, 4096,
PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) = -1 EINVAL (Invalid
argument)
WSL does not currently have support for the PROT_GROWSDOWN flag. In some
cases, the executable stack flag isn't needed so you might want to create a
backup of the original binary and run execstack -c libgtmshr.so to
manually clear the executable stack flag in the binary.
Please give us feedback for this scenario on the uservoice
https://wpdev.uservoice.com/forums/266908-command-prompt-console-bash-on-ubuntu-on-windo
so we can prioritize.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Microsoft/BashOnWindows/issues/286#issuecomment-219734210

--
Sam Habiel, Pharm.D.
VISTA Expertise Network

Sam, as a possible workaround until the issue is fixed in WSL, see whether not specifying auto-relink in $gtmroutines / $zroutines gets you past this.

I tried this and it worked. Now it complains that semget isn't there, which
I know.
On Wed, May 18, 2016 at 6:51 AM, K.S. Bhaskar<EMAIL_ADDRESS>wrote:

Sam, as a possible workaround until the issue is fixed in WSL, see whether
not specifying auto-relink in $gtmroutines / $zroutines gets you past this.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Microsoft/BashOnWindows/issues/286#issuecomment-220032122

--
Sam Habiel, Pharm.D.
VISTA Expertise Network

Before I forget, let me say thank you for your help. I can buy you a beer
if you live in Seattle.
I put this on uservoice. Alas, I am the only one who wants that feature!
The next issue is shared memory/semaphores. I contributed my votes to that
on uservoice.
On Wed, May 18, 2016 at 10:12 PM, Sam Habiel<EMAIL_ADDRESS>wrote:

I tried this and it worked. Now it complains that semget isn't there,
which I know.
On Wed, May 18, 2016 at 6:51 AM, K.S. Bhaskar<EMAIL_ADDRESS>wrote:

Sam, as a possible workaround until the issue is fixed in WSL, see
whether not specifying auto-relink in $gtmroutines / $zroutines gets you
past this.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Microsoft/BashOnWindows/issues/286#issuecomment-220032122

--
Sam Habiel, Pharm.D.
VISTA Expertise Network

--
Sam Habiel, Pharm.D.
VISTA Expertise Network

I am currently trying out a lot of packages and thing with linuxbrew on lxss and am runnig into the "cannot enable executable stack as shared object requires: invalid argument" problem quite often (one occurence for reference: https://github.com/Linuxbrew/homebrew-core/issues/765). Is that something that is going to be implemented?

This also happens to me trying to run this example: http://docs.opencv.org/master/db/df5/tutorial_linux_gcc_cmake.html using OpenCV 3.1
$ ./DisplayImage lena.jpg
./DisplayImage: error while loading shared libraries: libopencv_core.so.3.1: cannot enable executable stack as shared object requires: Invalid argument

Hi andresau,
I am having the same error when trying to import cv2 in Bash on windows. Did you find a solution ?

Hi @andresau ,
I am having the same error when trying to import cv2 in Bash on windows. Did you find a solution ?

I'm having the same issue when trying to compile OpenCV with Bash On Windows. Please fix this soon. Thanks.

Hi there you need to install execstack
and run this command
execstack -c /usr/local/lib/opencv.so*
here is the source
http://stackoverflow.com/questions/39136040/python3-4-error-cannot-enable-executable-stack-as-shared-object-requires-inva

Make sure to catch all opencv libraries:
sudo execstack -q /usr/local/lib/*opencv*.so*

Similar problem for Apple Swift:
swift-build: error while loading shared libraries: libFoundation.so: cannot enable executable stack as shared object requires: Invalid argument

Hello @Adnino,
No solutions so far, I had to install a VM in order to run it.

I just ran into the executable stack issue when trying to get Swift 3.0.1 running under WSL on Windows 14965.
Had to clear the executable stack flag in libFoundation.so ("execstack -c <pathToSwift>/usr/lib/swift/linux/libFoundation.so"), but once I did that helloworld.swift demo ran using "swift helloworld.swift".

I encountered this issue today.
My solution is to #apt install execstack and execstack -s program_to_run
Then the program runs well

Same issue for perl6 / rakudo *, unsurprisingly.
@stehufntdev  do you have a roadmap as to when this feature might be implemented? Is this targeted for the upcoming Creator's Update?
@dheine  Thank you! That allowed me to build perl6, as well.

A brief description

Attempt to install perl6 using rakudobrew as per http://rakudo.org/how-to-get-rakudo/#Installing-Rakudo-Star-Source-Prerequisites-Debian

Expected results

moar builds successfully

Actual results (with terminal output if applicable)

This fails with an error message on libmoar.so:
"/home/tbehrens/.rakudobrew/moar-nom/install/bin/moar: error while loading shared libraries: libmoar.so: cannot enable executable stack as shared object requires: Invalid argument"
The relevant strace is in moar-strace.txt.21832, and the relevant lines are:
open("//home/tbehrens/.rakudobrew/moar-nom/install/lib/libmoar.so", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240r\25\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0666, st_size=4883504, ...}) = 0
mmap(NULL, 6843296, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa619f70000
mprotect(0x7fa61a345000, 2093056, PROT_NONE) = 0
mmap(0x7fa61a544000, 729088, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3d4000) = 0x7fa61a544000
mmap(0x7fa61a5f6000, 2976, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa61a5f6000
mprotect(0x7fffe01a3000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC|PROT_GROWSDOWN) = -1 EINVAL (Invalid argument)
I'm assuming the offender is PROT_EXEC, which is not (yet) supported by WSL.

Your Windows build number

14986.1001

Steps / All commands required to reproduce the error from a brand new installation

sudo apt-get install build-essential git libssl-dev
cd
git clone https://github.com/tadzik/rakudobrew ~/.rakudobrew
echo 'export PATH=~/.rakudobrew/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
rakudobrew build moar
After this failure, it is possible to successfully build moar by clearing the execstack flag on libmoar.so:
sudo apt-get install execstack
execstack -c .rakudobrew/moar-nom/install/lib/libmoar.so
execstack -c .rakudobrew/moar-nom/nqp/MoarVM/libmoar.so
rakudobrew build moar

Strace of the failing command

moar-strace.zip

No current ETA on PROT_GROWSDOWN support.  We've been prioritizing work by scenarios and feedback on uservoice.  Please give us feedback for this scenario on the uservoice so we can prioritize - https://wpdev.uservoice.com/forums/266908-command-prompt-console-bash-on-ubuntu-on-windo/.

Thanks @stehufntdev . Given http://www.xinotes.net/notes/note/1030/ and https://news.ycombinator.com/item?id=11599909 , I am leaning towards "executable stack support is not critical".
The GNU assembler has a quirk: If you don't tell it .section .note.GNU-stack,"",@progbits in manually written ASM code (.S files), then it will assume execstack. Oops, what a trap for programmers.
Ulrich Drepper asserts that "Executable stack memory is one of the biggest security problems."
fis-gtm actually needs executable stack memory and so it's in a bit of a bind.
But Perl6 does not. The library that requests it, dyncall, is running into that GNU ASM quirk. This can (and I am hopeful it will) be solved by the dyncall devs upstream to rakudo Star, and then MoarVM/Perl6/Rakudo will build without issue.
Apple Swift is likely a similar situation: Requests execstack but doesn't need it. @dheine , if you'd like to collaborate with me on that, I'm game.
So for my particular itch, I'm good. No WSL changes needed.

GT.M does not need an executable stack. I mistakenly thought that; but
it turns out it doesn't.
On Wed, Jan 4, 2017 at 9:55 AM, Thorsten Behrens
<EMAIL_ADDRESS>wrote:

Thanks @stehufntdev . Given http://www.xinotes.net/notes/note/1030/ and
https://news.ycombinator.com/item?id=11599909 , I am leaning towards
"executable stack support is not critical".
The GNU assembler has a quirk: If you don't tell it .section
.note.GNU-stack,"",@progbits in manually written ASM code (.S files), then
it will assume execstack. Oops, what a trap for programmers.
Ulrich Drepper asserts that "Executable stack memory is one of the biggest
security problems."
fis-gtm actually needs executable stack memory and so it's in a bit of a
bind.
But Perl6 does not. The library that requests it, dyncall, is running into
that GNU ASM quirk. This can (and I am hopeful it will) be solved by the
dyncall devs upstream to rakudo Star, and then MoarVM/Perl6/Rakudo will
build without issue.
Apple Swift is likely a similar situation: Requests execstack but doesn't
need it. @dheine , if you'd like to collaborate with me on that, I'm game.
So for my particular itch, I'm good. No WSL changes needed.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@shabiel That's good news! Have a look at https://wiki.gentoo.org/wiki/Hardened/GNU_stack_quickstart . If you have .S files that run into this GNU "as" quirk, simply appending this to the end will solve the problem:
#if defined(__linux__) && defined(__ELF__)
.section .note.GNU-stack,"",%progbits
#endif

This strikes me as a good idea anyway. Marking the stack executable when it does not need to be is a security breach waiting to happen. All it needs is a coding error somewhere to lead to an exploit.

@dheine and @yamsergey , I found the issue with libFoundation.so. Tracking this at https://bugs.swift.org/browse/SR-2700?jql=text ~ "executable stack" . Hopefully Apple will accept the fix.

@yorickdowne , nice.  Thanks for taking this on.  And I agree with your earlier comment about executable stacks being a security risk.  Can think of very few good reasons for allowing that as an option. We are in a cyber war and we don't want to keep giving the adversaries free weapons and ammunition!

In a way, I'm actually really happy WSL doesn't implement PROT_GROWSDOWN. It can act as a "canary" of sorts to flag projects that really need to be fixed upstream for security reasons.
That could also have happened 3+ years ago with SELinux / Exec Shield, but I get the approach of "we don't want to break the world" and disabling Exec Shield for .so files that request execstack.
Only thing being: I'm one person. As much as I enjoy tilting at windmills, I can only do so much. So if others want to pile in, identify upstream projects that request execstack and should not, then go about contributing fixes to those, that'd be swell.

Good feedback.  The executable stack support also scares me :).  Luckily we've been able to get other components to update their code (e.g. #302), and most of the time having the executable stack ends up being accidental.

@dheine That was good timing. Apple just accepted the PR, and I was curious when we might see it in a release. Swift 3.1 contributions close January 16th, see https://swift.org/blog/swift-3-1-release-process/ . Swift should work from binary package as soon as 3.1 is out. Fingers crossed.

@themissingpieces Are you familiar with the OpenCV source, or do you know someone who is? I've been playing around with it a bit and it puzzles me. The *.so libraries are flagged for execstack, but I don't see any .o files that are, nor system .so that are. I don't currently understand why those OpenCV *.so get flagged that way. scanelf finds no component that would cause it and I don't see any options in link.txt that force it, although, for all I know, that's where the culprit lies after all. If it's not object files, it must be linker options, right?
The right way to resolve this is to not flag the *.so for execstack. This closes a security hole, it also means it'll work out of the box on SELinux and WSL.

I'm getting this error when running the latest Swift snapshot (from January 17) under bash/Ubuntu 16: error: failed to launch REPL process: process launch failed: 'A' packet returned an error: 8
I thought the PR of @yorickdowne would fix the problem ?

@warpdesign , I believe that's a separate issue. My strace points to PTRACE as the culprit, and there's a fixinbound at https://github.com/Microsoft/BashOnWindows/issues/1692 and an unassigned bug at https://github.com/Microsoft/BashOnWindows/issues/555
For now we'd need to monitor the behavior on Insider builds, and if 1692 alone isn't enough and 555 is needed as well, bug MS devs to assign someone to the 555 bug.
Have you tried building Swift 3.1 from source to see whether you have the same issue?

No solution yet ?
So we can't enable executable stack ?

@FelipeMartin Solution to what? Which package do you want to use?
You can clear the execstack bit, "execstack -c", on the offending bit of code (often a library), and that will allow it to run on WSL.
Executable stack is a seriously bad idea, and in all cases we've looked into so far, it being requested was an artifact of the GNU tool chain defaulting to it for assembly files, not a case of the code actually needing executable stack.

You can clear the execstack bit, "execstack -c", on the offending bit of code (often a library), and that will allow it to run on WSL.

@yorickdowne I had already tried it. It gives me the following error when trying to run it:
$ ./ex3
bash: ./ex3: cannot execute binary file: Erro no formato exec```

@FelipeMartin , we really can't be discussing your homework in a bug thread.
Briefly: In my opinion, trying to execute machine code on the stack is inherently unsound. .S files exist, use them. If you are bound and determined to use the technique you have, may I suggest spinning up an Ubuntu inside VirtualBox and running it there.
Really, though: Let's drop this discussion in this forum. This is not a thread for discussing homework assignments, or for learning how to code. StackExchange is better suited for those kind of discussions.

@yorickdowne I see your point. But I don't know if people will be able to help better in stackoverflow than here. Anyway, yes, my option is to use a VM to do it. I have already it installed but I am not using it since I have heard about Bash on Windows.

Please everyone vote for this issue https://wpdev.uservoice.com/forums/266908-command-prompt-console-bash-on-ubuntu-on-windo/suggestions/13904454-mprotect-prot-growsdown-support

@KindDragon According to @shabiel, GT.M does not need executable stack support. Do you know otherwise?
It is better not to ask for execstack in the first place, from a security perspective if nothing else. Implementing prot_growsdown strikes me as controversial at best and potentially even unwise, particularly when these issues can be resolved upstream by changing how .S files are built.
This discussion here kicked off some in depth investigation into how to do that in a portable manner. The dyncall code is a good reference to that implementation and I can look for the detailed test results.
I think you working with the GT.M devs so it doesn't request execstack any more is the best way to go.

I don't know about GT.M, my issue was with OpenCV and OpenCL that also return error "cannot enable executable stack as shared object requires: Invalid argument"

@KindDragon I looked into OpenCL briefly and couldn't figure out where and why it asks for executable stack. None of the .o files seem to have it, so it must be requested during link? If you clear it from the offending .so file with execstack -c, does it then work?
If you have experience with OpenCL, I'd be happy to work with you and the upstream devs to figure this out. I don't know OpenCL but I'm getting familiar, bit by bit, with libraries that flag RWX when all they need is RW-, thanks to oddities of the GNU tool chain.
With a bit of luck, OpenCL does not actually require an executable stack.

If you clear it from the offending .so file with execstack -c, does it then work?

Yes

If you have experience with OpenCL, I'd be happy to work with you and the upstream devs to figure this out.

I'm only using libOpenCL.so.1 from NVidia

Great news to hear it works when clearing the flag. That means that it doesn't require an executable stack, and you have a workaround.
For situations like this, I feel strongly that implementing PROT_GROWSDOWN would be the wrong way to go. Requesting execstack is a security risk, and WSL can act as the "canary" to alert us, as a community, to code that really needs to be fixed upstream.

I'm only using libOpenCL.so.1 from NVidia

Chances are high that NVidia has .S or .s (assembly) files in their source, and because of the way GNU tools work on Linux, they end up with an execstack flag where they didn't want one. The fix is trivial, just a bit of an #ifdef and #define to insert a section instructing the GNU tool to not set that flag.
I've created a thread over on the NVidia side offering my assistance. https://devtalk.nvidia.com/default/topic/1014466/cuda-setup-and-installation/libopencl-so-1-fails-out-of-the-box-on-ubuntu-on-windows-wsl-/

The Command execstack -c isn't working

Please, If Anybody can just tell me what does that error "section file offsets not monotonically increasing" mean?? And how i should try to fix it

Configuring the installer for this system's environment...
Launching installer...
failed to open </tmp/install.dir.30/Linux/resource/jre/jre/lib/amd64/default/libjvm.so> - reason: </tmp/install.dir.30/Linux/resource/jre/jre/lib/amd64/default/libjvm.so: cannot enable executable stack as shared object requires: Invalid argument>
Failed to find VM - aborting
I installed JVM , JDK and JRE. Tried install using root too. Anyone can help me?

encountering same issue when using our 64-bit build of https:
/opt/bb/lib64/apt/methods/https: error while loading shared libraries: libcrypto.so.1.0.0: cannot enable executable stack as shared object requires: Invalid argument
/opt/bb/lib64/apt/methods/https: error while loading shared libraries: libcrypto.so.1.0.0: cannot enable executable stack as shared object requires: Invalid argument
E: Method https has died unexpectedly!

Let's give this the visibility it needs on uservoice, this is clearly affecting many different apps!
https://wpdev.uservoice.com/forums/266908-command-prompt-console-windows-subsystem-for-l/suggestions/13904454-mprotect-prot-growsdown-support

@mrlifetime , that means this issue is upstream, in the libcrypto library, not in WSL. Likely, libcrypto has asm code and relies on standard GCC behavior, which flags for executable stack even when it's not needed.
If you'd like to point me to the repository / community for this project, I'm happy to help you fix that permanently. The includes necessary to do so have been thoroughly vetted by now.

@yorickdowne Unfortunately, I can't provide access to this repo as it is not public but if you could please point me to either some docs or ref material that can help fix this, I would be more than happy to pass this on to responsible devs! I am suspecting this wasn't compiled properly and/or the code for libcrypto we are using is perhaps a bit old and needs updating.

Sure thing! Here's a snippet on how dyncall handles it. In their case, this goes into a .S file, but you could also have a #define in a .h and then the .S just calls that #define. I like that better because it means changes to the method have to be made in only one section. What they're testing against here, the DC__ are custom defines, which you can look up at http://hg.dyncall.org/pub/dyncall/dyncall/file/03f0b683918a/dyncall/dyncall_macros.h
 /* Use .note.GNU-stack to explicitly indicate a non-exec stack, b/c of bad   */
 /* default behaviour when translating handwritten assembly files (needed on  */
 /* GNU/* platforms, Android and FreeBSD, as tests have shown).               */
 #if (defined(DC__C_CLANG) || defined(DC__C_GNU)) && defined(__ELF__) && (defined(DC__OS_Linux) || defined(DC__OS_FreeBSD))
 .section .note.GNU-stack,"",%progbits
 #endif

Here's how Apple's Swift handles it. They define in a .h and then call NO_EXEC_STACK_DIRECTIVE at the end of every .S. Note they're testing differently than dyncall on whether they need this. dyncall lives on more platforms, consider their tests to be the more portable version.
#if defined(__GNU__) || defined(__GNUC__) || defined(__ANDROID__) || defined(__FreeBSD__)
#define NO_EXEC_STACK_DIRECTIVE .section .note.GNU-stack,"",%progbits
#else
#define NO_EXEC_STACK_DIRECTIVE

In my mind, the best approach would be to use dyncall's tests and Apple's "define in a .h, then reference at the end of every .S" approach. That way, it's highly portable, and if you ever need to change the tests, you only need to do so in one location.

dyncall 1.0 has been released 2018-04-23 and contains code to avoid setting execstack. I've updated https://github.com/MoarVM/MoarVM/issues/470. There are other issues with dyncall on MoarVM, hopefully we'll see dyncall 1.0 pulled in MoreSoonerish(tm). perl6 on WSL. It'll happen. Eventually, but it'll happen :).

I have a project which started to use nested function. I will probably just tell people not to use WSL. This was a nice way to support windows... but it is probably not worth rewriting everything.
BTW: noexec stack is just pseudo security. It is based on the idea that code is fundamentally something else than data. But it is not! So it is not surprising that even with a non-executable stack you can exploit buffer overruns using return-oriented programming. Misguided people now conclude that return addresses are not really data and need to be protected. They we then learn that it is possible to exploit a program in different ways using buffer runs by exploiting control flow changes which depend on local variables... The only way to fix this is to protect against buffer overruns directly. Everything else is pseudo security.

On 08/06/2018 01:57 AM, Martin Uecker wrote:

I have a project which started to use nested function. I will probably
just tell people not to use WSL. This was a nice way to support
windows... but it is probably not worth rewriting everything.
BTW: noexec stack is just pseudo security. It is based on the idea
that code is fundamentally something else than data. But it is not! So
it is not surprising that even with a non-executable stack you can
exploit buffer overruns using return-oriented programming. Misguided
people now conclude that return addresses are not really data and need
to be protected. They we then learn that it is possible to exploit a
program in different ways using buffer runs by exploiting control flow
changes which depend on local variables... The only way to fix this is
to protect against buffer overruns directly. Everything else is pseudo
security.

[KSB] Spot on.
Regards
– Bhaskar

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/WSL/issues/286#issuecomment-410597084,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAiqeptE1tmKyx_iJwmFcyfc52hWVt7Cks5uN9rWgaJpZM4IRnk-.

--
YottaDB - Rock solid. Lightning fast. Secure. Pick any three.

The only way

In security, there is no "only way".
Security (which is defensive) is all about putting layer on top of layer on top of aspect on top of concern, making it ever more difficult for unauthorized things to happen.
Lack of an executable stack reduces attack surface. That's good.
General reading suggestion would be the ever so technical https://en.wikipedia.org/wiki/Executable_space_protection#Linux

Linus famously maintains that "vulnerabilities are just bugs", and security folk tend to go on about defense in depth. That seems like an intractable debate.
I'll offer this thought to appeal to software engineers who want their stuff to work cross-platform. Requiring an executable stack will break your code on NetBSD and OpenBSD (source: http://git.savannah.gnu.org/gitweb/?p=libffcall.git;a=blob;f=porting-tools/execstack/README), and in severely hardened SELinux environments (https://www.akkadia.org/drepper/selinux-mem.html).
The same way that I can't come into this thread and credibly tell a software engineer to stop using executable stack, as they may have good reasons and it may fit their deployment case, a software engineer can't tell OS designers or customers to stop using executable stack protection. They may have good reason, such as designing for defense in depth.
The dyncall and libffi libraries allow dynamic callbacks and the like without the need for execstack, that's worth a look.
Ultimately, if you want to use nested functions, go for it. Live with the fact it won't work on NetBSD, OpenBSD, SELinux with memprotect, and WSL. That may be acceptable, those might not be target environments.
For me personally, I'll keep going after the low-hanging fruit: The projects that require execstack only because GNU "as" has quirky behavior. I've updated my recommended code snippet that can be used for any project with .S files that doesn't actually need execstack. It combines the dyncall approach (maximum portability) with the Swift approach (minimal code to add to .S; most everything lives in .h). That's at https://yorickdowne.wordpress.com/2017/01/04/wsl-bash-on-windows-as-a-dev-environment/

The accepted trade-off is to have a non-executable stack be default but have an executable stack for programs which need them. Not supporting this is just a deficiency in WSL.


[Bug]:  Prowler AWS' JSON-OSCF output format is corrupted, not valid JSON

Steps to Reproduce

Command being run: prowler aws -b --verbose -M json-oscf -F my_test and then within python, opening the file my_test.json into a string and then running json.loads(my_test_string). When loading into cyberchef the file syntax is also wrong.
AWS
Single Env
json.decoder.JSONDecodeError: Extra data: line (NA) column (NA) (char (NA))

Expected behavior
This file should be load without fail if in correct json format. The reason that this is happening is because there is an error (which is rare) is that when appending findings, sometimes findings will be separated with a ] instead of a ,
Actual Result with Screenshots or Logs

How did you install Prowler?
From pip package (pip install prowler)
Environment Resource
Being run in a docker container
OS used
Ubuntu
Prowler version
prowler 4.0.0
Pip version
23.0.1
Context
As mentioned in the expected behavior, there is a bug that is causing the findings within the json to be appended to each other with ] instead of ,. When i run a replace on the areas where it is offending ex. prowler_output.replace('}]{', '},{')), it works. I'll take a look at where this is happening within the source and see if i can push a potentially quick fix, but seems like something easily resolvable.

Hi @yungcero, I just tried your command on Prowler v4.0 and doesn´t work, are you sure you are using that command and that is the version you have? prowler aws -b --verbose -F my_test should work instead. Remember on v4 JSON OCSF is generated always by default.

actually I have just seen what's going on, you have a typo on OCSF on your command. here is the right one prowler aws -b --verbose -M json-ocsf -F my_test

hey! @toniblyx . Yeah that is my bad. I accidentally mistyped the command when opening the issue. The same error persists however with the correct command

Hi @yungcero, I can't reproduce your issue in our tests environment. The JSON-OCSF outputs is well generated following JSON syntax.
I just inserted the output in CyberShef using the JSON Minify recipe and it works fine using Prowler v4.

Looks like it was an edge case in my environment. I restarted my container and updated to 4.0.1 and looks like its good now. This was the output before in cyberchef, but looks like im not running into that issue anymore. And from the output looks like my ocsf json was stuck on a previous version.

Thanks for looking at this @jfagoagas @toniblyx

Awesome, thanks for the heads up @yungcero!


Allows for initialization of Source or Lens class using dicts instead of astropy tables

Previously, in order to create an instance of the Lens class, the source_dict parameter needed to be an astropy table (the documentation was also incorrect as a consequence). This PR allows for source_dict to be a dict by converting the dict into an astropy table during the initialization of the class.
Additionally, if the user wants to initialize a Lens or Source class with a specific center_x and center_y, they can now do so by specifying them in source_dict.

@nkhadka21 I am not sure why it takes 30 minutes now. Actually, it took 30 minutes in PR #236 as well. I will try rerunning the tests and see if it is consistently slow


Fix style scope issues in dynamically named slotted items

Fixes https://github.com/vaadin/vaadin-grid/issues/1306
Fixes https://github.com/vaadin/vaadin-grid/issues/1227

This change is

src/vaadin-split-layout.html, line 69 at r1 (raw file):
Previously, manolo (Manuel Carrasco Moñino) wrote…
Could this trick be documented in code somehow. It took a while to me tu understand how this fixes the issue after reading the tickets. I suspect that in the future someone reading this might ask why this is here.

I generally avoid adding comments to source because that's usually a sign of badly tested/organized code. Maybe in this case a comment could be in order. Done.

Comments from Reviewable

Review status: all files reviewed at latest revision, all discussions resolved.

src/vaadin-split-layout.html, line 69 at r1 (raw file):
Previously, tomivirkki (Tomi Virkki) wrote…
I generally avoid adding comments to source because that's usually a sign of badly tested/organized code. Maybe in this case a comment could be in order. Done.

Sure, I neither like comments unless they are strictly necessary. Much clearer now.

Comments from Reviewable

Review status: all files reviewed at latest revision, all discussions resolved, all commit checks successful.

Comments from Reviewable


Support more key types in cli address commands

Add API support for Shelley era extended ed25519 keys
Extend CLI address commands to handle multiple key types (normal,
extended and byron)
New CLI command to convert signing keys from Byron era file formats

Together this should allow testing of Byron witness support and testing
of Byron addresses created in the Byron era using Byron CLI commands
and then spending from them after the hard fork in the Shelley era.

bors r+


bug: restoration overwrites neotree window settings

Did you check docs and existing issues?

[X] I have read all the persistence.nvim docs
[X] I have updated the plugin to the latest version before submitting this issue
[X] I have searched the existing issues of persistence.nvim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
10.0.2
Operating system/version
MacOS 15.2
Describe the bug
Session restoration overwrite my custom window settings for neotree.
Steps To Reproduce
I have the following window setting for neo-tree
opts = {
  window = {
    position = "right",
    width = 30,
  }
}

Anytime I restore a session, it go back to the default window settings of position="left" and width=30.
I also tried using the sessionopts from #80 to exclude neotree from persistence, but it does not work.
vim.opt.sessionoptions = { "buffers", "curdir", "tabpages", "winsize", "help", "globals", "skiprtp", "folds" }

https://github.com/user-attachments/assets/39ee8ff2-6fb0-458f-98e7-5454cfce9701
Expected Behavior
persistence.nvim restores neotree to my custom setting or does not restore at all.
Repro
No response

persistence is just a simple wrapper around NEovim sessions.
It does notthing that can cause what you are seeing. For sure not because of this plugin.


Windows background updates: Catch access denied update errors and direct to correct issue

Related to #47841

We'll direct users to https://aka.ms/vscode-update-access-denied, which currently points to https://github.com/Microsoft/vscode/issues/47841#issuecomment-399941682, and we can change that later to point to a docs page.

Please do code review: https://github.com/Microsoft/inno-updater/commit/ebfa80833fd9e918ca12892ed092f92bf4f911ef


Support Markdown in Documentation/Purpose field

I'm opening this as a new issue so we can start with a clean discussion, as the other ones are a bit out of date.

The feature request is to support the rendering of MD in the Documentation/Purpose field.
Where should the MD be rendered?

HTML Report
Jasper Report

Where should the MD not be rendered?

In Archi itself

What Java library to use?

See https://github.com/commonmark/commonmark-java
Maven jar - https://mvnrepository.com/artifact/org.commonmark/commonmark/0.21.0

Example code:
Parser parser = Parser.builder().build();
Node document = parser.parse("This is *Markdown*");
HtmlRenderer renderer = HtmlRenderer.builder().build();
String text = renderer.render(document);  // "
This is Markdown
\n"
System.out.println(s);

In summary, it's easy enough to add a Java library to convert MD to HTML, the problems are when to do that rendering and how to handle escaped or unescaped HTML in the reports. Until that is solved, we can't implement it.

I created a POC implementation here
The main problems are:

The rendering in the HTML report looks bad because it uses the host report's style-sheet. It needs to have its own style-sheet.
Very limited support of rendering HTML in Jasper Reports. So limited that it's useless.

From my tests, I'd say that it's a non-starter for the Jasper report and only possible in the HTML report if we can figure out how to attach a separate style-sheet to the resulting documentation HTML.

I definitely support this one, especially for HTML reports!


Support moving views into editor tabs

Now you can move a terminal into an editor area, would it be possible to move the problems panel into the editor? I think it'd really improve my productivity, and, no doubt, that of others. It'd be helpful if you want to have it split vertically with an editor like this...
Layout

Main file
Extra file

Main file
Problems panel

This is a duplicate of my request: https://github.com/microsoft/vscode/issues/132567  Hopefully we can get enough upvotes on one of them!


update build script

Refer to this link for build results (access rights to CI server needed):
https://jenkins.bigswitch.com/job/openstack_horizon_bsn_pull_req/106/


Add a "How to organize a meetup" guidelines

...and an example/guide of how to split up the work items involved on different people.
@netumoliver will help with this.

Closing in favor of the work in https://github.com/cloud-native-nordics/meetups/issues/71


allow custom database names (not just default)

NOTE: I did not change the version number in the file! Please increment the version number and push to NPM

Thanks!

no problem! this kept me from having to do it all the pulling logic myself!  I can't believe AWS SDK doesn't do this already.


Finish Controller Test support

We need test support for JavaEE and a better access to the controllers.

see #269

see #295


fixed error in qsbr_barrier()

added qsbr_wait()
added qsbr_get_epoch()

qsbr_barrier() has been fixed -- thanks!
Implemented EBR as an alternative.

Hi, Mindaugas.
It's good to know that you fixed qsbr. I really love that lib.
And I just have finished reading the code of your's EBR realisation and
I've been wondering that
nothing stops someone from using QSBR in the same manner, I mean
enter/leave interface and checking
only active threads. Am I right?
This is the code:
local_epoch value 1 is reserved for non active threads, so global epoch
starts
from 2.
/*

Go through a queiscent state and enter critical section
*/
inline void
qsbr_enter_critical_section(qsbr_t *qs)
{
qsbr_tls_t *t = pthread_getspecific(qs->tls_key);
ASSERT(t != NULL);

t->local_epoch = qs->global_epoch;
atomic_thread_fence(memory_order_release);
/* operations with shared memory objects will START from here */
}
/*

Leave critical section
*/
inline void
qsbr_leave_critical_section(qsbr_t *qs)
{
qsbr_tls_t *t = pthread_getspecific(qs->tls_key);
ASSERT(t != NULL);

/* operations with shared memory objects will END here /
atomic_thread_fence(memory_order_acquire);
/ now thread is in extended quescent state (not active) */
t->local_epoch = 1;
}
..
..
/*

Have all online threads observed the target epoch?
/
t = qs->list;
while (t) {
/ skip offline threads, i.e. threads that are
in extended quiescent state
/
if (t->local_epoch != 1 && t->local_epoch < target) {
/ Not ready to G/C. */
return false;
}
t = t->next;
}

2016-04-16 5:21 GMT+03:00 rmind<EMAIL_ADDRESS>

qsbr_barrier() has been fixed -- thanks!
Implemented EBR as an alternative.

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/rmind/libqsbr/pull/1#issuecomment-210716249

--
С уважением,
Киселев Александр

Hello Mindaugas.
May I ask a litle question again?
Inspired by your QSBR lib I've written my own lib that uses similar to QSBR
technique and some kind of read copy algorithm.
I know that this kind of coding could very tricky and the results should be
very carefully checked and rewieved. How do you resolve this
issues, do you do some kind of stress tests?
2016-04-16 5:21 GMT+03:00 rmind<EMAIL_ADDRESS>

qsbr_barrier() has been fixed -- thanks!
Implemented EBR as an alternative.

—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/rmind/libqsbr/pull/1#issuecomment-210716249

--
Kiselev Alexander


19JWT-B  Onenuo Door Window Detector

Hi there, could anyone help me with this device? Attached is device dump. Firmware version 1.0.2
dump.bin.zip

Added as ONENUO 19JWT-B Door Window Sensor v1.0.2


Can't get conversation members list. Failure due to: ThreadNotFound. with Node/core-GetConversationMembers example when I try it in skype/msteams

System Information (Required)

Node
3.8.1
Azure Bot Service
Node.js 6.9.5 + npm version 3.10.10

Issue Description
Error for msteams and skype. Works fine in Slack and web-chat.
Example Code
https://github.com/Microsoft/BotBuilder-Samples/tree/master/Node/core-GetConversationMembers
Steps to Reproduce
just deploy example from https://github.com/Microsoft/BotBuilder-Samples/tree/master/Node/core-GetConversationMembers
Expected Behavior
List of conversation members
Actual Results
Error retrieving conversation members { url: 'https://smba.trafficmanager.net/v3/conversations/29%3A1UbaMPqpYABhTvgpqhoQ00bjAqDi65n9fV_VXET6dafs/members',
method: 'GET',
headers:
{ 'content-length': '77',
'content-type': 'application/json; charset=utf-8',
server: 'Microsoft-HTTPAPI/2.0',
date: 'Sun, 14 May 2017 05:40:48 GMT',
connection: 'close' },
errObj:
{ Error: Not Found
at Request.callback (D:\home\site\wwwroot\node_modules\superagent\lib\node\index.js:626:17)
at D:\home\site\wwwroot\node_modules\superagent\lib\node\index.js:795:18
at IncomingMessage. (D:\home\site\wwwroot\node_modules\superagent\lib\node\parsers\json.js:16:7)
at emitNone (events.js:91:20)
at IncomingMessage.emit (events.js:185:7)
at endReadableNT (_stream_readable.js:974:12)
at _combinedTickCallback (internal/process/next_tick.js:74:11)
at process._tickDomainCallback (internal/process/next_tick.js:122:9)
original: null,
response:
Response {
domain: null,
_events: {},
_eventsCount: 0,
_maxListeners: undefined,
res: [Object],
request: [Object],
req: [Object],
links: {},
text: '{"error":{"code":"ServiceError","message":"Failure due to: ThreadNotFound."}}',
body: [Object],
files: undefined,
buffered: true,
headers: [Object],
header: [Object],
statusCode: 404,
status: 404,
statusType: 4,
info: false,
ok: false,
redirect: false,
clientError: true,
serverError: false,
error: [Object],
accepted: false,
noContent: false,
badRequest: false,
unauthorized: false,
notAcceptable: false,
forbidden: false,
notFound: true,
charset: 'utf-8',
type: 'application/json',
setEncoding: [Function: bound ],
redirects: [] },
status: 404 },
status: 404,
statusText: '{"error":{"code":"ServiceError","message":"Failure due to: ThreadNotFound."}}',
obj:
{ error:
{ code: 'ServiceError',
message: 'Failure due to: ThreadNotFound.' } },
data: '{"error":{"code":"ServiceError","message":"Failure due to: ThreadNotFound."}}' }

Issue solved, in my case I was trying to request this information for direct bot<->user channel. When you request same info from group channel it works fine.
P.s I guess output error should be more precise, describing that this rest api works only for group chats


Add jsonnet-libs mixins

Add grafana/jsonnet-libs mixins
Add blackbox exporter
Add mysql exporter
Includes #39  and #40 .

@paulfantom  any chance this can be merged? thanks


Give --disable-strict-host-keychecking flag more flexibility

First of all, I don't understand the need of maintaining a separate known hosts file exclusive for awless (~/.awless/known_hosts), after that, let me explain my situation...
I have configured in my $HOME/.ssh/config when I don't want to check the host keys for some host patterns, with the configuration param:
StrictHostKeyChecking=no
also, I don't want to awless to check it, but, in some cases, I want that ssh to do it, but not awless, with the current --disable-strict-host-keychecking flag is impossible, I can only disable it for both or for none.
So, my proposal is something like:
--disable-strict-host-keychecking=<value>  Disable the remote host key check from:

                                             ssh (~/.ssh/known_hosts)
                                             awless (~/.awless/known_hosts)
                                             both (~/.ssh/known_hosts and ~/.awless/known_hosts)

Thanks for the suggestion.
First, we are going to investigate wether or not we really need to separate ~/.ssh/known_hosts and ~/.awless/known_hosts in two different files.
For the StrictHostKeyChecking, I don't think that we should separate awless and ssh checks according to a flag, as it will make more complex both usage and implementation of the feature. However, we could rather go in two directions to improve awless ssh for such a use case:

When ssh exec is present locally, delegate the key verification to ssh
When using --print-cli, or --print-config, do not try to connect via SSH in awless, and let the user run the ssh connection with its wanted configuration.


"Title Case a Sentence" : strange outputs on two of the three tests while passing the all caps test case.

Challenge Title Case a Sentence has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

function titleCase(str) {
answer =[];
var cased;
var fixed;
check = str.split(" ");

for (i=0; i<check.length; i++){
fixed = check[i].substr((1 - check.length),1).toUpperCase() + check[i].substr(1,(check.length -1)).toLowerCase();

answer.push(fixed);}

return answer.join(" ");
}

titleCase("sHoRt AnD sToUt");

Hello.  It appears I may have found a bug on this challenge.  While my code passes the ALL CAPS test case,  The console outputs "Rho Nnd Uto" for the "sHoRt AnD sToUt" test case and "I'm A Tittl Tea Pot" for the "I'm a little tea pot" test case.  This really seems like a bug to me.  Please forgive me if I am mistaken here.

The problem is not in the challenge. You have multiple instances of accessing the array/string indices that are inconsistent with what you are trying to do. You should use the help button in the challenge and ask for help in one of the chatrooms.

@acarosell1 Thank you for reporting this issue. Your code is slightly incorrect. Take a look at @Coby-T's advice.
This is a standard message notifying you that this issue seems to be a request for help. Instead of asking for help here, please click the "help" button on the challenge on Free Code Camp, which will take you to the help chatroom for that specific challenge. You can also view our full list of official chatrooms.
If you think I'm wrong in closing this issue, please reopen it and add further clarification. Thank you, and happy coding!

Thank you.  I did visit the help chat room and did not receive any responses.  With some hesitation, I decided to report this issue as a potential bug.  While I am disappointed to discover that my code is erroneous, I appreciate you letting me know so I can attempt to create some fully correct code. Thanks again.


Redirect index.html and all non-matched routes to the homepage

If your using react-router, you can have a "/" route endpoint with the exact keyword at the top, and another "/" route endpoint at the bottom without exact which will catch all non-matched routes


Compilation error w/ gcc-8.1

Here's the error message:
Building CXX object Source/Foundation/CMakeFiles/bsf.dir/bsfUtility/Utility/BsDynLibManager.cpp.o
In file included from /usr/include/c++/8.1.1/map:60,
                 from /home/unclejimbo/Devtools/bsf-1.0.0b/Source/Foundation/bsfUtility/Prerequisites/BsStdHeaders.h:22,
                 from /home/unclejimbo/Devtools/bsf-1.0.0b/Source/Foundation/bsfUtility/Allocators/BsStackAlloc.h:9,
                 from /home/unclejimbo/Devtools/bsf-1.0.0b/Source/Foundation/bsfUtility/Allocators/BsMemoryAllocator.h:443,
                 from /home/unclejimbo/Devtools/bsf-1.0.0b/Source/Foundation/bsfUtility/Prerequisites/BsPrerequisitesUtil.h:262,
                 from /home/unclejimbo/Devtools/bsf-1.0.0b/Source/Foundation/bsfUtility/Utility/BsDynLibManager.h:5,
                 from /home/unclejimbo/Devtools/bsf-1.0.0b/Source/Foundation/bsfUtility/Utility/BsDynLibManager.cpp:3:
/usr/include/c++/8.1.1/bits/stl_tree.h: In instantiation of ‘class std::_Rb_tree<bs::NativePtr<bs::DynLib>, bs::NativePtr<bs::DynLib>, std::_Identity<bs::NativePtr<bs::DynLib> >, std::less<void>, bs::StdAlloc<bs::NativePtr<bs::DynLib>, bs::GenAlloc> >’:
/usr/include/c++/8.1.1/bits/stl_set.h:133:17:   required from ‘class std::set<bs::NativePtr<bs::DynLib>, std::less<void>, bs::StdAlloc<bs::NativePtr<bs::DynLib>, bs::GenAlloc> >’
/home/unclejimbo/Devtools/bsf-1.0.0b/Source/Foundation/bsfUtility/Utility/BsDynLibManager.h:37:34:   required from here
/usr/include/c++/8.1.1/bits/stl_tree.h:452:21: error: static assertion failed: comparison object must be invocable with two arguments of key type
       static_assert(__is_invocable<_Compare&, const _Key&, const _Key&>{},
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [Source/Foundation/CMakeFiles/bsf.dir/build.make:141: Source/Foundation/CMakeFiles/bsf.dir/bsfUtility/Utility/BsDynLibManager.cpp.o] Error 1

Meanwhile clang-6.0 will also generate similar errors regarding the invocability in stl_tree.h
Possible same issue and fix: https://bugzilla.redhat.com/show_bug.cgi?id=1541688

Well that is just super annoying. It's working fine on gcc 6.4 and 7.3, and VS2017.
It looks like the fix is that the comparison function needs to be in the header file. But the whole point was to have it be hidden in the cpp file.

GCC 8.2 appears to compile the code fine. I've yet to test Clang.

Clang 7 also appears to work fine as well. I'm going to assume this was an issue with that particular issue of the compiler itself and was since resolved. Closing but let me know if it's still causing issues and I'll reconsider.


Support for ignoring tables

Description
Support for ignoring tables
Type of change

New feature (non-breaking change which adds functionality)
Documentation update

Testing steps
Can be checked on CLI
Checklist

[ ] make before_commit passes
[ ] updated documentation wherever necessary
[ ] added or modified tests if necessary
[ ] updated schemas and validators in insights-data-schemas in case of input/output change

Codecov Report

Merging #127 (6bdd09b) into master (a81cde7) will decrease coverage by 0.28%.
The diff coverage is 54.54%.

@@            Coverage Diff             @@
##           master     #127      +/-   ##
==========================================
- Coverage   57.95%   57.66%   -0.29%
==========================================
  Files           7        7
  Lines         823      841      +18
==========================================
+ Hits          477      485       +8
- Misses        308      318      +10
  Partials       38       38

Impacted Files
Coverage Δ

exporter.go
37.63% <54.54%> (+0.45%)
:arrow_up:

Continue to review full report at Codecov.

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


Update release script

What type of PR is this?

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespace from that line:

/kind cleanup
What does does this PR do / why we need it:
Updates the release script to include other kinds / labels that weren't there
Which issue(s) this PR fixes:
N/A
How to test changes / Special notes to the reviewer:
N/A
Signed-off-by: Charlie Drage<EMAIL_ADDRESS>

/approve
/lgtm


Add fractional cover option to load_ard

Currently, fractional cover is loaded using the load_masked_FC function, which loads fractional cover data using the previous format of looping through dc.load. This PR pulls that functionality into the new and improved load_ard function. Fractional cover is masked using the pq band from Landsat C2 (as it was generated from C2).
The implementation here is slightly simplified as fractional cover has only been calculated for LS8, hence there is no pressing need to loop through sensors as we do for loading ARD S2 and Landsat.

Closes Issue #57

This is going to be fantastic functionality to have in load_ard, for both DEAfrica and DEA. The function with all its defaults works well, however I've hit some errors testing it out with cloud masking turned to False (i haven't yet delved deep into the code to work out what's going on):
query = {'x': (-1.9, -2),
         'y': (6.9, 7),
         'time': ('2017-01', '2017-04'),
         'measurements': ['pv', 'npv', 'bs', 'ue'],
         'group_by': 'solar_day'}

# Load available data filtered to 99% clear observations
ds = load_ard(dc=dc,
              products=['ga_ls8c_fractional_cover_2'],
              min_gooddata=0.90,
              output_crs=output_crs,
              align=(15, 15),
              resolution=(-30, 30),
              mask_pixel_quality=False,
              **query)

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-13-53c8eb261ed4> in <module>
     13               resolution=(-30, 30),
     14               mask_pixel_quality=False,
---> 15               **query)

~/dev/deafrica-sandbox-notebooks/Scripts/deafrica_datahandling.py in load_ard(dc, products, min_gooddata, pq_categories_s2, pq_categories_ls, mask_pixel_quality, ls7_slc_off, predicate, dtype, **kwargs)
    438     # mask are already a seperate product)
    439     if product_type == 'fc':
--> 440         ds_data = odc.algo.keep_good_only(ds, where=mask)
    441
    442     else:

/usr/local/lib/python3.6/dist-packages/odc/algo/_masking.py in keep_good_only(x, where, inplace, nodata)
     47     if isinstance(x, xr.Dataset):
     48         return x.apply(lambda x: keep_good_only(x, where, inplace=inplace),
---> 49                        keep_attrs=True)
     50
     51     assert x.shape == where.shape

/usr/local/lib/python3.6/dist-packages/xarray/core/dataset.py in apply(self, func, keep_attrs, args, **kwargs)
   4320             stacklevel=2,
   4321         )
-> 4322         return self.map(func, keep_attrs, args, **kwargs)
   4323
   4324     def assign(

/usr/local/lib/python3.6/dist-packages/xarray/core/dataset.py in map(self, func, keep_attrs, args, **kwargs)
   4294         variables = {
   4295             k: maybe_wrap_array(v, func(v, *args, **kwargs))
-> 4296             for k, v in self.data_vars.items()
   4297         }
   4298         if keep_attrs is None:

/usr/local/lib/python3.6/dist-packages/xarray/core/dataset.py in <dictcomp>(.0)
   4294         variables = {
   4295             k: maybe_wrap_array(v, func(v, *args, **kwargs))
-> 4296             for k, v in self.data_vars.items()
   4297         }
   4298         if keep_attrs is None:

/usr/local/lib/python3.6/dist-packages/odc/algo/_masking.py in <lambda>(x)
     46     """
     47     if isinstance(x, xr.Dataset):
---> 48         return x.apply(lambda x: keep_good_only(x, where, inplace=inplace),
     49                        keep_attrs=True)
     50

/usr/local/lib/python3.6/dist-packages/odc/algo/_masking.py in keep_good_only(x, where, inplace, nodata)
     49                        keep_attrs=True)
     50
---> 51     assert x.shape == where.shape
     52     if nodata is None:
     53         nodata = getattr(x, 'nodata', 0)

AttributeError: 'NoneType' object has no attribute 'shape'

Thanks @robbibt, nice pick-up on the mask_pixel_quality bug. I think I've fixed it now.

The mask_pixel_quality=False bug does seem to be fixed: I could use both options without errors.
I made a small change to streamline/simplify the code, and fix what looks like a bug where the wrong variable name was used if predicate=True. I tested this with a March predicate filter and worked as expected.
It would be great to have an example of loading FC data in the Using_load_ard.ipynb notebook... does that have to wait until the Collection 2 data is made public?

Function is looking good now, @robbibt, thanks for your help and thorough review.  And yeah, I will wait until C2 is made public before creating an example in the Using_load_ard notebook, otherwise users may get confused as to why they can't load FC.  Fingers crossed its not much longer until its released.


[Proposal] Add Missing Material icons

UseCase:
This issue is a consolidated proposal to add missing material icons
Proposal

Please add the missing Material icons

[ ] Icons.free_cancellations https://github.com/flutter/flutter/issues/88852
[ ] Icons.wechat icon https://github.com/flutter/flutter/issues/89619
[ ] Icons.rout_outlined https://github.com/flutter/flutter/issues/89684

Icons

images
Icons.free_cancellations

Icons.wechat

Icons.route_outlined

I have updated this issue to track missing material icons and referenced the other similar issues, This will help to keep track of all the missing icons issues in one place.
cc @guidezpl


feat: Integrate RTS migration API in get page API

Description
This PR calls the migration API on RTS to migrate the page DSL.
PR fixes following issue(s)
Fixes #26980
Media

A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video

Type of change

New feature (non-breaking change which adds functionality)

Testing

How Has This Been Tested?

[x] Manual
[x] JUnit

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

Closing this as it's already merged with another PR https://github.com/appsmithorg/appsmith/pull/28518


MERN_React: 5.1 connecting with and API

Description

How to connect with an API
how to use axios
how to fetch data from an API

Domain
MERN
Type of Contribution
Documentation
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of this project.

/assign


Speaking

Is your feature request related to a problem? Please describe.
-|||-
-|||-
[gl-sast-report.json](https://github.com/jaywcjlove/awesome-mac/files/14025720/gl-sast-report.json)

Describe the solution you'd like
No response
Describe alternatives you've considered
No response
📖 Additional contex
No response
🧨 Issue Checklist

[x] I have checked for other similar issues
[X] I have explained why this change is important
[X] I have added necessary documentation (if appropriate)

??


Optimization across multidimensional array

I just recently came across JAX and I am now trying to use it for my implementation of the Hapke Anisotropic Multiple Scattering Approximation model. I made a similar issue on jaxopt, but since the repository isn't going to be maintained much in the future, I gave optimistix a try! It seems to be faster than jaxopt and a bit than scipy:
# optimistix:
Inverse AMSA: Mean +- std dev: 984 ms +- 30 ms
# scipy:
Inverse AMSA: Mean +- std dev: 1.17 sec +- 0.03 sec
# LM:
Inverse AMSA: Mean +- std dev: 42.7 sec +- 0.5 sec

I am using optx.least_squares with LM in a for-loop which iterates over all pixels and tries to find the best fit to the target function. The structure is similar to the code provided here.
I was wondering if the current implementation would somehow allow me to pass a multidimensional array, or even a matrix, and optimize along an axis. Is there a trick maybe to achieve what I want?
Also, would it be possible to maybe provide a derivative function of the target function? I am still impressed I got such runtimes without providing it, but why derive it if I can provide it :)

I came across a vectorized Levenberg-Marquardt implementation, which sounds like exactly what I need!
Sadly I have only a little bit of experience in programming with JAX. I will try to naively implement this paper in Python, and then try to port it to Optimistix.
tldr; the paper introduces an operator G and factor mu with the final LM equation becoming:
arg min ||f(p)-y||^2 + mu ||Gp||^2
     p

Gp returns a concatenation of the spatial gradients of each parameter map.

JAX has a great tool for this called jax.vmap. First describe a single optimization problem you want to solve, and then vmap it over as many extra dimensions as you like. JAX and Optimistix will autovectorize the whole operation.

Thanks for the tip! I was reading about vmaps this morning, so I was able to sketch a small PoC and it seems to work! I am not sure if it is the right way to do it, so I wanted to ask if I am on the right track:

My current amsa function works for scalars, vectors and images/matrices. Would you say it would be better to cater it to scalars and then apply vmap to obtain the vector and matrix versions? What is the JAX way of doing it?
My function accepts a lot of parameters:

  single_scattering_albedo: ArrayLike, # [a, b]
  incidence_direction: ArrayLike, # [a, b, 3]
  emission_direction: ArrayLike, # [a, b, 3]
  surface_orientation: ArrayLike, # [a, b, 3]
  phase_function: dict,
  b_n: ArrayLike,
  a_n: ArrayLike = np.nan,
  roughness: float = 0,
  hs: float = 0,
  bs0: float = 0,
  hc: float = 0,
  bc0: float = 0,
  refl_optimization: ArrayLike = 0.0, # [a, b]

I used vmap twice:
    amsa1 = jax.vmap(
        amsa,
        (0, 0, 0, 0, None, None, None, None, None, None, None, None, 0),
        0,
    )
    amsa2 = jax.vmap(
        amsa1,
        (1, 1, 1, 1, None, None, None, None, None, None, None, None, 1),
        1,
    )

    def amsa_optx_wrapper(x, args):
        return amsa2(x, *args)

Is this correct? Or is there a better way? This question is kinda related with the one above.

I am getting an out of memory error when using the code on GPU, which doesn't happen with scipy. Is vmap not batching correctly?

And btw, have I missed something in the documentation regarding vmap and optimistix? I couldn't find anything regarding automatic vectorization. Or is it something fairly common with JAX and is implicitly known?

My current amsa function works for scalars, vectors and images/matrices. Would you say it would be better to cater it to scalars and then apply vmap to obtain the vector and matrix versions? What is the JAX way of doing it?

Yes, exactly! Usually better to let vmap handle the rank-polymorphism for you.

I used vmap twice:

This looks reasonable. FWIW you can simplify your handling of the vmaps a bit: pack your arguments into batched and nonbatched groups and you can just do jax.vmap(fn, in_axes=(0, None))((to_batch1, to_batch2, to_batch3, ...), (nobatch1, nobatch2, ...)). All that's going on there is that in_axes should be a pytree-prefix of the arguments.
You might also like equinox.filter_vmap if that's ever helpful.

I am getting an out of memory error when using the code on GPU, which doesn't happen with scipy.

If I had to guess, SciPy is probably doing its optimizer-internal operations on the CPU -- only evaluating your user-provided vector field on the GPU. So probably it's using less memory anyway.

Or is it something fairly common with JAX and is implicitly known?

Yup, common with JAX!


Dev flex

Adding some flexibility to the development process:

adding the DOCKER_TAG env var  (https://docs.docker.com/docker-hub/builds/advanced/)

this allows us to pass the wechat version the image build targets by command line (docker build -t wechat --build-arg DOCKER_TAG=<IP_ADDRESS> .   ---> wechat:<IP_ADDRESS>)
this allows to batch autobuild the images on hub.docker.com

to avoid out of sync images as currently in hub.docker.com/r/zixia/wechat

adding config files to override hardcoded default values

where to pull the wechat home-folder tgz
what image to use to run dochat

the config files leave the deafults untouched and are only meant to override them if wanted.

minor change in the README, adjusting the shebang of the monitor bug fixing script example

cannot get rid of the last 2 shellcheck errors without destroying the scripts. we do not knwo what location the scripts are called from and therefore cannot set a fixed path to the source command


Remove generated sources committed by mistake

These were probably unintentionally added in ba979143e2 which removed kie-remote-ws-wsdl-cmd module completely.
@mrietveld please confirm and also cherry-pick to 6.2.x.

Merged to master -- the files don't exist on 6.2.x!
Thanks @yurloc!


Navigating between problems using Arrow keys results in ERROR

When I try using arrow keys to navigate between problems of any chapter the redirection fails.
For example
If I'm on https://projects.100xdevs.com/tracks/6SbPPXGkG8QKFOTW9BmL/ts-1 and press the right arrow key, insted of redirecting to
https://projects.100xdevs.com/tracks/6SbPPXGkG8QKFOTW9BmL/ts-2 it redirects to https://projects.100xdevs.com/tracks/6SbPPXGkG8QKFOTW9BmL/[object Object]
I tried replicating this on local environment and everything works fine there. It just happens for me on the production website. Could anyone else confirm this?

I don't think the code has been pushed to production yet.

@bhutoria  yes seems to be the case.


Auto-added variables should work better when renaming a variable

I did this:

defined a variable a, and then a variable b that depends on it.
changed b to refer to c instead - a new entry was created for c.
renamed a to c - now there are two definitions of c, one empty, which causes an error.

The routine to tidy up auto-added variables should remove them if there's another variable with the same name.

Fixed by 82407c34eb317f2c99fd0b72840698ae1e671368


This is a test, please ignore, I'm sorry for the noise

So, so sorry :pensive:

Hi!
Please read this important information about creating issues.
If you are reporting a new issue, make sure that we do not have any duplicates already open. You can ensure this by searching the issue list for this repository. If there is a duplicate, please close your issue and add a comment to the existing issue instead.
If you suspect your issue is a bug, please edit your issue description to include the BUG REPORT INFORMATION shown below. If you fail to provide this information within 7 days, we cannot debug your issue and will close it. We will, however, reopen it if you later provide the information.
This is an automated, informational response.
Thank you.
For more information about reporting issues, see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#reporting-other-issues

BUG REPORT INFORMATION
Use the commands below to provide key information from your environment:
docker version:
docker info:
uname -a:
Provide additional environment details (AWS, VirtualBox, physical, etc.):
List the steps to reproduce the issue:
1.
2.
3.
Describe the results you received:
Describe the results you expected:
Provide additional info you think is important:
----------END REPORT ---------
#ENEEDMOREINFO

+1

USER POLL
The best way to get notified when there are changes in this discussion is by clicking the Subscribe button in the top right.
The people listed below have appreciated your meaningfull discussion with a random +1:
@calavera

+1

+2

-1
-Doug
Sent from my iPhone

On Aug 27, 2015, at 2:01 PM, Tianon Gravi<EMAIL_ADDRESS>wrote:
+2
—
Reply to this email directly or view it on GitHub.

=

:stuck_out_tongue_winking_eye: we don't process anything when issues and prs are closed, but apparently we should

Yes, I think it should process closed ones as well, we sometimes get "why is this closed, because I can still reproduce this on Docker 0.05" and lots of +1's
Should there be a counter? Even though the "+1s" are annoying (and many times people don't even know what they're +1-ing), they can be an indicator that it's a real problem or an issue should be reopened; perhaps we should add a "popular" label to issues with loads of +1's


Bugfix/vector subclass

This PR fixes a few small bugs.
Fixes

Ensure the Flight.fuel attribute is preserved for the Flight.filter method.
Ensure the Fleet.fl_attrs attribute is preserved for the Fleet.filter method.
Raise ValueError when Flight.sort or Fleet.sort is called. Both of these subclasses assume a custom sorting order that is enforced in their constructors.

Internals

Make Fuel and its subclasses JetA, SAFBlend, and HydrogenFuel frozen.

Tests

[x] QC test passes locally (make test)
[x] CI tests pass

@nickmasson -- FYI, I think this is independent of our API work.

Cool 🚀 Will this be released as 0.49.2?
[EDIT] -- disregard below, sorry! I take "independent of our API work" to mean that these changes aren't fixes for the failing 0.49.1 upgrade sitting in pycontrails-api"...

Sorry for the confusion! Originally I was thinking that the fixes here were necessary for work on the API, but I don't think they're actually needed.
You're absolutely right that pycontrails should have more unit tests, and that the API doubles as an integration test. Like you've pieced together, I discover the pycontrails issues fixed in this PR while debugging some other stuff in the API. Typically when this happens, I create a minimal unit test over here to reproduce the issue.
I won't create a new 0.49.2 release yet unless it turns out the API needs these updates.

some of these files may have been pre-auto-formatter.

The formatting changes are from black 23.12. A lot of the recent black minor releases have included these sorts of breaking changes.


onViewableItemsChanged gives false positive results

While working on this proposal @burczu encountered an issue with the onViewableItemsChanged event handler that occurs only on the web - it seems like it has a bug and provides incorrect list of visible items. This gives us false positive results while determining the index of the top element of the list. To fully implement this proposal, we will need to spend some additional time trying to fix this issue, and perhaps making some additional PR's to the react-native-web repository (original or our forked one).
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~012e5d1b0f907043de
Upwork Job ID:<PHONE_NUMBER>343396352
Last Price Increase: 2023-06-28

Hey! It's Bartek from Callstack - expert contributor group - I'll be working on this issue.

Daily update: I think I found the solution and most likely I'll post some proposal tomorrow.

Ok, I was a little bit hasty saying I found the solution - after some testing on Friday it seems like it was a dead end, so I need to dig deeper and will work on this today.

Update: It looks like I may have a solution, hopefully this time for real :) I still need to tweak it a little bit but it's possible that I'll come back tomorrow with the proposal.

Not overdue - I'll post the summary of what I've found today or tomorrow.

@burczu @sobitneupane FYI, I'll be OOO for a week and a half starting Thursday. Feel free to collaborate on the proposal though and if you feel like it's ready for internal review, @sobitneupane you can ask in #contributor-plus for someone to help review it. Thanks!

Proposal
Please re-state the problem that we are trying to solve in this issue.
In case of using FlatList that is inverted on the web, when utilizing the onViewableItemsChanged handler, it's viewableItems parameter contains incorrect results that are outside the viewport.
What is the root cause of that problem?
The issue lays in the react-native-web library, in the VirtualizedList component. During the first render, in the _onCellLayout handler, all the "frames" (offset and length of every item in the list) are collected.
The offset of the frame (single item of the list) is always calculated here in the context of the top of the parent element (the list component here). So, for not inverted list where, in the beginning, the content is scrolled top, the first element has offset 0px, the second offset equals the height of the first element and so on. This is correct.
For inverted list however, the content is scrolled bottom, and the first element is the one that is on the bottom of the viewport. But frame's offset is calculated, again, in the context of the top of the parent. So the first element on the list has offset, e.g. 2016px (it just takes the y coordinate of the LayoutEvent.layout object). This is incorrect because while scrolling the inverted list, the scroll offset is calculated as a difference between the bottom of the viewport and the bottom of the content.
What changes do you think we should make in order to solve the problem?
To solve the issue we need to make some changes in the react-native-web fork we are using in the App. We need to re-calculate the offset of the frame for inverted lists in the _onCellLayout handler of the VirtualizedList component to show the offset of the frame in the context of the bottom of the parent. These changes will be applied in this part of the code:
_onCellLayout(e, cellKey, index) {
    const layout = e.nativeEvent.layout;
    const next = {
      offset: this._selectOffset(layout),
      length: this._selectLength(layout),
      index,
      inLayout: true,
    };

In the above code, the next.offset value is just LayoutEvent.layout.y (for vertical lists). I suggest to change it like below:
_onCellLayout(e, cellKey, index) {
    const layout = e.nativeEvent.layout;
    const target = e.nativeEvent.target;
    const next = {
        offset: this._selectOffset(layout),
        length: this._selectLength(layout),
        index,
        inLayout: true,
    };

    if (this.props.inverted) {
        next.offset = this._selectClientLength(target.parentNode) - next.offset - next.length;
    }

where this._selectClientLength returns the height or width of the parent and will be implemented like below:
_selectClientLength(parentNode) {
  return !horizontalOrDefault(this.props.horizontal) ? parentNode.clientHeight : parentNode.clientWidth;
}

This way the very bottom element of the inverted list will have the offset 0px. The second, being above the first one will have the offset equals the height of the first one and so on. This will fix the calculation of viewableItems for inverted lists.
What alternative solutions did you explore? (Optional)
n/a

I haven't had a chance to review the proposal in detail, but one general thought: if we're going to do something in our fork, let's also try to get it merged upstream.

Hey @puneetlath! I agree in general, but in this case I believe there is 99% of chances that this change will be rejected, because in upstream the FlatList and VirtualizedList components are copied straight from the react-native library and the maintainer of react-native-web is not interested to make any web customization in them.

Proposal looks good to me. I agree with @puneetlath. We should try to get it merged upstream.
🎀 👀 🎀 C+ reviewed

Makes sense
@burczu could you please link the code here

The offset of the frame (single item of the list) is always calculated here in the context of the top of the parent element (the list component here).

The offset of the frame (single item of the list) is always calculated here in the context of the top of the parent element (the list component here).

@MonilBhavsar it's done here in the _selectOffset method:
https://github.com/Expensify/react-native-web/blob/16921d7f68286381520ede1b561771335ca1e2cd/packages/react-native-web/src/vendor/react-native/VirtualizedList/index.js#L1643C3-L1651C4
So in case of vertical list it's just e.nativeEvent.layout.y coordinate.

Thanks! got it.

This is incorrect because while scrolling the inverted list, the scroll offset is calculated as a difference between the bottom of the viewport and the bottom of the content.

Sorry, if it is a bad question. But I'm curious, why it is incorrect. Should the offset be calculated from single point of reference(top)?

Thanks for explanation! Makes sense to me 👍  I think that's a fact. that for inverted list, we consider bottom perspective.
As discussed above, let's try to propose to merge upstream first?

As discussed above, let's try to propose to merge upstream first?

Unfortunately I'll be OOO starting on Monday till July 25th, and some other Callstack developer will take it over from me on Monday. I guess she or he could try to do it, but personally I doubt we will succeed (for the reasons I've mentioned in this comment).

Thanks for the update! No worries! Yes, fine making fix in forked repo. cc @puneetlath @sobitneupane

looks like PR will be raised soon here

Hey there, I'm going to work on this issue as Bartek is OOO

Thank you @ArekChr! Assigning you to the issue

Merged the PR. I think we can close this out now?

I don't think so we are going to raise an upstream PR, as we know it is not according to standard. https://github.com/Expensify/App/issues/21811#issuecomment-1633633581

Got it! Can we at least share with them what we did and confirm that they are not interested? I'd rather confirm that rather than assuming.

Good point! We didn't try. Can we please open a PR in upstream and confirm that cc @burczu @ArekChr

Hey @MonilBhavsar @puneetlath! Regarding the PR in the upstream - I've made some tests and seems it is not necessary.
The current version of the original react-native-web is 0.19. The current version of Expensify/react-native-web is based on version 0.18 of the original react-native-web.
I've checked, using @ArekChr's example component, that on the current version of the upstream the issue does not occur, so it seems like once we sync our fork with upstream (it looks like this is ongoing and @roryabraham is responsible), this fix won't be necessary anymore.

Oh wow! In that case, we should revert the change right?

No, no - it looks like the fork and the upstream are not in sync now, and our forked version is now affected, so the fix is necessary, but it probably won't be once we'll get in sync. I spoke to Rory, and he told me that the plan is to get rid of the forked version completely eventually.

See my comment on the PR in the fork: https://github.com/Expensify/react-native-web/pull/20#issuecomment-1674085189 – I think we should put this on HOLD for https://github.com/Expensify/App/issues/16660

Putting this on HOLD and bumping it to Weekly

On HOLD

On HOLD

On HOLD

still on HOLD

still on HOLD

still on HOLD

Same, bumping to monthly

Taking this off HOLD as #16660 is complete

Now this is off hold, I think we need to confirm if the issue is fixed as we have are directly using upstream repo.
And may be revert PR https://github.com/Expensify/react-native-web/pull/20 in the forked repo? Not sure if this is required.
cc @burczu @ArekChr

@MonilBhavsar As we switched to use original react-native-web here https://github.com/Expensify/App/issues/16660 this issue probably won't be necessary anymore and would be just closed. But I would wait for https://github.com/Expensify/App/issues/18101 to bo finished to be sure.

Thanks! So I would put this issue on HOLD for https://github.com/Expensify/App/issues/18101

The issue is not reproducible anymore, so we can close this issue. Feel free to reopen if you see this issue again, thanks!

@MonilBhavsar I can request payment on newDot once I get the payment summary.
https://github.com/Expensify/App/issues/21811#issuecomment-1650076743
cc: @puneetlath

Yes, @sobitneupane is eligible for payment as C+

Payment summary:

$500 - @sobitneupane - C+

$500 approved for @sobitneupane based on comment above.


ignore_paths support

i added some functionality if found very useful and think they fit for others :)
ignore_paths let you define a array of paths not to walk into
ignore_mounts prefiles ignore_paths so only one mount point is walked.

resolved with a71d71c9a6f6a1ea84ccc86226e293b17b0da2e0 thanks the help. this is just a little less intrusive


TbSwitch > switchGroup > onText & ofText can not be set

Hi,
It seems that $this->options doesn't carry the onText/offText to the widget.
in TbSwitch.ph line 77
$config = CJavaScript::encode($this->options);
Thanks
Sincerely
Babak

I tested it ... it is working
switchGroup($model, 'active', ['widgetOptions' => ['options' => ['onText' => 'X', 'offText' => 'Z'] ] ]); ?>
plz confirm you still face the problem

No Problem, My bad :)