getBoundingClientRect should always return a rect

I'm running into issues with my projects tests running on IE11 in Windows 7.
IE11 throws an "Unspecified error." at the line that calls getBoundingClientRect. Catching the exception prevents the error from breaking our tests. Returning an empty rect prevents the polyfill from creating an entry with a boundingClientRect of undefined which would throw in _checkForIntersections.
This makes the polyfill work to spec in IE11 by working around this issue https://connect.microsoft.com/IE/feedback/details/829392/calling-getboundingclientrect-on-an-html-element-that-has-not-been-added-to-the-dom-causes-unspecified-error

@robwalch - can you join the WICG in order to appease the IPR bots? Thanks! :)

Thanks @yoavweiss. Will this do https://www.w3.org/users/98675?

@robwalch Can you also go to https://www.w3.org/community/wicg/participants and join the CG? Thanks!

@yoavweiss I joined the group. Not sure what I need to do appease the PR bots now
Thanks!

And the bots are appeased! :)

Any updates here? We've found this bug too
Will it be included on the next release?

I'm happy to merge this, but I'm curious why the current test suite wasn't detecting this issue. The tests run in IE11 and there's a test for elements not yet in the DOM.
@robwalch can you take a look and see if the tests need to be updated so future changes don't regress with regards to this?

@philipwalton my guess is that's because the target elements are created as part of the test fixture, and for the test in question, only removed right before running the test.
I'll add a test that uses a new element that has never been added to the DOM:
targetElN =  document.createElement('div');
That does the trick in IE11's dev console.

@philipwalton I added the test here https://github.com/WICG/IntersectionObserver/pull/219 so we could see it fail and hopefully fixed with the changes here.

Is this in the new version?

Yes, if you look at this history you'll see it was merged.

Yes I did, the question is if what is merged is on the last version.

https://github.com/WICG/IntersectionObserver/commits/gh-pages


How to get the current settings of a window

I cannot find a way to access the x, y, width and height of a window. I derived my Node struct from Window and I'd like to be able to put things inside relatively to these current parameters.
(sorry I'm a bit learning rust with this project, then it might be a dumb question)

If you want the inner size of the Window you can use the Ui it wraps and call ui.min_rect(): https://docs.rs/egui/0.3.0/egui/struct.Ui.html#sizes-etc
If you want the outer size, then Window::show returns an optional Response:
let response = egui::Window::new("my window").show(ctx, |ui|{
    // ..add a bunch of widgets to ui
    let inner_rect = ui.min_rect();
});
if let Some(response) = response {
    let outer_rect = response.rect;
} else {
    // window was closed (will only happen if you use [`open`](https://docs.rs/egui/0.3.0/egui/containers/struct.Window.html#method.open))
}

I hope that helps!
If you have more questions, there is an Egui discord channel at https://discord.gg/vY8ZGS292W

Yes, I think it's what I was looking for. I have to get used to the whole concept. Thank you!


feature: make behavior when header.border = true consistent whether or not there is a blank newline above/below the header

Is your feature request related to a problem? Please describe.
Currently, when header.border = true and there is a blank newline above the header, the border is applied to the blank newline, but when there is a non-blank line above the header, a "phantom" line is rendered and the border is applied to that "phantom" newline, and this behavior is the same for the border below the header.
This makes moving up or down by line when there is a header unpredictable. To make the situation a bit clearer:
The following would look the same:
text [cursor]

# header

text [cursor]
# header

However, moving the cursor down a line in the first example would move the cursor to the empty line (and hide the border of the header), while moving the cursor down in the second example would move the cursor to the line with the header.
Describe the solution you'd like
When header.border = true, render the border on a "phantom" line, regardless of whether or not there is an empty line above or below it.
This would have the added benefit of fixing the rendering headers at the top and bottom of the file (currently, when there is a header at the top of the file, the top border is not rendered, and the same is true of the bottom border for a header on the last line of the file).
Describe alternatives you've considered
Add a configuration value to control this behavior, eg: header.border_position, with (perhaps) a value of overlay preserving the current behavior, and a value of virtual (or some better-named value) triggering the consistent behavior I've described above.
Additional information
Again, I really appreciate this plugin and all of the work you've put into it! It's meaningfully improved my Neovim experience.

The top and bottom lines don't get fixed by rendering a virtual line on them.
Under the current implementation there's already a virtual line being rendered in both places: https://github.com/MeanderingProgrammer/render-markdown.nvim/issues/123#issuecomment-2274588879
You can see the top one if you hit <C-b>.

I can add an opt in to make the lines always virtual.

Added this here: https://github.com/MeanderingProgrammer/render-markdown.nvim/commit/aad1a1220dc9da5757e3af3befbc7fc3869dd334.
You can opt into it by setting heading.border_virtual to true.


[FIX]: Tackle Old PRs

This PR tackles PRs from the old repo:

Add dcrt with unit tests and example

@bthirion, this PR is ready to review and merge

Hello @bthirion, I think it is ready for the merge now

Merging now.


chore(parser): reduce intermediate string allocations

By threading the appropriate input lifetime through lexer and parser methods as initially pointed out in https://github.com/apollographql/apollo-rs/pull/814, we can avoid copying strings in a few places.
Especially nice is that we can avoid copying the same strings multiple times when peeking at tokens, and we can avoid an eager copy that is almost always just thrown away in the implementation of .expect().

Reverted the change making Token copyable, it was kinda worse to read and on top of that it was actually slower to copy tokens than to use references by about 10% according to benchmarks. Now the ownership of tokens is the same as before, only the lifetime of the source text inside the tokens has changed.


Unable to  rename shapes layer.

🐛 Bug Report
Cannot rename shapes layer.  And point or label layer is right
I tried to create new conda env and directly run napari but still.
Same situation may happend  #https://github.com/scverse/napari-spatialdata/issues/319
💡 Steps to Reproduce

create new env

micromamba activate napari-env
python -m pip install "napari[all]"

run  napari in terminal and GUI popout napari
create new shape layer and tried to rename it

💡 Expected Behavior
No response
🌎 Environment
napari: 0.5.4
Platform: Linux-6.1.0-27-amd64-x86_64-with-glibc2.36
System: Debian GNU/Linux 12 (bookworm)
Python: 3.9.20 | packaged by conda-forge | (main, Sep 30 2024, 17:49:10)  [GCC 13.3.0]
Qt: 5.15.14
PyQt5: 5.15.11
NumPy: 1.26.4
SciPy: 1.13.1
Dask: 2024.8.0
VisPy: 0.14.3
magicgui: 0.9.1
superqt: 0.6.7
in-n-out: 0.2.1
app-model: 0.3.1
psygnal: 0.11.1
npe2: 0.7.7
pydantic: 2.10.2
OpenGL:

GL version:  4.6 (Compatibility Profile) Mesa 22.3.6
MAX_TEXTURE_SIZE: 16384
GL_MAX_3D_TEXTURE_SIZE: 2048

Screens:

screen 1: resolution 1920x1080, scale 1.0

Optional:

numba: 0.60.0
triangle: 20230923
napari-plugin-manager: 0.1.3

Settings path:

/home/liuxiawei/.config/napari/napari-env_d75e59720379a693c12376a2b33ea7e497206041/settings.yaml
Plugins:
napari: 0.5.4 (81 contributions)
napari-console: 0.1.1 (0 contributions)
napari-svg: 0.2.0 (2 contributions)

💡 Additional Context
No response

Wowza! How odd. I can reproduce.
If you double click you get to edit the name, but then when you hit enter it switches back to Shapes again.
Points, Labels, Image all work fine.

And bisect points to... me!
6ba56c8363f0d2f42903f746d87fd1545f2d3dff
😬
Looks like when I changed the complete shape shortcut, it now steals the Enter from the layer list.

well the idea was to match the behavior in Labels--interestingly Labels layer names are editable just fine, while having Enter bound.

I test Shift+Enter  is work. Thanks for your work!


NIFI-3058 Add documentation for ZooKeeper Migrator to Admin Guide

Also, corrected some incorrectly capitalized references to ZooKeeper.

+1, I've gone over the documentation, looks good to me at this point.


Function to revoke access_token

Starting June 30, 2022, Apple requires that users can delete their accounts in an easy way. One recommendation is that the user's access token is revoked as part of the deletion process.
Source: https://developer.apple.com/support/offering-account-deletion-in-your-app
Documentation: https://developer.apple.com/documentation/sign_in_with_apple/revoke_tokens
Can you please add a method to revoke tokens? I tried doing it using php JWT library, but I think it doesn't support ES256 properly.

Hi @aanders77,
please see this example of how to use the new revoke method -> https://github.com/patrickbussmann/oauth2-apple#revoke-code-flow
Thanks for reporting.


Drop support for Spark 1.0-1.2

Considering Spark 2.0 is around the corner and a lot of methods from 1.0 and 1.2 were deprecated and will be removed, in ES-Hadoop 5.0 the support for pre Spark 1.3, in particular Spark SQL, will be dropped.
Unfortunately as Spark 2.0 will introduce breaking changes, it is likely we will still have to use two modules.

Available in master.


Added copilot-icon & google-gemini-icon

Added SVG/PNG copilot-icon & google-gemini-icon

If the owner of this pull requests is not available to rename the requested change. How can I do this instead.


fix dogtags

About the PR

title

Looks great. Thanks for all of the code cleanup you are doing.


Keeping historical packages in the new Ubuntu repositories

Is this a BUG REPORT or FEATURE REQUEST? (leave only one on its own line)
/kind feature
Description
Currently, on openSuseBuild server repos, only the packages from the latest release are installed.  There is no way to go back manually or via packaging tools.  Older packages are gone from the repo forever.   I believe that older podman and build dependencies should be available for downgrading and troubleshooting at least up to the last .0 release.  I.e. if we have 1.7.0, we should be able to go to 1.6.1 if needed.  Or at least the most stable version of 1.6.x should be preserved.   PPA kept other built packages available for download without a limit.

Steps to reproduce the issue:

Check the repo: http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_18.04/
and you will see that podman 1.6.4 is gone and replaced with podman 1.7.0

Describe the results you received:
Podman 1.6.4 is no longer avaialble
Describe the results you expected:
Older podman versions up to the point should be available together with all the build dependencies.

Is there an update on this issue?  Ubuntu 1.8.0 released under testing but 1.7.0 have disappeared.  What prevents one from keeping both versions?

@alitvak69 hi, i had set automation up to delete older builds when newer builds show up, I'll check if OBS does keep older debs if I leave the older packaging sources in there..

so OBS people told me the repos won't keep the prior built debs after a new version is shipped. If it helps, I can keep the packaging sources (dsc + tarball) in there so you can fetch the source and build it if need be.

I think keeping sources will solve the problem for me.  It is easy enough
to build deb based on tarball and dsc.
On Mon, Feb 3, 2020, 2:48 PM Lokesh Mandvekar<EMAIL_ADDRESS>wrote:

so OBS people told me the repos won't keep the prior built debs after a
new version is shipped. If it helps, I can keep the packaging sources (dsc

tarball) in there so you can fetch the source and build it if need be.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/containers/libpod/issues/4937?email_source=notifications&email_token=ABWJN3H5CZB6SJT3NLFPXP3RBB7KXA5CNFSM4KKPWVEKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKVK55A#issuecomment-581611252,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABWJN3AZTGORTPGQB5QW373RBB7KXANCNFSM4KKPWVEA
.

@lsm5 Podman 1.8 had been removed from testing repo.  Neither source not .deb are available.

It looks like 1.7 dissapeared from stable repo on OBS yet again.  No source files either.  Is there at least a way keep sources and dsc in archive subfolder or something?

@lsm5 This is a duplicate of another issue, could you close one of them?

It looks like 1.7 dissapeared from stable repo on OBS yet again. No source files either. Is there at least a way keep sources and dsc in archive subfolder or something?

older files have .old appended. See: https://build.opensuse.org/package/show/devel:kubic:libcontainers:stable/podman . OBS wouldn't let me put stuff in subdirs, so that's why the name change.
Let's talk further in https://github.com/containers/libpod/issues/3924 if anything.


Investigate/resolve cassandra-cpp driver warnings/errors

I think some are due to configuration errors and others are due to CassandraSinkCluster confusing it.

Closing as the only errors I noticed in our Cassandra tests were things we are specifically testing:

USE statements in prepared queries
Batches with sizes over the threshold.

2024-04-10T06:37:19.251566Z  WARN datastax::internal::core::Decoder::decode_warnings: Server-side warning: `USE <keyspace>` with prepared statements is considered to be an anti-pattern due to ambiguity in non-qualified table names. Please consider removing instances of `Session#setKeyspace(<keyspace>)`, `Session#execute("USE <keyspace>")` and `cluster.newSession(<keyspace>)` from your code, and always use fully qualified table names (e.g. <keyspace>.<table>). Keyspace used: test_prepare_statements1, statement keyspace: test_prepare_statements1, statement id: 74a66d4c23e05617be2b5a08ceb9d7da
2024-04-10T06:37:20.028679Z  WARN datastax::internal::core::Decoder::decode_warnings: Server-side warning: Batch for [batch_keyspace.my_table] is of size 51000, exceeding specified threshold of 5120 by 45880.


setIconColor in HasIcon interface

Added the void setIconColor(String iconColor); method to HasIcon Interface.

Travis is giving me weird errors, I didn't touch the files that he's complaining about ;)

Please fix checkstyle errors.  It looks like you are using tab characters instead of spaces.

There are a few more issues relating to style and documentation.  Please check the travis-ci build for more information.

Hey @sjardine dunno what the problem is. It's complaining about headers "There are 8 file(s) with header to update:". What is this about? Thanks
Cheers

Why travis was failing?

It was looking for a specific header.


nix: add package option

Resolves https://github.com/t184256/nix-on-droid/issues/128

Hi, thanks for looking into this.

could you bump copyright years on the affected files? might be silly, but still
nix-on-droid script won't pick the selected version, right? at least I don't see how it would.

Will bump the years in a minute.
nix-on-droid should use the defined nix through https://github.com/t184256/nix-on-droid/pull/129/files#diff-dd4183ac01238a8af6cb39b8e12afd4fc614d11cf15167ce7a9c8712d0c337d3R45

How could I possibly overlook that, I wonder =o

What I'm up to: playing with it by setting it to nixFlakes and trying to evict the old nix from the system entirely. Went down to the single referrer being the generation itself (why, how), but now am unwinding and recovering back from nix-on-droid not liking nixFlakes as its nix.

So there is still a reference to the default nix package despite changing this option? Can you clarify where the reference is exactly?

If only I knew how to check.
Assorted notes so that it's easier for me to retrace:

just setting it to nixFlakes isn't enough, one also needs at least experimental-features = nix-command
after rebuilding a generation with nixFlakes and re-logging in, it loses the channels part of $NIX_PATH, rendering nix-on-droid unusable until one corrects that as well
nix-store --query --referrers lists generation and, oddly enough, channels. channels go away after nix-channel update with a new nix, hasn't figured out how to understand why derivation refers to old nix (dump it as a nar, maybe?)

Found it! It's in activation itself, modules/build/activation.nix:22.

Nice thank you

OK, I haven't dug to the bottom of why $NIX_PATH is the way it is (and stops being the way it is with nixFlakes), but this absolutely doesn't devalue this PR, so, merging. Thank you!


Extension issue

Issue Type: Bug
Extension Name: cmake
Extension Version: 0.0.17
OS Version: Windows_NT x64 10.0.19043
VS Code version: 1.60.1

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

Hi - could you please provide more details of this issue so it can be reviewed


nyc report exit code is 0 even when coverage requirements where not reached

Executing nyc report --lines 100 reports a coverage of only 81.82% for some file, but the exit code of that process is still 0.
It would be very helpful for integration into CI if the exit code would be non-0 in order to quickly abort when detecting coverage below out requirements.

Can be solved by appending && nyc check-coverage --lines 100.

@tp you can also run the initial instrumentation step, with a --check-coverage flag.
nyc --check-coverage --lines=100 mocha test/*.js


Completely different effect when using econml

Hi!
Using dowhy 0.4.0.
First, consider the folowing data and its causal structure:
df = pd.DataFrame({
    'w': np.random.randn(1000)
})

df['t'] = ((df.w<-1) + np.random.binomial(1, 0.1, 1000)).clip(0, 1).astype(bool)
df['y'] = df.w + np.random.normal(df.t, 1)
df['c'] = (df.t - df.y)**2

gml_graph = (
    'graph [directed 1 '
    'node [id 0 label "w"] '
    'node [id 1 label "t"] '
    'node [id 2 label "y"] '
    'node [id 3 label "c"] '
    'edge [source 0 target 1] '
    'edge [source 0 target 2] '
    'edge [source 1 target 2] '
    'edge [source 1 target 3] '
    'edge [source 2 target 3] '

    ']'
)

w is a common confounder,t the treatment, y the outcome and c a collider.
If I use econml's SLearner directly
s = SLearner(overall_model=RandomForestRegressor())
s.fit(df.y, df.t, df[['w']])
s.effect(df[['w']]).mean()

I get something around 1, as expected (look at the formula for y).
However, if I use dowhy and plug the SLearner in:
model = do.CausalModel(
    data=df,
    treatment='t',
    outcome='y',
    graph=gml_graph
)

identified_estimand = model.identify_effect(True)

estimate = model.estimate_effect(
    identified_estimand,
    method_name='backdoor.econml.metalearners.SLearner',
    method_params={
        'init_params':{
            'overall_model': RandomForestRegressor(),
        },
        'fit_params':{}
    }
)

I get something around 0, often even negative.
But it's supposed to be 1, too, right? Or am imissing someting?
Bets regards
Robert

@Garve this is most likely related to the EconML issue: https://github.com/microsoft/EconML/issues/190
EconML metalearners currently use only the effect modifiers X parameter as input, and ignore the confounders/common causes W.
As a temporary fix, can you try adding the effect_modifiers parameter manually. The value of this parameter should include both effect_modifiers and confounders in your graph (only for EconML metalearners).
model = dowhy.CausalModel(
    data=df,
    treatment='t',
    outcome='y',
    graph=gml_graph,
    effect_modifiers=["w"]
)

That should lead to the same estimate. We are working with the EconML team to offer a better solution. That will be updated in DoWhy's new version in a few weeks.

@Garve this is resolved in the latest release v0.5.1. Now DoWhy passes both common_causes and effect_modifiers to all EconML metalearners.


DateRangePicker blinking after select startDate

Hello, there.
I'm  setting up DateRangePicker, but when I select startDate the calendar blinks.

Here's my code
<DateRangePicker
        startDate={this.state.startDate}
        startDateId="startDate"
        endDate={this.state.endDate}
        endDateId="endDate"
        onDatesChange={({ startDate, endDate }) => this.setState({startDate, endDate})}
        focusedInput={this.state.focusedInput}
        onFocusChange={focusedInput => this.setState({focusedInput})}
      />

I have the same issue

I'm having the same issue, anybody knows something about this issue?
Thanks @fillipe-ramos for the tip, that version works perfectly for me.

I'm looking into this.

In case it helps track down the cause of this issue: if you select a start date that isn't within the leftmost month, the calendar re-renders to show that month on the far left. This doesn't happen pre-18.3.1.

Looks like this is something to do with the change of focus between the start date and end date inputs, which happens to be triggered when you select a date. If you simply select the end date input box directly, the same flashing occurs. This doesn't happen in 18.4.0.

Still flickering for me in 18.4.1

There's an open PR for this: https://github.com/airbnb/react-dates/pull/1553

Any updates? It's failing on line max length check.

@mmakarin over by 1 character 🤦♂ just fixed in a new commit, should be fine now!

Any updates?

Check out htis PR: https://github.com/airbnb/react-dates/pull/1553

Still blinking on 20.2.5

@GfxKai Why this issue still tagged as pull request wanted and why #1553 is still doesn't merged?

@EugeneDraitsev please do not open duplicate PRs; it’s unnecessary (maintainers can update abandoned PRs directly) and it adds permanent garbage to the git log.

@ljharb Ok, I closed my PR. Will try to help with tests for SingleDatePickerInput.jsx and comment #1553 with link to changes

This is merged but doesn't seem to be released yet. Any updates on when this will be released?


Pod can not access itself from a cluster IP

Now when pod use cluster ip to access it self, the packet will be dropped. We need to trace where the packet is dropped and modify the flow to let the packet hit itself

when pod access itself form svc, vswitchd will generate theses logs
2019-11-20T08:52:26.175Z|00992|ofproto_dpif_xlate(handler1)|WARN|received packet on unknown port 0 on bridge br-int while processing recirc_id=0x614ff,ct_state=new|trk,ct_zone=14,ct_nw_src=<IP_ADDRESS>,ct_nw_dst=<IP_ADDRESS>,ct_nw_proto=6,ct_tp_src=34790,ct_tp_dst=80,eth,tcp,in_port=733,vlan_tci=0x0000,dl_src=00:00:00:29:83:03,dl_dst=0a:00:00:10:00:17,nw_src=<IP_ADDRESS>,nw_dst=<IP_ADDRESS>,nw_tos=0,nw_ecn=0,nw_ttl=63,tp_src=34790,tp_dst=80,tcp_flags=syn
2019-11-20T08:52:26.175Z|00993|dpif(handler1)|WARN|system@ovs-system: execute ct(commit,zone=14,label=0/0x1),11 failed (Invalid argument) on packet tcp,vlan_tci=0x0000,dl_src=00:00:00:29:83:03,dl_dst=0a:00:00:10:00:17,nw_src=<IP_ADDRESS>,nw_dst=<IP_ADDRESS>,nw_tos=0,nw_ecn=0,nw_ttl=63,tp_src=34790,tp_dst=80,tcp_flags=syn tcp_csum:84c6
 with metadata skb_priority(0),skb_mark(0),ct_state(0x21),ct_zone(0xe),ct_tuple4(src=<IP_ADDRESS>,dst=<IP_ADDRESS>,proto=6,tp_src=34790,tp_dst=80),in_port(11) mtu 0

Seems like that ct commit failed because the dl_src and dl_dst are not equal

One workaround is to add iptables rules in pod network to redirect access to vip to it self,  this can avoid packet going into ovs to do the ct stuffs.
steps to verify
sysctl -w net.ipv4.conf.eth0.route_localnet=1
ip addr add <svc ip> dev eth0
iptables -t nat -I PREROUTING -p <svc protocol> -d <svc ip> --dport <svc port> -j DNAT --to-destination <pod ip>:<pod port>

https://patchwork.ozlabs.org/project/openvswitch/list/?series=153591
we should try this ovn patch to check if the issue still exists

This path based on the new ovn that split from ovs and the code structure changed too much. For stability reason we leave this fix to the release after 1.0


typeof [value] !=='undefined' when the template color is hidden

Thanks for the report, but I can't reproduce this problem, please give me a minimal reproduction template code.

Close because can't reproduce.

Reproduce in this code.
<template>
  <div v-if="typeof {} !== 'object'">
    <input
      v-model="pendingFilename"
      spellcheck="false"
      @keyup.enter="doneAddFile"
      @keyup.esc="cancelAddFile"
      @vnodeMounted="focus"
    />
  </div>
</template>

Haven't inspected in depth yet, you can wrap () to fix for now: v-if="(typeof ...)".

It should a upstream problem, typeof expression can only end with valid characters, see: https://github.com/microsoft/vscode/blob/08d37a85a3fa415a67783ce339c548159d460ef0/extensions/javascript/syntaxes/JavaScript.tmLanguage.json#L3374


Tatar language pack (salvaged PR)

I rebased @usmanovbf 's branch of #21 to latest master, cleaned up a little and changed the build.gradle to incorporate the comments about generating the dictionary via makeDictionary Gradle task.

published to Play-Store and waiting for fdroid: https://gitlab.com/fdroid/fdroiddata/merge_requests/2077


[Migrated] Multiple event triggers generate duplicate copies of the first event trigger defined

Originally from: https://github.com/Miserlou/Zappa/issues/1319 by philvarner
Context
When I define event triggers like the following (contrived from my real usage):
base_stage:
...
  events:
    - function: summary_generator.generate
      event_source:
        arn:  arn:aws:s3:::some-bucket-us-east-2
        events:
          - s3:ObjectCreated:Post
    - function: summary_generator.generate2
      event_source:
        arn:  arn:aws:s3:::some-bucket-us-east-2
        events:
          - s3:ObjectCreated:Put

I get the following output on update:
Removed event summary_generator.generate (['s3:ObjectCreated:Post']).
Removed event summary_generator.generate2 (['s3:ObjectCreated:Put']).
Created s3:ObjectCreated:Post event schedule for summary_generator.generate!
s3:ObjectCreated:Put event schedule for summary_generator.generate2 already exists - Nothing to do here.

However, what actually happens is I get two event triggers defined on the lambda for the first event trigger definition.  The number of event triggers created is equal to the number of event triggers defined (rather than the number of deploys).
This may be caused by my adding the second even definition after the initial deploy.  It may work correctly if both events are defined when the zappa project is first deployed, but I have not tested that scenario.
Expected Behavior
Two event triggers are created according to my definitions.
Actual Behavior
Two event triggers are created, both matching the first event trigger definition.
Possible Fix
I haven't debugged this very far, but my guess is that the problem lies in the logic in
zappa.utilitites.add_event_source, where there's a comment "# TODO: Detect changes in config and refine exists algorithm".
Steps to Reproduce
See above example of event definitions.
Your Environment

Zappa version used: zappa 0.45.1
Operating System and Python version: Mac, Python 3.6
The output of pip freeze:
argcomplete==1.9.2
asn1crypto==0.24.0
attrs==17.3.0
aws-xray-sdk==0.95
base58==0.2.4
boto==2.48.0
boto3==1.5.6
botocore==1.8.20
cairocffi==0.8.0
CairoSVG==2.1.2
certifi==2017.11.5
cffi==1.11.2
cfn-flip==1.0.0
chardet==3.0.4
click==6.7
cookies==2.2.1
coverage==4.4.2
credstash==1.14.0
cryptography==2.0.3
cssselect2==0.2.1
defusedxml==0.5.0
docker==2.7.0
docker-pycreds==0.2.1
docutils==0.14
durationpy==0.5
future==0.16.0
hjson==3.0.1
html5lib==1.0.1
idna==2.6
invoke==0.22.0
Jinja2==2.10
jmespath==0.9.3
jsondiff==1.1.1
jsonpickle==0.9.5
kappa==0.6.0
lambda-packages==0.19.0
MarkupSafe==1.0
mock==2.0.0
moto==1.1.25
olefile==0.44
pbr==3.1.1
pendulum==1.3.2
Pillow==4.3.0
placebo==0.8.1
pluggy==0.6.0
py==1.5.2
pyaml==17.12.1
pycodestyle==2.3.1
pycparser==2.18
PyPDF2==1.26.0
Pyphen==0.9.4
pytest==3.3.1
pytest-cov==2.5.1
python-dateutil==2.6.1
python-slugify==1.2.4
pytz==2017.3
pytzdata==2017.3.1
PyYAML==3.12
reportlab==3.4.0
requests==2.18.4
requests-mock==1.4.0
s3transfer==0.1.12
six==1.11.0
timeout-decorator==0.4.0
tinycss2==0.6.1
toml==0.9.4
tqdm==4.19.1
troposphere==2.1.2
tzlocal==1.5.1
Unidecode==0.4.21
urllib3==1.22
webencodings==0.5.1
websocket-client==0.45.0
Werkzeug==0.12
wrapt==1.10.11
wsgi-request-logger==0.4.6
xmltodict==0.11.0
zappa==0.45.1
Link to your project (optional): n/a
Your zappa_settings.py: example above

Hello, is there any update on this? Seems like it still cant have multiple event notification for a single bucket with different prefixes.
s3:ObjectCreated:Put event schedule for test-job already exists - Nothing to do here.


Change over to use Netty HTTP server by default

Using the Netty HTTP server is a choice you can make. By default we'll stick with the current implementation of the DefaultHttpServer


Update package.json so that require() works

Would like to use this with webpack

Coverage remained the same at 93.701% when pulling 7309728c477b3c5c03028e90ff963f3c6e5e5014 on fingerfoodstudios:master into 312e9ac2d1af0a6275f32012ecafd58058ee5961 on Leaflet:master.

Hi, I installed leaflet-toolbar via npm today, but this "main" is not there in the package.json. :/

It's works when using https url inside the package.json. Maybe the last version has not been plublish on npm.
Quote from https://www.npmjs.com/package/leaflet-toolbar: published 2 years ago
As a workaround you can put this inside your dependencies hash:
"leaflet-toolbar": "git+https://github.com/Leaflet/Leaflet.toolbar.git",


Republish with updated NPM

The version of module which is currently published in npm registry appears to be affected by this npm bug:
https://github.com/npm/npm/issues/16734
Which prevents the application using this module (indirectly) from being deployed on Amazon AWS:
https://github.com/aws/aws-cli/issues/2639
Republishing the module using newer (or stable) version of npm should resolve the issue.

Installed the latest Node.js LTS and npm and republished. Hope this fixes the issue for you.
node -v
v8.10.0

npm -v
5.7.1

Published as 3.1.5.


Update http4s-blaze-client to 0.23.13

Updates org.http4s:http4s-blaze-client from 0.23.6 to 0.23.13.
GitHub Release Notes
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.http4s", artifactId = "http4s-blaze-client" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "org.http4s", artifactId = "http4s-blaze-client" }
}]

labels: library-update, early-semver-minor, semver-spec-patch, commit-count:1

Superseded by #445.


Variable declaration with scoped generic type parsed as binary expression

Problem description
The variable declaration util.List<X> x = null; gets parsed as nested binary expressions with operators <, > and =, but it should be a "local variable declaration".
This worked with v0.20.0 but does not anymore with v0.20.1. Also, it works if the type is not scoped, e.g. List<x> x = null;.
class X {
	void foo() {
    	util.List<X> x = null;
    }
}

git bisect tells me that b042baa283d4e840361fd90d69f751606d42166c introduces the problem.

the relevant change to the grammar must be this then: https://github.com/tree-sitter/tree-sitter-java/pull/125


Add more tests

This PR doesn't change any logic in the main Project. I've renamed the EditorUtils to TestUtils to make it more clear that they are not to be used in the main project since I'm using some reflection in there.
The main functionality of TestUtils is the ClearScene method. I try to call this in most TearDown and SetUp methods in each test. The reason behind this is that unity does not delete objects in the test scene after it ran them and some tests rely on there being no previous objects.
For example this test:
        [Test]
        public void GetNullCameraFromCache()
        {
            Assert.That(CameraCache.Main == null, Is.True);
        }

If some other test created a camera before this one ran it would not return null and make my test return false results.
Another important functionality is being able to call Awake, Start and Update methods since they will not be called when a script is instantiated in the test scene.
For example, I create a cube in front of the camera that implements IFocusable in the scene and then simulates 1 frame with the GazeManager by calling its update and check if the cube received the event.
        [Test]
        public void FocusChangeFullIntegration()
        {
            CreateCubeTestHandler().CallAwake().CallStart();

            GazeManager.Instance.gameObject.CallUpdate();

            Assert.That(receivedEventSources.Count, Is.EqualTo(1));
        }

I've added tests for CameraCache, ActionExtensions, EnsureComponent, almost all cases in InputManager.HandleEvent and that one full integration test with the GazeManager you see above.
Another thing to keep in mind when using NUnit in combination with Unity is that it comes with the same issues when comparing unity objects to null. Is.Null will not return the same result as gameObject == null. I've tried making a custom constraint for this but I haven't figured out a good name yet and also had some issues getting Not to work. Maybe I'll just add them as TestUtils.UnityNull and TestUtils.UnityNotNull.

@Zod-,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by Microsoft. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

This is awesome @Zod-, you rock.

One last thing @Zod-, I believe there's a Tests Readme document.  Could you update that document with some of your PR comments that describes it's usage?
Thanks.


[MXAPPS-1048] Clarify dependency on OpenCV in CNN Visualization tutorial.

Description
Update the CNN Visualization tutorial with a prerequisites section that spells out the need to install OpenCV in response to confusion with the notebook dependencies.
Minor changes to language as well.
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[x] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant JIRA issue created (except PRs with tiny changes)
[x] Changes are complete (i.e. I finished coding on this PR)

@mxnet-label-bot add [Doc, pr-awaiting-review]
@aaronmarkham


Front-end Map

Using https://developer.here.com/

Get map connected to search bar. Put in a zipcode/city and get boundary in map. Link map to weather (https://openweathermap.org/api) and COVID data (https://covidtracking.com/data/api)

Using https://developer.here.com/

Going to use Google Maps API right now due to time constraints. Hopefully, we can switch to HERE in the future.


test(sdk-ts): coverage reports in CI and local development

Start here: https://about.codecov.io/blog/measuring-typescript-code-coverage-with-jest-and-github-actions/

This was completed by the addition of the --coverage flag to yarn test


Feature Request: Discord instance

It woult be nice if I can specify the discord instance at core init for testing: https://discord.com/developers/docs/game-sdk/sdk-starter-guide#testing-locally-with-two-clients

Is this referring to the current master or the java-impl branch?
In the native version that is already possible by setting the environment variable.
In the Java implementation that still needs to be added.

I need it in Java

IMO it would also be useful to list all available Discord instances (so user could choose one of them for example). Do you think it would be possible? If it is possible, maybe it would possible to get name (maybe even icon) of certain Discord instance too? c:

On Windows, I have no idea, because I don't know if there is a way to check if a socket exists (besides connecting to it).
On Linux, you can use this code to determine all possible instances. I think I will also add a way to specify the path to the socket without using environment variables, so you could simply pass the path to the library.
Determining name and icon seems difficult. If you just want to know if it is a Snap/Flatpak/Host installation, you can easily deduce that from the path on Linux (and on Windows it is irrelevant).
Determining if it is Release/Beta/Canary is more tricky... On Linux, you could simply use fuser to determine the PID of the Discord process (and then deduce more information from that).
I think providing a portable way of that is very difficult, and I think it is outside the scope of this library (as the original Game SDK also does not offer it). Overall, this feature is more meant as a way of assisting developers rather than to be used by end-users.

Okay, thank you so much for detailed answer!


Added test_match_all_forecasts_4_1 and test_match_all_forecasts_4_2

Added two new unit tests to verify the following behaviors:
4_1) When a forecast JSON includes fields that require a flux threshold specification, but do not, the forecast is labeled "CORRUPT", and a flux threshold from the observation JSON is adopted by the forecast/SPHINX object.
4_2) When a forecast JSON does not include any fields that require a flux threshold specification, a flux threshold from the observation JSON is adopted by the forecast/SPHINX object.
Note that one deficiency of these tests is that they do not consider the case where there are multiple flux thresholds associated with a single energy threshold in the observation JSON.

This PR addresses Issue #129.


How is the umemployment trajectory in India

Hello @souvikg544, I would like to work on this issue

Sure @Anubhav-Goyal01


GEODE-8240: Back-Port to 1.12

Back-port to support/1.12 branch, of https://github.com/apache/geode/pull/5273 fix for GEODE-8240
I used git cherry-pick -x bfe1ca113124ea958dc02dd9be90cdb0aabe5c4d
In resolving conflicts I mostly accepted all non-conflicting changes from 1.12. An exception was that in many places where we were using version.compareTo(other) < 0 or version.compareTo(other) >= 0, I accepted the changes from the cherry-pick commit to replace those with version.isOlderThan(other) or version.isNotOlderThan(other). Those changes were all made by @pivotal-jbarrett on develop and they improve readability.
~The other change I had to make was to fix the equals(other) method on InternalDistributedMember. That method didn't work when comparing a InternalDistributedMember to a MemberIdentifier. As a result the 1.12 version of GMSJoinLeaveJUnitTest was failing. Fixing equals(other) fixed the test. The alternative would have been a lot of surgery on that test (mocking.). Rather than perturb that test further, I left it alone and fixed IDM.equals(other).~
I did not change InternalDistributedMember.equals(other)—instead, I pulled in a couple minor changes to GMSJoinLeaveJUnitTest from the develop branch, to get that test running with the (wrong/unchanged) IDM.equals(other) functionality. Since this ticket is not about fixing IDM this was the better way to go.
This is a first try at a back port of GEODE-8240 to support/1.12 to get a CI run.

[x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[x] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[x] Is your initial contribution a single, squashed commit?

[x] Does gradlew build run cleanly?

[x] Have you written or updated unit tests to verify your changes?

I trust this backport is pretty similar to the GEODE-8240 fix on develop and your PR checks and testing are good.
I am curious what the implications are for users currently running Geode 1.12.0. Should we advise that they upgrade to 1.12.1 to get this fix before attempting to upgrade to 1.13.0?

This fix will be ported to support/1.13 next. So 1.12.x users will be able to upgrade to the soon-to-be-released 1.13.0 version directly.

What about upgrades from 1.11.0 to 1.12.0 or 1.11.0 to 1.12.1?

The bug exists in the 1.12 line before this PR. I think this PR will go into a 1.12.1 or 1.12.2?
If that's right, then a 1.11.0 to 1.12.0 upgrade will see the bug, and a 1.11.0 to 1.12.1 (or whatever release this PR goes into) will not see the bug.
Incidentally, I don't really know what versions of 1.12 actually exist after 1.12.0. I see a bunch of four-part version numbers here:

I don't understand those four-part version numbers.
But I can say that a 1.11.x upgrade to a 1.12.x version that has this fix, will work and the bug will be gone.

In general does this bug only affect upgrades between minors, or between patch versions too?

My understanding is that Geode usually does not change Version.CURRENT between patch releases. On the other hand, I think I have heard that it has been done at least once.
If you upgrade from one patch version to another patch version in the same line and Version.CURRENT doesn't change then you won't see this bug.
If you upgrade from one patch version to another patch version in the same line and Version.CURRENT does change then you will see this bug.

I don't think InternalDistributedMember should be changed in order to make this new unit test pass. Instead, the unit test should be changed to use MemberIdentifierImplFactory and MemberIdentifierImpl. That's what the test is doing in the develop branch. That was done a while ago & it just didn't make it over to the support branch.

Right you are! I undid my change to IDM.equals(other) in favor of small changes to GMSJoinLeaveJUnitTest.
Good advice!

Also, shouldn't this be ported to support/1.13 before it's ported to support/1.12?

Ooh yeah. I'll go do that…

OK after https://github.com/apache/geode/pull/5336 is merged to 1.13, I'll merge this one to 1.12


Devise RoutingError: Unwanted Scope

I am on rails3.0.9. I have a navigation menu partial template in /shared folder, which includes a link to edit user profile. I used urlHelper method current_page? to check every menu item against current request's controller and action for highlighting the current menu item via css. But when clicking the user profile link, it renders error as below:
ActionController::RoutingError in Users/registrations#edit
No route matches {:controller=>"users/projects", :actoin=>:index}

here is the route
devise_for :users, :controllers => {::registrations => 'users/registrations'} do
  get 'profile', :to => "users/registrations#edit", :as=>'profile'
end

resources projects, plans, challenges

here is the navigation menu
/shared/_navigation.html.erb

      <%= link_to "Projects", projects_path %>

        <%= link_to "All Projects",projects_path, :id => current_page?(:controller=>'projects', :action=>'index') ? "active" : "" %>
        <%= link_to "Plans", plans_path, :id => current_page?(:controller=>'plans') ? "active" : "" %>
        <%= link_to "Challenges", challenges_path, :id => current_page?(:controller=>'challenges') ? "active" : "" %>

      <%= link_to "My Profile", profile_path %>

        <%= link_to "Edit account", profile_path, :id => current_page?(:controller=>'users/registrations', :action=>'edit') ? "active" : ""  %>
        <%= link_to "Sign Out", destroy_user_session_path, :method => 'delete' %>

I don't get why it added "users" scope to projects controller automatically. How to correct it?

more strange is it works fine if removing all the current_page? check.....

This is a rails issue that appears over and over again. Rails by default does nested controller routes lookup, you need to pass :controller => "/projects" if you want to get the root one.

Great thanks, josevalim!


feat: Show description by default with higher z-index and lower background opacity

This PR revises how datavzrd shows the description field.

This probably fixes #360 for now. @johanneskoester do we still want to have a mechanism as described in #327?


define.amd?

Hi, I'm using loglevel with emberjs, and It doesn't work, because of this: if (typeof define === 'function' && define.amd) {
I'm wondering why you are evaluating define.amd, is it really necessary? Without this validation, it works in ember. Thanks!

That is the canonical way of testing for an AMD compatible module loader. If Ember's not exposing that, it's because it's not AMD-compatible (or at least, it's not trying to be), so loglevel shouldn't try and define itself as an AMD module. This might not work for your setup as-is, but it's definitely correct behaviour.
I don't know that much about Ember generally; when I've used it, it's been with ES6 module compilation, and using anything else has either required it be an ES6 module, or required that you make it global. What's your setup? What module loader/bundling are you using?


[Icon Request] Magnet

Icon Request

Icon name: Magnet
Use case: Grid Snapping
Screenshots of similar icons:
 Icon in Blender

Additionally separate icons displaying a grid and a magnet combined could make sense - perhaps even for rotation snapping?

Magnet seems nice to have, here are a few proposals. Not quite sure about an icon depicting a grid+magnet, that seems a bit too detailed and too specific.

I think no. 4 looks the best

@SnoutBug Nice request.
@karsa-mistmere I agree with @SnoutBug the 4th one looks the best I think.

Agree with the last one.

Thanks for the feedback, I've created a PR.


Font not displaying properly.

Describe the bug
Letters are cut off at the top of artist names in the playlist.

General information:

Distribution: Xubuntu 20.04
Installation method: installed from Flathub
Version: 0.3.0
Device used: Desktop

Additional context
The font I am using is: Liberation Sans Regular 9

Hi! Have you observed this issue in any other Gtk4/libadwaita apps? This is probably something upstream, we're not doing anything out of the ordinary here, just showing a label

Hi! Have you observed this issue in any other Gtk4/libadwaita apps?

Yes, in the time since I commented on this issue I've actually seen this also in other places, like the GNOME Settings.
I kind of forgot about this issue, or else I would have mentioned this earlier, sorry.
So it seems like my comment is not connected to the original issue description by @Art-2.


Fix integer overflow on Windows in TensorRepresentation.flatten_tensor

Description
Numpy's default integer type on Windows is int32. The implementation in flatten_tensor explicitly converts Python integers into int64, but in on place it does it after the damage has been done on Windows.
On Windows, np.prod returns an int32 when given a Python tuple of ints, but can be directed to work with int64 instead. This prevents an integer overflow for e.g. np.prod((60000, 60000)), which returns a negative number on Windows. Setting the dtype for np.prod explicitly fixes that.
Type of change

[ ] New feature (backwards compatible)
[ ] New feature (breaking API changes)
[X] Bug fix
[ ] Other (Documentation, CI, ...)

Contribution checklist

[ ] Add our license to new files.
[ ] Check that your code adheres to our coding style.
[ ] Write unittests.
[ ] Run the unittests and check that they’re passing.
[ ] Run the benchmarks to make sure your change doesn’t introduce a regression.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.10 out of 11 committers have signed the CLA.:white_check_mark: tschm:white_check_mark: SteveDiamond:white_check_mark: PTNobel:white_check_mark: onlyblackstars:white_check_mark: yuval-nextsilicon:white_check_mark: sunnygurm:white_check_mark: arvoelke:white_check_mark: aszekMosek:white_check_mark: phschiele:white_check_mark: ghackebeil:x: sven-oxionicsYou have signed the CLA already but the status is still pending? Let us recheck it.

I don't know if it is related, but when I try to run solve() on an SDP I get an int32 overflow as well:
 ===============================================================================
                                     CVXPY
                                     v1.5.2
===============================================================================
(CVXPY) Jul 11 02:43:15 PM: Your problem has 50400 variables, 76559 constraints, and 0 parameters.
(CVXPY) Jul 11 02:43:15 PM: It is compliant with the following grammars: DCP, DQCP
(CVXPY) Jul 11 02:43:15 PM: (If you need to solve this problem multiple times, but with different data, consider using parameters.)
(CVXPY) Jul 11 02:43:15 PM: CVXPY will first compile your problem; then, it will invoke a numerical solver to obtain a solution.
(CVXPY) Jul 11 02:43:15 PM: Your problem is compiled with the CPP canonicalization backend.
-------------------------------------------------------------------------------
                                  Compilation
-------------------------------------------------------------------------------
(CVXPY) Jul 11 02:43:16 PM: Compiling problem (target solver=MOSEK).
(CVXPY) Jul 11 02:43:16 PM: Reduction chain: Dcp2Cone -> CvxAttr2Constr -> ConeMatrixStuffing -> MOSEK
(CVXPY) Jul 11 02:43:16 PM: Applying reduction Dcp2Cone
(CVXPY) Jul 11 02:43:16 PM: Applying reduction CvxAttr2Constr
(CVXPY) Jul 11 02:43:16 PM: Applying reduction ConeMatrixStuffing
(CVXPY) Jul 11 02:43:21 PM: Applying reduction MOSEK
Traceback (most recent call last):
  File "/Users/myuser/dev/myproject/mycode.py", line 136, in <module>
    elapsed = timeit.timeit("solve()", globals=globals(), number=rep_count)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/timeit.py", line 233, in timeit
    return Timer(stmt, setup, timer, globals).timeit(number)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/timeit.py", line 177, in timeit
    timing = self.inner(it, self.timer)
  File "<timeit-src>", line 6, in inner
  File "/Users/myuser/dev/myproject/mycode.py", line 134, in solve
    prob.solve(eps=epsilon, solver=solver, verbose=True)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/problems/problem.py", line 503, in solve
    return solve_func(self, *args, **kwargs)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/problems/problem.py", line 1073, in _solve
    data, solving_chain, inverse_data = self.get_problem_data(
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/problems/problem.py", line 696, in get_problem_data
    data, inverse_data = solving_chain.apply(self, verbose)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/reductions/chain.py", line 76, in apply
    problem, inv = r.apply(problem)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/reductions/solvers/conic_solvers/mosek_conif.py", line 235, in apply
    problem = self.format_constraints(problem, self.EXP_CONE_ORDER)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/reductions/solvers/conic_solvers/conic_solver.py", line 264, in format_constraints
    unspecified, remainder = divmod(problem.A.shape[0] *
OverflowError: Python integer<PHONE_NUMBER> out of bounds for int32

Hey @mkdeak this issue should be fixed in the master version of cvxpy.
Please try to install from source (pip install -e .), or you can wait for the next release.

Thanks, @Transurgeon. Indeed, running
pip3 uninstall cvxpy
pip3 install git+https://github.com/cvxpy/cvxpy

fixed that specific overflow. However, another one popped up:
===============================================================================
                                     CVXPY
                            v1.6.0.dev0+113.09f9a37
===============================================================================
(CVXPY) Jul 12 10:57:27 AM: Your problem has 180000 variables, 271499 constraints, and 0 parameters.
(CVXPY) Jul 12 10:57:27 AM: It is compliant with the following grammars: DCP, DQCP
(CVXPY) Jul 12 10:57:27 AM: (If you need to solve this problem multiple times, but with different data, consider using parameters.)
(CVXPY) Jul 12 10:57:27 AM: CVXPY will first compile your problem; then, it will invoke a numerical solver to obtain a solution.
(CVXPY) Jul 12 10:57:27 AM: Your problem is compiled with the CPP canonicalization backend.
-------------------------------------------------------------------------------
                                  Compilation
-------------------------------------------------------------------------------
(CVXPY) Jul 12 10:57:27 AM: Compiling problem (target solver=MOSEK).
(CVXPY) Jul 12 10:57:27 AM: Reduction chain: Dcp2Cone -> CvxAttr2Constr -> ConeMatrixStuffing -> MOSEK
(CVXPY) Jul 12 10:57:27 AM: Applying reduction Dcp2Cone
(CVXPY) Jul 12 10:57:28 AM: Applying reduction CvxAttr2Constr
(CVXPY) Jul 12 10:57:28 AM: Applying reduction ConeMatrixStuffing
(CVXPY) Jul 12 10:58:10 AM: Applying reduction MOSEK
Traceback (most recent call last):
  File "/Users/myuser/dev/myproject/mycode.py", line 132, in <module>
    elapsed = timeit.timeit("solve()", globals=globals(), number=rep_count)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/timeit.py", line 233, in timeit
    return Timer(stmt, setup, timer, globals).timeit(number)
  File "/Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/timeit.py", line 177, in timeit
    timing = self.inner(it, self.timer)
  File "<timeit-src>", line 6, in inner
  File "/Users/myuser/dev/myproject/mycode.py", line 130, in solve
    prob.solve(eps=epsilon, solver=solver, verbose=True)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/problems/problem.py", line 573, in solve
    return solve_func(self, *args, **kwargs)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/problems/problem.py", line 1143, in _solve
    data, solving_chain, inverse_data = self.get_problem_data(
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/problems/problem.py", line 766, in get_problem_data
    data, inverse_data = solving_chain.apply(self, verbose)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/reductions/chain.py", line 76, in apply
    problem, inv = r.apply(problem)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/reductions/solvers/conic_solvers/mosek_conif.py", line 239, in apply
    data, inv_data = Dualize.apply(problem)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/reductions/cone2cone/affine2direct.py", line 96, in apply
    c, d, A, b = problem.apply_parameters()
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/reductions/dcp2cone/cone_matrix_stuffing.py", line 201, in apply_parameters
    self.reduced_A.cache(keep_zeros)
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/reductions/utilities.py", line 141, in cache
    canonInterface.reduce_problem_data_tensor(
  File "/Users/myuser/Library/Python/3.9/lib/python/site-packages/cvxpy/cvxcore/python/canonInterface.py", line 130, in reduce_problem_data_tensor
    n_constr = A.shape[0] // (n_cols)
OverflowError: Python integer<PHONE_NUMBER>9 out of bounds for int32


[Feature] Custom messages

Add a possibility to use custom share texts for email (and subject!), twitter etc.
Only possibility to change it now is to modify plugin directly.

Also add a possibility for custom URL for Twitter share.

In this fork of SelectionMenu you can put anything you want in the menu.


nanoc check --list not listing all available checks

Summary
If I run bundle exec nanoc check --list, nanoc does not list all available checks, although they are executed when using --all or calling them by name.
Steps to reproduce

Create fresh nanoc site
Run bundle exec nanoc check --list

I have created a demo repository for convenience.
Expected behavior
All available checks are listed.
Actual behavior
Some checks (e.g. the HTML and CSS checks) are not displayed, although there are some empty lines.
Loading site… done
Available checks:

  external_links
  internal_links
  mixed_content
  stale

Details
Running nanoc version 4.2.4, Ruby 2.3.1 on linux.

I thing that it is related to another issue: when running nanoc check -a the output looks like:
Loading site… done
  Running check …                 ok
  Running check external_links…   error
  Running check …                 ok
  Running check internal_links…   ok
  Running check stale…            ok
  Running check mixed_content…    ok
Issues found!
<...>

Fixed in #930. Thanks for reporting!

Output of nanoc check --list didn't change in Nanoc 4.3.0, nanoc check --allnow chrashes at third check:
Loading site… done
  Running check …                 ok
  Running check external_links…   error
  Running check …
Captain! We’ve been hit!

Message:

Net::HTTPRetriableError: 302 "Found"

Compilation stack:

  (empty)

Stack trace:

  0. /usr/lib/ruby/2.3.0/net/http/response.rb:120:in `error!'
  1. /usr/lib/ruby/2.3.0/net/http/response.rb:129:in `value'
  2. /home/anton/.gem/ruby/2.3.0/gems/w3c_validators-1.2/lib/w3c_validators/validator.rb:88:in `send_request'
  3. /home/anton/.gem/ruby/2.3.0/gems/w3c_validators-1.2/lib/w3c_validators/validator.rb:85:in `send_request'
  4. /home/anton/.gem/ruby/2.3.0/gems/w3c_validators-1.2/lib/w3c_validators/markup_validator.rb:131:in `validate'
  5. /home/anton/.gem/ruby/2.3.0/gems/w3c_validators-1.2/lib/w3c_validators/markup_validator.rb:117:in `validate_file'
  6. /home/anton/.gem/ruby/2.3.0/gems/nanoc-4.3.0/lib/nanoc/extra/checking/checks/w3c_validator.rb:8:in `block in run'
  7. /home/anton/.gem/ruby/2.3.0/gems/nanoc-4.3.0/lib/nanoc/extra/checking/checks/w3c_validator.rb:7:in `each'
  8. /home/anton/.gem/ruby/2.3.0/gems/nanoc-4.3.0/lib/nanoc/extra/checking/checks/w3c_validator.rb:7:in `run'
  9. /home/anton/.gem/ruby/2.3.0/gems/nanoc-4.3.0/lib/nanoc/extra/checking/runner.rb:120:in `block in run_checks'
  ... 20 more lines omitted. See full crash log for details.

If you believe this is a bug in Nanoc, please do report it at
-> https://github.com/nanoc/nanoc/issues/new <-

A detailed crash log has been written to ./crash.log.

Request re-open.

I can confirm the checks still not showing up correctly, and I get the same error as above when running the html check.
Additionally, the css check is failing in a similar way. I was already getting this error before the update to 4.3, but I assumed it was caused by something I did wrong.
I noticed that both of these errors appear to come from the w3c_validators gem, so maybe this is not a nanoc problem?

This’ll end up in 4.3.1; I only made the fix after releasing 4.3.0.

This is now released in 4.3.1.

@anton-tsyganenko Sorry—I did not see that you indicated a separate issue. I’ve created a new issue for the problem you mentioned: #943.


.unwrap() on file with all UTF8 chars

Looks like avg_record_len isn't getting populated for this file, causing unwrap() to fail
https://github.com/jqnatividad/qsv-sniffer/blob/master/src/sniffer.rs#L166
thread 'main' panicked at 'called `Option::unwrap()` on a `None` value',  qsv-sniffer-0.8.1/src/sniffer.rs:166:49

emojis.csv

Thanks for the report @gschoeni .  Will look into it...


Generic Docker image

Is there a generic docker image available that doesn't require HA supervisor?  I'm running Home Assistant in a docker, making addons not usable.   Thanks

Yes there is now, see:
Docker hub: fireboard2mqtt
Github: gordlea/fireboard2mqtt


Build error when installing in a conda environment

Instructions To Reproduce the 🐛 Bug:
I'm trying to build vrs in a conda environment on Ubuntu 20.04.2 on a machine that I don't have root access to. I'm also not very familiar with cmake or ninja.

Full runnable code or full changes you made:

None

What exact command you run:

I had to install several dependencies via conda rather than apt-get:
conda install -c conda-forge libjpeg-turbo xxhash cereal fmt portaudio

then I set $LIB and $INCLUDE so that cmake could find these packages:
export LIB=$LIB:$CONDA_PREFIX/lib
export INCLUDE=$INCLUDE:$CONDA_PREFIX/include

cmake then runs without error:
cmake -S . -B _build '-GCodeBlocks - Ninja'

(Notably this fails about failing to find headers/libraries if I don't set $INCLUDE/$LIB as above)
However trying to build with ninja fails:
cd _build
ninja all

It claims that it can't find xxhash.h and fmt/format.h (see full log below) despite cmake finding those files on the previous step; I can also see the headers installed via conda here:
ls $CONDA_PREFIX/include/xxhash.h
ls $CONDA_PREFIX/include/fmt/format.h

I suspect that somehow cmake is not propagating these header paths to ninja, but I don't know enough about how cmake an ninja work to fix it myself.

Full logs or other relevant observations:

Output from cmake:
-- The CXX compiler identification is GNU 9.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- CMAKE_CXX_COMPILER: /usr/bin/c++
-- CMAKE_CXX_COMPILER_VERSION: 9.3.0
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.71.0/BoostConfig.cmake (found version "1.71.0") found components: filesystem chrono date_time system thread
-- Found Lz4: /private/home/jcjohns/.conda/envs/arnerf/lib/liblz4.so
-- Found Zstd: /private/home/jcjohns/.conda/envs/arnerf/lib/libzstd.so
-- Found xxHash: /private/home/jcjohns/.conda/envs/arnerf/lib/libxxhash.so
-- Found ZLIB: /private/home/jcjohns/.conda/envs/arnerf/lib/libz.so (found version "1.2.12")
-- Found PNG: /private/home/jcjohns/.conda/envs/arnerf/lib/libpng.so (found version "1.6.37")
-- Found JPEG: /private/home/jcjohns/.conda/envs/arnerf/lib/libjpeg.so (found version "80")
-- Found TurboJpeg: /private/home/jcjohns/.conda/envs/arnerf/lib/libturbojpeg.so
-- Found GTest: /usr/lib/x86_64-linux-gnu/libgtest.a
-- Found Qt5, including vrsplayer target
-- Found PortAudio: /private/home/jcjohns/.conda/envs/arnerf/lib/libportaudio.so
-- /private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/Pybind11.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/VrsBindings.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/VrsBindings.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/AsyncVRSReader.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/AsyncVRSReader.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/FactoryHelper.hpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/FilteredFileReader.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/FilteredFileReader.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/MultiVRSReader.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/MultiVRSReader.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/Reader.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/Reader.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/VRSReader.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/reader/VRSReader.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/PyBuffer.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/PyBuffer.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/PyExceptions.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/PyExceptions.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/PyRecord.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/PyRecord.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/PyUtils.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/PyUtils.h;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/Utils.cpp;/private/home/jcjohns/code/vrs/pyvrs/vrs_bindings/utils/Utils.h
-- Found PythonInterp: /private/home/jcjohns/.conda/envs/arnerf/bin/python (found version "3.8.8")
-- Found PythonLibs: /private/home/jcjohns/.conda/envs/arnerf/lib/libpython3.8.so
-- Performing Test HAS_FLTO
-- Performing Test HAS_FLTO - Success
-- Found pybind11: /private/home/jcjohns/.conda/envs/arnerf/include (found version "2.9.2")
-- Configuring done
-- Generating done
-- Build files have been written to: /private/home/jcjohns/code/vrs/_build

Output from ninja all
[5/82] Building CXX object vrs/utils/CMakeFiles/test_vrs_utils.dir/test/PixelFrameTest.cpp.o
FAILED: vrs/utils/CMakeFiles/test_vrs_utils.dir/test/PixelFrameTest.cpp.o
/usr/bin/c++  -DOSS_BUILD_MODE -I../ -I../vrs/oss -O3 -DNDEBUG -fPIE   -std=c++17 -MD -MT vrs/utils/CMakeFiles/test_vrs_utils.dir/test/PixelFrameTest.cpp.o -MF vrs/utils/CMakeFiles/test_vrs_utils.dir/test/PixelFrameTest.cpp.o.d -o vrs/utils/CMakeFiles/test_vrs_utils.dir/test/PixelFrameTest.cpp.o -c ../vrs/utils/test/PixelFrameTest.cpp
In file included from ../vrs/RecordReaders.h:21,
                 from ../vrs/RecordFileReader.h:33,
                 from ../vrs/utils/test/PixelFrameTest.cpp:24:
../vrs/ErrorCode.h:22:10: fatal error: fmt/format.h: No such file or directory
   22 | #include <fmt/format.h>
      |          ^~~~~~~~~~~~~~
compilation terminated.
[6/82] Building CXX object vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FrameRateEstimatorTest.cpp.o
FAILED: vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FrameRateEstimatorTest.cpp.o
/usr/bin/c++  -DOSS_BUILD_MODE -I../ -I../vrs/oss -O3 -DNDEBUG -fPIE   -std=c++17 -MD -MT vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FrameRateEstimatorTest.cpp.o -MF vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FrameRateEstimatorTest.cpp.o.d -o vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FrameRateEstimatorTest.cpp.o -c ../vrs/utils/test/FrameRateEstimatorTest.cpp
In file included from ../vrs/RecordReaders.h:21,
                 from ../vrs/RecordFileReader.h:33,
                 from ../vrs/utils/FilteredFileReader.h:27,
                 from ../vrs/utils/test/FrameRateEstimatorTest.cpp:22:
../vrs/ErrorCode.h:22:10: fatal error: fmt/format.h: No such file or directory
   22 | #include <fmt/format.h>
      |          ^~~~~~~~~~~~~~
compilation terminated.
[7/82] Building CXX object vrs/utils/xxhash/CMakeFiles/test_vrs_utils_xxhash.dir/test/xxhashTest.cpp.o
FAILED: vrs/utils/xxhash/CMakeFiles/test_vrs_utils_xxhash.dir/test/xxhashTest.cpp.o
/usr/bin/c++   -I../ -O3 -DNDEBUG -fPIE   -std=c++17 -MD -MT vrs/utils/xxhash/CMakeFiles/test_vrs_utils_xxhash.dir/test/xxhashTest.cpp.o -MF vrs/utils/xxhash/CMakeFiles/test_vrs_utils_xxhash.dir/test/xxhashTest.cpp.o.d -o vrs/utils/xxhash/CMakeFiles/test_vrs_utils_xxhash.dir/test/xxhashTest.cpp.o -c ../vrs/utils/xxhash/test/xxhashTest.cpp
In file included from ../vrs/utils/xxhash/test/xxhashTest.cpp:21:
../vrs/utils/xxhash/xxhash.h:21:10: fatal error: xxhash.h: No such file or directory
   21 | #include <xxhash.h>
      |          ^~~~~~~~~~
compilation terminated.
[9/82] Building CXX object vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FilteredFileReaderTest.cpp.o
FAILED: vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FilteredFileReaderTest.cpp.o
/usr/bin/c++  -DOSS_BUILD_MODE -I../ -I../vrs/oss -O3 -DNDEBUG -fPIE   -std=c++17 -MD -MT vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FilteredFileReaderTest.cpp.o -MF vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FilteredFileReaderTest.cpp.o.d -o vrs/utils/CMakeFiles/test_vrs_utils.dir/test/FilteredFileReaderTest.cpp.o -c ../vrs/utils/test/FilteredFileReaderTest.cpp
In file included from ../vrs/RecordReaders.h:21,
                 from ../vrs/RecordFileReader.h:33,
                 from ../vrs/utils/FilteredFileReader.h:27,
                 from ../vrs/utils/test/FilteredFileReaderTest.cpp:25:
../vrs/ErrorCode.h:22:10: fatal error: fmt/format.h: No such file or directory
   22 | #include <fmt/format.h>
      |          ^~~~~~~~~~~~~~
compilation terminated.
[47/82] Building CXX object vrs/CMakeFiles/vrslib.dir/DataLayout.cpp.o
ninja: build stopped: subcommand failed.

I have encountered this problem before, and you can try the following solutions.
1.install "fmt" library
git clone  https://github.com/fmtlib/fmt.git cd fmt mkdir build cd build cmake .. sudo make install
2.modify the file : CMakeLists.txt
add before : add_executable(...)
SET(CMAKE_EXE_LINKER_FLAGS " -no-pie")
find_package(fmt)
include_directories(${Fmt_INCLUDE_DIRS})
add after: add_executable(...)
target_link_libraries(${PROJECT_NAME} fmt::fmt)

what's strange here is that cmake appears to find the packages, but can't use them. fmt is found silently, but the "Found xxHash" message should mean the library and the headers were found.
Can you add:
message(FATAL_ERROR "xxhash DIRS: ${xxHash_INCLUDE_DIRS}\nLIBRARIES: ${xxHash_LIBRARIES}")
at the end of cmake/FindxxHash.cmake
to see what it found?

@georges-berenger cmake appears to find the version of xxhash I installed into my conda environment:
  xxhash DIRS: /private/home/jcjohns/.conda/envs/arnerf/include
  LIBRARIES: /private/home/jcjohns/.conda/envs/arnerf/lib/libxxhash.so

xxhash.h and libxxhash.so are both present in those locations.

+1, it would be really great to install this via pip install pyvrs. That would reduce a lot of headaches when working in environments where we do not have sudo

pyvrs has been moved to its own repo, which now enables it to be published as its own pip package. @jcjohnson I'm not sure if you're still blocked by this (I dropped the ball, obviously), but please follow-up in the pyvrs project if you need to.


doc: add docs for swagger middleware

What type of PR is this?
docs

What this PR does / why we need it (en: English/zh: Chinese):

en: Improve docs for swagger middleware
zh: 完善 swagger 中间件文档
Which issue(s) this PR fixes:

LGTM


Ubuntu rootfs image from ghcr has no systemd installed

Describe the bug
When using ghcr ubuntu rootfs image, nodes can not be booted successfully, and this is the day 1 issue.
[    1.105972] Freeing unused decrypted memory: 2040K
[    1.111372] Freeing unused kernel image memory: 1356K
[    1.125832] Write protecting the kernel read-only data: 14336k
[    1.130261] Freeing unused kernel image memory: 2020K
[    1.132682] Freeing unused kernel image memory: 524K
[    1.134148] Run /sbin/init as init process
[    1.136179] Run /etc/init as init process
[    1.137887] Run /bin/init as init process
[    1.139641] Run /bin/sh as init process
/bin/sh: 0: can't access tty; job control turned off
# [    6.128637] random: fast init done
[    9.414738] random: crng init done

To Reproduce
Steps to reproduce the behavior with debug log enabled. --log-level=debug
Expected behavior
A clear and concise description of what you expected to happen.
Environment

OS version

run cat /etc/os-release

Kubefire version

run kubefire version

Kubefire runtime info

run kubefire info

Additional context
Add any other context about the problem here.

➜  ~  sudo ignite image ls -q | xargs sudo ignite image rm
➜  ~  sudo ignite kernel ls -q | xargs sudo ignite kernel rm
➜  ~ kubefire cluster create demo --image=ghcr.io/innobead/kubefire-ubuntu:18.04

This can be handled by #33 automatically instead of manually operating ignite.


the nuimage 256x256 recurrence

The pretrained nuimage 256x256 model pretrained model generates 14772x5 = 15485 images for testing, and then calculates the fid with the val set 14772 images, while the fid is 19.48. Moreover, I retrain the nuimage 256x256 model on stable diffusion which reach 15.90, also not reaching the accuracy of paper(14.58).  I resize the images to 256x256 and use fid_score of pytorch_fid package to calculate the fid. Is this correct ?

As claimed in our README file, we recommend users follow the exact setting of the LAMA repo step by step for precise evaluation on the COCO-Stuff Layout-to-Image benchmark, since the FID calculation is extremely sensitive to the implementation details.
Currently, I notice the following differences:

Following LAMA, we filter the original COCO validation set, resulting in a validation set of 3,097 images. Therefore, we generate 3097x5=15485, and then calculate FID with the real 3097 images. We have provided the filtered validation image list in HuggingFace.
Check more details in the Section 5.1 of the LAMA paper.
LAMA uses a tensorflow-based FID calculation code instead of pytorch_fid.
Frankly speaking, there is not much difference between 15.90 FID and 14.58 FID.


SQLModel and sql achemy use brainstorming

this package depends heavily on sqlalchemy
sqlalchemy has a pending 2.0 release, which we may consider updating to.
Alternatively, I think we should check out SQLModel: https://sqlmodel.tiangolo.com/ (which is build on top of sql alchemy, and specifically the asyncio stuff that's getting ready for being released in 2.0)

@stolarczyk have you looked at SQLModel at all? Just curious if you had any thoughts on that.

Also, just a historical question for you, @stolarczyk  -- did pipestat always rely on sqlalchemy, or was it added in at a later stage with a switch to ORM?

@stolarczyk have you looked at SQLModel at all? Just curious if you had any thoughts on that.

No, I haven't had a chance to try it out.

Also, just a historical question for you, @stolarczyk -- did pipestat always rely on sqlalchemy, or was it added in at a later stage with a switch to ORM?

it used psycopg2 before.

Closing in favor of #26


Disallow empty strings as identifiers

@brodecva, Can you please describe a bit more what was the particular goal?

@tomas-knap For example the server might under some cirucumstances accept empty string as a name of task.

@brodecva check if done


New immutable hash set and map

This pull request contains reimplementations of immutable HashSet and HashMap using Compressed Hash-Array Mapped Prefix-trees (CHAMP). A prototype and preliminary evaluation of CHAMP data structures in collection-strawman was already discussed in issue #192.
The new implementations (ChampHashSet and ChampHashMap) currently exist next to the HashMap and HashSet. By default immutable.Map and immutable.Set now pickup the CHAMP versions, but I also implemented a JVM flag (-Dstrawman.collection.immutable.useBaseline=true) to default to the current HashSet and HashMap implementations. I assume that in the final version of the collections only one hash-map/set will ship, but for now, having a flag helps with comparing the different trade-offs and performance characteristics of the current and the new data structures.
The data structures contained in this pull request represent a first basic re-implementation of HashSet and HashMap. The data structures should be functionally complete at this point, however  there are still parts and operations that can benefit from (further) optimizations. I plan to continue working on those parts that still need attention, but in the meantime I request a review of the current state.
Preliminary performance numbers of the new CHAMP data structures were presented in issue #192; those characteristics didn't change with the Scala re-implementaiton. (I can post further results here upon request, but you might be interested to give them a spin yourself.) Overall one can summarize that the CHAMP data structures significantly lower memory footprints and significantly improve all iteration-based operations and equality checks. Lookups slow down, but insertion and deletion also seem to benefit as well.
Note that the CHAMP design / implementation differs from the current hashed data structures by not memoizing the hash codes of the individual elements (which may change the performance of certain workloads). If necessary, CHAMP's design allows to modularly add memoizing the hash codes of the individual elements (at the expense of some memory savings); details are discussed in the OOPSLA'15 paper. I plan to further explore the memoized approach in the context of collection-strawmen as well in the near future.
I'm looking forward to receiving feedback on the current implementation, to further improve the code based on your reviews.

I've had a look at == and can say that I now performs much better across all the spectrum (small and big inputs). The reason why it underperformed earlier for small inputs was because I was using a for loop with a range object earlier

[info] Benchmark                               (size)  Mode  Cnt          Score           Error  Units
[info] ChampHashSetBenchmark.traverse_equals        0  avgt    8          2.644 ?         0.044  ns/op
[info] ChampHashSetBenchmark.traverse_equals        1  avgt    8          6.571 ?         0.064  ns/op
[info] ChampHashSetBenchmark.traverse_equals        2  avgt    8          6.993 ?         0.131  ns/op
[info] ChampHashSetBenchmark.traverse_equals        3  avgt    8          7.435 ?         0.212  ns/op
[info] ChampHashSetBenchmark.traverse_equals        4  avgt    8          8.742 ?         0.098  ns/op
[info] ChampHashSetBenchmark.traverse_equals        7  avgt    8         11.038 ?         0.197  ns/op
[info] ChampHashSetBenchmark.traverse_equals        8  avgt    8         11.666 ?         0.241  ns/op
[info] ChampHashSetBenchmark.traverse_equals       15  avgt    8         13.615 ?         0.292  ns/op
[info] ChampHashSetBenchmark.traverse_equals       16  avgt    8         14.107 ?         0.427  ns/op
[info] ChampHashSetBenchmark.traverse_equals       17  avgt    8         14.454 ?         0.562  ns/op
[info] ChampHashSetBenchmark.traverse_equals       39  avgt    8         99.312 ?         2.987  ns/op
[info] ChampHashSetBenchmark.traverse_equals      282  avgt    8        933.774 ?        25.141  ns/op
[info] ChampHashSetBenchmark.traverse_equals     4096  avgt    8      42601.942 ?       467.884  ns/op
[info] ChampHashSetBenchmark.traverse_equals   131070  avgt    8    1842035.390 ?     43830.379  ns/op
[info] ChampHashSetBenchmark.traverse_equals  7312102  avgt    8  538171149.938 ?  14328909.058  ns/op
[info] ScalaHashSetBenchmark.traverse_equals        0  avgt    8          2.630 ?         0.057  ns/op
[info] ScalaHashSetBenchmark.traverse_equals        1  avgt    8          3.780 ?         0.100  ns/op
[info] ScalaHashSetBenchmark.traverse_equals        2  avgt    8         10.593 ?         0.119  ns/op
[info] ScalaHashSetBenchmark.traverse_equals        3  avgt    8         12.671 ?         0.334  ns/op
[info] ScalaHashSetBenchmark.traverse_equals        4  avgt    8         14.600 ?         0.396  ns/op
[info] ScalaHashSetBenchmark.traverse_equals        7  avgt    8         20.975 ?         0.533  ns/op
[info] ScalaHashSetBenchmark.traverse_equals        8  avgt    8         23.295 ?         0.304  ns/op
[info] ScalaHashSetBenchmark.traverse_equals       15  avgt    8         38.379 ?         0.540  ns/op
[info] ScalaHashSetBenchmark.traverse_equals       16  avgt    8         41.129 ?         0.575  ns/op
[info] ScalaHashSetBenchmark.traverse_equals       17  avgt    8         43.305 ?         0.892  ns/op
[info] ScalaHashSetBenchmark.traverse_equals       39  avgt    8        270.204 ?         6.723  ns/op
[info] ScalaHashSetBenchmark.traverse_equals      282  avgt    8       2549.605 ?        66.514  ns/op
[info] ScalaHashSetBenchmark.traverse_equals     4096  avgt    8      83515.407 ?      2679.428  ns/op
[info] ScalaHashSetBenchmark.traverse_equals   131070  avgt    8   13131542.320 ?    255304.336  ns/op
[info] ScalaHashSetBenchmark.traverse_equals  7312102  avgt    8  660486112.500 ? 189072332.316  ns/op

Wow, this is awesome, your implementation is an order of magnitude faster than the current one!

@julienrf, yes, I can also work on subsetOf and optimize that operation, however I think we should maybe separate this task from this PR. My goal of this PR was to implemented a hash-set and hash-map substitute that covers the same operations and at least the same optimization level as the current strawman.collection.Hash(Set|Map), ignoring all operations that were not ported yet from the collections of Scala 2.12.
PS: I the meantime, I was already prototyping a specialized subsetOf operation that improves a lot on the strawman regression, but isn't yet up to speed with the previous collections (at least at smaller sizes). I still would need more time for doing this properly, since it's not just a port, but a complete rewrite based on the CHAMP design.

If you think that you would need to spend a substantial amount of time to optimize the operations then I’m happy to merge this PR as soon as possible. Since we want to our code to compile with Dotty we are a bit constrained and can not use the return keyword in inlined methods. Can you arrange your code to not use return?

Just saw the build not succeeding on Dotty, will fix the case with return.

I did implement and add a specialized implementation of the subsetOf operation for the ChampHashSet that restores the performance at least in the benchmark to the Scala 2.12 HashSet performance (see chart and benchmark results below). You can find the source code of the re-implementation here: https://github.com/msteindorfer/collection-strawman/blob/new-immutable-hash-set-and-map/collections/src/main/scala/strawman/collection/immutable/ChampHashSet.scala#L406-L448
Note, with respect to the performance regression discussion of issue #380, the CHAMP design may have to re-calculate hash-codes (for a fraction of the elements) since the elements's hash codes are not cached in the the leaf nodes. See https://github.com/msteindorfer/collection-strawman/blob/new-immutable-hash-set-and-map/collections/src/main/scala/strawman/collection/immutable/ChampHashSet.scala#L433. This is desired behaviour, and enables significant memory savings, while sacrificing only little runtime performance.

[info] Benchmark                                     (size)  Mode  Cnt           Score          Error  Units
[info] ChampHashSetBenchmark.traverse_subsetOf            0  avgt    8           2.622 ?        0.064  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf            1  avgt    8           9.222 ?        0.143  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf            2  avgt    8          13.522 ?        0.220  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf            3  avgt    8          17.507 ?        0.146  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf            4  avgt    8          21.109 ?        0.412  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf            7  avgt    8          30.665 ?        0.530  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf            8  avgt    8          33.800 ?        0.726  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf           15  avgt    8          54.292 ?        1.043  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf           16  avgt    8          58.151 ?        1.889  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf           17  avgt    8          60.593 ?        0.758  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf           39  avgt    8         249.486 ?        4.531  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf          282  avgt    8        2374.091 ?       47.854  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf         4096  avgt    8       85736.235 ?     1314.793  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf       131070  avgt    8     1998867.701 ?    15026.344  ns/op
[info] ChampHashSetBenchmark.traverse_subsetOf      7312102  avgt    8   656077694.875 ?  7421465.605  ns/op
[info] HashSetBenchmark.traverse_subsetOf                 0  avgt    8           4.638 ?        0.171  ns/op
[info] HashSetBenchmark.traverse_subsetOf                 1  avgt    8          18.206 ?        0.536  ns/op
[info] HashSetBenchmark.traverse_subsetOf                 2  avgt    8          38.303 ?        1.424  ns/op
[info] HashSetBenchmark.traverse_subsetOf                 3  avgt    8          43.705 ?        0.846  ns/op
[info] HashSetBenchmark.traverse_subsetOf                 4  avgt    8          50.182 ?        1.003  ns/op
[info] HashSetBenchmark.traverse_subsetOf                 7  avgt    8          68.212 ?        1.351  ns/op
[info] HashSetBenchmark.traverse_subsetOf                 8  avgt    8          74.523 ?        1.024  ns/op
[info] HashSetBenchmark.traverse_subsetOf                15  avgt    8         117.449 ?        1.250  ns/op
[info] HashSetBenchmark.traverse_subsetOf                16  avgt    8         124.805 ?        3.099  ns/op
[info] HashSetBenchmark.traverse_subsetOf                17  avgt    8         130.846 ?        2.091  ns/op
[info] HashSetBenchmark.traverse_subsetOf                39  avgt    8         634.184 ?       19.118  ns/op
[info] HashSetBenchmark.traverse_subsetOf               282  avgt    8        7439.831 ?      228.265  ns/op
[info] HashSetBenchmark.traverse_subsetOf              4096  avgt    8      227119.531 ?     4258.048  ns/op
[info] HashSetBenchmark.traverse_subsetOf            131070  avgt    8     8033112.073 ?   176616.379  ns/op
[info] HashSetBenchmark.traverse_subsetOf           7312102  avgt    8<PHONE_NUMBER>.500 ? 16915702.182  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf            0  avgt    8           2.678 ?        0.216  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf            1  avgt    8           3.396 ?        0.073  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf            2  avgt    8          12.775 ?        0.415  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf            3  avgt    8          12.507 ?        0.211  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf            4  avgt    8          17.367 ?        0.457  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf            7  avgt    8          22.913 ?        0.428  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf            8  avgt    8          25.775 ?        1.085  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf           15  avgt    8          45.069 ?        1.049  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf           16  avgt    8          47.518 ?        0.641  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf           17  avgt    8          50.418 ?        0.927  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf           39  avgt    8         270.092 ?        6.716  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf          282  avgt    8        2549.277 ?       75.918  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf         4096  avgt    8       82163.910 ?     1833.250  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf       131070  avgt    8     4683206.120 ?   185428.804  ns/op
[info] ScalaHashSetBenchmark.traverse_subsetOf      7312102  avgt    8   864977047.938 ? 22122103.897  ns/op

I haven't checked it in depth but the benchmarks look great, and once we have it in we can catch any remaining correctness issues more easily.  (I'll run collections-laws on it.)

Let’s merge it so that we can move forward!


Callibration filters

There is currently no way to add calibration filters on the GUI. The XML is similar to that of the filters section of the GUI

The fix for the calibration filters can be found here: https://github.com/MVAppleby/PCWG/commit/710983d236bf2a0f5d8d2ce628fdd391821c3093#diff-84cd3e0c9afd394d870eb748f0b20551R974
The GUI now looks like this

Any idea why those dates look different in the exclusions box?

#74 is similar. If fixed, please reference issue in your pull request and then close them them.

I managed to recreate the error. I believe it has something to do with how the GUI inputs data tot he table and extracts it from the XML file. I changed the format from %d/%m/%Y %H:%M to %d/%m/%Y %H:%M:%S before closing and reopening the file. The dates int he exclusions i had already inputed changed but the new date did not.

After reopening the dataset dialog:

AFter changing the format back and reopening:

It appears to be a difference in the reading and inputting of the dates


[INFRA] add steps for release protocol (PDF upload)

Adding the steps to be followed for uploading stable PDFs to Zenodo.
ticks off one more box of To Dos in #407 :slightly_smiling_face:

thanks @sappelhoff for adding this!
To confirm, the pdf extraction step (step 6) is that necessary before we can tag and publish a release? These aren't making commits so it doesn't appear so? If not, I'll suggest a small note to add to document that

To confirm, the pdf extraction step (step 6) is that necessary before we can tag and publish a release?

the pdf must be extracted after the commit of setting the version to "stable" (i.e., removing -dev), and I figured it'd be natural to do it as soon as possible to be sure :-)


Background start not allowed on incoming push from microg

microG Setting shows incoming push is received, but unable to start riot.im app
I EventStreamServiceX: sendAction im.vector.services.EventStreamServiceX.PUSH_RECEIVED
D GmsGcmRegisterSvc: onBind: Intent { act=com.google.android.c2dm.intent.REGISTER pkg=com.google.android.gms }
W ActivityManager: Background start not allowed: service Intent { act=im.vector.services.EventStreamServiceX.PUSH_RECEIVED cmp=im.vector.app/im.vector.services.EventStreamServiceX } to im.vector.app/im.vector.services.EventStreamServiceX from pid=5624 uid=10095 pkg=im.vector.app startFg?=false
I EventStreamServiceX: ## Failed to start event stream
I EventStreamServiceX: java.lang.IllegalStateException: Not allowed to start service Intent { act=im.vector.services.EventStreamServiceX.PUSH_RECEIVED cmp=im.vector.app/im.vector.services.EventStreamServiceX }: app is in background uid UidRecord{...}

Lineageos 16.0 2019-06-18 OP3T
Riot.im is from google play.
https://github.com/microg/android_packages_apps_GmsCore/issues/845

SoundCloud receives pushes well.

Looks like it's not a riot issue.

I've do more tests, an this is definitely a riot.im issue.

Could you elaborate what you did and why you are now confident that this is a riot.im issue?

As RiotX works fine on the same setup.


Add CloudFormer alternative

Mentions Former2 as third-party alternative to CloudFormer.
Note: I am the creator of the tool.

Welcome; we've been expecting you. Join the Slack team if you haven't already: https://og-aws-slack.lexikon.io


Insertion points

The protoc-gen-swift plugin should include appropriate insertion points in the generated code that can be used by other plugins.  For example, this would allow a separate plugin to insert gRPC support.
General information about insertion points:
https://developers.google.com/protocol-buffers/docs/reference/other
Specific examples of other generators that put insertion points into their output:
C++: https://developers.google.com/protocol-buffers/docs/reference/cpp-generated#plugins
Java: https://developers.google.com/protocol-buffers/docs/reference/java-generated#plugins

@TimBurks @muxi FYI


Add support for Declarative Multibranch Pipeline

If you only have one branch that you're merging PR into, you can follow these instructions.  If you must support multiple branches, the closest I could find was this solution.  It has the downside that, assuming you fix the error included, you still have to run the job once to set the build properties.  If you're using GHPRB for whitelisting who's PR automatically build, that's not going to work for you.
In recent updates to the declarative syntax, the options directive in the pipeline root can no longer take $class configuration.  You also can't use the script configuration because blocks are explicitly disallowed in the options directive and you also can't supply arguments.  The Properties directive also only works when not using multibranch pipelines.
The more correct solution is to add a new extension point for triggers so it becomes a valid choice for the triggers{} directive.  Currently only the legacy JobDSL format is supported.

This seems like it may be a blocker for me. I'm trying to let the Blue Ocean GitHub plugin automatically pick up my repositories but also use ghprb to execute fully-merging builds on the trigger phrase. I can't use the githubPullRequest block inside triggers for a pipeline.

@jhg03a I've managed to run a multibranch declarative pipeline using github-pipeline plugin and webhooks. Updates to PRs and comments are triggering the builds.

That's probably true, but does that plugin have the ability to protect the CI infrastructure the same way as ghprb?  If you trust all your contributors fully or your CI encapsulates every aspect in a disposable jail somehow it's a non-issue.  I need one of my committers or general infra stewards to look at PRs and approve them for CI runs to protect against a malicious Jenkinsfile PR that just does a deleteDir() outside their workspace.

We're working on a private repo so it's not an issue for us. Just thought I'd leave it here for people looking for the solution.

Seems like GHPRB isn't actively getting updated anymore and they're trying to move over to 'github-branch-source-plugin'.  However it doesn't solve the same issues yet.  I found an open issue that I think addresses the core concept of GHPRB. https://issues.jenkins-ci.org/browse/JENKINS-44611


Simplified demo

Kind.sh now modified to use kubeslice-cli.    Otherwise, functionality should stay the same.

Something seems to be wrong with worker-2:

I'll take a closer look at it tomorrow

Tried again and I'm still having issues with kind.sh. Found this in the logs of nsmd container:
time="2022-10-12T06:10:13Z" level=info msg="Requesting nsmd for client connection..."
time="2022-10-12T06:10:13Z" level=info msg="NSM gRPC socket: /var/lib/networkservicemesh/nsm.io.sock is operational" operation=nsm-server-start span="57e0dea48e6ab841:2469768b0c49ab91:57e0dea48e6ab841:1"
time="2022-10-12T06:10:13Z" level=info msg="create monitor servers" operation=nsm-server-start span="57e0dea48e6ab841:2469768b0c49ab91:57e0dea48e6ab841:1"
time="2022-10-12T06:10:13Z" level=info msg="CrossConnect - Serve starting..."
time="2022-10-12T06:10:13Z" level=info msg="RemoteConnection - Serve starting..."
2022/10/12 06:10:13 too many open files

Also attached kind.sh output, just in case.
kind.log

I've just applied this solution from kind doc: https://kind.sigs.k8s.io/docs/user/known-issues/#pod-errors-due-to-too-many-open-files but I'm still getting this from worker-1 (controller, manager pod):
`Events:
Type     Reason     Age                     From               Message

Normal   Scheduled  7m49s                   default-scheduler  Successfully assigned kubeslice-system/kubeslice-operator-5d979fffcd-97jgx to worker-1-worker
Normal   Pulling    7m43s                   kubelet            Pulling image "gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0"
Normal   Pulled     7m8s                    kubelet            Successfully pulled image "gcr.io/kubebuilder/kube-rbac-proxy:v0.8.0" in 35.472260214s
Normal   Created    7m8s                    kubelet            Created container kube-rbac-proxy
Normal   Started    7m8s                    kubelet            Started container kube-rbac-proxy
Normal   Pulling    7m8s                    kubelet            Pulling image "docker.io/aveshasystems/worker-operator:0.11.0"
Normal   Pulled     6m49s                   kubelet            Successfully pulled image "docker.io/aveshasystems/worker-operator:0.11.0" in 18.341205295s
Warning  Failed     5m8s (x10 over 6m49s)   kubelet            Error: couldn't find key endpoint in Secret kubeslice-system/kubeslice-hub
Normal   Pulled     2m43s (x20 over 6m49s)  kubelet            Container image "docker.io/aveshasystems/worker-operator:0.11.0" already present on machine
`


Rename folders/files

renamed all directories to use kebab-case
all notebook files are called notebook.ipynb
notebook title is taken from the meta.toml file
added a contributing guide with info about required structure

Will add an automated check later to ensure this structure is maintained

I don't like all files being called notebook.ipynb. I think the name should reflect what the title of the notebook would be. Having the directory be kebab-case with a more shorter, more general subject than the current notebook subject is fine, but I feel like we're losing some descriptiveness by generalizing the notebook names. This also locks us into a one-notebook-per-folder scheme as well.

I guess if this repo is intended purely for populating the Spaces web site the naming is fine. For casual browsing by users, I don't feel like the names are as helpful.

I was conceptualising each folder as a "package" of sorts and I think it makes sense to have the same file names in that sense and all the config/info held in the toml file.
I would imagine anyone generally browsing notebooks would do so on the /spaces page as it gives a much better experience (and we should encourage people to do so)

I was viewing the repo as more than just a storage area for Spaces data, but it's probably fine to treat it that way.

Good to merge then?

There is a Github action that packages the set of notebooks to be displayed in the portal when a new notebook is created. That is broken now (this includes the root-level meta.toml and resources/package-samples.py). Those need to be fixed yet. Did you want to do those, or did you just want me to fix them in a following change? They currently are failing, but no one is using them yet.

I just merged it as-is. I'll fix the packaging scripts this afternoon.

Sweet, thanks for that!


SET ROLE not respected in callbacks or initSqls

What version of Flyway are you using?
4.1.2 or later
Which client are you using? (Command-line, Java API, Maven plugin, Gradle plugin, SBT plugin, ANT tasks)
cli and Java
What database are you using (type & version)?
PG 9.6.2
What operating system are you using?
Linux
What did you do?
(Please include the content causing the issue, any relevant configuration settings, and the command you ran)
I have a beforeMigrate.sql that looks like this:
SET ROLE migration_user;

And then many regular migrations which need to be run as the user migration_user.
What did you expect to see?
I expect to see the entire migration session run as user migration_user, so that this role owns all of the created objects.
What did you see instead?
In fixing #1537, this RESET ROLE was added, which undoes the callback and any initSqls which use SET ROLE. I think this is unexpected.

Place it in beforeEachMigrate.sql instead and it should work as expected.