Include not found when integrating ble_spp_server example in a project (IDFGH-4554)

The ble_spp_server example builds fine (based on 2bfdd036b2dbd07004c8e4f2ffc87c728819b737)
When I integrate it into another application it comlains about not finding an nvs_flash header. This can be solved by manually adding the dependency with REQUIRES nvs_flash at its component registration.
Why is this header not found anymore after integration?
root CMakeLists.Txt:
[...]
set(EXTRA_COMPONENT_DIRS "./source/ble_spp_server")
[...]

ble_spp_server CMakeLists.txt:
idf_component_register(SRCS "ble_spp_server.c"
                    INCLUDE_DIRS
                    "."
                    )

main CMakeLists.txt:
[...]
REQUIRES ble_spp_server
[...]

After adding the nvs_flash dependency the esp_bt header file is not found and cannot be easily added by REQUIRES esp_bt because the component cannot be found. Adding REQUIRES bt solves this problem (Component found - no "component not found" error) but the esp_bt header is still not found. It seems there is no short solution which shows that there is something wrong in general. Where to start for finding the cause?
Note: The project where this should be integrated has a renamed main component.

Can someone please look into this issue?

Can someone please look into this issue?

I guess the cause for this is that the ble_spp_server is added as a separate component. Therefore the special handling of dependencies of the build system for the component main does not work. That is why one has to define dependencies manually.
Correct me if I'm wrong. Closed for me.

I guess the cause for this is that the ble_spp_server is added as a separate component. Therefore the special handling of dependencies of the build system for the component main does not work. That is why one has to define dependencies manually.
Correct me if I'm wrong. Closed for me.


Support Python 3.7

This issue is a meta issue to track related issues and PRs.

https://github.com/cupy/cupy/pull/1457
https://github.com/cupy/cupy/issues/1461 (https://github.com/cupy/cupy/pull/1463)
https://github.com/cupy/cupy/pull/1456

After all fixes has been done, we should fix chainer-test against py3.7 and update docs.

Related issue: conda will try and install the Python 3.7 version of Chainer along with Python 3.7 itself even if you don't have it already. You want to avoid this until a new release like so:
conda install chainer=4.2.0=py36_0

It looks like all the items listed are resolved. Is this completed then or are there other known issues?


utils.instantiate does not allow passing dictionaries as kwargs

Thanks for the helpful library!
Filing a bug in the utils.instantiate function.
Suppose I have a config group file
model:
  class: models.Net
  params:
    some: 0
    values: 1

Let's say I want to pass in a dictionary to models.Net as follows:
utils.instantiate(cfg.model, some_config_argument={'test': 'dict'})
This will throw KeyError: 'Accessing unknown key in a struct : model.params.test'
from params.merge_with(OmegaConf.create(kwargs)) in the instantiate function.

Hi,
Thanks for the bug report!
Please file against the Hydra repo.

gah sorry for the mistake

no worries!


Perform factor return calculations with polars-ols?

Hello,
The factor return calculations are currently performed in numpy. This causes some copying of data. If you're OK with a dependence on polars-ols, it would be straightforward to get rid of numpy and by extension the copying. This should give some nice speed-ups.
Let me know if you're interested, happy to make a PR.

I appreciate the issue, thanks for taking the time.
I can see your point, but I have a very high bar for introducing further dependencies. I would rather try to find a way to reduce the data copying/memory footprint while staying with numpy, if possible.


Maint/osl process args

[x] Added possibility to specify additional/generic osl process args
[x] Fixes to OslServerProcess command line args
[x] Include OslServerProcess in API docs.
[x] OslServerProcess: Explicit attribute for osl listener id
[x] OslServerProcess: Explicit attribute for osl multi listener
[x] OslServerProcess: Explicit attributes for most commonly used osl comd line args
[x] Added explicit support for poividing OPX definition files for import

@rfahlberg thank you. Are these changes released?


ENH: Add is_prepared

Closes #238

Should we actually return True instead?
Because why would you use is_prepared? To know whether you would still call prepare? In that case, doing is_prepared(geoms).all() would be useful, but doesn't work with missing values

I think it is best to stick to the general pattern of returning False on unary predicates on missing geometries. None can't be prepared, so is_prepared(None) should be False.

Now, for testing purposes it can certainly be handy, so that's probably enough reason to add it. But maybe we should point people to simply using prepare

Agreed, I added a note in the docstring.

I think it is best to stick to the general pattern of returning False on unary predicates on missing geometries. None can't be prepared, so is_prepared(None) should be False.

Yeah, I agree that this consistency is good (it just makes the function even less practical to use, although one can probably say the same for other predicates like is_valid, where you also need to take missing values into account)

Thanks!

Thanks!


Fulfillment request not displaying umlaut correctly

Environment details
V2 API
Enable beta features and APIs = true
Enable Automatic Text to Speech = true
Languages:
English - en = Default
German - de
Fulfillment = Inline Editor
package.json:
  "dependencies": {
    "actions-on-google": "^2.2.0",
    "firebase-admin": "^5.13.1",
    "firebase-functions": "^2.0.2",
    "dialogflow": "^0.6.0",
    "dialogflow-fulfillment": "^0.6.0"
  }

I have a single intent that has:
Enable webhook call for this intent = true
Enable webhook call for slot filling = true
With the language code setting 'de' in the console, I create a request that has an umlaut:
3 Käsekuchen
Here is the diagnostic output snippet:
RAW API RESPONSE:
"parameters": {
      "amount": "",
      "flavor": "Käsekuchen",
      "size": "",
      "product": "Käsekuchen"
    },

FULFILLMENT REQUEST:
"parameters": {
      "product": "K�sekuchen",
      "amount": "",
      "flavor": "K�sekuchen",
      "size": ""
    },

So when I build my response in the fulfillment, it shows the weird characters for the umlaut, instead of the umlaut.
If I turn off the Webhook fulfillment and create a response in Dialogflow, the umlaut shows correctly.
Thank you.
Ken

@kwcolson I apologize that so much time has passed, but are you still experiencing this issue?


arduino 1.8.8 and atmeg328p

Hi
I want to use your code for a stand alone atmeg328p at 8 Mhz intern with Arduino 1.8.8
I included your json files.
A can use my code on an Arduino Version 1.0.5 without problem, I can also use a Arduino Mini oder Nano. All works, but
the code is round about 2kb bigger, or the available flash is only 30700 instead of 32768 when I use this
settings here.
The problem is, all works fine, compiling and uploading, but the chip is dead. It ist just not running.
Not even a simple blink program.
What can go wrong by usings your code?
There are just 2 options
Chip : atmega328p
Clock: 8mhz intern.
Fuses are ok. It works if I use other boards.
I realy would like to use your code, because it gives me 2 kb more flash.
Would be great if you have any idea.
Thank you.
Greatings  klaus

The chip works if you use it in a board, is that what you mean by the fuses? Or you mean you used "burn bootloader" to set the fuses according to your selection before the first upload, and it still doesn't work?

Hi
Great to hear from you so fast! Thanks.
The second is write. I use extremburner or ponyprog and an usbasp programmer.
No bootload, for space. The chip is standing alone, 8 mhz intern.
All works, if i use arduino 1.05 and the old style for board.txt file.
If I use arduino 1.8.8 and your board setting, then the chip is dead.
If I use arduino 1.8.8 with other boards as nano, or mini, all works, but
I loose 2kb flash.
I tried 4 different chips, which all work in there circuit, but all are dead, if
I use your board settins:
Atmega328p
8mhz intern
There are no more options.
Quit crazy, hope we find out.
Thanks a lot for help
Greetings klaus
Von meinem iPad gesendet

Am 02.12.2020 um 22:14 schrieb Carlos Rodrigues<EMAIL_ADDRESS>The chip works if you use it in a board, is that what you mean by the fuses? Or you mean you used "burn bootloader" to set the fuses according to your selection before the first upload, and it still doesn't work?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Hi again!
I think I am becoming crazy, I just tried it no again, for at least 20. time.
All of a suddon, it works !!!!
I have no idea, I changed nothing. Same settings.
So sorry, realy have no explanation.
I have tried it so often, finaly a gave up, now it works.
So what, I am happy.
Thanks you for your answer!
Greetings klaus
From: Carlos Rodrigues
Sent: Wednesday, December 2, 2020 10:14 PM
To: carlosefr/atmega
Cc: KKuKK ; Author
Subject: Re: [carlosefr/atmega] arduino 1.8.8 and atmeg328p (#10)
The chip works if you use it in a board, is that what you mean by the fuses? Or you mean you used "burn bootloader" to set the fuses according to your selection before the first upload, and it still doesn't work?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Sorry for complaining, but it was real, thanks for your help.
greetings

The most common reason is changing the settings in the menu (processor, clock) but forgetting to "burn bootloader". Unfortunately, the Arduino IDE does not check if the fuses match the menu selectection before uploading.

Thanks for your answer!
I realy cannot give you an explanation. I tried it several times month ago and gave up.
It was strange. I did not change anything at the FUSE and the board settings were
always the same correct setting.
When I used the Nano board with 8 Mhz intern it works.
When I use the same setting with your boards seconds later, it didn’t work.
Until today.
Hope I will find the reason, my be per accident.
Right now I am quite happy, my remaining flash is up from 3 to 5 kb
quit a lot.
Thanks again.
I will mail you if I find the reason.
An auto check form settings and fuse would be realy helpful.
But in this case, I am sure it was not the reason for the problem.
greetings Klaus
From: Carlos Rodrigues
Sent: Thursday, December 3, 2020 1:07 PM
To: carlosefr/atmega
Cc: KKuKK ; State change
Subject: Re: [carlosefr/atmega] arduino 1.8.8 and atmeg328p (#10)
The most common reason is changing the settings in the menu (processor, clock) but forgetting to "burn bootloader". Unfortunately, the Arduino IDE does not check if the fuses match the menu selectection before uploading.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub, or unsubscribe.


feat: ensured user-provided values file takes precedence over solo-generated values

Description
Ensured user-provided values file takes precedence over solo-generated values
Related Issues

Closes # 496

:tada: This PR is included in version 0.31.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


GUACAMOLE-926: Add options to replace connections / permissions.

This change allows an admin to configure the connection batch importer to replace connections, and if replacing connections, additionally to also replace the permissions associated with that connection.
I've added the REPLACE verb to the directory PATCH endpoint to enable the former, and the latter is accomplished by completely removing and recreating the connection - to ensure that any existing permissions are wiped out.
I've added some little clickable help bubbles to each of these options to explain them, though I'm not feeling super good about the text therein. If anyone has any suggestions for concising these explanations, I'd appreciate them.

In order to make it easier to understand what's a duplicate, and why, I've added a "group" column to the error display, showing the user-provided group (normalized if possible, or translated from the provided parentIdentifier, if valid), as well as modified the error messages to be more explicit about the exact connection update conflicts, if there are any.

Ok @mike-jumper I think I've addressed all your concerns / suggestions!

Ok @mike-jumper I think I've addressed all your concerns / suggestions!

Oops, sorry I realized I forgot to update an error message. Let me fix that.


Add call method to attributes that have Handlers

Several attributes store references to ReflectionMethods, how about having a call method on them to easily call those reflection methods?

@brendt - I just realized we are going to have to expose the container to the class to allow this to happen. If you are still inclined to add the method, do you think we just add a setter for the container?

Oh oh… Good point 😅 I'll do some tinkering and see if I can come up with something a bit more convenient than what we're doing now :p

In Khronos I had this concept of a Callable which was literally just the container and reflection method wrapped up in a neat class with a call method.
The trick is we're already doing a lot of handling of the object just to set it up with the right event.

I briefly considered adding support for this in the container itself, but that's gonna be messy. Let's keep it as is for now.


handle lagging behind multiple epochs

It seems current code only deals with lagging behind one epoch, this PR deal with lagging behind multiple epochs.

Hi,
thanks for your contribution. This seems to be a duplicate of https://github.com/spacemeshos/go-spacemesh/pull/5719. So I'll close the PR.


Accidentally deleting comments by keyboard shortcuts

A couple of times now the following has happened to me:

I start typing a very long, very technical comment in the text entry box
I attempt to type something but hit the wrong key
In the course of a few keypresses I somehow manage to select all the text in the text box, overwrite it with a word or two of what I was trying to type, and then close the text box, causing it to be saved as a draft.

I've no idea what keys I'm hitting when this happens, but the end result is that my work is permanently deleted, and if I'm typing a long technical reply with a lot of LaTeX that can be a lot of work. (This just happened to me.)
It seems kind of unlikely that I'm accidentally hitting escape. Maybe I'm managing to hit CMD-[ by accident, though I still don't understand how I'm managing to select and overwrite all my text before that. But I guess in either case, my request is to have some way to undo saving the draft after exiting the compose function in this way.

Thanks for the report! I'd really appreciate if you can figure out what you typed the next time this happens. Is it possible your the CMD key is being pressed accidentally here? CMD+A is a built-in browser shortcut to select all text in an input field, and I suppose if you later hit CMD+[, that'd close the compose box, but that doesn't feel like a likely sequence to happen by accident.
I'm not sure there's anything simple that we can do to prevent this failure mode as a broad class -- the compose box is a standard browser text box, and in those CMD+A and then typing some stuff will replace the content of the input box. You can get it back with your browser's undo keyboard shortcut ... but not if you've caused the input to no longer be rendered on the page in the meantime.
But I'm not convinced there isn't something we could improve here.

I'm not sure if this is the same issue or not, as this issue hasn't happened for a long time, but just now I was typing and the whole page refreshed.
This time I'm certain I didn't press any weird keypresses though, as I was in the middle of typing a word. After the refresh, the post I had been typing was replaced by the second half of the word I was typing. This time though it didn't close the text box and I was able to get the post back by hitting CMD-Z.
Are there circumstances in which Zulip will spontaneously refresh the page while the user is typing? If so that might have been what was happening.
I suspect that what happens is that I'm typing something, then Zulip spontaneously refreshes the page, and then (at least in some past versions) the focus changes, so that my keypresses don't go into the text box but trigger shortcuts instead. I don't know if that's right but if it is it would explain my issue.

@nathanielvirgo Is your Zulip organization on Zulip Cloud? If it's self-hosted, what's version of Zulip is the server running?

It's on Zulip Cloud

Closing since https://github.com/zulip/zulip/issues/25950 was concretely fixed related to this report, and I have recently several times had the server-initiated reloads happen while in the middle of composing a message and it's properly saved in drafts, so I think that bug is also fixed.
Thanks for all the help investigating this @nathanielvirgo! And please be encouraged to open a new issue if you see this happen again with as much detail about how to reproduce as possible.


sendRobotProgram() doesn't always work on the first try

While working on the ROS2 driver integration tests i realized that resending the robot program in headless mode does not work completely reliably right now. The first scenario for this is:

Start ursim, e.g. ros2 run ur_robot_driver start_ursim.sh
Start client with headless_mode = true, e.g. ros2 launch ur_robot_driver ur5e.launch.py robot_ip:=<IP_ADDRESS> headless_mode:=true
Power on and start the robot
UrDriver::sendRobotProgram() (e.g. by ros2 service call /io_and_status_controller/resend_robot_program std_srvs/srv/Trigger "{}")
The program doesn't start, the VNC view only shows it switching to Stopped. No error is emitted.
A second call actually starts the program

This behavior also happens if i pause the program through the teach pendant and then resend the program. While i have only tried this through the ROS2 driver, i am pretty certain that the issue is in the client library as not even an error is returned in this case.

I'm able to reproduce this with URSim. Note that the two cases seem to be equivalent: When have a booted (but not yet started - in terms of brake_release) robot, the program state also seems to be paused. Therefore, another way to reproduce is:

start robot and initialize
start client in headless mode as mentioned above
While the program is running, pause it. (e.g. by calling ros2 service call /dashboard_client/pause std_srvs/srv/Trigger)
UrDriver::sendRobotProgram() (e.g. by ros2 service call /io_and_status_controller/resend_robot_program std_srvs/srv/Trigger "{}")

That this behavior is the same when having a freshly booted robot could be a URSim issue (e.g. you'll get joint states for URSim before initializing it, which you won't with a real robot), but resending while being in paused state definitely seems like something that would be present on a real robot, as well. However, since local and remote mode are rather different in URSim this could also only be a URSim problem after all. I'll check in my next lab session.


Connections UI Work

implemented ConnectionDetailsPage
added kebab menu to connection card in list view
see commit messages for additional details

Outstanding Issues

on details page, if no description, and in readonly mode, there should be placeholder text
on details page if you change/save the description, then change/save the name, then go back to list, the new description is lost. If changing only the name, or only the description, then go back to the list it works fine.
the "Edit" menu item of the card kebab needs to be implemented yet
on details page if you make changes in the form then cancel editing, the original values are not reset in the form
on the details page, backend validation of the name happens on each keystroke. I added code that is not working because the setState call I added is async and does not happen when I had thought.

PR Storybook available here

Hmm, there's this:

Nice work though, the UI works nicely!  For some reason against staging I can't click on the salesforce connection, but that probably was configured via oauth and may not have any config.

[x] on details page, if no description, and in readonly mode, there should be placeholder text
[x]  on details page if you change/save the description, then change/save the name, then go back to list, the new description is lost. If changing only the name, or only the description, then go back to the list it works fine.
[x] the "Edit" menu item of the card kebab needs to be implemented yet
on details page if you make changes in the form then cancel editing, the original values are not reset in the form
[x] on the details page, backend validation of the name happens on each keystroke. I added code that is not working because the setState call I added is async and does not happen when I had thought.

This should be good to go now.

PR Storybook available here

oh and here I merged that other PR that fixed the connection icon helper, this just needs a rebase.

PR Storybook available here


Add git ci workflow

It's running through now:
https://github.com/yashha/percollate/tree/feature/git-ci

Looks good, thank you! 👍


Title: enhance footer design

Is your feature request related to a problem? Please describe.
footer is very simple
Describe the solution you'd like.
i want to make it look good and stylish
Describe alternatives you've considered.
add links of social media and company name copyright etc.
Add any other context or screenshots about the feature request here.

Is your feature request related to a problem? Please describe:
The current footer design of the website is very simple and lacks visual appeal.
Describe the solution you'd like:
I would like to enhance the footer to make it more visually appealing and stylish. This includes:
Adding links to social media profiles.
Incorporating the company name and copyright information.
Using improved styling and design elements to give the footer a modern look.
A link to the sitemap for easy navigation of the website's structure.
Describe alternatives you've considered:
Adding only the social media links.
Keeping the current design but adding a few more links.
@Kushal997-das plz assign this to me under GSSOC'24.

@siddhant-2002, please add this to issue #1287. There's no need to open a separate issue; just merge it there.


Update stats.

No lgtm, will merge. :(

Hard-coding data in templates doesn't lgtm :P

Hahaha, agreed. This was a hax I added a while ago, should probably be removed in favour of some DB call. ;)


failed to complete chroot setup

Hello I tried to install Crouton but it doesn't work.
[

I have an acer chromebook

Dup of -

crouton on x86_64 and arm, kernel version issue with libc updating in chroot · Issue #4429 ·
dnschneid/crouton https://github.com/dnschneid/crouton/issues/4429

Please search for the same or similar issues before posting.
Closing. Please track the above issue for further details.
-DennisLfromGA


Fix #1364: Error codes not systematically checked in the implementation

Fix issue #1364 about Error codes not systematically checked in the implementation
WARNING: Should be merged at the same time than corresponding PR on TTYT & bolos-ng:
https://git.donjon.ledger.fr/gitea/CI/toutouyoutest/pulls/192
https://git.donjon.ledger.fr/gitea/ledger-core/bolos-ng/pulls/2098

Let's keep in mind that these changes might cause a bunch of warnings when building apps.


Explore alternate locations for the notifications center

The current location of the notification center in the status bar presents a few potential problems:

Notifications feel like a concept global to the application, even if many notifications are scoped to the current workspace. The status bar is mostly scoped to the current workspace/file, so it feels strange to have notifications located there.
The notification icon looks and feels like a regular status bar item, so it's hard to visually locate
It can be easy to miss notifications in the far lower right on the window

A few quick sketches to show what notifications could look like if moved to a more obvious area:
Move notification center to the title bar
This builds off the explorations by @lychung7 and @misolori to start moving more features to the title bar. E.g. search/commands, layout controls, etc.
macOS

Windows

Use a different color for the notification dot
This could make notifications even more obvious. This might only make sense if we were to someday enable notifications without a toast.
macOS

Windows

Considerations
There are a few obvious trade offs here:

Notification list and toasts would overlap some workbench actions and tabs
Existing users are used to where notifications are located today
Potentially adds noise to the UI by moving notifications to a more prominent location
Should feedback have the same treatment given the global scope argument above?

cc @sbatten

I don't really understand how this works when notification toasts show up. Would we move them also to the top right then?

That's the idea, yes. Something like this:
Toast

Notification center

I explored another option based on an idea from @lychung7:
Notifications in Activity Bar
As the title says—this looks at how notifications might benefit from a dedicated view container. This explorations shows:

An activity bar contribution w/ badge indicating "unread" notification count
List of notifications with unread/read states, message, source, and actions
Dedicated actions for "clear notification". Experiementing with a check icon instead of close to lean towards the notion of "done" rather than "delete".

Another potential benefit of this model would be the ability to keep older viewed notifications around to avoid them being lost in the ether. People complain about this happening today.
One downside here is that the Profile and Settings icons below the bell are context menus, not view containers. So a bit of a dissonance there.
https://user-images.githubusercontent.com/25163139/159587549-bfbc06cb-a67e-42be-b59b-b33e1c0d726f.mp4
Notifications in Title Bar
I also updated the title bar example with some realistic notifications for reference:
https://user-images.githubusercontent.com/25163139/159587625-423e628d-7245-47b9-b422-019cb34aaa59.mp4

cc @stevencl : didn't we had discussions in the past that for UX consistency an icon in the activity bar that is bottom left cannot change the view contents. Rather those should appear top left?
I personally think that entries bottom left in the activity bar should open menus / global things and not change the sidebar.

We used to have notifications dropping down from the title bar in the centre. This was considered very disruptive and was one of the main reasons we moved them down to the bottom of the screen.
We did have those discussions about bottom left not changing the sidebar and I think that consistency is worth preserving.
Notifications in VS work very similarly to VS Code but there is an affordance to pin the notification centre so that it doesn't auto hide. It's set to auto hide by default but you can pin it if you want. If you do, then a notifications view and associated tab is added to the existing views.
I think David's design for managing old/read notifications is worth exploring further and is orthogonal I think to the position of the notification centre.

Agreed that the old design was disruptive from the perspective of where the toasts show up. I also like the spirit of the restrictions re: bottom activiy bar items being context menus, not view containers.

I think David's design for managing old/read notifications is worth exploring further and is orthogonal I think to the position of the notification centre.

This has been one of the more interesting themes I've seen pop up from these explorations. I'll keep exploring this independent of the notification center's location.

Closing since we opted against this some months ago


registry/repo information getting set for internal registry

Bug Description
It seems that this information should only be set for external registries, and not internal ones. When we sent the internal ones, images can't be published properly
Version and Command Invocation
1.2.1
Steps to Reproduce:

preflight check container scan.rh.com/ospid-number/image:tag
try to publish the image
see that it fails

Expected Result
That the image is able to be published, since the connect page shows the proper registry.redhat.com/namespace/image values for the project.
Actual Result
The image does not get published and connect shows an error.
Additional Context
N/A

@bcrochet I think you might be correct that preflight can't solve this. Even if we do solve this, the project then doesn't have and repo/registry information, and then clair scan's don't get kicked off. Also, the project settings don't look correct.
We still might have a change to make, but other systems also need to adapt as well.
@jomkz I have no idea who owns connect/pubsvc and any other system that was hard coded to support CVP, but I think @jfrancin knows something about all of this backend weirdness.

Here is the gchat thread with more info
https://chat.google.com/room/AAAAkC09bk8/PH_AA10l3bM
if preflight sends the info that we have from the container URI fed in via the cmd line the project data looks like this
"registry" : "[scan.connect.redhat.com](http://scan.connect.redhat.com/)",
        "repository" : "ospid-<project-id-omitted>/helm-controller",

So some layer needs to do a translation.

Going to close this since this shouldn't be an issue going forward with milestone two changes.


Make some patch functions only require &self

I checked the documentation for libgit2 and could see no reason these two functions required &mut self. Without this patch it is very practically difficult to iterate through all hunks of a patch, and each line of each hunk, as they rely on the same parent git2::Patch.

thanks!


Is it possible to downgrade from 6.3.1 to 6.2.2?

Hi,
6.3.1 is completely unusable and unstable with a high volume of keys. We are going to downgrade until it's fixed. Is it possible to downgrade node by node?
I mean, disconnect one node, downgrade, add to the cluster and wait for sync and go for the next node.
Thanks

Yes, sorry, Ai read after posted. Thanks

Hi,
I downgraded 3 servers today because of #453
i just need to comment in config this line:
replica-weighting-factor 2

because it does not exists in 6.2.2
I have installed it by their official PPA;
apt update
apt-cache madison keydb # to list all available versions
apt install keydb=6:6.2.2-1~bionic1 keydb-server=6:6.2.2-1~bionic1 keydb-tools=6:6.2.2-1~bionic1 # update versions by your server build version

Sorry 6.3 isn't working well for you.  6.2.x will continue to be maintained until we meet expectations.

Similarly with debian10
apt-get install keydb=6:6.2.2-1+deb10u1 keydb-sentinel=6:6.2.2-1+deb10u1 keydb-server=6:6.2.2-1+deb10u1 keydb-tools=6:6.2.2-1+deb10u1

Hopefully we get an update soon, because the 6.3.1 is not working very well...


Improvement to support .type functionality

There needs to be a way to know the type of a variable, for that improve the implementation to support .type functionality.

This is supported in 0.91. type can be obtained using typeof x


[BUG]

Prerequisites

[X] I have read the documentation.
[X] I have checked other issues for similar problems.

Backend
Local
Interface Used
CLI
CLI Command
autotrain app --port 8080 --host <IP_ADDRESS>
UI Screenshots & Parameters
No response
Error Logs
D:\projects\testfinetune>autotrain app --port 8080 --host <IP_ADDRESS>
Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in run_code
File "D:\Programs\Python\Python312\Scripts\autotrain.exe_main.py", line 7, in
File "D:\Programs\Python\Python312\Lib\site-packages\autotrain\cli\autotrain.py", line 62, in main
command.run()
File "D:\Programs\Python\Python312\Lib\site-packages\autotrain\cli\run_app.py", line 100, in run
preexec_fn=os.setsid,
^^^^^^^^^
AttributeError: module 'os' has no attribute 'setsid'. Did you mean: 'getpid'?
Additional Information
No response

please use docker image or WSL if you are using windows.


[Bug] Copy-DbaLogin - login not copied due to non existing default database

This is a BUG or FEATURE REQUEST
Report
Login not copied due to not existence of a default database.
Host used

[X] powershell.exe
[ ] ISE
[X] VS Code
[ ] Other (please specify)

Errors Received
Type             Name  Status Notes
----             ----  ------ -----
Login - SqlLogin <Login> Failed

Steps to Reproduce
Get-DbaLogin -SqlInstance <sourceSqlInstance> -Login <LoginName> | Copy-DbaLogin -Destination <destinationSqlInstance> -Force

or
> Copy-DbaLogin -Source <sourceSqlInstance> -Destination <destinationSqlInstance> -Login <loginName>

Expected Behavior

State in Notes property - Default database <dbName> not exists on <destinationSqlInstance>
or
Login copy successfull but in Notes - Default database changed from <previousDefaultDbName> to master

Actual Behavior
We receive just Failed w/o any intel why it's failing
Environmental information
PowerShell Version        : 5.1.19041.1
dbatools latest installed : 1.0.119
Culture of OS             : ru-RU

SQL Server:
Microsoft SQL Server 2016 (SP2-CU14) (KB4564903) - 13.0.5830.85 (X64)
                Jul 31 2020 18:47:07
                Copyright (c) Microsoft Corporation
                Standard Edition (64-bit) on Windows Server 2019 Standard 10.0 <X64> (Build 17763: ) (Hypervisor)

us_english

I looked into this and seems the issue (at least in my case) is in New-DbaLogin (which is called within Copy-DbaLogin)
Some testing took me to this line (all lines prior that is processed OK)
https://github.com/sqlcollaborative/dbatools/blob/f19e8248310602d15eaf5f2fd35aa22e478be956/functions/New-DbaLogin.ps1#L451
My query returned an error in SSMS, but nothing in PowerShell
Msg 15010, Level 16, State 1, Line 1
The database 'Mikey' does not exist. Supply a valid database name. To see available databases, use sys.databases.

Verbose gives:
VERBOSE: [23:17:07][Get-DbaLogin] Getting last login times
VERBOSE: [23:17:07][Get-DbaLogin] Processing [ToMove] on localhost,1433
VERBOSE: [23:17:07][Copy-DbaLogin] Attempting Login Migration.
VERBOSE: [23:17:07][Copy-Login] Attempting to add ToMove to localhost,14333.
VERBOSE: [23:17:07][New-DbaLogin] Setting ToMove SID
VERBOSE: [23:17:07][New-DbaLogin] Setting ToMove default database to Mikey
VERBOSE: [23:17:07][New-DbaLogin] Setting ToMove2 language to us_english
VERBOSE: [23:17:07][New-DbaLogin] Adding as login type SqlLogin
VERBOSE: [23:17:07][New-DbaLogin] Failed to create ToMove on localhost,14333 using SMO, trying T-SQL.

Type             Name    Status Notes
----             ----    ------ -----
Login - SqlLogin ToMove Failed

@Zhunya - I have tried this (from Example) to copy the login - there is a DefaultDatabase parameter in New-DbaLogin command
Get-DbaLogin -SqlInstance  -Login  | New-DbaLogin -SqlInstance  -DefaultDatabase tempdb


I want to be able to see the information about Token, Target and Amount before submitting my transaction

User Story
As Chris, I want to be able to see the information about Token, Target and Amount before submitting my transaction so that I don't make mistakes.
Acceptance criteria
Tasks
Story Points

Now included in #63


Why does "tvOS 13" say "1 video" while "tvOS 15" says "114 videos"?

On the latest (3.0.2) version of Aerial I'm using the "Now Playing" screen to select "Play videos from selected" "Sources".
And what I'd like to do is select videos that are new to tvOS 15, and exclude videos that existed in tvOS 13 and 14 since I've been watching those for a long time.
However, under "tvOS 15" it says "114 videos", "tvOS 10" says "9 videos" and "tvOS 13" says "1 video". (See screenshot below.)
This doesn't make a lot of sense to me. Obviously tvOS 10 came with more than 9 videos. I have to guess that videos sources are being categorized as the last version of tvOS they came in?
It feels like it would be much more intuitive and useful for tvOS sources to be categorized as the first version of tvOS they appeared in. So then "tvOS 15" would mean all the videos new to 15.
What do people think? Unless there's some bug in my particular Aerial installation?

Got it, well glad to know it's intended behavior and not a bug.
I'd definitely like to make it a feature request then to categorize the tvOS versions by "first added" instead. This way, tvOS 15 would have something like 25 new videos, and we could select those but not older ones. After all, when new videos come out, it's nice to watch only them for a while, until you've seen them as much as the older ones, and then re-enable the older ones again.
And hopefully "migration" wouldn't be a big deal either, since almost all the videos are already in tvOS 15 -- so existing tvOS 10 and tvOS 13 checkmarks would disappear, and "new" previous tvOS checkmarks would follow whatever users currently have checked for tvOS 15. (If it's even worth "migrating" at all.)
Not a huge deal at the end of the day, of course. But as long as you provide the sources, it seems like it would be more intuitive and make them more useful.
And thanks for the new "Now Playing" interface -- overall it's super awesome!

Complete agreement, I just need to think about how I can make that work within the current constraints. I'm keeping this open to track it in the next few weeks.
And glad you enjoy that one, I really think it makes everything a lot simpler !


Schema: type "number" issues

Looking at https://github.com/spacedog-io/services/blob/master/services/src/main/java/io/spacedog/services/SchemaValidator.java#L81
you define a bunch of number types.
Now, according to documentation, number is your userland type - but that doesn't work:
{"success":false,"status":400,"error":{"type":"io.spacedog.services.SchemaValidator$InvalidSchemaException","message":"Invalid field type: number"}}

My 2 cents is to have just two userland types: float and int. Not sure what's right internally (since I officially suck at java https://docs.oracle.com/javase/7/docs/api/java/lang/Double.html ), but I believe leaking java abstractions into the service model is wrong.

This has been fixed. The type is now documented as float.


API Usage Example

Is there an example of how to use the extension API described here?
I want to start a specific tour from my learning extension. The relevant code:
configureLab = async (): Promise<void> => {
    const workspace = this.getLabWorkspace();
    const labEnv = await this.getLabEnvironment();

    //deploy lab tenant resources
    if (workspace !== undefined && labEnv !== undefined) {
      if (labEnv.resources) {
        const uri = getFileUri(
          `/.auth0/lab/${labEnv.resources}`,
          workspace.uri
        );
        await executeCommand('auth0.deploy', uri);
      }

      //write local environments
      if (labEnv.clients || labEnv.resourceServers) {
        await executeCommand('auth0.lab.localConfigure', labEnv);
      }

      //issue post command to kick off next process
      if (labEnv.postConfigureCommand) {
        executeCommand(labEnv.postConfigureCommand);
      }
    }
  };

The very last step is to fire the post command if it exists. I want to be able to start a tour here but I am not sure how to access the API.

After some digging, I found a way to kick off my tours. Here is the utility file I created for integration.
import * as vscode from 'vscode';

async function getExtension(): Promise<vscode.Extension<any>> {
  const ext = vscode.extensions.getExtension('vsls-contrib.codetour');
  if (ext && !ext?.isActive) {
    await ext?.activate();
  }

  if (!ext) {
    throw new Error('Cannot load CodeTour extension');
  }

  return ext;
}

export async function startTour(uri: vscode.Uri) {
  const ext = await getExtension();
  const api = ext.exports;
  api.startTourByUri(uri);
}


[WIP] PCR[14] is changing after the first reboot

PCR14 gets updated after EVE is rebooted for the first time so if the user creates PCR template just after onboarding it become invalid. The reason for this is https://github.com/lf-edge/eve/pull/2917 measure-config container MUST be run after the last change to /config partition is committed
Signed-off-by: Mikhail Malyshev<EMAIL_ADDRESS>

Error is still present.

A yetus blanks item to fix, otherwise LGTM

this change doesn't fix a problem completely because we generate certificates on TPM when pillar starts. so this bug was always here. However we do not run live images in production so we never seen it before

this change doesn't fix a problem completely because we generate certificates on TPM when pillar starts. so this bug was always here. However we do not run live images in production so we never seen it before

OK, but this order still makes more sense to me.
FWIW there is a yetus blanks complaint to fix, then we can merge this.


fixed the false throwing of the exception

On one of my accounts, Instagram gives out an extra page if the number of subscribers is a multiple of 20. This does not happen on other accounts.
The extra page has no edges and has_next_page = false. So I made that the exception is thrown only on the first page if it is empty.

@notdest  thanks for contribution


fix: URIError: Could not load virtual:#internal/nitro/virtual/public-…

fix: URI malformed
URIError: Could not load virtual:#internal/nitro/virtual/public-assets-data (imported by virtual:#internal/nitro/virtual/public-assets): URI malformed

🔗 Linked issue

❓ Type of change

[ ] 📖 Documentation (updates to the documentation, readme, or JSdoc annotations)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

📝 Checklist

[ ] I have linked an issue or discussion.
[ ] I have updated the documentation accordingly.

Because of chinese filename


Different translation for language pair when used in multilingual engine

I have run into an issue, which I originally discovered in ModernMT 4.2, but which also affects ModernMT 4.5, albeit with a slightly different outcome. In ModernMT 4.2, the error came to light in the form of standalone language pair engine being able to translate a segment just fine, but failing with a 500 error codes in a multilingual setting. It mostly occured for segments containing extremely rare characters, similar to the description in #527 , but I now also experienced an example for FR -> EN with a somewhat standard segment:
Le succès de l'assainissement de l'entité juridique suisse d'une banque d'importance systémique serait ainsi plus probable, ce qui contribuerait à atteindre l'objectif principal, à savoir le maintien ininterrompu des fonctions systémiques.

When running the FR -> EN by itself, the result is nice with both MMT 4.2 and 4.5:
The success of the reorganisation of the Swiss legal entity of a systemically important bank would thus be more likely, which would contribute to achieving the main objective of uninterrupted maintenance of systemic functions.

When using a multilingual engine with MMT 4.2 and a couple of additional language pairs, this results in a 500 error. For some segments, we receive no stacktrace in the logs, for other we get the following:
java.lang.ArrayIndexOutOfBoundsException: 33
	at eu.modernmt.processing.WordTextGuessingProcessor.call(WordTextGuessingProcessor.java:21)
	at eu.modernmt.processing.WordTextGuessingProcessor.call(WordTextGuessingProcessor.java:11)
	at eu.modernmt.processing.ProcessingPipeline.call(ProcessingPipeline.java:26)
	at eu.modernmt.processing.VoidProcessingPipeline.call(VoidProcessingPipeline.java:17)
	at eu.modernmt.processing.VoidProcessingPipeline.call(VoidProcessingPipeline.java:9)
	at eu.modernmt.processing.concurrent.PipelineExecutor.process(PipelineExecutor.java:35)
	at eu.modernmt.processing.concurrent.PipelineExecutor.process(PipelineExecutor.java:28)
	at eu.modernmt.processing.Postprocessor.process(Postprocessor.java:45)
	at eu.modernmt.facade.TranslationFacade.get(TranslationFacade.java:110)
	at eu.modernmt.facade.TranslationFacade.get(TranslationFacade.java:73)
	at eu.modernmt.api.actions.translation.Translate.execute(Translate.java:43)
	at eu.modernmt.api.actions.translation.Translate.execute(Translate.java:25)
	at eu.modernmt.api.framework.actions.ObjectAction.getResult(ObjectAction.java:13)
	at eu.modernmt.api.framework.actions.ObjectAction.getResult(ObjectAction.java:8)
	at eu.modernmt.api.framework.actions.JSONAction.unsecureExecute(JSONAction.java:52)
	at eu.modernmt.api.framework.actions.JSONAction.execute(JSONAction.java:23)
	at eu.modernmt.api.framework.routing.RouterServlet.service(RouterServlet.java:85)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:873)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:542)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:205)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:480)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at eu.modernmt.api.MultipartConfigInjectionHandler.handle(MultipartConfigInjectionHandler.java:49)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.Server.handle(Server.java:505)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:370)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:267)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:305)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:103)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:117)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:698)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:804)
	at java.lang.Thread.run(Thread.java:748)

When using a multilingual engine in ModernMT 4.5 instead, it "works" in the sense of not crashing, but the translation is the following:
<UNK> <UNK> <UNK> <UNK> <UNK> <UNK> de financiële zekerheid van de systemically important bank would be more likely, which would contribute to achieving the main objective of uninterrupted maintenance of systemic functions.

I imagine there is no "easy fix" without a new release of Modern MT, but is this something you have experienced before and are possibly already aware of?

@nicolabertoldi @davidecaroselli As a follow up, as we are experiencing this more and more, it feels very much that this bug is related to handling of out-of-vocabulary tokens in multilingual engines.

@nicolabertoldi @davidecaroselli I saw some changes in 4.5.2 that I figured could have be related to this, so I tested it. Sadly, this issue is however still present, with same output as 4.5.


The custom domain has not been resolving to your static web app and has expired

Describe the bug
I have multiple Statics Apps proxied through Cloudflare with a custom domain name. Today I see all the apps returning the Azure 404 holding page.
The Azure portal shows the custom domain as "Validation failed" and "The custom domain has not been resolving to your static web app and has expired"
I don't see this behaviour documented anywhere? What is the solution to prevent this in the future - TXT verification?

Hi @TrplM ,
Could you please share the default hostname?
Thanks!

Hi @TrplM ,
Could you please share the default hostname?
Thanks!

This is one of them (red-sea-08fb6fc03.1.azurestaticapps.net), but I have already disconnected and reconnected the custom domains

@TrplM Thanks for reverifying. And apologies for the inconvenience caused.
For auto renewal, we use http-token method.
And for that to work, please make sure the .well-known/pki-validation/fileauth.txt endpoint on your custom domain is accessible to public internet, so that digicert can validate the domain.
We're working on improving the docs and notification flows in this area.
Please let us know if you need anything else.

@vivekjilla
Couple of clarification questions:
The contents of the file should be the validationToken generated when using TXT verification?
How do I obtain the validationToken? Do I need to delete and reconnect the domains?
az staticwebapp hostname returns no validationToken even for domains I reconnected this morning with the TXT method.
If I try and generate the token (portal and cli) for already validated domains, it returns nothing.

Hi @TrplM the validation token gets generated when the certificate is nearing expiry and for renewal, Digicert + SWA will automatically take care of generating the token and returning it when the fileauth.txt endpoint is accessed, when it's nearing expiry.
As you created the certificates today, they won't expire for next 6 months.
So, what we need to make sure is that the request is actually reaching the Static Web App when accessing the .well-known/pki-validation/fileauth.txt endpoint, and it's not restricted by any proxies or caching or auth restrictions etc by CDN or anything else.

Hi @TrplM the validation token gets generated when the certificate is nearing expiry and for renewal, Digicert + SWA will automatically take care of generating the token and returning it when the fileauth.txt endpoint is accessed, when it's nearing expiry.
As you created the certificates today, they won't expire for next 6 months.
So, what we need to make sure is that the request is actually reaching the Static Web App when accessing the .well-known/pki-validation/fileauth.txt endpoint, and it's not restricted by any proxies or caching or auth restrictions etc by CDN or anything else, for automatic renewal to work.

Happy to take this offline or over to a support ticket if required?
But still a little unclear as to the root cause, and what I would need to do to resolve. If the file exists there should be no issues accessing the file through the custom domain with Cloudflare proxying the request.
I've uploaded a test file, and get some strange behaviour. Still investigating whether it is an issue with Cloudflare or the Static App
Using the default hostname, I can reach the file correctly

If I access via the custom domain , I get a 404 from Azure

@TrplM This seems like it has something to do with configuration in Cloudflare. I don't have much context on that. Can you check if the cloudflare is actually proxying the request to the same endpoint with default hostname or if it's doing something else?

@vivekjilla Will feedback as soon as I have narrowed it down. All other routes work, just the /.well-known is returning 404

@TrplM Hey, just wanted to share one more thing I just realized. Sorry for the delay.
This could very well be expected behavior. Only when the cert renewal is in progress, would we see some the token response back on that endpoint otherwise we would get the 404.
Also the response for this endpoint depends on which hostname we're using to call it, and as default hostnames are completely managed by us, I think we just return that fixed string called "test-token" when hitting that endpoint.
Hope that clears things up now.

@TrplM I just bumped into this myself, and like you recreated my custom domain. Did you find the cause?
I cannot see anything at cloudflare to indicate the issue.

I think I have solved my issue. It still was not validating the domain, but then i re-read the docs, and I noticed I had not setup the apex domain required by Azure.
https://learn.microsoft.com/en-us/azure/static-web-apps/apex-domain-external
Adding this, has allowed it to validate:
Cloudflare:

Azure:

@mosoftwareenterprises are you using the CNAME flattening of Cloudflare in this case? Before adding this, what record was added that resolved your domain to your Static Web App? Was it another CNAME/ALIAS record?

I am not using cname flattening.
It was a cname record before to the blog subdomain.

Ok I see, so you are currently using a CNAME record (with host blog) to route traffic from https://blog.markoliver.website/ to your Static Web App correct? If that is the case, the SSL cert renewal should have worked without the need to add APEX domain, so perhaps it's worth investigating this a bit more

@TrplM are you using Always Use HTTPS on your proxy? It seems that this is a common issue with Proxied Cloudflare sites https://community.cloudflare.com/t/let-lets-encrypt-bot-bypass-always-use-https/200274

@TrplM are you using Always Use HTTPS on your proxy? It seems that this is a common issue with Proxied Cloudflare sites https://community.cloudflare.com/t/let-lets-encrypt-bot-bypass-always-use-https/200274

Yes that seemed to be our issue. Static Apps requires the /.well-known/ directory to be accessible and as we were proxying everything through Cloudflare this route was getting blocked. We've made some updates to our Cloudflare configuration and it seems to be resolved for now.

Excellent, I'm glad that resolved your issue @TrplM, @mosoftwareenterprises any chance this was also you issue for the renewal of your blog subdomain website?

Ok I see, so you are currently using a CNAME record (with host blog) to route traffic from https://blog.markoliver.website/ to your Static Web App correct?

Correct.

If that is the case, the SSL cert renewal should have worked without the need to add APEX domain, so perhaps it's worth us investigating this a bit more.

ok.

Are you using HTTPS only and/or using the Proxy option?
If you mean this option in CloudFlare, then yes, it is turned on:

Hello, can you share the config used in Cloudflare to avoid this ?

Hello, can you share the config used in Cloudflare to avoid this?

Ours were due to custom firewall rules and worker routes. Out of the box, I don't think any additional configuration is needed on Cloudflare, even when proxying.

Yeah I think the issue is manly because of Always Use HTTPS, it's more of a CloudFlare issue than Azure.

.well-known/pki-validation/fileauth.txt
how does this work? What should be in the txt file?  What domain should host it?
We have the same issue that we cannot renew the certs, and you cant upload custom certs, its a catch 22.
Our particular problem is that we use the static hosting for our sites "down" pages, so most of the time our URL (e.g. www.mysite.com) resolves, via traffic manger, to our main hosting.  when our main hosting is down, we flip the switch in traffic manger to point www.mysite.com to the static web app, only to find its cert ran out!
We desperately need a way to get certs, or renew certs on static web apps, when the custom domain url is not currently pointing to the static web app.

I came across this because I just set up a couple of Azure SWA's with their own custom domains. Setting this up was incredibly simple, I just created the SWA and then added the custom domain in Azure and went to my DNS provider (Argeweb) to add a CNAME. Note that my apex is not with Azure but these subdomains are and if all goes well then I'll shift the apex too.
But the reason for my question is just that the custom domains for the SWAs I've created on Azure show an expiry date of roughly 6 months from now and I'm curious what this actually means. Reading the above it seems that @mosoftwareenterprises @TrplM had some issues past the 6 month date and it's not clear what I need to do to prevent this. Is there some Azure documentation that covers this now?

Hey @naskew . I believe the certificates run out and are automatically renewed ever 6 months.
My current cert:

I fixed mine in 2022 and had no issues since. Check out my investigation here: https://blog.markoliver.website/Azure-Static-Web-App-Invalid-SSL-Certificate

Thanks for the reply Mark. I hope you are right :-) I'm planning to move my apex to an SWA and the expiry dates are just after I need to give notice to my current host that I'm moving. I'll take a look at the blog. Thanks again.

One quick thing. I'm using a separate site to monitor my apex site because my current hosts have been pretty poor over the years. I use "uptrends" but there are a number of such services that try to get a url to respond and if that fails then you get an email.  Having seen your experience, I think I'll add checks to my SWAs so I know quickly if one fails.

But the reason for my question is just that the custom domains for the SWAs I've created on Azure show an expiry date of roughly 6 months from now and I'm curious what this actually means. Reading the above it seems that @mosoftwareenterprises @TrplM had some issues past the 6 month date and it's not clear what I need to do to prevent this. Is there some Azure documentation that covers this now?

In our case, there were some incorrect firewall rules blocking access to the sites .well-known directory causing the cert renewal to fail. No issues since then


Depricated

Hi,
Could you shed some light on the deprecated functions?
warning: [deprecation] userLookupSupported() in Realm has been deprecated
warning: [deprecation] lookupUser(String) in Realm has been deprecated
warning: [deprecation] authenticate(AuthenticationToken) in Realm has been deprecated
Gr.,
Wilfried

Solved with #23
Thanks!


refactor: add draw by timeout/disconnect/stall/illegal move

make fc consistent with fide and uscf rules as well as with cutechess
fix https://github.com/Disservin/fastchess/issues/410

+ grep 'Finished game'
+ sort -n -k 3
+ diff ./cutechess-cli-out.finished ./fastchess-out.finished
35c35
< Finished game 35 (sf_1 vs sf_2): 1/2-1/2 {Draw by adjudication}
---
> Finished game 35 (sf_1 vs sf_2): 1/2-1/2 {Draw by insufficient mating material}

how do i access the pgn for this?

done 👍

Btw finding all the situations in which only one side has no legal set of moves for checkmate is quite complex, so i decided to take the cutechess route of doing it by adjudicating as draws when the opponent only has a lone king: https://github.com/cutechess/cutechess/pull/717

mh does cutechess have the same termination strings? i find this weird tbh, maybe it should be behind a "strict fide" feature but i don't care too much about that as of now because it's not the main focus

Yeah cutechess has the same termination strings

mh.. i don't really like this, this primarily to test engines, we don't need 100% fide compliance, if so the first illegal move should be ignored and the engine asked to make another move and only lose on the second move. Making the engine lose in 100% of the cases is more consistent imo


Make type rules more flow sensitive.

[ed note: The analyzer actually has enough information to remove this warning, as indicated by the syntax highlighting of "err.reasons" -- 'reasons' is known to be a member. However, the spec says the editor MUST display the warning, so it does.]
ldap: codefu
Still seeing random places where the editor can't tell the type.  In the screen shot there's one path that checks if the error is not a CodeError and returns.  Later err is still listed as "Object" and thus there's yellow squiglies.
////////////////////////////////////////////////////////////////////////////////////
Editor: 1.4.0.dev_06_04 (2014-05-12)
OS: Linux - amd64 (3.2.5-gg1336)
JVM: 1.7.0-google-v6
projects: 5
open dart files: 41
auto-run pub: true
localhost resolves to: <IP_ADDRESS>
mem max/total/free: 1778 / 1039 / 770 MB
thread count: 51
index: 621951 relationships in 110530 keys in 758 sources
SDK installed: true
Dartium installed: true

Attachment:
screenshot.png (515.20 KB)

We are working on a proposal now that addresses this: https://github.com/dart-lang/sdk/pull/29624

Done! 😁


KU-2044

This adds the channel field in the MAAS template.

Thanks a lot @kubeages! LGTM! Maybe we can also add these to other templates (e.g. AWS)?

We have it for AWS: https://github.com/canonical/cluster-api-k8s/blob/main/templates/aws/cluster-template.yaml#L55


[TBDGen] Allow user-provided dylib version flags

This patch adds two frontend arguments, -tbd-compatibility-version and
-tbd-current-version, both of which accept SemVer versions.
These will show up in the generated TBD file for a given module as
current-version: 2.7
compatibility-version: 2.0

These flags both default to 1.0.0, and TAPI will not write them in the .tbd file if they're 1.
Resolves: rdar://34560882

@swift-ci please smoke test

What breaks if the user doesn't specify these flags when emitting TBD files?

Nothing ‘breaks’, per se, they just each default to 1. This is undesirable as the TBD file will not match a generated file in which the DYLIB_CURRENT_VERSION and/or DYLIB_COMPATIBILITY_VERSION build settings are overridden.

@swift-ci please smoke test


Feature request: Add source/fact table for source-freshness executions

It would be great to have a table like fct_source_freshness_executions to have the metadata for source freshness runs and statuses (like when sources fail freshness tests)

Hi @emilyhawkins-gg and @DavidHuegel .
Thanks for raising this, and apologies for the delay in getting back to you. This is something we'd love to support, but are waiting for an upstream change in dbt core that would allow us to do it currently. Once this has been resolved, we'll definitely look to include it.
Related PR: #166

I'm closing this issue so that this can be tracked in a single place - #166


2473: Add request rejection functionality.

Resolves #2473
Description
This adds the functionality to reject account requests by a superadmin user.
There are a few changes/refactors here to enable this:

Added a js_button method to ui_helper. There wasn't a case where we wanted to just show a button that had no functionality attached to it. I couldn't use modal_button_to because I needed to populate the request ID in the form once it had popped up.
Added an enum status to account requests. Previously the state was calculated from different fields, and it wasn't obvious what the current status was. The enum provides that. Note that I am using a string enum rather than an integer. In the past I've found strings to be much easier to inspect and work with (e.g. you can look at a database row and know what the status is without having to hunt through the codebase to associate them with numbers). Especially since this table is pretty small, I think the tradeoff is worth it.
Adding the button required me to combine a couple of other columns or the table looks too crowded.
I've added pagination to the account requests page as well since the original issue referenced the fact that there is no way to delete requests entirely.
I've moved a couple of methods from the controller to the model, where it's more easily tested.

[EDIT] Specs are all done besides system specs which I'll attempt tomorrow.
Type of change

New feature (non-breaking change which adds functionality)

How Has This Been Tested?
Local and unit tests.
Screenshots

Would you be able to include that reject button in the organizations#new page that admins goto to accept/deny the request? The way we approve account requests is by getting an email to admins and clicking a "magic link" to get to the organizations#new page with fields populated from the account request.

Hmm - the issue is that that page doesn't actually have any context for the request itself (e.g. request details). It also doesn't make much sense to go to a page with a form to fill out that just happens to have another button in there allowing rejection.
Would it instead make more sense to have a second link in the e-mail that admins get that takes them to the requests page with this request highlighted, to allow them to reject it?

Would it instead make more sense to have a second link in the e-mail that admins get that takes them to the requests page with this request highlighted, to allow them to reject it?

Yes!! Even better!

@edwinthinks one more question. Right now the, open/closed list will show only the initial (requested) state, while the other 3 are in "Closed". I believe we're now changing this so that "Open" would show started and user_confirmed, while closed will only show admin_approved and rejected - is this correct?

All changes should be addressed! @edwinthinks

@edwinthinks one more question. Right now the, open/closed list will show only the initial (requested) state, while the other 3 are in "Closed". I believe we're now changing this so that "Open" would show started and user_confirmed, while closed will only show admin_approved and rejected - is this correct?

Sounds right to me. However, I actually think we can get away with only showing "Open" account requests and just hide the "Closed" ones. I don't actually see any use case for seeing or pulling up closed account requests.

@edwinthinks we had the functionality there before though, and it might be able to act as a kind of audit log. I don't think we should actively take it out unless we have a good reason.

@seanmarcia @edwinthinks is this good to merge?

YAY!


nsh: Fixed typos in comments.

Summary
Fixed a couple of typos that our CI is constantly complaining about.
Impact
N/A
Testing
N/A

Wait there are a few more.

@fjpanag look like there are some style warning, could you fix it?

@fjpanag look like there are some style warning, could you fix it?

Here you are :)


Archnemesis window closing on Scan

When I click the Scan button in the Archnemesis window, the Archnemesis window closes before actually starting image recognition.
Subsequently, it does not recognize the first component (top left) since the Archnemesis window is closed.
After looking into the main script (Lailoken UI.ahk) I saw that there is an Escape-button send in line 1259 that causes this behaviour.
I'm not sure what exactly this send is supposed to do.
Line 1259: SendInput, ^{f}{ESC}
Reopening the window does not remove filters or search queries (which in my trials seem to throw off the image recognition).
Also there isn't really a command to reopen said window.
Commenting line 1259 out solved the problem for me.
Thank you for this great tool!

Yes, the ESC-input is there to clear the in-game search, just in case it's not blank. It seems ctrl-F is not sent in your case, which should also cause problems when clicking a recipe from the ready-list. I've not heard of partial send issues like this yet -- usually sent key-presses either fully work or they don't. What happens when you click an item from the ready-list?

Oh, I see. Sorry, I'm not well versed in AHK.
So ^f is a ctrl+f send.
Then I am pretty sure the problem is caused by the delay I experience when pressing ctrl+f in PoE. It takes approximately one second for the button combination to take effect. Therefore the Escape-button send simply cancels out of the window before the search bar is highlighted.
This delay is a PoE specific problem that I do not experience anywhere else.
However, seeing that I can't really find any other reports of this specific problem, this must be a very rare or individual case (.. and also not this releases problem).
Not at the computer right now, will record a video later if that is of interest at all.

I see, that makes sense. I could fix that by sending ctrl+f on clicking the mouse button and ESC (for scans) or ctrl+v (for the other instances that use the search bar) on release. This way, you could time it and work around your delay issue. How would that work out for you?

It feels more appropriate for me to spend some time on trying to fix this problem at the root before making you program a workaround :D
Wouldn't feel right.
Besides, the delay is really annoying anyway. Must have made me cancel out of windows hundreds of times by now. To be honest, I didn't know people could instantly type after ctrl+f.
I will keep you updated.

All it takes is one extra line and one modified line, times three. I'll include it in the next release because it doesn't change a thing for regular use. This way, you can use my tool for the time being in case your troubleshooting takes longer than expected. The only thing you wouldn't be able to do is highlight assembled versions of prio-recipes -- you would have to search for them manually -- when they're highlighted in green.

I have found the problem introducing the delay.
I am ashamed to admit that it's my trusty companion, the trade tool Sidekick.
The problem is that it captures the ctrl+f input for a functionality I do not even use. Some kind of internal search it seems.
Turning this functionality off in its settings has removed the delay.
I've been playing PoE with Sidekick for so long, I didn't even remember how things were before.
If there are any future PoE projects planned, we could talk about collaboration. Discord: Amon#5118
Thank you for your time and help.


Bug fix

Possible bug found when testing GitHub actions
alpine image does not create new line properly when writing to README.md

Thanks, @KukovecRok.


Taxonomy v3.9 might not be working properly with Kraken

Hi,
I'm testing the Kalamari DB with Kraken2 and I think the taxonomy v3.9 is not working as intended (at least not working as described in the Database formatting instructions):

Following the Kraken2 instructions, Kraken creates the database only with 2 sequences

Candidatus Korarchaeum cryptofilum	CP000968	374847
Halobacterium salinarum	AM774415	478009

(from the chromosomes file)

Using taxonomy taxonomy v3.5, the database is then created with 284 sequences.
If I concatenate both taxonomy versions, one entry is added to the database: Betacoronavirus coronavirus	MT233526	2697049.
If we ignore the 19 entries found in chromosomes file that don't have accession numbers (and therefore not downloaded), there are still 3 entries that are not included in Kraken's database both with taxonomy v3.5 or taxonomy v3.5+v3.9

Campylobacter hyointestinalis hyointestinalis	CP015575	91352
Campylobacter hyointestinalis lawsonii	CP015575	91353
Escherichia albertii	CP024282	208961

The Escherichia entry (the taxonomy id) doesn't have a matching entry in taxonomy files. I searched for that taxonomy id and it was Influenza virus. Escherichia albertii seems to be 208962. I tried to replace 208961 in the sequence header by 208962, but Kraken is still ignoring this entry (I might be missing something or doing something wrong).
For the Campylobacter entries, different taxonomy ids use the same accession number (which might forces Kraken to not include those into the database).

My idea here is to let you know the problems I found, and try to understand how does everything work, so I could contribute and try to increase/improve the Kalamari DB.
Thanks a lot,
Best regards,
Miguel

Thanks for letting me know!  I will investigate when possible.  Thank you for being so in depth and giving me easy options to follow up on :)

Trying to address this in v3.9.2 with some more rigorous scripting, in branch custom-taxdump

https://github.com/lskatz/Kalamari/runs/3147121557?check_suite_focus=true
It seems to have fixed it but I'm out of time for this work week.  Let me know if you get a chance to try it?  You were totally right about the Escherichia species taxid and so thank you for finding that.

I think it has been fixed and I am now monitoring it with Github Actions.  Thank you for pointing it out!


Controller not found issue

OC 3.5.1 & OF 3.2.0
After selecting a template I click "Template settings" and get this error:
Not Found : {"Message":"Controller not found for https://dnn7dev.local/Portalfolder/DesktopModules/OpenForm/API/OpenFormAPI/Settings?Template=/Portals/Portalfolder/OpenForm/Templates/Subscribe/schema.json.  in namespaces: Satrabel.OpenForm.Components."}

I canot reproduce the issue. It sound as a local issue.

Hi Sacha, sorry if I wasted your time, but could it be that it's because I'm on a child portal?
In my error it looks like it's not addressing the desktopmodule folder front he root, but from the base of the portalalias. My Portal Alias = dnn7dev.local/Portalfolder

I checked it on a child portal . No issue.
http://localhost:54068/child/en-us/DesktopModules/OpenForm/API/OpenFormAPI/Settings?Template=/Portals/1/OpenForm/Templates/Contact/schema.json
Do you are on a multi language portal ?
Do you are on a IIS folder ?

The local installation (DNN 7.4.2) is directly in a folder, not in a subfolder.
Portal is a child portal (there also is a root portal dnn7dev.local): https://dnn7dev.local/"mysite"
BTW, I am using https locally (but that should not be the issue I think).
And there is no core localization in place.
I also checked if there might be something wrong with the Portal home directory, but that seems to be fine too.
BTW, I did use the portal name as the portal directory name and not an id. (I always do)

I now tried it on the Root portal and I get the same error. Weird.

Ok, I tried a similar installation and there it does work.. Sorry about that, I'll try to find the difference..

HTTPS  also does not cause this is seems..


Specify the version when installing the nbgv package.

Closing to prefer change in https://github.com/dotnet/vscode-csharp/pull/7875

Reopening to just get this change in.


Set Ingress network API version based on k8s version

Fixes #51

commit message and PR title has misspelled verison

commit message and PR title has misspelled verison

Fixed

@caiofralmeida @curamos @SeWieland @desaintmartin what do you think of this PR?
I would like to find a shared solution to this problem.

Passing +1 to this PR from a user of the chart in production. Currently we're running a local patched copy to deal with this issue, but would love to get rid of that in favour of referencing a fixed version from upstream.

Fixed linter issue.

@pierluigilenoci did you have something specific in mind when writing about generic solution?

@desaintmartin maybe you are getting confused with another issue.
I wrote "shared solution" meaning that we all had to approve the proposed solution.
This is not the first PR that tries to solve this problem.
Instead of continuing to try, I thought it was appropriate to find a solution altogether. 😄
For example, I really like the way the guys at Bitnami solve the problem.

I suppose we could mimick (or even use their common Chart?) the way Bitnami solves the problem!
For now I propose we merge this PR, is that OK?

@desaintmartin ok to merge from my side.


error on WSL dockerd connect

on 'make pkg':
Unable to find image 'build.tailscale.io/qdk:latest' locally docker: Error response from daemon: Get https://build.tailscale.io/v2/: dial tcp: lookup build.tailscale.io on <IP_ADDRESS>:53: no such host. See 'docker run --help'. Makefile:17: recipe for target 'pkg' failed make: *** [pkg] Error 125
on dockerd
INFO[2022-11-28T12:02:56.339664299-05:00] Default bridge (docker0) is assigned with an IP address <IP_ADDRESS>/16. Daemon option --bip can be used to set a preferred IP address INFO[2022-11-28T12:02:56.980748855-05:00] Loading containers: done. INFO[2022-11-28T12:02:56.993546964-05:00] Docker daemon                                 commit="20.10.7-0ubuntu5~18.04.3" graphdriver(s)=overlay2 version=20.10.7 INFO[2022-11-28T12:02:56.993593239-05:00] Daemon has completed initialization INFO[2022-11-28T12:02:57.000369841-05:00] API listen on /var/run/docker.sock WARN[2022-11-28T12:03:49.106140028-05:00] Error getting v2 registry: Get https://build.tailscale.io/v2/: dial tcp: lookup build.tailscale.io on <IP_ADDRESS>:53: no such host INFO[2022-11-28T12:03:49.106167626-05:00] Attempting next endpoint for pull after error: Get https://build.tailscale.io/v2/: dial tcp: lookup build.tailscale.io on <IP_ADDRESS>:53: no such host ERRO[2022-11-28T12:03:49.108212824-05:00] Handler for POST /v1.41/images/create returned error: Get https://build.tailscale.io/v2/: dial tcp: lookup build.tailscale.io on <IP_ADDRESS>:53: no such host

The main branch is set up to build for the QNAP App Center now. If you're interested in building the package in the same way as prior releases, there is a https://github.com/tailscale/tailscale-qpkg/tree/update branch which updates that package to release 1.32.3.

The main branch is set up to build for the QNAP App Center now. If you're interested in building the package in the same way as prior releases, there is a https://github.com/tailscale/tailscale-qpkg/tree/update branch which updates that package to release 1.32.3.

Hi Denton-- I'm not understanding the note. I am currently on the main branch, and 'make pkg' results in the following error, so perhaps something is missing?
`$ git branch -a

main
remotes/origin/HEAD -> origin/main
remotes/origin/feature/webui
remotes/origin/main
remotes/origin/update
 $ make pkg
TSTAG=1.32.3 TRACK=stable ./build/fetch.sh
Fetching tailscale_1.32.3_386.tgz
.tailscale_1.32.3_arm64/systemd/tailscaled.service
docker run --rm
-e TSTAG=1.32.3
-e QNAPTAG=1
-v /mnt/d/build-tailscale/tailscale-qpkg/out/tailscale-1.32.3:/out
-v /mnt/d/build-tailscale/tailscale-qpkg/Tailscale:/Tailscale
-v /mnt/d/build-tailscale/tailscale-qpkg/build/build-qpkg.sh:/build-qpkg.sh
build.tailscale.io/qdk:latest
/build-qpkg.sh
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.
Makefile:17: recipe for target 'pkg' failed
make: *** [pkg] Error 125
.

`

sorry did not mean to close


In matmul, could you tell me mapping to shared memory in more detail?

I agree with your approach so I want to know in more detail about mat mul example.
I got stuck on the mapping a_ptr, b_ptr to F32_smem.
Thank you in advance.

Thank you for reaching out.
I'm sorry, but I found mistakes in the test code and modified it in the latest commit.
This test computes a matrix multiplication of two n-by-n matrices, A and B, stored in the device memory. To compute it, the matmul function splits the resulting matrix C into two-dimensional 32-by-32 submatrices and assigns one thread block (CTA) to one submatrix. Therefore, each CTA computes a matrix multiplication of 32-by-n matrix, a part of A, and n-by-32 matrices, a part of B. The matmul kernel function computes the matrix multiplication by splitting the matrices into 32-by-256 and 256-by-32 matrices, respectively, again and accumulating the resulting matrices of their multiplication. The variable block_c_row and block_c_col are the upper-left position of the submatrix of C that the CTA computes. And in the latest commit, I added a matrix copy function from device memory to shared memory to make it easier to follow the code.
Let me know if you have another question.
Thanks.

Thanks a lot. It helped me to understand the codes and paper!

Thanks a lot. It helped me to understand the codes and paper!


RFC: call plot and render once in module to precompile those routines

Trying to speed things up.
On current master I get:
julia> tic(); using Gadfly; toc()
elapsed time: 3.452206278 seconds
3.452206278

julia> x = 1:10; y = cumsum(randn(10));

julia> gc_enable(false)
true

julia> @time render(plot(x=x,y=y,Geom.point));
 17.578433 seconds (20.63 M allocations: 973.109 MB)

With this PR:
julia> tic(); using Gadfly; toc()
elapsed time: 3.511360173 seconds
3.511360173

julia> x = 1:10; y = cumsum(randn(10));

julia> gc_enable(false)
true

julia> @time render(plot(x=x,y=y,Geom.point));
  7.876351 seconds (7.13 M allocations: 292.230 MB)

The disclaimer I offer here is that it takes much much longer to precompile Gadfly (something like 40 seconds instead of 20). For users this is a one time per update cost, so it would probably be worth it. For devs it is quite annoying to wait so long every time Gadfly is touched. We could get around that by just commenting out these lines while developing and enabling them again before updating master. Because that is more of a hassle for development I'm not sure that trade-off is worth it, hence the reason this is an RFC.
If we do decide this is worthwhile we could probably add more Geoms or Guides to what is rendered in the let block to get those things to be faster on the first call per session also.
Any thoughts?

Maybe instead Base.precompile would be helpful? But I see that is the approach #671 followed and I don't know why that was closed.

Yeah I tried something like that too.
My strategy in the other branch was two fold:

break large functions into small chunks
Precompile those chunks as well all the render methods for Geoms and Guides

I saw almost no speedup
I think the problem was that there are just so many functions those methods call out too and I didn't catch all of them in my Base.precompile net.
So, instead of spending a long time trying to figure out just what methods needed to be precompiled, I let the compiler do it for me! The takeaway I have is that we can trick the (pre)-compiler into making sure certain routines are precompiled by just running the code we want to be fast (in this case the call to plot and render).

Merged #673 which supersedes this, but thanks for investigating!

 I just made the compiler find the right functions to pre-compile, @timholy listed out all 700+ of them! :clap:


Automate Build Number Auto Increment and Inclusion in Executable

@maratoid added commits:
https://github.com/samsung-cnct/lbex/commit/94bcf8da31a13577f7a77989a4c88be44507f953
https://github.com/samsung-cnct/lbex/commit/796a0efad6f8cc2eea7a9d5a28317d5357bf8a31
That provide the flag --version and return a version number that includes the git hash for the latest build.


odinfmt mangles files on post-arena-merge versions of Odin

With the latest commit b7f489b4215b922a40fa88417e1ed777a2690a49 , the following program
package hello

import "core:fmt"

f := proc(n: int) -> (int, bool) {return n, true}
g := proc(a, b: int) -> int {return a}

main :: proc() {
	n, _ := f(g(1, 1))
	fmt.println(n)
}

is odinfmt'd into
package hello

import "core:fmt"

f := ) -> (int, bool) {return n, true}
g := proc(b: int) -> int {return a}

main :: proc() {
	n, _ := f(g(, 1))
	fmt.println(n)
}

This occurs with recent odin builds, but doesn't occur when odinfmt is built by an odin built before the odin-lang/virtual-arena-unification merge.

This patch (to Odin) fixes this issue, reverting part of the arena merge:
diff --git a/core/mem/alloc.odin b/core/mem/alloc.odin
index b5788c8a..f81cd5c5 100644
--- a/core/mem/alloc.odin
+++ b/core/mem/alloc.odin
@@ -256,9 +256,6 @@ default_resize_bytes_align :: proc(old_data: []byte, new_size, alignment: int, a
        }

        runtime.copy(new_memory, old_data)
-       err1 := free_bytes(old_data, allocator, loc)
-       if err == nil {
-               err = err1
-       }
+       free_bytes(old_data, allocator, loc)
        return new_memory, err
 }

since arena allocators can't free memory.


apt upstream broken in ubuntu-latest (22.04.4 version 20240422.1.0)

Description
Basically exactly the same as https://github.com/actions/runner-images/issues/7210 which is happening for us on our private repo. Running sudo apt-get update will trigger it. I tried adding sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list to prevent it but it didn't help unfortunately.
      - name: Install ghostscript
        run: |
          sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
          sudo apt-get update
          sudo apt install ghostscript

Platforms affected

[ ] Azure DevOps
[X] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 20.04
[X] Ubuntu 22.04
[ ] macOS 11
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[ ] macOS 14
[ ] macOS 14 Arm64
[ ] Windows Server 2019
[ ] Windows Server 2022

Image version and build link
I don't understand where to find this sorry. Where can I find "Set up job"?
Is it regression?
Yes, see link above to old closed issue
Expected behavior
I'd expect to be able to run an apt-get update on GitHub Actions.
Actual behavior
It's failing and giving an invalid signature error.
Repro steps
Run sudo apt-get update in GitHub Actions on ubuntu-latest.

Hey! your workflow indicates problems with the ondrej/php repo which is not a part of the ubuntu-latest runner, please report the problem to the repository owner

Thanks @mikhailkoliada. Eventually we managed to solve this one by placing the apt-get update before the setup-php action. I have no idea why that solved things but glad it did.


Add upper bound to scikit-learn

imbalanced-ensemble 0.2.1 :snowflake:
Destination channel: Snowflake
Links

PKG-5437
Upstream repository

Explanation of changes:

Adding upper bound to scikit-learn

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_ef8gk10q58/clone` failed. (See above for error)
The following problems have been found:
===== ERRORS =====

clone/recipe/meta.yaml:66: invalid_url: https://imbalanced-ensemble.readthedocs.io/ : Not reachable: 403
===== Final Report: =====
1 Error and 0 Warnings were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_e82iowxs_0/clone` failed. (See above for error)
The following problems have been found:
===== ERRORS =====

clone/recipe/meta.yaml:66: invalid_url: https://imbalanced-ensemble.readthedocs.io/ : Not reachable: 403
===== Final Report: =====
1 Error and 0 Warnings were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_e852pogs7s/clone` failed. (See above for error)
The following problems have been found:
===== ERRORS =====

clone/recipe/meta.yaml:66: invalid_url: https://imbalanced-ensemble.readthedocs.io/ : Not reachable: 403
===== Final Report: =====
1 Error and 0 Warnings were found

Linter check found the following problems:
ERROR conda.cli.main_run:execute(125): `conda run conda-lint /tmp/abs_46kntaxkkm/clone` failed. (See above for error)
The following problems have been found:
===== ERRORS =====

clone/recipe/meta.yaml:66: invalid_url: https://imbalanced-ensemble.readthedocs.io/ : Not reachable: 403
===== Final Report: =====
1 Error and 0 Warnings were found


Cannot access ClusterIP service if the endpoint is on local Node when both AntreaProxy and Egress are enabled

Describe the bug
When debugging test failure in https://github.com/antrea-io/antrea/pull/2306, I found the case "TestClusterIP" failed consistently on Windows+Linux mixed e2e test but never failed on Linux e2e test, even though the failure was between two Linux Pods in former case.
=== CONT  TestClusterIP
    service_test.go:59:
        	Error Trace:	service_test.go:59
        	            				service_test.go:81
        	Error:      	Received unexpected error:
        	            	nc stdout: <>, stderr: <nc: <IP_ADDRESS> (<IP_ADDRESS>:80): Connection timed out
        	            	nc: <IP_ADDRESS> (<IP_ADDRESS>:80): Connection timed out
        	            	nc: <IP_ADDRESS> (<IP_ADDRESS>:80): Connection timed out
        	            	nc: <IP_ADDRESS> (<IP_ADDRESS>:80): Connection timed out
        	            	nc: <IP_ADDRESS> (<IP_ADDRESS>:80): Connection timed out
        	            	>, err: <command terminated with exit code 1>
        	Test:       	TestClusterIP
        	Messages:   	Pod client-on-same-node should be able to connect <IP_ADDRESS>:80, but was not able to connect
=== CONT  TestClusterIP/ClusterIP/Linux_Pod_on_same_Node_can_access_the_Service
    testing.go:1103: test executed panic(nil) or runtime.Goexit: subtest may have called FailNow on a parent test
=== CONT  TestClusterIP
    fixtures.go:220: Exporting test logs to '/var/lib/jenkins/workspace/antrea-windows-e2e-for-pull-request/antrea-test-logs/TestClusterIP/beforeTeardown.Jun29-09-18-08'
    fixtures.go:324: Error when exporting kubelet logs: error when running journalctl on Node 'a-ms-0005-0', is it available? Error: <nil>
    fixtures.go:345: Deleting 'antrea-test' K8s Namespace
--- FAIL: TestClusterIP (74.15s)
    --- FAIL: TestClusterIP/ClusterIP (0.00s)
        --- PASS: TestClusterIP/ClusterIP/Same_Linux_Node_can_access_the_Service (0.75s)
        --- PASS: TestClusterIP/ClusterIP/Different_Linux_Node_can_access_the_Service (0.90s)
        --- PASS: TestClusterIP/ClusterIP/Windows_host_can_access_the_Service (5.51s)
        --- PASS: TestClusterIP/ClusterIP/Linux_Pod_on_different_Node_can_access_the_Service (18.12s)
        --- FAIL: TestClusterIP/ClusterIP/Linux_Pod_on_same_Node_can_access_the_Service (36.10s)

The failure was not related to https://github.com/antrea-io/antrea/pull/2306, it was first caught in that PR because windows CI was down for a few hours and the PR that added the test case https://github.com/antrea-io/antrea/pull/2318 didn't test it on Windows testbed. However, the issue was not introduced by #2318 either. It just added the test case that can catch the problem.
The real issue is because a flow that will only be added when Egress feature is enabled cause the packet that is DNATed by AntreaProxy flows not to be delivered to local destination Pod.
table=70, n_packets=20, n_bytes=3544, priority=210,ct_state=+rpl+trk,ct_mark=0x20,ip actions=mod_dl_dst:ca:84:03:18:e8:ea,resubmit(,80)
table=70, n_packets=22, n_bytes=2476, priority=200,ip,reg0=0x2/0xffff,nw_dst=<IP_ADDRESS>/24 actions=resubmit(,80)
table=70, n_packets=0, n_bytes=0, priority=200,ip,reg0=0x2/0xffff,nw_dst=<IP_ADDRESS> actions=resubmit(,80)
table=70, n_packets=0, n_bytes=0, priority=200,ct_mark=0x20,ip,reg0=0x2/0xffff actions=resubmit(,80)
table=70, n_packets=0, n_bytes=0, priority=200,ip,reg0=0x80000/0x80000,nw_dst=<IP_ADDRESS> actions=mod_dl_dst:ca:84:03:18:e8:ea,resubmit(,80)
table=70, n_packets=0, n_bytes=0, priority=200,ip,reg0=0x80000/0x80000,nw_dst=<IP_ADDRESS> actions=mod_dl_src:ca:84:03:18:e8:ea,mod_dl_dst:ca:bf:6a:fe:af:38,resubmit(,72)
table=70, n_packets=0, n_bytes=0, priority=200,ip,reg0=0x80000/0x80000,nw_dst=<IP_ADDRESS> actions=mod_dl_src:ca:84:03:18:e8:ea,mod_dl_dst:0a:d1:10:14:6a:c7,resubmit(,72)

When a local Pod accesses another local Pod via ClusterIP, the packet will be DNATed by OpenFlows and is supposed to hit one rule in table 70 that can rewrite its destination MAC to the target Pod's MAC. But because of the presence of the second flow above, it jumps to next table directly with the destination MAC unchanged (i.e. is still antrea-gw0) MAC. Then the packet will be output to antrea-gw0. Then the host network will route the packet back to OVS, messing up the connection's ct state.
2021-06-29T15:19:05.959Z|00002|dpif(handler2)|WARN|system@ovs-system: execute ct(commit,zone=65520,mark=0x20/0xffffffff),recirc(0xd) failed (Invalid argument) on packet tcp,vlan_tci=0x0000,dl_src=ca:84:03:18:e8:ea,dl_dst=0a:d1:10:14:6a:c7,nw_src=<IP_ADDRESS>,nw_dst=<IP_ADDRESS>,nw_tos=0,nw_ecn=0,nw_ttl=63,tp_src=57692,tp_dst=80,tcp_flags=syn tcp_csum:8233
 with metadata skb_priority(0),skb_mark(0),ct_state(0x21),ct_zone(0xfff0),ct_tuple4(src=<IP_ADDRESS>,dst=<IP_ADDRESS>,proto=6,tp_src=57692,tp_dst=80),in_port(2) mtu 0

The code that adds the second flow above:
https://github.com/antrea-io/antrea/blob/4405aaab0e075ac571307ef975146e003f74e223/pkg/agent/openflow/pipeline.go#L1809-L1815
It was only caught by windows-e2e because antrea-agent was not re-deployed between TestEgress and TestClusterIP in windows-e2e (many tests were skipped), so TestClusterIP was run with Egress feature enabled.
To Reproduce

Enabled AntreaProxy and Egress
Deploy two Pods on a Node and expose one Pod as a ClusterIP service
Access the ClusterIP from another Pod

Expected
The access should succeed.
Actual behavior
The access failed.
Versions:
Please provide the following information:

Antrea version (Docker image tag). v1.0.0~v1.1.0

@jianjuns is the above flow necessary to support Egress? why does it need to bypass normal L3 flows for local Pods?

I'm not sure if this is an issue on Windows: since the flow is installed unconditionally on Windows, would it prevent local Pods accessing each other via ClusterIP?

@jianjuns is the above flow necessary to support Egress? why does it need to bypass normal L3 flows for local Pods?

The flow is added to bypass:

table=70, priority=190,ip,reg0=0x2/0xffff actions=goto_table:71

Do you have any good idea? I can only think about an extra table for MAC rewrite.

How about changing the priorities of MAC rewrite flows and/or the SNAT skipping flow?

This flow exists only on Windows, because we want to perform SNAT on the packets that are sent to the external. Since we can't predict destination of external traffic, we have to give a higher priority on the local traffic than the default packets. However, this flow and the rewrite MAC flow have the same priority currently, it is possible to prevent MAC rewrite actions on the packet that both source and destination on the same node. I would prefer to lower this flow's priority a bit (lower than 200), and the final priority should be higher than the SNAT flow.
table=70, n_packets=22, n_bytes=2476, priority=200,ip,reg0=0x2/0xffff,nw_dst=<IP_ADDRESS>/24 actions=resubmit(,80)

Thanks for your input @jianjuns @wenyingd.
@jianjuns I think normal LB/router will do TTL when forwarding the traffic, should we keep it same? I think TTL will be reduced in kube-proxy case too.
@wenyingd the flow exists on Linux too when enabling Egress feature, which requires some flows to SNAT Pod-to-External traffic.
For the solution that makes MAC rewrite flow have higher priority than SNAT skipping flow, it's doable but would introduce the 4th priority while we normally use low, normal, and high priorities. I'm thinking a solution that keeps them same priority and make SNAT skipping flow apply to non-macRewrite marked traffic, the flows would look this:
// For traffic to local Pod that don't require MAC rewriting (it must be L2 forwarding case), skip SNAT and TTL.
table=70, priority=200,ip,reg0=0/0x80000,nw_dst=<IP_ADDRESS>/24 actions=resubmit(,80)
// For traffic to local Pod that requires MAC rewriting (it must be L3 forwarding case, should come from uplink/tunnel or DNATed locally), skip SNAT.
table=70, priority=200,ip,reg0=0x80000/0x80000,nw_dst=<IP_ADDRESS> actions=mod_dl_src:0e:6d:42:66:92:46,mod_dl_dst:d2:7b:cd:ce:ad:a9,resubmit(,72)
table=70, priority=200,ip,reg0=0x80000/0x80000,nw_dst=<IP_ADDRESS> actions=mod_dl_src:0e:6d:42:66:92:46,mod_dl_dst:be:67:0f:33:59:32,resubmit(,72)

With above flows, all traffic to local Pods are handled properly in priority 200 using same match fields, regardless of where the traffic come from. I feel it's eaiser to understand, what do you think?

But why you remove this flow?
table=70, n_packets=0, n_bytes=0, priority=200,ct_mark=0x20,ip,reg0=0x2/0xffff actions=resubmit(,80)

I did test on windows and confirmed the issue indeed applied to windows even when Egress feature is not enabled (and the feature cannot be enabled on windows currently).
But the access didn't always fail. It depended on which flow is enforced first. Even when they have same priority, one of them will be enforced first, skipping another. For example, in below case there will be no problem. That may explain some flaky tests on Windows. @wenyingd @lzhecheng
table=70, n_packets=0, n_bytes=0, priority=200,ip,reg0=0x80000/0x80000,nw_dst=<IP_ADDRESS> actions=mod_dl_src:ca:84:03:18:e8:ea,mod_dl_dst:ca:bf:6a:fe:af:38,resubmit(,72)
table=70, n_packets=0, n_bytes=0, priority=200,ip,reg0=0x80000/0x80000,nw_dst=<IP_ADDRESS> actions=mod_dl_src:ca:84:03:18:e8:ea,mod_dl_dst:0a:d1:10:14:6a:c7,resubmit(,72)
table=70, n_packets=0, n_bytes=0, priority=200,ip,reg0=0x2/0xffff,nw_dst=<IP_ADDRESS>/24 actions=resubmit(,80)


Add VWO pixel

[description]

add VWO pixel for A/B site testing

This change is

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/6a94b33a092da2fb7ca6419415c6d3a619cf456a/