Edits for week of Dec 4

updates to our TODO list for the primer based on these changes
lots of minor typos/wording tweaks
lowercase all attributes and map key names
INT->INTEGER - missed from previous PR
Add support for * (undefined) extensions to the model
Add support for an ANY type
made a few spots UINTEGER instead of INT (e.g. counts)
add support for dots in attribute names: prop1['my.name'].prop2
deleting the last Version deletes the Resource
unknown extension types SHOULD default to string. E.g. xRegistry-foo: 5   http header
tweaked what OPTIONAL means... @jskeet should be happy

For clarity, OPTIONAL attributes (specification defined and extensions) are OPTIONAL for clients to use, but servers MUST be prepared for them to appear in incoming requests and MUST support them since "support" simply means persisting them in the backing datastore.

can no longer modify the constraints on spec defined attributes (e.g. require string to be a timestamp)
?schema= returns the full model, not just extension definitions
removed KeyType from model since all keys are strings now

Approved on the 12/7 call


Strange behavior generating .csv/.xlsx from hierarchical schematic with grouped components

I've been attempting to use KiField on a sizable, pre-existing, schematic with lots of duplicated hierarchical sheets and I've been running into some strange issues. This is a fairly isolated one though, so I'm starting with it.
Using the hier_test schematic in tests/integration and running kifield -x hier_test.sch -i test.csv -r -g -w -d 10
results in the expected:
Refs,datasheet,footprint,new_field,value
"Y1, Y2",my_datasheet,my_footprint,my_field,Crystal

I edited test.csv to add a field and value:
Refs,datasheet,footprint,new_field,value,newfield
"Y1, Y2",my_datasheet,my_footprint,my_field,Crystal,newvalue

Running kifield -x test.csv -i hier_test.sch -r -g -w -d 10
results in the components both displaying the correct new field and value as expected when I open the schematic in Kicad.
However, if I then try to re-export the fields to the same csv file with the exact same command in the first line, the grouping seems to disappear.
text.csv:
Refs,datasheet,footprint,new_field,value,newfield
Y1,my_datasheet,my_footprint,my_field,Crystal,newvalue

Is this expected behavior? It seems like I should get back out exactly what I put in between inserting into the schematic and then extracting immediately back out.
Additionally, once I've triggered the behavior, deleting the file and running kifield -x hier_test.sch -i test.csv -r -g -w -d 10 twice in a row also results in de-grouping.
Behavior occurs regardless of the -w overwrite flag and regardless of .csv or .xlsx output.
There are some subtle differences in the debug messages, specifically a slightly difference in the Exploding sequence.
First run insertion debug log:
Inserting extracted fields into files ['test.csv'].
Inserting fields into test.csv.
Inserting extracted fields into CSV file test.csv.
Converting CSV file test.csv into an XLSX workbook.
Header on row 1: ['Refs', 'datasheet', 'footprint', 'new_field', 'newfield', 'value'].
Found Refs on header column 1.
Exploding Y1 => ['Y1'].
Exploding Y2 => ['Y2'].
Exploding Y1 => ['Y1'].
Updating Y1 field value from None to Crystal
Updating Y1 field footprint from None to my_footprint
Updating Y1 field datasheet from None to my_datasheet
Updating Y1 field new_field from None to my_field
Updating Y1 field newfield from None to newvalue
Exploding Y2 => ['Y2'].
Updating Y2 field value from None to Crystal
Updating Y2 field footprint from None to my_footprint
Updating Y2 field datasheet from None to my_datasheet
Updating Y2 field new_field from None to my_field
Updating Y2 field newfield from None to newvalue
Converting an XLSX workbook and saving as CSV file test.csv.

Second run insertion debug log:
Inserting extracted fields into files ['test.csv'].
Inserting fields into test.csv.
Inserting extracted fields into CSV file test.csv.
Converting CSV file test.csv into an XLSX workbook.
Header on row 1: ['Refs', 'datasheet', 'footprint', 'new_field', 'newfield', 'value'].
Found Refs on header column 1.
Exploding Y1, Y2 => ['Y1', 'Y2'].
Exploding Y1, Y2 => ['Y1', 'Y2'].
Updating Y1 field value from Crystal to Crystal
Updating Y1 field footprint from my_footprint to my_footprint
Updating Y1 field datasheet from my_datasheet to my_datasheet
Updating Y1 field new_field from my_field to my_field
Updating Y1 field newfield from newvalue to newvalue
Updating Y2 field value from Crystal to Crystal
Updating Y2 field footprint from my_footprint to my_footprint
Updating Y2 field datasheet from my_datasheet to my_datasheet
Updating Y2 field new_field from my_field to my_field
Updating Y2 field newfield from newvalue to newvalue
Converting an XLSX workbook and saving as CSV file test.csv.

I'm not sure where to go from here though. I'm happy to run more tests if that would be useful! I'm also investigating odd behavior where some insertions to a complex schematic leads to the schematic files corrupting with no placement information following the footprint, but that's for a separate issue.
Version info
KiField 0.1.16
Python 3.9.1
macOS 11.2
KiCad 5.1.9-0-10_14
KiCad detailed version info:

Application: KiCad
Version: (5.1.9-0-10_14), release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.64.1 SecureTransport (LibreSSL/2.8.3) zlib/1.2.11 nghttp2/1.41.0
Platform: macOS Version 10.16 (Build 20D64), 64 bit, Little endian, wxMac
Build Info:
    wxWidgets: 3.0.4 (wchar_t,STL containers,compatible with 2.8)
    Boost: 1.75.0
    OpenCASCADE Technology: 7.5.0
    Curl: 7.54.0
    Compiler: Clang 10.0.1 with C++ ABI 1002

Build settings:
    USE_WX_GRAPHICS_CONTEXT=ON
    USE_WX_OVERLAY=ON
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=OFF
    KICAD_USE_OCC=ON
    KICAD_SPICE=ON

I just caught this old issue happening again, where on extract from schematic and insert into an existing spreadsheet, only the first item in a group is included in the components list.
I'm using recursive, grouped, no backups, and overwrite flags. While I normally increment a revision number in the filename of the working spreadsheet, I would assume that this combo of flags should allow for repeated use of the same spreadsheet filename without issues.

Yes, I've been working on this one before releasing a new version of KiField.

I think this is fixed now in the development branch.

That worked for me! There's a strange side effect where the reference designators are now sorted oddly:
C1, C105, C106, C162, C168, C170, C179, C181, C182, C183, C195, C196, C197, C198, C199, C2, C200, C201, C203, C255, C257, C75, C76
Not a problem, just an oddity. That being said, I really appreciate the change to showing every component in the list, makes it much easier to search!

Yeah, I introduced an error (again!) in the way part references are collapsed. I'm fixing it now.
Can't you just omit the -g option if you want the part references all explicitly listed?

(Personal opinion based on my workflow, not a functionality issue)
I don't tend to use the ungrouped option since if I want to make a change to a component's fields, I always want to make it to all references of that component. I also produce BOMs with all of the reference designators for a single line item listed explicitly (C1, C2, C3, C8 rather than C1-C3, C8), though I realize that is down to preference.
So while in the process of editing components, it is nice to be able to CTRL-F search for a reference and guarantee that I'll find it if it exists. If I pick a common component on the schematic, I tend to just search the Kifield spreadsheet for it by a single reference designator, but if it is in the middle of a range it won't appear in the search and I often have a tiny moment of panic before I remember to look for the range it could be in.
If I were to add a feature request, it would be for a flag to not collapse parts references before output to csv/xlsx (or re-explode them after). If that sounds reasonable, I can open a new ticket for it (and potentially try doing it myself!)

You could add a --no_range, -nr option that disables hyphenated ranges and explicitly shows each component reference in a group.


Feature: update readme with video thumbnails and redirect links

hey, I would like to suggest an issue as a feature to work on during hactoberfest,
Suggestion: It could be easier and better if we could add video or playlist thumbnails on the readme of this repositories with redirect link to youtube.
this would serve 2 purposes, increase traffic, create this repo more visually appealing.
can I work on this issue? @atapas

Hey @Shreyas-SAS I somehow missed seeing this. I am not sure if you are still interested in it.

No. I actually was interested in the task for hacktoberfest since I could not contribute long hours at the time. I wanted to make small contributions but, since there was no response from your side and even my contributions for your other repos weren't approved even till the end of hacktoberfest. I felt like it was the best thing that I did not invest more time in contributing to your repos.
So, in short NO. I am no longer interested in the issue. You may close it. There is nothing to learn from it anyways.


Development: Disable logging of sensitive data in Cypress tests

Motivation and Context

We want to connect the Cypress runs on Bamboo and Github with the Cypress Dashboard to allow easier investigation of test failures especially for developers not familiar with the tests. The problem is that the authentication request logs the login credentials and that the Cypress Dashboard is publicly accessible. This results in a leakage of credentials.
Description

In this PR I disabled the logging of authentication requests and type command, which enter credentials in the UI. Unfortunately simply disabling the logging of the authentication request is not enough because Cypress still prints the response if it considers the request as failed (per default a HTTP status not being 2xx or 3xx is considered a failure). I disabled the default failure assertion for the authentication request, so that it always passes. Since we still want the tests to fail if the authentication request failed I added an assertion which makes sure that the login response has status 200. If that assertion fails it only leaks the status code of the response without any credentials.
I also replaced the custom loginWithGUI Cypress command with a LoginPageObject because a custom Cypress command is unnecessary and not consistent with the other tests. I also removed the custom logout command because it is not really used and is redundant (it clears the session storage, but this is automatically done by Cypress between tests).
Steps for Testing

Run the test suite locally against a test server or local setup and try to find locations where the credentials might be leaked. The credentials are only accessed in the cy.login command and in the Authentication.spec.ts when entering the credentials in the UI. The confluence page explains how to setup the Cypress tests.
I tried to cause failures in the authentication request to force Cypress to log the error:
Network error in Cypress Test Runner:

Network error in console:

502 Bad Gateway (Test server is starting) in Cypress Test Runner:

502 Bad Gateway (Test server is starting) in console:

As you can see the credentials in the authentication request are not logged anymore.
Review Progress

Code Review

[ ] Review 1
[ ] Review 2

Manual Tests

[ ] Test 1
[ ] Test 2

I fixed several issues in this PR (Footer test, flaky programming exercise management test). Now all tests pass (except for a flaky authentication issue in the modeling exercise tests, but that is not caused by this PR). Here are the build logs of the latest bamboo build


Link liveliness assessment

According to the Brugges meeting and current architecture this functionality is a part of the Interlinker component, however some parts are now mentioned in Metadata validation page. This should be consolidated.

Removed from the metadata validation.


Question about condition_row in GradientDescent

Hello, thank you for this great work!
I wanted to ask what is the intuition behind using condition_row in get_text_embedding as opposed to, e.g., using the whole uncondition.
Thank you!

Hello,
the CLIP embedding of the 0th token is always the same. We observed that Stable Diffusion relies on this and produces worse images otherwise. Thus, it didn't make sense to optimize the embedding of the 0th token. We construct the condition by first splitting the 0th token embedding; only the left-over part is then declared as a trainable variable (torch.nn.Parameter):
        self.condition_row = condition[:, 0, :]
        self.condition = torch.nn.Parameter(condition[:, 1:, :])

We then stitch these parts back together in get_text_embedding. The uncondition works the same way.


Make 'Published' the default option

What
Make 'Published' the default option so that when our user land on release calendar page, the Published radio button is selected by default
How to review
By landing on release calendar page and see if Published radio button is selected by default
Who can review
FE developer

Attemping to run with make debug gives this output:
# github.com/ONSdigital/dp-frontend-release-calendar/mapper
mapper/mapper.go:699:2: checkFlag declared but not used
make: *** [debug] Error 2


refactor: Master => develop

Merge latest release back into develop

Builds ready [d6b0e0c]builds: chrome, firefox, opera
bundle viz: background, ui, portal-inpage, portal-contentscript, ui-libs, bg-libs, phishing-detect
dep viz: background
all artifacts


precommit gets double run on /gcbrun

See #31 for examples

This seems like an unavoidable quirk of cloud build github triggers.


Mathematical Typesetting Export bug

I've created simple diagram with some "LaTeX notation":
"$$a^{L - 1}_0$$"
"$$\sum$$"
It worked great in browser editor, but after exporting file as JPEG / PNG / SVN i got image where "LaTeX notation" wasn't replaced with expected symbols.
I found out that the bug occures when diagram is made in "Dark" theme and export checkbox "Dark" is not checked.
drawio version:
14.7.0
To Reproduce:

Select Dark theme
Switch on Mathematical Typesetting
Place object containing text with "latex notation" e.g "$$\sum$$"
Export as.. PNG / JPEG / SVN
Uncheck checkbox "Dark"
Export
See error on miniature or downloaded file

My setup:
OS: Pop!_OS 20.10 (based on Ubuntu)
GNOME v3.38.3
X11
Browser: Brave 1.24.86 (official release) (64-bit)

Reproduced in Chrome Incognito and FF 88.0.1 (64-bit)
Win 10 Pro
diagrams.net 14.7.0

This will be fixed in the next release.


Fixes aircraft max_tail, GEOSIT resource files

fixes aircraft max_tail number;
corrects ozone configuration;
updates end date for seviri.

This needs to be labeled as either non-zero or zero diff and perhaps additional labels


Fix list duplication with instantiated objects

When storing lists of instantiated objects (like GameObject references) they get duplicated upon restoring.

Highly experimental fix:
// LevelLoader.cs, Line 455

// Change
UnitySerializer.RunDeferredActions(process, 2, false);
// To
UnitySerializer.RunDeferredActions(process, 0, false);

Again, this is highly experimental. While it is plausible that this was merely a typo of the original developer (if he typed on the numerical keypad), it could also cause massive problems elsewhere.
Highly experimental, could eat your babies!

Have same issue. This line:
// LevelLoader.cs, Line 455
// Change
UnitySerializer.RunDeferredActions(process, 2, false);
// To
UnitySerializer.RunDeferredActions(process, 0, false);
You can comment it out, because with 0 as a second parameter this method does nothing (except locking and unlocking a mutex). I dont know the consequences of this fix.
All this is very strange. Some lines later you can see another call to this method:
UnitySerializer.RunDeferredActions(process);
And another, commented out, at line 466:
//UnitySerializer.RunDeferredActions(2);
Looks like developer experimented with multithreading and just forgot to comment out some debug stuff.

The lack of proper comments has been giving me headaches from the beginning.
I cannot safely remove this line, because it would cause problems elsewhere, if we assume that it wasn't placed there for no reason.
I didn't have the time to make really figure out what changes, if you remove it.

Okay, I checked what exactly it does again. It really seems to be doing nothing.
Fixed in 138361dd74286529d07efa9b9981083ca021637e


Missing Tab.Panels component

I have been loving this library but I could not find an alternative to Table.Panels. Does one exist that I am just missing or is this something that has not yet been added to the libray?

I'm not sure which one are you referring to, Tabs or Tables? if Tabs, TabPanels isn't created since it has no purpose, so users can implement their own grouping element.

I was referring to Tab.Panels. I am converting some TailwindUI components to SolidJS and they make use of it.
Are you certain that Tab.Panels does nothing? When I use a div in place of it all of the 4 panels I define are shown at the same time instead of it just showing the active panel.

Component code - using `Tab.Panels` to show clearly where I am using it
 <TabGroup
    as="div"
    className="mt-16 grid grid-cols-1 items-center gap-y-2 pt-10 sm:gap-y-6 md:mt-20 lg:grid-cols-12 lg:pt-0"
    vertical={tabOrientation === "vertical"}
>
    {({ selectedIndex }) => (
    <>

        <TabList className="relative z-10 flex gap-x-4 whitespace-nowrap px-4 sm:mx-auto sm:px-0 lg:mx-0 lg:block lg:gap-x-0 lg:gap-y-1 lg:whitespace-normal">
            {features.map((feature, featureIndex) => (

                <Tab
                    className={clsx(
                    "font-display text-lg [&:not(:focus-visible)]:focus:outline-none",
                    selectedIndex === featureIndex
                        ? "text-blue-600 lg:text-white"
                        : "text-blue-100 hover:text-white lg:text-white"
                    )}
                >

                    {feature.title}
                </Tab>

                {feature.description}

            ))}
        </TabList>

        <TabPanels className="lg:col-span-7">
        {features.map((feature, featureIndex) => (
            <TabPanel key={feature.title} unmount={false}>

                {feature.description}

            </TabPanels>
            </TabPanel>
        ))}

    </>
    )}
</TabGroup>

I am converting the TailwindUI Salient template (preview) from Next.Js to SolidJS and they use the Tab.Panels component in the main feature section so that the correct screenshot (on the right side) is shown for the selected feature (on the left side).
Even if Tab.Panels does nothing and this is something on my end I still feel like you should still expose a version of it that just acts as a div to bridge the gap for people who are migrating existing HeadlessUI code over to solid-headless. Other than this everything else had a direct counterpart for the code I was converting over.
Thanks for the quick reply and love the library!

Are you certain that Tab.Panels does nothing?
Technically speaking when it comes to the official specification of Tabs, there is no mention of tab panels or panel groups in general, so this is up to the user how would they handle the layout problem for the tab panels. Unless it's actually desirable there's no motivation for me to introduce it yet.

Take note that, and mentioned in the README,  solid-headless isn't 1-to-1 with HeadlessUI.

@oscartbeaumont I am using the TailwindUI Salient template and had the same issue as you.
After thinking it was due to not having the TabPanels component, I realized that I was using the callback variables incorrectly.
Before:
clsx(isSelected ? '...' : '...')

After:
clsx(isSelected(feature.title) ? '...' : '...')

And here is one of the full For loops if you wanted to how I used the above
<For each={props.features}>{(feature)=>(

      <Tab value={feature.title}  class={clsx('font-display text-lg [&:not(:focus-visible)]:focus:outline-none',
        isSelected(feature.title) ? 'text-green-600 lg:text-white' : 'text-green-100 hover:text-white lg:text-white')}>

           {feature.title}
      </Tab>

       {feature.description}

)}</For>

And then for the Panel, I do something like:
<For each={props.features}>{(feature)=>(
  <TabPanel value={feature.title} unmount={false}>

    ....

And this will hide the panels as needed while still showing all the tabs.


Inotify::read_events does not read all events

The documentation for Inotify::read_events says:

Returns any available events
Returns an iterator over all events that are currently available.

However, the function only reads one buffers' worth of data from the inotify file descriptor; if there are more events available than can fit in the buffer, the returned Events iterator returns None without trying to read any more from the file descriptor.
I think this causes the notify crate to delay reporting events. Touching the directory being watched causes the delayed events to be reported.

The notify crate registers its inotify file descriptor with mio::PollOpt::edge(), which requests edge-triggered notifications, as described here: https://docs.rs/mio/0.6.15/mio/struct.Poll.html#edge-triggered-and-level-triggered

If when the socket was registered with Poll, edge triggered events were requested, then the call to Poll::poll done in step 5 will (probably) hang despite there being another 1kb still present in the socket read buffer. The reason for this is that edge-triggered mode delivers events only when changes occur on the monitored Evented. So, in step 5 the caller might end up waiting for some data that is already present inside the socket buffer.

Indeed, if I change notify::inotify::EventLoop::new to request level-triggered events on inotify_fd, I get all my file creation notifications.

Ah, crud, this is the inotify-sys crate, not inotify.


Add support for server-side encryption

This PR allow you to create table with server-side encryption.

At this time, this PR is behind from current master.
I opened #147  which covers this, will close if that PR is approved

Closing in favor of #147


Dependency not found.

https://github.com/videolang/video/blob/aa958b5ab250c8a202b24444935255d773608ea6/info.rkt#LL43C28-L43C28

Is this on an m1 mac?

Hmm...I see. It seems like the catalog dropped it for some reason...strange. I'll re-add it tomorrow morning.

It seems to be there now.  It looks like I am able to download install video now.


Use biometric checks and/or password to access

Hello, is it possible to use biometric check in order to access the key from the keychain?
Or App password / Device passcode if biometric is not used
Thanks!

Hey, @netgfx yes this is possible, we need to let the developers pass the parameter for the same.
Adding this to the to-do list and I will raise MR soon.

To make this even more generic you could add the https://developer.apple.com/documentation/localauthentication/lapolicy/deviceownerauthentication flag so the user can use biometric first or passcode as a fallback. Not sure how Android handles this though but I assume it has something similar.


Check input mesh is valid in SurfaceTool methods

Fixes: #46004

Prefer ERR_FAIL_NULL_V, ERR_FAIL_NULL instead of cond check is_null. I like the fix.

The message variants of those cond checks exist too.

Doesn't work with ERR_FAIL_NULL, gives the following error: no match for 'operator!' (operand type is 'const Ref<Mesh>')

These changes also seem relevant for the master branch.

On master branch an error displays on the script editor with the message Invalid argument for "create_from()" function. The new Gdscript parser recognizes that the argument is invalid and just stops script execution (at least that's how I understand it). The only case where the program crashes is when the argument is an unassigned var:
var a
SurfaceTool.new().create_from(aa,0)

I guess in this case the parser has no way to know if a is of the correct type and doesn't shows any error. Is this something that should be solved on the Gdscript side? Or is it better to use the same solution as in 3.x branch?

@rafallus This crashes too:
	var aa = Mesh.new()
	SurfaceTool.new().create_from(aa,0)

Whatever validation GDScript can do upfront, the null dereference is still something that can happen from C++ or any valid way to pass a null object, so the guards are needed in master too.

I don't get why aa = Mesh.new() acts like a null object when it clearly isn't, is just an empty mesh. Anyway I'm porting this to master branch

Needs a rebase (style change in 3.x branch), otherwise seems good to merge.

Cherry-picked for 3.3.1.


Improve variable names

Currently there are ~300 lines with names like key, value, data.
Please consider using informative variable names.
source
// For example
protected function setDomain(string $value, bool $viaAttribute = false): void {}
protected function setDomain(string $domainName, bool $viaAttribute = false): void {}

Those occurrences don't have to be bad per se. For example some occurrences are even dictated by PSR interfaces, like in the CacheInterface of PSR-16, which absolutely make sense. As I don't really see a big "issue" here, I'll close this. Send a PR if you like to improve some particular variable names.


add enum support to LiteralProvider

issue #178

There is need a documentation at specific-types-behavior.rst file about enum processing inside Literal


[Docs] Fix default UPF config file

Suggestion
The default UPF config file is no more free5gc/NFs/upf/build/config/upfcfg.yaml, as reported here https://github.com/free5gc/free5gc/wiki/Installation#c-install-user-plane-function-upf
looking at UPF logs, it seems to be free5gc/config/upfcfg.yaml

The wiki is updated. Thanks.


feat(css/minifier): convert to and from initial

Description:
port of https://github.com/cssnano/cssnano/tree/master/packages/postcss-reduce-initial
BREAKING CHANGE:
Yes, due AST changes
Related issue (if exists):
No

WIP on perf :+1:

@kdy1 Ready for review


Changes tests to work for 2016

See #5869. I think this should be a temporary fix so the campers can progress though, the tests could be more generic

Should probably update the challenge seed to have the first test listed at the bottom:
friendly(['2015-07-01', '2015-07-04']); to 2016
Other than that, it passes and works fine.

@SaintPeter I'm not sure I get it, should I move the first test to the bottom?

I mean that at the bottom of the challenge seed there is a "sample" test.  The typical thing to do is to have the first actual test show up in the challenge seed as an example.

Ah! I didn't see it :facepalm: (GitHub needs a facepalm emoji)

Done

Thanks!  Great improvement.


Harden PartitionAlloc

PartitionAlloc is the memory allocator used in most of Chrome and is an allocator optimized for speed, allocation latency, and security. It provides various defenses against memory corruption, specifically its heap isolation from which its name is derived. The central design revolves around partitions, separate heaps that can be used to contain certain types, sizes, or lifetimes; partitioning objects by type is used throughout the browser as a defense against some forms of type confusion. Each partition holds multiple buckets of similarly sized objects, preventing some forms of type confusion between objects of different sizes.
Apart from the heap isolation, PartitionAlloc features some additional defenses against memory corruption.

Allocations are zeroed either due to being a fresh page from the operating system or being (probabilistically) zeroed on free
Verification of zero filling at initialization to detect write-after-free

Although PartitionAlloc already makes it harder to exploit heap corruption, we're going to be expanding the protections PartitionAlloc offers using patches from Chris Rolf's HardenedPartitionAlloc; they are listed below.
Improvements

Randomized trailing cookie zeroing the leading byte to terminate C string overflows and absorb other small overflows
Replacement of DCHECKs with CHECKs to induce crashes instead of exposing the user to potential vulnerabilities
Consistent zero-based or pattern-based sanitization on free depending on build setup to get sensitive data out of the process as soon as possible and mitigate some forms of use-after-free
Enablement of various security features that were deemed too expensive for release builds
Improved pointer obfuscation inspired by Linux's SLAB_FREELIST_HARDENED to protect from complete overwrites

Allocation/Freelist randomization
Allocation/freelist randomization are inherently fragile mitigations susceptible to heap spraying; we are currently evaluating cutting edge defenses against spraying rather than moving forward with our original plan to randomize the freelist/allocation order.
 An attacker with the ability to overwrite the freelist pointer can trivially bswap. We're planning to expand this as a probabilistic mitigation to cover complete overwrites based on my understanding of the Linux implementation.

Is there an upstreaming plan? I see some options:

Implement this in Vanadium, bring the change downstream to Hexavalent
Implement in Hexavalent, upstream to Vanadium
Send patches to the Chromium project in parallel with the above options; if they accept, that's one less patch to handle here.

Vanadium isn’t going to be bundling its own hardened allocator because GrapheneOS already provides hardened_malloc as part of the OS. Our efforts to upstream might not bd accepted because they’re much more sensitive to performance than we are.

Vanadium uses PartitionAlloc.

Might be worth reaching out to @struct who's familiar with PartitionAlloc hardening, having made both https://github.com/struct/isoalloc and https://github.com/struct/HardenedPartitionAlloc (the former of which is based on PartitionAlloc)

Mf really just pinged Chris

Hello! I don't have a lot of context here but thought I'd offer my 2 cents:

Send patches to the Chromium project in parallel with the above options; if they accept, that's one less patch to handle here.
I haven't worked on the HPA fork in a few years and have no plans to again. The PA code has significantly changed since then so you will definitely want to get an idea of what its current security properties are and whats missing. My HPA hardening patches were mostly for POC purposes and did not take performance into consideration. You might have luck writing performant versions of them and attempting to upstream them one at a time. Indeed the Chrome team is very sensitive to performance issues. I don't know what targets your Vanadium project targets but it's possible you will have a more narrow set of constraints and can get away with more performance regressions.


[FALSE-POSITIVE]

Domain Name / Website URL: https://www.mehatrading.com
Website https://www.mehatrading.com is hosted on a secured server. Website does not contain any type of malware, malicious code, phishing code or virus. It has been regularly monitored and scanned by imunify AV + and other antivirus tools. Google safe browsing is also showing website is safe. Kindly remove the website from your block list immediately. Thanks,

No record of you listed by us
https://www.virustotal.com/gui/domain/mehatrading.com


Atlas update

About the PR
Took Atlas from Upstream and made the needed modifications to work on Nyanotrasen

this pr is just deleting atlas?


226 editable install

Fixed issue where tests/test_data::test_get_catalog_fp() would only work when performed using an editable installation.

Closes #226

codecov/project seems to be failing due to the fact that there are no tests associated with commit cf0b3dc11f1bf7a380775fff1d57b40cc5e4b1c6. I'm not sure that there's any way around that.

It seems that getting a proper coverage report with a regular (non-editable) installation can cause issues with codecov (see here).
Marked this as draft until I get this fixed.

Issue isn't with codecov but with pytest-cov itself: see ongoing issue.

Good to go. I've managed to run pytest against both an editable and non-editable install, although I still can't make python -m pytest work against uninstalled code.

Are you able to try PYTHONPATH=$(realpath ./src) python -m pytest from the project root directory for me and tell me what happens? It breaks tests/test_cli::test_entrypoint for me (exit code 32512) but otherwise works fine. TBH I wouldn't expect an entrypoint to work properly for uninstalled code so I'm not too concerned about that.
I'm reasonably confident you're right with the tests in AnniesLasso working due to the project structure on uninstalled code - I think it's relying on the default behaviour of the Python interpreter to append os.getcwd() to sys.path on startup. In fact, I don't think having the tests in the project itself is necessarily what does the trick - again, I think it's a flat layout thing.
I'll leave this one for now - if you get the same results as me with the PYTHONPATH variable set, I'll merge it.


DISCUSSION: v4 milestone

To start thinking of our next step towards v4 release, let's write some ideas in this issue. We're thinking of v4 release for EOY 2021.
We can talk about them during next scorecard meeting, create issues and assign them to contributors, and then have them as milestones. Here a list to start with:

Scorecard scaled to 1M+ repos (P1)
Scorecard adoption (could be showcasing how to use scorecard to vet dependencies @naveensrinivasan)
Scorecard CI/CD action finished (market place and verified?)
Allstar policy for scorecard (joint with allstar)
Scorecard badges
Scorecard E2E tests
Stackdriver cost optimization
GitHub API rate limits
Scorecard contributing + communication process
SLSA compliance checks, verification (doc, 1-2 checks)

Please add what you think is worth discussing about. This will help for selection and prioritization.
Thanks everyone!

Random thought that might be nice to do for another release (not sure when v4 is on the timeline): scorecard as in-toto attestation? would mean defining a scorecard predicate and having an output format for that.
Higher levels could sign the envelope (e.g. a github-runner could run scorecard and then sign the in-toto proving that it ran scorecard.

automatic documentation generation https://github.com/ossf/scorecard/issues/898

This issue https://github.com/ossf/scorecard/issues/426 is an important one, especially the pull_request_target trigger.

Adding lines to our results https://github.com/ossf/scorecard/issues/725 is an important issue we should tackle for v4 since it improves the UX experience in the GitHub scanning dashboard

FYI, Asra @asraa will tackle part of https://github.com/ossf/scorecard/issues/426. Thanks you Asra!

Would love to have dangerous workflows in v4 https://github.com/ossf/scorecard/pull/1168, if possible
Long-term, I think we'll merge Token-Permissions into it, as well as the GH pinning that currently lives under pinned dependencies.

We seem to have a lot more v4 issues than initially discussed. Do we have the time commitment to complete all these extra items? Please note that we are aiming for a mid-Jan timeframe for a v4 release. And with a winter break, it does not give us a lot of time. @laurentsimon @naveensrinivasan
Extra issues I noted: #1174, #1196, #1038, #1260, #1270, #1275, #1238.

I've removed the first one. The others are best effort. Many are simple enough that it's doable, and they improve the checks: I think it's god if we can fix those small issues before releasing. The ignore list for binary artifacts would be great, so I added in case I have time.

Aiming for a release mid-January 2022. What's left:

verify GH action for market place (WIP)
documentation of the action
submit starter workflows (WIP)
Test end to end flow of installation
Install on a few repos OSSF owns and others

hey! I found this v4 when testing locally
docker run -v ${PWD}:/app -e SCORECARD_V4=y -e GITHUB_AUTH_TOKEN=token gcr.io/openssf/scorecard:stable --show-details --local=/app

makes it much faster to make my codebase comply with scorecard

when running on a local repo --local=, not all the checks are run. Checks that are run are those that do not use GitHub APIs. Supported checks are indicated thru a repos: local in this file https://github.com/ossf/scorecard/blob/main/docs/checks/internal/checks.yaml#L47

Closing since v4 is out.


snprintf() snippet incorrectly inserts sprintf() body

Fixed snprintf() snippet incorrectly inserts sprintf() body

Thanks for catching that!


Fix double url-encoding in streams DELETE request

Due to double encoding, the removal of streams whose names contained special characters didn't works
Example
Before: /api/streams?src=http%253A%252F%252F<IP_ADDRESS>%252Fsecretkey%252Flive%252Ffiles%252Fhigh%252Findex.m3u8
After: /api/streams?src=http%3A%2F%2F<IP_ADDRESS>%2Fsecretkey%2Flive%2Ffiles%2Fhigh%2Findex.m3u8

Thanks!


add a release workflow

Is your enhancement related to a problem? Please describe
releases should have their own Github Action workflow
Describe the solution you'd like
add the release job to tag, build the image and publish it under the tag name and latest
Describe alternatives you've considered
No response
Additional context
No response

v0.1.0 released, and everything appears to have worked - CI pushes tagged versions only to nightly, and release build does all the proper tagging (version + latest), pushing, and PRs version updating. The worst problem I can find is that the bot says "has been released." (missing what version was released :) will PR), so I'm counting this as done.


Multierr dependency upgrade

Will require some work as not immediately compatible. Opening a new issue.
Originally posted by @squakez in https://github.com/apache/camel-k/issues/4195#issuecomment-1489822574

To upgrade this dependency we would need to upgrade golang version to 1.19.
Is there something known that could prevent us from upgrading golang version to 1.19 ?

Nothing. We can upgrade if we want to. We just need to make sure to update all CI actions accordingly.

We're already on 1.20, we can work on it now.


Adding a support to resolve the tags to hash for the container images

Adding the API support to resolve the container images tags to sha. Object
metadata API in the OCI library will return the size and the hash of the
container image.
Signed-off-by: zed-rishabh<EMAIL_ADDRESS>

@deitch Please take a look.

LGTM, but the build did fail. Needs gofmt -w -s <files>

LGTM, but the build did fail. Needs gofmt -w -s <files>

Yeah, fixing it. Thanks!


add space to author-list-item

Added the space to "author-list-item " to fix empty author list output.

Good thinking! I added your code.


Constraint Handling: implementation details

Hi,
Since the problem I am trying to solve is heavily dependent on constraint handling.  Therefore,
I would like to know more about the implementation details for constraint handling in pymoo.
I have already read through the  constraint_handling  page and it provided me with a very good starting point. But, I would like to know a few more things. For example, what happens when most of the solution ( 34 out of 36, especially at the start of the evolution) do not satisfy the constraint (g(x) <= 0). Are they considered for producing next generation's solution ? what is the criteria ?
Could you please let me know how the above situation is handled and where can I find its source code ?
Thank you!
Regards,
Astha

In pymoo by default the parameter-less constraint handling approach is implemented. In fact, this happens in the Survival class which most genetic algorithms' survivals inherit from. This constraint handling technique is easy to implement because it follows the feasibility first principle. This implies feasible solutions are sorted by their objective value and infeasible ones by their constraint violation. If only a small fraction of the population is feasible, mostly the constraint violation determines what individuals survive.
However, for highly constrained problems this can also cause issues . For instance, it might cause converging only to the first feasible region found and not exploring long enough. Especially if most of the search space is infeasible and many feasible rather small islands exist.
If you are interested in algorithm development I would be more than happy to see a pull request about constraint handling. The G function suite was developed to test constraint handling methods and is available too.
More Details about the Parameter-less Approach:
A Niched-Penalty Approach for Constraint Handling in Genetic Algorithms
https://link.springer.com/chapter/10.1007/978-3-7091-6384-9_40


apps/android  Building Android APP failed

import com.qualcomm.qti.QnnDelegate  file is not found

Hey @ZhangWeiOneTwo, seems like you're missing the QNN delegate SDK.
You can download the latest SDK with the .aar here. No credentials needed. An update to the repo to reflect that is a work in progress.

@mestrona-3 thanks.
Can you re-improve the Android project, because I imported this library and still reported an error, and I did not find the QnnDelegate file. Thank you very much.

Can you try this link instead?
https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-apps/qnn/linux/<IP_ADDRESS>223.zip
Kory

@kory Hello! Can you show me the QnnDelegate class?

I successfully compiled the Android demo, thanks。
Thanks to everyone in the Qualcomm AI Hub channel。

Can you try this link instead? We realized the previous link was missing assets. https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-apps/qnn/linux/<IP_ADDRESS>223.zip

I have the same problem, but I couldn't download the assets

@tumuyan 你可以问Qnn资源新的下载地址，这个地址可能是过期了。直接新开一个问题，这里问题已经关闭了。他们应该是不会回复了，我有资源但是太大了，也没法给你。


Incompatible with Python3

I saw several incompatibilities with python versions >= 3.0, any chance these will be fixed? Most notably the syntax for except is outdated, but at a glance there seem to be incompatibilities beyond that.

Just released version 1.1 with Python 3 and Windows support thanks to Nicholas Kwan. Please upgrade.


[HOLD https://github.com/Expensify/Auth/pull/7305] Pass createdReportActionID to OpenReport

~HOLD on https://github.com/Expensify/Expensify/issues/240916~
HOLD till https://github.com/Expensify/Auth/pull/7305 is live.
Details

Fixed Issues

$ https://github.com/Expensify/Expensify/issues/247415
Tests

Create a new group chat, verify that the generated reportActionID gets inserted into the database as a CREATED action.

[ ] Verify that no errors appear in the JS console

Offline tests

QA Steps

[ ] Verify that no errors appear in the JS console

PR Author Checklist

[ ] I linked the correct issue in the ### Fixed Issues section above
[ ] I wrote clear testing steps that cover the changes made in this PR

[ ] I added steps for local testing in the Tests section
[ ] I added steps for the expected offline behavior in the Offline steps section
[ ] I added steps for Staging and/or Production testing in the QA steps section
[ ] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[ ] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[ ] I included screenshots or videos for tests on all platforms
[ ] I ran the tests on all platforms & verified they passed on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I followed proper code patterns (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I followed the guidelines as stated in the Review Guidelines
[ ] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] I verified that if a function's arguments changed that all usages have also been updated correctly
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

Screenshots/Videos

Web

Mobile Web - Chrome

Mobile Web - Safari

Desktop

iOS

Android

@roryabraham I am submitting this for early feedback to get your thoughts on a couple of things. I tested this and it's working, with the caveat that I think there's a bug on main (but I am not sure)

Can you please help me with my comment above? I am quite lost, at least until someone helps me: https://expensify.slack.com/archives/C03TQ48KC/p1670345544646399

It looks like we still have a small unread issue where when you create a new chat with a new user, it shows as unread even when you're on the chat.
I
Data in onyx
{
  "isLoadingReportActions": false,
  "isLoadingMoreReportActions": false,
  "lastReadSequenceNumber": 0,
  "reportName": "Chat Report",
  "chatType": "",
  "hasOutstandingIOU": false,
  "isOwnPolicyExpenseChat": false,
  "isPinned": false,
  "lastActorEmail": "__FAKE__",
  "lastMessageHtml": "",
  "lastMessageText": "",
  "lastActionCreated": "2023-01-05 18:34:28.206",
  "maxSequenceNumber": 1,
  "notificationPreference": "always",
  "oldPolicyName": "",
  "ownerEmail": "__FAKE__",
  "participants": [
<EMAIL_ADDRESS>  ],
  "policyID": "_FAKE_",
  "reportID": "8771613870145267",
  "stateNum": 0,
  "statusNum": 0,
  "pendingFields": {
    "createChat": null
  },
  "isOptimisticReport": false,
  "displayName"<EMAIL_ADDRESS>  "iouReportAmount": 0,
  "hasDraft": false,
  "lastVisitedTimestamp": 0,
  "lastReadTimestamp": 0,
  "lastMessageTimestamp":<PHONE_NUMBER>206,
  "errorFields": {
    "createChat": null
  }
}

Thanks @thienlnam. Fixed in the API here: https://github.com/Expensify/Auth/pull/7388

I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

I think it only makes sense to do this after the Auth deploy, do you agree?

All done and tested, ready for final review. The last thing is to test on a high traffic account which I will do on Monday after the API portion has been deployed. 🙇

Good catch! Updated & retested.

Ready for reviews!

Reviews addressed, this is ready to be tested / merged cc @roryabraham @puneetlath @mountiny

@flodnv I had done some initial review, but didn't get a chance to look at it again. I did check the code today as well. Do you want me to complete the C+ checklist here?

@mananjadhav if you have time for it right now, please do so!
I will go through the testing soon otherwise.

Okay code I did review, I'll cover the testing in 1-2 hours.

@mananjadhav Thanks, let us know if you have some issues, or delays!

Yeah, I've seen this too and it's unrelated to this PR. We'll take care of it in that issue you linked. Thanks for your help @mananjadhav

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by @flodnv in version: 1.2.54-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by @AndrewGable in version: 1.2.54-2 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@flodnv @mountiny This is deployed on production for 7 days. Can someone please help me with the payout here?

Sent you a hiring offer @mananjadhav.

Accepted @puneetlath

Paid! Thanks again for the help.

Received. Thank you for the prompt action!


sample-appsensor-ws-rest-server won't run with tomcat

I'm not sure if it's a problem or if I'm not doing the right thing.
I'm trying to run sample-appsensor-ws-rest-server with tomcat in a Docker container.
When I access http://localhost:8080/sample-appsensor-ws-rest-server-2.1.0/ by clicking the link in the app manager, I get 404 - Not Found.
Tomcat is able to run a sample war.
Dockerfile
FROM tomcat:8.0.23-jre7

RUN apt-get update && \
    apt-get install -y \
    maven \
    git \
    openjdk-7-jdk \
    libtcnative-1 && \
    apt-get clean && \
    apt-get autoremove -y

RUN cd /tmp && \
    git clone https://github.com/jtmelton/appsensor.git && \
    cd appsensor/sample-apps/sample-appsensor-ws-rest-server && \
    mvn package && \
    cp target/sample-appsensor-ws-rest-server-2.1.0.war /usr/local/tomcat/webapps && \
    rm -rf /tmp/appsensor

ADD tomcat-users.xml /usr/local/tomcat/conf/tomcat-users.xml

tomcat-users.xml
<tomcat-users>
  <role rolename="admin-gui"/>
  <role rolename="admin-script"/>
  <role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <role rolename="manager-jmx"/>
  <role rolename="manager-status"/>
  <user username="tomcat" password="secret" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui"/>
</tomcat-users>

log
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
16-Jun-2015 20:27:56.775 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version:        Apache Tomcat/8.0.23
16-Jun-2015 20:27:56.777 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          May 19 2015 14:58:38 UTC
16-Jun-2015 20:27:56.777 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server number:         <IP_ADDRESS>
16-Jun-2015 20:27:56.777 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
16-Jun-2015 20:27:56.778 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            4.0.3-boot2docker
16-Jun-2015 20:27:56.778 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
16-Jun-2015 20:27:56.778 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /usr/lib/jvm/java-7-openjdk-amd64/jre
16-Jun-2015 20:27:56.778 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           1.7.0_79-b14
16-Jun-2015 20:27:56.779 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
16-Jun-2015 20:27:56.779 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /usr/local/tomcat
16-Jun-2015 20:27:56.779 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /usr/local/tomcat
16-Jun-2015 20:27:56.781 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
16-Jun-2015 20:27:56.781 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
16-Jun-2015 20:27:56.781 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.endorsed.dirs=/usr/local/tomcat/endorsed
16-Jun-2015 20:27:56.781 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat
16-Jun-2015 20:27:56.781 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat
16-Jun-2015 20:27:56.782 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp
16-Jun-2015 20:27:56.782 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent An older version 1.1.32 of the APR based Apache Tomcat Native library is installed, while Tomcat recommends a minimum version of 1.1.33
16-Jun-2015 20:27:56.782 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded APR based Apache Tomcat Native library 1.1.32 using APR version 1.5.1.
16-Jun-2015 20:27:56.782 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
16-Jun-2015 20:27:56.822 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized (OpenSSL 1.0.1k 8 Jan 2015)
16-Jun-2015 20:27:57.027 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-apr-8080"]
16-Jun-2015 20:27:57.044 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-apr-8009"]
16-Jun-2015 20:27:57.048 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 1038 ms
16-Jun-2015 20:27:57.100 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
16-Jun-2015 20:27:57.100 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.0.23
16-Jun-2015 20:27:57.156 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive /usr/local/tomcat/webapps/sample-appsensor-ws-rest-server-2.1.0.war
16-Jun-2015 20:28:02.918 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
16-Jun-2015 20:28:03.023 INFO [localhost-startStop-1] org.springframework.web.context.ContextLoader.initWebApplicationContext Root WebApplicationContext: initialization started
16-Jun-2015 20:28:03.141 INFO [localhost-startStop-1] org.springframework.web.context.support.XmlWebApplicationContext.prepareRefresh Refreshing Root WebApplicationContext: startup date [Tue Jun 16 20:28:03 UTC 2015]; root of context hierarchy
16-Jun-2015 20:28:03.193 INFO [localhost-startStop-1] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions Loading XML bean definitions from class path resource [applicationContext.xml]
16-Jun-2015 20:28:03.612 INFO [localhost-startStop-1] org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.<init> JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
20:28:03,782 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
20:28:03,783 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
20:28:03,783 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/usr/local/tomcat/webapps/sample-appsensor-ws-rest-server-2.1.0/WEB-INF/classes/logback.xml]
20:28:03,784 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs multiple times on the classpath.
20:28:03,784 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [jar:file:/usr/local/tomcat/webapps/sample-appsensor-ws-rest-server-2.1.0/WEB-INF/lib/appsensor-core-2.1.0.jar!/logback.xml]
20:28:03,784 |-WARN in ch.qos.logback.classic.LoggerContext[default] - Resource [logback.xml] occurs at [file:/usr/local/tomcat/webapps/sample-appsensor-ws-rest-server-2.1.0/WEB-INF/classes/logback.xml]
20:28:03,863 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
20:28:03,873 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
20:28:03,889 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [STDOUT]
20:28:03,913 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
20:28:03,987 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to DEBUG
20:28:03,987 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [STDOUT] to Logger[ROOT]
20:28:03,988 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
20:28:03,990 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@39e481c4 - Registering current configuration as safe fallback point

20:28:04.686 [localhost-startStop-1] WARN  o.o.a.c.s.c.StaxClientConfiguration - Could not load appsensor client configuration file. This error is fine if you are running a server.
16-Jun-2015 20:28:04.704 INFO [localhost-startStop-1] org.springframework.web.context.ContextLoader.initWebApplicationContext Root WebApplicationContext: initialization completed in 1681 ms
16-Jun-2015 20:28:25.357 INFO [localhost-startStop-1] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [20,647] milliseconds.
16-Jun-2015 20:28:25.672 INFO [localhost-startStop-1] org.glassfish.jersey.server.ApplicationHandler.initialize Initiating Jersey application, version Jersey: 2.8 2014-04-29 01:25:26...
16-Jun-2015 20:28:27.321 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive /usr/local/tomcat/webapps/sample-appsensor-ws-rest-server-2.1.0.war has finished in 30,164 ms
16-Jun-2015 20:28:27.325 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/examples
16-Jun-2015 20:28:27.693 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/examples has finished in 368 ms
16-Jun-2015 20:28:27.693 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/host-manager
16-Jun-2015 20:28:27.731 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/host-manager has finished in 38 ms
16-Jun-2015 20:28:27.732 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/docs
16-Jun-2015 20:28:27.761 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/docs has finished in 29 ms
16-Jun-2015 20:28:27.761 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/manager
16-Jun-2015 20:28:27.805 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/manager has finished in 44 ms
16-Jun-2015 20:28:27.805 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /usr/local/tomcat/webapps/ROOT
16-Jun-2015 20:28:27.831 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /usr/local/tomcat/webapps/ROOT has finished in 26 ms
16-Jun-2015 20:28:27.853 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-apr-8080"]
16-Jun-2015 20:28:27.872 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-apr-8009"]
16-Jun-2015 20:28:27.878 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 30830 ms

@brunoqc Thanks for posting the issue here. From the logs it looks like it was started correctly. Can you try hitting this url:
http://localhost:8080/sample-appsensor-ws-rest-server-2.1.0/api/v1.0/responses
You should get a message back that says "Page requires sending configured client application identification header." If you do, that means you're setup properly. There is no handler for the root ("/") url.

I got "Page requires sending configured client application identification header."
Thanks!

Great - sounds good @brunoqc . That sample app has a default config already setup that you'll probably want to change if you're doing anything other than basic testing.


fix ensurefolder

ensurefolder tries to fs.mkdir and returns error if any occurs. The problem is when fs.mkdir returns error stating that the folder already exists. ensurefolder sends that out as an error, which causes a snowballing effect.
As ensurefolder's role is to make sure folder exists, it shouldn't really return an error saying a folder exists, right?
Same as rjrodger/seneca-jsonfile-store/pull/8
Fixes rjrodger/seneca-level-store/issues/2

@kamil-mech instead of using fs.exists we should switch to fs.stat... (https://nodejs.org/api/fs.html#fs_fs_exists_path_callback)
Either way, we should add a test for when this condition occurs.


Import _build_current_repodata from conda_index instead of conda_build

Importing  _build_current_repodata has been deprecated in conda_build: https://github.com/search?q=repo%3Aconda%2Fconda-build _build_current_repodata&type=code
This PR uses the new conda_index module for importing _build_current_repodata  instead of the deprecated functionality in conda_build .

Hmm, weird that the tests are timing out. Did you try running them locally?

Thinks work fine in my local test environment. But I haven't looked  yet into what versions of conda_build and conda_index are getting used by the github test environment at the moment.

closed via #693


Humanoid animation export error

When exporting humanoid animations from the game Blacksad: Under the skin (Unity version 2018.4.5f1) the finger animations are not exporting correctly. Everything in the animation works fine, but the fingers remain in a default position for the entirety of each animation and don't move at all, even though they are supposed to move as they do in the game.

Game files required


Support custom reporting class in configuration

Hello! First and foremost, thank you very much for making this excellent library.
In this PR, we propose a new feature: custom pin failure reporting.
Use Case
Our reporting server is strict about the JSON format it will receive. It cannot be updated by us because it's a 3rd-party service (i.e. Airbrake). Using this PR, we are able to customize the format that will be sent to our reporting URI, thus conforming to what our 3rd-party service expects.
Implementation

Define new configuration key: kTSKPinFailureReportClassName.
When custom reporting class is used, throw an exception unless it inherits from TSKPinFailureReport.
When no custom reporting class is used, default to using original TSKPinFailureReport.
Write a test confirming the intended usage behavior for kTSKPinFailureReportClassName.
Add "Custom Pin Failure Reporting" section in docs/getting-started.md.

God speed 🖖

Why would this need to be configured on a per-domain basis? The functionality (report customization) is a great idea, but it could be easily provided programmatically rather than by reflection.
What if you adjusted this solution as follows:

Expose the failure reporter (TSKBackgroundReporter) as a readonly property on TSKTrustKit instances
Expose a property on TSKBackgroundReporter to set the failure reporter class
@property (nonatomic, null_resettable) Class failureReportClass; /* set to nil for default class */
Change to use [self.failureReportClass alloc] ...] instead, here:
https://github.com/datatheorem/TrustKit/blob/master/TrustKit/Reporting/TSKBackgroundReporter.m#L151

Even better would be changing TSKPinFailureReport to generate JSON reports via class method without new allocation each time... that would let you pass an actual instance instead of Class. The only method used is [.. json] so it could possibly just generate JSON without a new object each time.

Hello and thanks for looking into this!
There is already a mechanism for customizing things such as the reporting mechanism: https://datatheorem.github.io/TrustKit/documentation/Setting up a Validation Callback.html#/c:TSKPinningValidatorCallback.h@T@TSKPinningValidatorCallback
To be honest, I'd rather avoid adding yet another configuration key and more complexity; the callback feature should give you all the flexibility you need. Any specific reason for not using it?
Thanks!

The issue is that the validation callback doesn’t allow in-band customization of the report without taking on ownership of the entire reporting flow, network calls, throttling, etc. at least as far as I can tell.
While I agree with you that configuration isn’t a good fit, his case for a deeper hook into the report payload generation is legitimate and interesting.

@adamkaplan:

Why would this need to be configured on a per-domain basis?

This PR doesn't actually allow this. TSKPinFailureReportClassName is declared as a top-level key; higher-order than TSKPinnedDomains.

...it could be easily provided programmatically rather than by reflection.

Indeed. We went with this approach initially, but realized it wasn't compatible with the ideology of configuring TrustKit from a plist file. Frankly, we are neutral on either approach.

...generate JSON reports via class method without new allocation each time... that would let you pass an actual instance instead of Class.

We disagree. In TSKPinFailureReport, only the json method is called, but it's still useful as a vehicle of data (i.e. bundle ID, app version, etc) to be passed/read from by other objects (example).

@nabla-c0d3:
@adamkaplan is right about all-or-nothing customization. We wanted to keep all of the battle-tested reporting functionality that's already there while simply customizing the format of the JSON payload sent to our reporting URLs.

...avoid adding yet another configuration key and more complexity...

This isn't a required customization key. In fact, there's no mention of TSKPinFailureReportClassName excluding the excerpt we wrote for it in the docs. For this reason we do not believe this adds any unnecessary complexity for the implementor unless they intentionally seek it out.

...the callback feature should give you all the flexibility you need.

We could update the callback, but we found some limitations:

sendValidationReport: is called on a different thread than pinningValidatorCallback.
pinningValidatorCallback would need to be extended. For example, it's return value could be any instance of TSKPinFailureReportClass, which is then used in sendValidationReport.

There is likely more to it than this, but these two raise an interesting point. Primarily due to the second point being a breaking change, we don't believe this would be a better approach than what we've done in this PR.

After a week of using this PR, we have had excellent results. We wouldn't be utilizing the full capability of this library without it so we intend to continue using it.  We think it's highly unlikely that we're the only ones ;)
Thank you for taking time out to discuss this PR with us!

...generate JSON reports via class method without new allocation each time... that would let you pass an actual instance instead of Class.
We disagree. In TSKPinFailureReport, only the json method is called, but it's still useful as a vehicle of data (i.e. bundle ID, app version, etc) to be passed/read from by other objects (example).

You're right, good catch. A static approach to that class isn't right. I still believe a programatic approach is ideal - perhaps with basic inheritance though.
Definitely awesome to contribute this functionality. Just working out the details here. I've contributed quite a few features to this library that I thought were only valid for my companies weird use cases to later to find issues filed against them (meaning others found it useful too! wonderful!).

Any chance this will get merged? We would want to report SSL errors to slack

@sbycrosz You don't need this PR to push SSL errors to Slack. If you set up an endpoint to receive the pinning failure reports and to then forward them to Slack, you should be good to go; you don't want to embed a Slack webhook URL into your app.

@sbycrosz You don't need this PR to push SSL errors to Slack. If you set up an endpoint to receive the pinning failure reports and to then forward them to Slack, you should be good to go; you don't want to embed a Slack webhook URL into your app.

That's a good point, though I wouldn't assume that the Slack secrets/webhook are embedded in the app. Maybe they are, but at my company all apps integrate a robust remote config system that avoids this problem. I think it's reasonable to allow for customized reporting. But, I also agree that the use cases described are best done using a middle-tier report proxy... it's much more secure that way.
This is a tough one. The use case is debatable, but the functionality seems quite reasonable, if not potentially avoidable in most cases.

I was waiting to see if there would be more users asking for this. I think overall the use case is too specific while adding complexity. Closing this PR now.


Update Legal, monero compile link and grammar

Should we also remove "Password Protected Areas" as it is irrelevant because the forum is now inaccessible?
Also please revise the grammar changes I made.

LGTM, thanks for all the reviews!

while we wait for the legal department to approve the changes, i notice this is your 2nd pull request from master branch and you where reluctant to squash/edit the previous one, have times changed?

what plowsof is trying to say:

Please squash commits into 1
(for next time) please always create a new branch on your repo and push pr from there

and i'll add
3. Please name pr and commits like sourcefolder: change made so, legal: update index.md
I can leave my approval (pending 1, 2 and preferably 3)

To squash

Update your local branch. Replace  with the name of your remote. If you only have 1 repo cloned, should be "origin"
git pull <remote> master
git rebase -i HEAD~7
this will show a list of the 7 commits. They will say pick <commit msg>. For the bottom 6, replace pick with squash and then save the file
it will show a new file, and ask you to edit the commit msg. it will display all 7 messages. Delete them and replace with legal: update index.md, then save the file
git push -f to push the changes

@nahuhh please tell me it worked, had to use Vim 😭 and oh I hate Git.
I might close this PR and open a new one with all edits instead of suffering

Looks like it went well 🙏
thank you

If you make the latest changes locally, you can edit the original commit
git add index.md
git commit --amend --no-edit
git push <youruser> -f


Mobile design: Overview summary v1

The overview section is intended to inform the user quickly and concisely. Here is the v2 design for this section. https://www.figma.com/file/IiYu74VmEi4GVS4bnYaTd6/Delphi-Site-Redesign?node-id=1936%3A7
Please leave feedback in Figma.

Here's the updated mock :)
https://www.figma.com/file/IiYu74VmEi4GVS4bnYaTd6/Delphi-Site-Redesign?node-id=2246%3A973
Zero state on page load:

on scroll.

closing since http://dev--cmu-delphi-covidcast.netlify.app/summary is implemented


Using oclazyload with $routeProvider giving controller is undefined.

Hi ,
I have removed the controller js file from the head section of my main html file in order to lazy load it.
I am using $routeProvider
var app = angular.module('myApp', ['ngRoute','ngAnimate','oc.lazyLoad']);

app.config(function ($routeProvider) {
$routeProvider
    .when('/time',
        {
            controller: 'timeController',
            templateUrl: '/app/partials/time.html',
            access: { requiredLogin: true },
            resolve: {
                lazy: ['$ocLazyLoad', function($ocLazyLoad) {
                    return $ocLazyLoad.load([{
                        name: 'myApp',
                        files: ['/app/controllers/timeController.js']
                    }]);
                }]
            }
        })

The file timeController.js is perfectly being loaded as i can see it in the network tab of browser console.
But still i am getting the error Argument 'timeController' is not a function, got undefined.
Plz help.

Everything looks fine in this code. Do you have the code of the controller ?

app.controller('timeController', function ($scope, $http,$filter,$sce) {
    $scope.time = 'am';
});

Change app.controller by angular.module('myApp').controller :)

Yippee .. Thanks a lot!!!

@ocombe, I just ran into this same problem when implementing ocLazyLoad and had to go through and redefine all of my controllers and such after wasting a lot of time trying to find the problem...
What's the difference between app and angular.module('app')? Doesn't angular.module('app')just get the instance ofapp`? Why does the latter work while the former doesn't?
Also, is there a way to map app.controller to angular.module('app').controller so the definitions don't have to be changed?

The difference is a question of variable scopes. The variable app is not available within another file. If you define it on window.app, then it would work.
Whereas angular.module('app') is a function that will get the reference, and since angular is a global variable then it's available for you there.

as following this thread i modified my controller like :
define(['angular', 'lodash'], function(angular, _) {
return angular.module('myApp').controller('homeCtrl',[...]);
});
but still same problem  : Argument 'homeCtrl' is not a function, got undefined.
please give me some hint to over come with this

I also have this same problem. app.controller works fine if i use without lazyloading. Is there any solution to use app.controller instead of angular.module?

+1

+1

if you want to use app.controller instead of angular.module('appname').controller than you need use following code
App.config(['$stateProvider', '$httpProvider', '$locationProvider', '$urlRouterProvider', '$controllerProvider', '$compileProvider', '$filterProvider', '$provide', '$ocLazyLoadProvider',
    function ($stateProvider, $httpProvider, $locationProvider, $urlRouterProvider, $controllerProvider, $compileProvider, $filterProvider, $provide, $ocLazyLoadProvider) {

        App.controller = $controllerProvider.register;
        App.directive = $compileProvider.directive;
        App.filter = $filterProvider.register;
        App.factory = $provide.factory;
        App.service = $provide.service;
        App.constant = $provide.constant;
        App.value = $provide.value;

    }]);


SipTraTest.TraCompleteRetrieveRsp is flaky

https://dev.azure.com/cncf/envoy/_build/results?buildId=143509&view=logs&j=8c169225-0ae8-53bd-947f-07cb81846cb5&t=4d0399a5-fd0d-5446-d022-32daa00183cc&l=4353
@durd07 @nearbyfly @dorisd0102

I will check it now.

@lizan please help to close this issue as it has been solved.
Thanks.


[Feature][Module Name] Connecting to the ZooKeeper with SSL&ACL

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
When SSL authentication is enabled for the deployed ZooKeeper, certificate authentication parameters need to be configured for Dolphin to ensure secure connections.
Use case
When SSL authentication is enabled for the deployed ZooKeeper, certificate authentication parameters need to be configured for Dolphin to ensure secure connections.
Related issues
No response
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

I will raise an PR for this issue.

I will raise an PR for this issue.

Okay, thank you. Will it be added to the official 3.2.2 release?

This issue has been automatically marked as stale because it has not had recent activity for 30 days. It will be closed in next 7 days if no further activity occurs.

remove


chore: Change the onboarding for the AppStore + fix

Hi everyone!
Apple asks us only to have one button for the permission page.
This also includes a fix, where right and left buttons were inverted.

Codecov Report
Attention: Patch coverage is 0% with 17 lines in your changes missing coverage. Please review.

Project coverage is 6.50%. Comparing base (4d9c7fc) to head (11cb048).
Report is 553 commits behind head on develop.

Files with missing lines
Patch %
Lines

...oth_app/lib/pages/onboarding/permissions_page.dart
0.00%
7 Missing :warning:

...pp/lib/pages/onboarding/onboarding_bottom_bar.dart
0.00%
6 Missing :warning:

...p/lib/pages/onboarding/consent_analytics_page.dart
0.00%
2 Missing :warning:

...s/smooth_app/lib/pages/onboarding/next_button.dart
0.00%
2 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           develop   #6003      +/-   ##
==========================================
- Coverage     9.54%   6.50%   -3.05%
==========================================
  Files          325     441     +116
  Lines        16411   24982    +8571
==========================================
+ Hits          1567    1624      +57
- Misses       14844   23358    +8514

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

@g123k can you provide a screenshot for reference?

@g123k can you provide a screenshot for reference?


[DEMO] Error on place order

OOTB Error on place order does not respond at all, lets make this an error from a down stream service which can bubble up to the FE in the UI

Re-opening as prod still seems to be broken. Need to investigate more.

2023-01-17 13:09:23 Error: 2 UNKNOWN:
2023-01-17 13:09:23     at Object.callErrorFromStatus (/app/node_modules/@grpc/grpc-js/build/src/call.js:31:26)
2023-01-17 13:09:23     at Object.onReceiveStatus (/app/node_modules/@grpc/grpc-js/build/src/client.js:189:52)
2023-01-17 13:09:23     at Object.onReceiveStatus (/app/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:365:141)
2023-01-17 13:09:23     at Object.onReceiveStatus (/app/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:328:181)
2023-01-17 13:09:23     at /app/node_modules/@grpc/grpc-js/build/src/call-stream.js:187:78
2023-01-17 13:09:23     at process.processTicksAndRejections (node:internal/process/task_queues:77:11) {
2023-01-17 13:09:23   code: 2,
2023-01-17 13:09:23   details: '',
2023-01-17 13:09:23   metadata: Metadata {
2023-01-17 13:09:23     internalRepr: Map(1) { 'content-type' => [Array] },
2023-01-17 13:09:23     options: {}
2023-01-17 13:09:23   }
2023-01-17 13:09:23 }
2023-01-17 13:09:27 Error: 2 UNKNOWN: Exception calling application: Unsupported scheme ''
2023-01-17 13:09:27     at Object.callErrorFromStatus (/app/node_modules/@grpc/grpc-js/build/src/call.js:31:26)
2023-01-17 13:09:27     at Object.onReceiveStatus (/app/node_modules/@grpc/grpc-js/build/src/client.js:189:52)
2023-01-17 13:09:27     at Object.onReceiveStatus (/app/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:365:141)
2023-01-17 13:09:27     at Object.onReceiveStatus (/app/node_modules/@grpc/grpc-js/build/src/client-interceptors.js:328:181)
2023-01-17 13:09:27     at /app/node_modules/@grpc/grpc-js/build/src/call-stream.js:187:78
2023-01-17 13:09:27     at process.processTicksAndRejections (node:internal/process/task_queues:77:11) {
2023-01-17 13:09:27   code: 2,
2023-01-17 13:09:27   details: "Exception calling application: Unsupported scheme ''",
2023-01-17 13:09:27   metadata: Metadata {
2023-01-17 13:09:27     internalRepr: Map(1) { 'content-type' => [Array] },
2023-01-17 13:09:27     options: {}
2023-01-17 13:09:27   }
2023-01-17 13:09:27 }

For some reason we get Exception calling application.

Alright seems to be fixed with https://github.com/getsentry/opentelemetry-demo/pull/46, but fingers crossed


Wrong Git URL with template

When trying to use the --template option with a git repository
e.g. aframe new my-360-tour --template repository/360-tour-template the CLI tries to clone from a  different URL to the one defined
Repo given: --template repository/360-tour-template
Output:
Error: Git clone error: Error: Command failed: git clone git://github.com/aframe-repository/360-tour-template-template.git "/Users/korny/.brunch/skeletons/f3c13a33a16659066ddedb8c324772a51569442b".
It wrongly pre-pends the string "aframe-" and appends the string -template"
Expected: The CLI should pull the repository from the given github structure

Many thanks for filing this issue! Have a branch in a PR that will be addressing this. Will update this bug when it's resolved. Thanks for using and testing 👍

thanks for your patience. I opened a new PR (#82) to address this bug.
the fix worked well for me. if you have a moment, could you pull it locally and ensure that it fixes your problems:
npm install 'cvan/aframe-cli#0c4729f' --save

appreciate the help and guinea-pigging!


Adding hashed passwords to ACL implementation

Adding ACLs with hashes and tests for ACLs with hashes.
Submitted a couple of PRs but messed them both up. This one should be good. Let me know what you think.

Codecov Report

:exclamation: No coverage uploaded for pull request base (acl@3b65e87). Click here to learn what that means.
The diff coverage is 0%.

@@          Coverage Diff           @@
##             acl    #1230   +/-   ##
======================================
  Coverage       ?   89.99%
======================================
  Files          ?       20
  Lines          ?     6114
  Branches       ?        0
======================================
  Hits           ?     5502
  Misses         ?      612
  Partials       ?        0

Impacted Files
Coverage Δ

tests/test_commands.py
95.09% <0%> (ø)

redis/client.py
82.27% <0%> (ø)

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 3b65e87...53f2a0b. Read the comment docs.

@andymccurdy - This is to add hash support for #1216
Ignore the shameful retesting. I gave up and ran the tests locally to get it to pass.
This one is finally pythonic. Let me know if you have any issues.

You can split a string across multiple lines like this:
foo = ('part 1 of the string '
           'part 2 of the string '
           'notice no comma between these strings '
           'otherwise this would be a tuple')

@andymccurdy - when you get a chance I've refactored based on your feedback. LMK what you think.

I just ran the tests against Redis Unstable and am getting a failure on the getuser/setuser test. Are you sure you're not running against a 5.0 server where these tests will be skipped?

Merged this into the "acl" branch. Thanks!


Add validation for joining ladder without user_name field

When sending request without user_name field, Klesk creates matches with one player.
Command: curl -d "text=joinladder test" http://localhost:1666
Result: "Added: undedfined"
ladder.json: {"player2":"patryk","winner":""},{"player2":"tarnas14","winner":""}

We don't need to validate this. Slack knows what he does.


NotifyTask concern

As I mentioned in another post, I'm a fan of NotifyTask. Recently however I noticed, well, not exactly a problem but something unexpected and I would say somewhat inconvenient. I would suggest a change.
The overall design of NotifyTask is that you hand the task in to the constructor, and then you await TaskCompleted. Meanwhile the properties of NotifyTask, such as IsCompleted, IsFaulted, ErrorMessage should be notified by NotifyTask.
But suppose the task being handed in to Create is already faulted? There are a lot of ways this could arise. What will happen is that MonitorTaskAsync will run to completion in the constructor, including NotifyProperties. But since we are still in the constructor of NotifyTask, there are no handlers attached to PropertyChanged at that point. Then when you await TaskCompleted, it returns immediately since the Task that it refers to has already run to completion. Consequently no property notifications will ever be sent.
In effect, the properties of NotifyTask are being initialized to values different from the default value (i.e. some of them are true while the default value for bool is false) but no property notifications occur. This is, I would say, somewhat logical but not at all convenient. We can't just do this:
    asyncExecution = NotifyTask.Create<TOut>( methodAsync() );
    asyncExecution.PropertyChanged += AsyncExecution_PropertyChanged;
    await asyncExecution.TaskCompleted;

and define a handler
    private void AsyncExecution_PropertyChanged(object sender, PropertyChangedEventArgs e)
    {
        if (e.PropertyName == nameof(NotifyTask.InnerException)) {
            this.HandleException( ((NotifyTask)sender).InnerException);
        }
    }

Instead, in addition to doing all the above we also have to test for asyncExecution.InnerException != null after the call to Create. This basically leads to duplicating the logic of the PropertyChanged handler, which is not very desirable from a design point of view.
Also the fact that you have to do this is not very discoverable, as I discovered the hard way!
To remedy this situation my suggestion is to change MonitorTaskAsync as follows:
    private async Task MonitorTaskAsync(Task task)
    {
        try {
            if (task.IsCompleted) {
                await Task.Yield();
            }
            await task;
        } catch {
        } finally {
            NotifyProperties(task);
        }
    }

This way, MonitorTaskAsync will definitely not run to completion. Instead it will always return a meaningful Task that when awaited will do the appropriate NotifyProperties.
Note, this will give you a somewhat different flow of control from the current implementation. The Create call will now always yield while in the past it would only yield if the task was not already completed.

I'm not sure that this would be an improvement.
This is the way that all updates work in an MVVM system; you have to read the property after subscribing to PropertyChanged. Every UI component works this way, and I fail to see a compelling reason why NotifyTask<T> should be different.
In particular, consider the situation where a completed task is passed to NotifyTask<T>. It would be truly weird for NotifyTask<T>.IsCompleted to return false if the task is clearly already complete.
On a side note, the proposed fix has a race condition that still allows MonitorTaskAsync to run (and invoke PropertyChanged) synchronously. You'd have to always do the Task.Yield to ensure consistent behavior.

Good comments!
I agree about the race condition, at least when the task is on a different thread. The task could complete between the time that we test for completion and the time that we await it. It is a mistake.
Whether the reason is "compelling" or not, I don't know. I agree that the original approach is logical. For me it is about convenience and reducing the duplication of code.
If we hand in a completed task then I believe that IsCompleted would be true but TaskCompleted.IsCompleted would be false. It seems OK to me that the task of checking for completion has not been completed, although the task itself has completed.
Thanks for your thoughts
sjb

Well .... I thought I understood this, but now I'm starting to wonder.
Let's say I have a method
async Task methodAsync() {...}
and I want to call back a function HandleException( Exception e) exactly once for each exception.
I set notifyTask = NotifyTask.Create( methodAsync()), then I hook up a property change handler. In the property change handler, when the Exception property changes then I call HandleException.
So far so good. But if the exception occurs before I hook up the property changed handler, then I am not notified. So I have to test for the exception in notifyTask. If I do this test before I set up the property changed handler then the exception can still occur after the test but before the property changed handler is set up -- in which case I miss the exception. On the other hand if I do it after I set up the property changed handler then the exception may occur after the handler is set up but before the test is done -- in which case I handle the exception twice instead of once?
Is a race condition inherent in using property change notifications with NotifyTask ?
In the end I would up doing something like this:
            abended = false;
            isExecuting = true;
            Task<TOut> task = null;
            try {
                task = methodAsync();
                await task;
            } catch (AggregateException ae) {
                foreach (Exception e in ae.Flatten().InnerExceptions) {
                    HandleException(e);
                }
                abended = true;
            } catch (Exception e) { // in case methodAsync is not actually marked async
                 HandleException( e);
                 abended = true;
            }
            isExecuting = false;
            TOut result = abended ? default(TOut) : task.Result;

If you want to call HandleException exactly once for each exception, then you should do this:
notifyTask = NotifyTask.Create(async =>
{
  try { return await methodAsync(); }
  catch (Exception ex) { HandleException(ex); throw; }
});

I guess you are saying to do this but do not hook up PropertyChanged: since the exception is caught and passed directly to HandleException, there is no need to get it through the property-changed notification. I think this is somewhat similar to the suggestion I posted. My comment would be that we seem to be just cutting out the property-changed handler as a way of avoiding the race between the exception occurring and the property handler being hooked up.


Update changelog for 7.2.0

We released 7.2.0 without updating the changelog. This fixes that.

@MattiasBuelens you can cancel this PR since this was added in https://github.com/THEOplayer/iOS-Connector/pull/41


fix(docs): fix duplicate instructions for windows installation

This commit fixes the duplicate copy and configure steps for the Windows powershell scripts.
fixes #9887
It also adds the architecture as a variable in preparation for the ARM64 support that is coming.

PR keeps being removed from the merge queue, anyone can help on this?


[Release] sdk/resourcemanager/cosmos/armcosmos/3.0.0-beta.1

https://github.com/Azure/sdk-release-request/issues/3215

@Alancere Please help to adjust to minor version release.

Could you update the title for this PR?  I think it should be 2.2.0-beta.1


Close project if no open items included

Users are creating more and more projects to organize their efforts. But we have no way to close out a project. A simple form to do this would be to consider the project 'closed' when no single open task or supply are left to be done.
We then should list 'Closed' projects as a separate view just like we do for 'complete tasks'. Also, closed projects are not counted in any of the counters on badges.

Also we need to offer 'Delete project' as an option in the drop down. It eill purge the project and all included tasks snd supplies, after an 'are you sure' check.

So what needs to be implemented is:
1. close project
Closing "automagically" may be confusing, and we'll have to handle the special case that a project was just created but has no tasks yet. How about having users close a project manually, by hand? That's the interaction they are used to from tasks and supplies.
2. delete project
No comments sounds good. Since we'll have a "Super" Button now with the delete option anyhow, it would be easy to add the "close" option here as well.

@phillipoertel

Explicit closing is a good option. I was trying to keep it simple but manual is better. We will then need to offer re-open as well. Also we need to hide closed project from the list views of active projects and offer a nav link to switch to 'Closed projects...' (Like we do for tasks).

Delete project as a button option with a 'are you sure?' Check is perfect.

Ok. Should be straight-forward to implement since we have most of the code & layout in other features already.
FYI I took the liberty to adjust the issue name to "Close, reopen and delete projects".

Made good progress today. Remaining Todos:

[ ] hide completed projects from lists
[ ] request optical indicator for completed project
[ ] align super dropdown menu
[ ] add feature spec

@dottorer will there be any indication that a project is closed on it's dashboard? For tasks and supplies the header changes color, but the project header is different ...

@dottorer can projects with open tasks/supplies be closed? Working groups can't, they get an alert message.

@phillipoertel I think if a project has open tasks / supplies we show a warning to tell them to close them out, like on WGs.
I will think about an indicator for the closed projects. Looking around, I noticed that the line display of closed tasks does not show them green, but the display of the individual task does how them green. Will open a bug for it.

@phillipoertel Ideas for visualization:

in the single project view we could prepend the word 'Erledigt: ' to the project title as we do with the tasks.
for the list view of projects (both on the work group level and on the circle level), we could also offer the toggle to 'Erledigte Projekte...' and in that list show a small round green check box icon

@dottorer Ok, sounds good.

@dottorer feature is ready for review on staging!

@phillipoertel Testing was very complete already. Looking good.
Couple of thoughts:

I think we need to indicate it more strongly that a project is closed. Could we re-style its header to be closer to the task header and use 2 colors: light blue for normal and green for closed?

We could potentially leverage this in a better list view for projects:

List view would show WG a project is in, number of open tasks and supplies and helpers (n out of m).

The current project icon really does not scream 'project' to me...

What do you think? Doable?

@phillipoertel Tested. Looks good - some notes:

When deleting a project, we show a warning 'are you sure?', then we blow project and all included items away. We should tell them in the text that included tasks / supplies will be deleted.
Closed projects: Likely part of #413 but we need to decrase the counter in the leftnav (should only count open projects) and then move the project to the 'closed projects' listing.

Other than that basic state transition looks good. Closing.

@phillipoertel In production, on the circle level I do not yet see the 'Abgeschlossene Projekte...' toggle in the list. I thought we had this implemented just like on the workgroup level, but maybe not deployed yet? Just checking...